
يقوم بتحليل وحل DACL لكيان Active Directory واحد لتحديد صلاحيات الوصول الواردة، وحل SIDs، وتسجيل سمات LDAP لإدخال BloodHound، مما يتيح تحليل مسارات تصعيد الامتيازات المستهدفة.
أداة لتحليل وحل قائمة التحكم في الوصول التمييزية (DACL) لكيان Active Directory مستهدف واحد. يقوم "أيسد" بتحديد أذونات الوصول الواردة المثيرة للاهتمام المسموح بها ضد الحساب المستهدف، وحل SIDS الخاصة بالأذونات الواردة، وعرض تلك البيانات للمشغل. بالإضافة إلى ذلك، تم دمج ميزات التسجيل الخاصة بـ pyldapsearch مع "أيسد" لتسجيل سمات LDAP للكيان المستهدف محلياً، والتي يمكن بعد ذلك تحليلها بواسطة الأداة المصاحبة لـ pyldapsearch وهي BOFHound لإدخال البيانات المجمعة إلى BloodHound.
لقد كتبت "أيسد" ببساطة لأنني أردت نهجاً أكثر استهدافاً للاستعلام عن قوائم التحكم في الوصول. Bloodhound رائع، لكنه مزعج للغاية. يقوم Bloodhound بجمع كل شيء بينما يقوم "أيسد" بجمع شيء واحد مما يمنح المشغل تحكماً أكبر في كيفية جمع البيانات وأيها. يتم تقليل احتمالية الاكتشاف من خلال الاستعلام فقط عما يريده LDAP أن تخبرك به وعدم تنفيذ إجراء يُعرف باسم "استعلامات LDAP باهظة الثمن". يحتوي "أيسد" على خيار الاستغناء عن اتصالات SMB لحل اسم المضيف. لديك خيار تفضيل LDAPS على LDAP. مع التكامل الإضافي مع BloodHound، يمكن تخزين البيانات المجمعة بتنسيق مألوف يمكن مشاركته مع فريق. يمكن بناء مسارات هجوم تصعيد الامتيازات من خلال المشي إلى الوراء من الهدف المحدد.
شكراً للأشخاص أدناه على كل الشيفرات التي سرقتها:
@_dirkjan
@fortaliceLLC
@eloygpz
@coffeegist
@tw1sm
└─# python3 aced.py -h
_____
|A . | _____
| /.\ ||A ^ | _____
|(_._)|| / \ ||A _ | _____
| | || \ / || ( ) ||A_ _ |
|____V|| . ||(_'_)||( v )|
|____V|| | || \ / |
|____V|| . |
|____V|
v1.0
Parse and log a target principal's DACL.
@garrfoster
usage: aced.py [-h] [-ldaps] [-dc-ip DC_IP] [-k] [-no-pass] [-hashes LMHASH:NTHASH] [-aes hex key] [-debug] [-no-smb] target
Tool to enumerate a single target's DACL in Active Directory
optional arguments:
-h, --help show this help message and exit
Authentication:
target [[domain/username[:password]@]<address>
-ldaps Use LDAPS isntead of LDAP
Optional Flags:
-dc-ip DC_IP IP address or FQDN of domain controller
-k, --kerberos Use Kerberos authentication. Grabs credentials from ccache file (KRB5CCNAME) based on target parameters. If valid
credentials cannot be found, it will use the ones specified in the command line
-no-pass don't ask for password (useful for -k)
-hashes LMHASH:NTHASH
LM and NT hashes, format is LMHASH:NTHASH
-aes hex key AES key to use for Kerberos Authentication (128 or 256 bits)
-debug Enable verbose logging.
-no-smb Do not resolve DC hostname through SMB. Requires a FQDN with -dc-ip.
في العرض التوضيحي أدناه، لدينا بيانات اعتماد حساب corp.local\lowpriv. من خلال بدء التعداد من Domain Admins، يتم تحديد مسار محتمل لتصعيد الامتيازات من خلال المشي إلى الوراء من الهدف عالي القيمة.
وإليك كيف تبدو هذه البيانات بعد تحويلها بواسطة bofhound وإدخالها في BloodHound.
