İçeriğe geç

LDAP enjeksiyonu (ARCH2107)

Anahtar python.security.ldap-injection · Önem error · Kategori security · CWE CWE-90

LDAP arama filtrelerini kaçışlanmamış kullanıcı girdisinden oluşturmak, saldırganın filtreyi değiştirip kimlik doğrulamayı atlatmasına veya yetkisiz veriye erişmesine olanak tanır.

def find_user(conn, username):
flt = f"(uid={username})"
conn.search("ou=people,dc=example,dc=com", flt)
from ldap3.utils.conv import escape_filter_chars
def find_user(conn, username):
flt = f"(uid={escape_filter_chars(username)})"
conn.search("ou=people,dc=example,dc=com", flt)

Filtre değerlerini escape_filter_chars ile kaçışlayın; ham kullanıcı girdisini filtreye gömmeyin.