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.
Hatalı
Bölüm başlığı “Hatalı”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)Düzeltme
Bölüm başlığı “Düzeltme”Filtre değerlerini escape_filter_chars ile kaçışlayın; ham kullanıcı girdisini filtreye gömmeyin.