
XLM मैक्रोज़ (जिन्हें Excel 4.0 मैक्रोज़ भी कहा जाता है) को निकालें और डिओब्फसकेट करें
XLMMacroDeobfuscator का उपयोग अस्पष्ट XLM मैक्रोज़ (जिन्हें Excel 4.0 मैक्रोज़ के नाम से भी जाना जाता है) को डीकोड करने के लिए किया जा सकता है। यह आंतरिक XLM एमुलेटर का उपयोग करके मैक्रोज़ की व्याख्या करता है, बिना कोड को पूरी तरह से निष्पादित किए।
यह xls, xlsm और xlsb दोनों प्रारूपों का समर्थन करता है।
यह xls, xlsb और xlsm फ़ाइलों से क्रमशः सेल और अन्य जानकारी निकालने के लिए xlrd2, pyxlsb2 और अपने स्वयं के पार्सर का उपयोग करता है।
आप xlm-macro-lark.template में XLM व्याकरण भी पा सकते हैं।
pip install XLMMacroDeobfuscator --force
या
pip install xlmmacrodeobfuscator[defusedxml] --force
pip install -U https://github.com/DissectMalware/XLMMacroDeobfuscator/archive/master.zip --force
एक्सेल दस्तावेज़ों में मैक्रोज़ को डीऑब्सफसकेट करने के लिए:
xlmdeobfuscator --file document.xlsm
एक्सेल दस्तावेज़ों में केवल मैक्रोज़ निकालने के लिए (बिना किसी डीऑब्सफसकेशन के):
xlmdeobfuscator --file document.xlsm -x
केवल डीऑब्सफसकेटेड मैक्रोज़ प्राप्त करने के लिए और बिना किसी इंडेंटेशन के:
xlmdeobfuscator --file document.xlsm --no-indent --output-formula-format "[[INT-FORMULA]]"
आउटपुट को JSON प्रारूप में निर्यात करने के लिए
xlmdeobfuscator --file document.xlsm --export-json result.json
एक नमूना JSON आउटपुट देखने के लिए, कृपया इस लिंक को देखें।
कॉन्फ़िग फ़ाइल का उपयोग करने के लिए
xlmdeobfuscator --file document.xlsm -c default.config
default.config फ़ाइल एक मान्य json फ़ाइल होनी चाहिए, जैसे:
{
"no-indent": true,
"output-formula-format": "[[CELL-ADDR]] [[INT-FORMULA]]",
"non-interactive": true,
"output-level": 1
}
_ _______
|\ /|( \ ( )
( \ / )| ( | () () |
\ (_) / | | | || || |
) _ ( | | | |(_)| |
/ ( ) \ | | | | | |
( / \ )| (____/\| ) ( |
|/ \|(_______/|/ \|
______ _______ _______ ______ _______ _______ _______ _______ _________ _______ _______
( __ \ ( ____ \( ___ )( ___ \ ( ____ \|\ /|( ____ \( ____ \( ___ )\__ __/( ___ )( ____ )
| ( \ )| ( \/| ( ) || ( ) )| ( \/| ) ( || ( \/| ( \/| ( ) | ) ( | ( ) || ( )|
| | ) || (__ | | | || (__/ / | (__ | | | || (_____ | | | (___) | | | | | | || (____)|
| | | || __) | | | || __ ( | __) | | | |(_____ )| | | ___ | | | | | | || __)
| | ) || ( | | | || ( \ \ | ( | | | | ) || | | ( ) | | | | | | || (\ (
| (__/ )| (____/\| (___) || )___) )| ) | (___) |/\____) || (____/\| ) ( | | | | (___) || ) \ \__
(______/ (_______/(_______)|/ \___/ |/ (_______)\_______)(_______/|/ \| )_( (_______)|/ \__/
XLMMacroDeobfuscator(v0.2.0) - https://github.com/DissectMalware/XLMMacroDeobfuscator
त्रुटि: --file गायब है
usage: deobfuscator.py [-h] [-c FILE_PATH] [-f FILE_PATH] [-n] [-x]
[--sort-formulas] [--defined-names] [-2]
[--with-ms-excel] [-s] [-d DAY]
[--output-formula-format OUTPUT_FORMULA_FORMAT]
[--extract-formula-format EXTRACT_FORMULA_FORMAT]
[--no-indent] [--silent] [--export-json FILE_PATH]
[--start-point CELL_ADDR] [-p PASSWORD]
[-o OUTPUT_LEVEL] [--timeout N]
वैकल्पिक तर्क:
-h, --help यह सहायता संदेश दिखाएँ और बाहर निकलें
-c FILE_PATH, --config-file FILE_PATH
एक कॉन्फ़िग फ़ाइल निर्दिष्ट करें (एक मान्य JSON फ़ाइल होनी चाहिए)
-f FILE_PATH, --file FILE_PATH
एक XLSM फ़ाइल का पथ
-n, --noninteractive इंटरैक्टिव शेल अक्षम करें
-x, --extract-only बिना किसी एमुलेशन के केवल सेल निकालें
--sort-formulas निकाले गए फ़ॉर्मूलों को उनके सेल पते के आधार पर क्रमबद्ध करें (-x आवश्यक है)
--defined-names सभी परिभाषित नाम निकालें
-2, --no-ms-excel [अप्रचलित] XLS फ़ाइलों को प्रोसेस करने के लिए MS Excel का उपयोग न करें
--with-ms-excel XLS फ़ाइलों को प्रोसेस करने के लिए MS Excel का उपयोग करें
-s, --start-with-shell
इनपुट में मैक्रोज़ की व्याख्या करने से पहले एक XLM शेल खोलें
-d DAY, --day DAY महीने का दिन निर्दिष्ट करें
--output-formula-format OUTPUT_FORMULA_FORMAT
आउटपुट फ़ॉर्मूले के लिए प्रारूप निर्दिष्ट करें ([[CELL-ADDR]], [[INT-FORMULA]], और [[STATUS]]
--extract-formula-format EXTRACT_FORMULA_FORMAT
निकाले गए फ़ॉर्मूले के लिए प्रारूप निर्दिष्ट करें ([[CELL-ADDR]], [[CELL-FORMULA]], और [[CELL-VALUE]]
--no-indent फ़ॉर्मूले से पहले इंडेंट न दिखाएँ
--silent आउटपुट प्रिंट न करें
--export-json FILE_PATH
आउटपुट को JSON में निर्यात करें
--start-point CELL_ADDR
एक विशिष्ट सेल पते से व्याख्या शुरू करें
-p PASSWORD, --password PASSWORD
संरक्षित दस्तावेज़ को डिक्रिप्ट करने के लिए पासवर्ड
-o OUTPUT_LEVEL, --output-level OUTPUT_LEVEL
दिखाए जाने वाले विवरण का स्तर सेट करें (0: सभी कमांड, 1: बिना जंप वाले कमांड, 2: महत्वपूर्ण कमांड, 3: महत्वपूर्ण कमांड में स्ट्रिंग्स)।
--timeout N N सेकंड के बाद एमुलेशन रोकें (0: कोई रुकावट नहीं, N>0: N सेकंड के बाद एमुलेशन रोकें)
निम्नलिखित उदाहरण दिखाता है कि कैसे XLMMacroDeobfuscator का उपयोग python प्रोजेक्ट में XLM मैक्रोज़ को डीऑब्सफसकेट करने के लिए किया जा सकता है:
from XLMMacroDeobfuscator.deobfuscator import process_file
result = process_file(file='path/to/an/excel/file',
noninteractive= True,
noindent= True,
output_formula_format='[[CELL-ADDR]], [[INT-FORMULA]]',
return_deobfuscated= True,
timeout= 30)
for record in result:
print(record)
कृपया python लाइब्रेरीज़ की सूची प्राप्त करने के लिए requirements.txt पढ़ें जिन पर XLMMacroDeobfuscator निर्भर है।
xlmdeobfuscator को किसी भी OS पर xls, xlsm और xlsb फ़ाइलों में मैक्रोज़ निकालने और डीऑब्सफसकेट करने के लिए निष्पादित किया जा सकता है। आपको MS Excel स्थापित करने की आवश्यकता नहीं है।
नोट: यदि आप MS Excel (Windows पर) का उपयोग करना चाहते हैं, तो आपको pywin32 लाइब्रेरी स्थापित करनी होगी और --with-ms-excel स्विच का उपयोग करना होगा। यदि --with-ms-excel का उपयोग किया जाता है, तो xlmdeobfuscator पहले MS Excel के साथ xls फ़ाइलों को लोड करने का प्रयास करता है, यदि यह विफल होता है तो यह xlrd2 लाइब्रेरी का उपयोग करता है।
XLMMacroDeobfuscator को निम्नलिखित प्रोजेक्ट्स में अपनाया गया है:
कृपया मुझसे संपर्क करें यदि आपने अपने प्रोजेक्ट में XLMMacroDeobfuscator को शामिल किया है।
यदि आपको कोई बग मिला है या सुधार का सुझाव देना चाहते हैं, तो कृपया issues पेज पर एक नया issue बनाएं।
प्रोजेक्ट को फोर्क करके और पुल रिक्वेस्ट सबमिट करके प्रोजेक्ट में योगदान करने के लिए स्वतंत्र महसूस करें।
आप सीधे संदेश के माध्यम से मुझे (@DissectMlaware) Twitter पर से संपर्क कर सकते हैं।