
PE बाइनरी में एम्बेडेड AutoIt स्क्रिप्ट निकालें
यह एक छोटी Python स्क्रिप्ट है जो PE एक्ज़ीक्यूटेबल से "संकलित" AutoIt स्क्रिप्ट्स को निकालने की अनुमति देती है।
यह स्क्रिप्ट बड़े पैमाने पर 3 संसाधनों पर आधारित है, यदि आप AutoIt चीज़ों में थोड़ा और गहराई से जाना चाहते हैं तो इन्हें अवश्य देखें:
EA05 AutoIt3.00EA06 AutoIt3.26JB01 AutoHotKey v1JB01 AutoIT2python3 -m pip install autoit-ripper
या, यदि आप स्रोतों से संस्करण स्थापित करना चाहते हैं:
git clone https://github.com/nazywam/AutoIt-Ripper.git
cd AutoIt-Ripper
pip install .
Python स्क्रिप्ट से:
from autoit_ripper import extract, AutoItVersion
with open("sample.exe", "rb") as f:
file_content = f.read()
# EA05 for v3.00+, EA06 for v3.26+
# Omitting `version` or passing None will try both versions
content_list = extract(data=file_content, version=AutoItVersion.EA06)
कमांड लाइन से:
autoit-ripper sample.exe out_directory
सहायता संदेश:
autoit-ripper --help
usage: autoit-ripper [-h] [--verbose] [--ea {EA05,EA06,guess}] file output_dir
positional arguments:
file input binary
output_dir output directory
optional arguments:
-h, --help show this help message and exit
--verbose, -v
--ea {EA05,EA06,JB01,guess}
extract a specific version of AutoIt script (default: guess)
| फ़ील्ड | लंबाई | एन्क्रिप्शन (EA05) | एन्क्रिप्शन (EA06) | टिप्पणियाँ |
|---|
| "FILE" | 4 | MT(0x16FA) | LAME(0x18EE) | स्थिर स्ट्रिंग |
| flag | 4 | xor(0x29BC) | xor(0xADBC) | |
| auto_str | flag (* 2) | MT(0xA25E + flag) | LAME(0xB33F + flag) | UTF-8/UTF-16 |
| path_len | 4 | xor(0x29AC) | xor(0xF820) | |
| path | path_len (* 2) | MT(0xF25E + path_len) | LAME(0xF479 + path_len) | संकलित स्क्रिप्ट का पथ |
| compressed | 1 | None | None | क्या स्क्रिप्ट संपीड़ित है |
| data_size | 4 | xor(0x45AA) | xor(0x87BC) | संपीड़ित डेटा का आकार |
| code_size | 4 | xor(0x45AA) | xor(0x87BC) | असंपीड़ित डेटा का आकार |
| crc | 4 | xor(0xC3D2) | xor(0xA685) | संपीड़ित डेटा CRC चेकसम |
| creation date | 4 | None | None | फ़ाइल निर्माण तिथि (उच्च) |
| creation date | 4 | None | None | फ़ाइल निर्माण तिथि (निम्न) |
| last update date | 4 | None | None | अंतिम संपादन तिथि (उच्च) |
| last update date | 4 | None | None | अंतिम संपादन तिथि (निम्न) |
| data | data_size | MT(checksum + 0x22af) | LAME(0x2477) | स्क्रिप्ट डेटा |
| v3.00 | v3.26 |
|---|
| कोड भंडारण | मैजिक द्वारा grep किया गया | "SCRIPT" संसाधन (/मैजिक द्वारा grep किया गया?) |
| स्ट्रिंग एन्कोडिंग | UTF-8 | UTF-16 |
| एन्क्रिप्शन | xor/custom MT19937 | xor/LAME crypt |
| कोड एन्क्रिप्शन कुंजी | गतिशील | स्थिर |
| संपीड़न | हाँ | हाँ |
| कोड "संकलन" | नहीं | हाँ |
| मैजिक | EA05 | EA06 |