LDAP-зап­росы лежат в осно­ве раз­ведки Active Directory: от Kerberoasting в Impacket до сбо­ра гра­фа в BloodHound. Филь­тры, атри­буты и база поис­ка ста­новят­ся удоб­ными сиг­натура­ми для детек­та подоз­ритель­ной активнос­ти. В этой статье раз­берем, как устро­ены такие зап­росы, где имен­но их мож­но монито­рить и какие при­емы обфуска­ции помога­ют менять фор­му зап­роса, сох­раняя тот же резуль­тат. Внут­ри боль­шинс­тва скрип­тов раз­ведки работа­ет LDAP. Нап­ример, ког­да ты запус­каешь скрипт GetUserSPNs. py из Impacket, он отправ­ляет LDAP-зап­рос в служ­бу катало­гов со сле­дующим филь­тром: ( &( objectCategory=person)(