İçeriğe geç

LDAP Enjeksiyonu (ARCH7107)

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

LDAP arama filtrelerini kaçışsız kullanıcı girdisiyle birleştirmek, saldırganın filtreyi değiştirmesine ve örneğin * enjekte ederek kimlik doğrulamayı atlamasına olanak tanır.

<?php
$user = $_POST['user'];
$filter = "(uid=$user)"; // (uid=*) ile filtre atlanır
$result = ldap_search($conn, $baseDn, $filter);
<?php
$user = ldap_escape($_POST['user'], '', LDAP_ESCAPE_FILTER);
$filter = "(uid=$user)";
$result = ldap_search($conn, $baseDn, $filter);

Filtreye giren tüm girdileri ldap_escape($value, '', LDAP_ESCAPE_FILTER) ile kaçırın.