04/23/2006
Sono state riscontrate alcune vulnerabilità in phpLDAPadmin che potrebbero essere sfruttate da un utente remoto per eseguire attacchi cross-site scripting.
La prima falla è dovuta al fatto che l'input passato ad alcuni parametri non è validato correttamente prima di essere restituito all'utente. Ciò permette ad un utente malevolo di inserire codice HTML e script arbitrari che possono essere eseguiti dal browser della vittima nel contesto di un sito vulnerabile.
Esempi:
http://[host]/compare_form.php?server_id=0&dn=[code]
http://[host]/copy_form.php?server_id=0&dn=[code]
http://[host]/rename_form.php?server_id=0&dn=[code]
http://[host]/template_engine.php?server_id=0&dn=[code]
http://[host]/delete_form.php?server_id=0&dn=[code]
http://[host]//search.php?server_id=0&search=true&filter=objectClass%3D%2A&base_dn=cn%3Dtoto%2Cdc%3D
example%2Cdc%3Dcom&form=advanced&scope=[code]
La seconda falla è dovuta al fatto che i parametri 'Container DN', 'Machine Name', 'UID Number ', passati allo script 'template_engine.php', non sono validati correttamente prima di essere utilizzati. Ciò permette ad un utente malevolo di inserire codice HTML e script arbitrari che possono essere eseguiti dal browser della vittima nel contesto di un sito vulnerabile.
Le vulnerabilità sono state riscontrate nella versione 0.9.8. Altre versioni potrebbero essere affette dal problema.
Soluzione:
Nessuna patch disponibile al momento;
Editare il codice sorgente in modo da validare correttamente l'input.
Riferimenti:
http://pridels.blogspot.com/2006/04/phpldapadmin-multiple-vuln.html
http://secunia.com/advisories/19747/