LDAP Enjeksiyonu (ARCH4107)
Anahtar java.security.ldap-injection · Önem error · Kategori security · CWE CWE-90
LDAP arama filtrelerini kaçışsız kullanıcı girdisiyle string birleştirerek oluşturmak, filtre manipülasyonuna ve kimlik doğrulama atlamaya olanak tanır. Girdiyi LDAP filtre kaçışından geçirin.
Hatalı
Bölüm başlığı “Hatalı”String filter = "(uid=" + request.getParameter("user") + ")"; // kaçışsızNamingEnumeration<SearchResult> r = ctx.search("ou=people", filter, controls);String filter = "(uid={0})";Object[] args = { request.getParameter("user") }; // bağlanmış argüman kaçışlanırNamingEnumeration<SearchResult> r = ctx.search("ou=people", filter, args, controls);Düzeltme
Bölüm başlığı “Düzeltme”LDAP filtrelerinde değerleri bağlanmış argüman olarak geçirin veya filtre kaçışı uygulayın; string birleştirmeyin.