
idahunt एक फ्रेमवर्क है जो IDA Pro के साथ बाइनरी का विश्लेषण करने और IDA Pro में चीज़ों की खोज करने के लिए है।

idahunt एक फ्रेमवर्क है जो IDA Pro के साथ बाइनरी का विश्लेषण करने और IDA Pro में चीज़ों की खोज करने के लिए है। यह एक कमांड-लाइन टूल है जो किसी दिए गए फ़ोल्डर से सभी निष्पादन योग्य फ़ाइलों का पुनरावर्ती रूप से विश्लेषण करता है। यह पृष्ठभूमि में IDA को निष्पादित करता है ताकि आपको प्रत्येक फ़ाइल को मैन्युअल रूप से खोलना न पड़े। यह बाहरी IDA Python स्क्रिप्ट को निष्पादित करने का समर्थन करता है।
उपयोगी उदाहरणों में शामिल हैं (अपूर्ण सूची):
IDA Python स्क्रिप्ट की क्षमताएँ असीमित हैं। आप किसी भी मौजूदा IDA Python स्क्रिप्ट को आयात कर सकते हैं या अपनी खुद की बना सकते हैं। कुछ उदाहरण:
idahunt.py: निष्पादन योग्य फ़ाइलों का विश्लेषण करने के लिए मुख्य टूलfilters/: यह तय करने के लिए बुनियादी फ़िल्टर शामिल हैं कि इनपुट निर्देशिका में कौन सी फ़ाइलों का IDA के साथ विश्लेषण किया जाए
filters/default.py: डिफ़ॉल्ट बुनियादी फ़िल्टर जो कुछ भी फ़िल्टर नहीं करता और डिफ़ॉल्ट रूप से उपयोग किया जाता हैfilters/ciscoasa.py: Cisco ASA फ़ायरवॉल इमेज का विश्लेषण करने के लिए उपयोगीfilters/hpilo.py: HP iLO इमेज का विश्लेषण करने के लिए उपयोगीfilters/names.py: नाम, नाम की लंबाई या एक्सटेंशन पर आधारित बुनियादी फ़िल्टरscript_template.py: एक hello world IDA Python स्क्रिप्ट शामिल हैC:\idahunt> C:\Python37-x64\python.exe .\idahunt.py -h
usage: idahunt.py [-h] [--inputdir INPUTDIR] [--analyse] [--open]
[--ida-args IDA_ARGS] [--scripts SCRIPTS [SCRIPTS ...]]
[--filter FILTER] [--cleanup] [--temp-cleanup] [--verbose]
[--max-ida MAX_IDA] [--list-only] [--version IDA_VERSION]
optional arguments:
-h, --help show this help message and exit
--inputdir INPUTDIR Input folder to search for files
--analyse, --analyze analyse all files i.e. create .idb for all of them
--open open all files into IDA (debug only)
--ida-args IDA_ARGS Additional arguments to pass to IDA (e.g.
-p<processor> -i<entry_point> -b<load_addr>)
--scripts SCRIPTS [SCRIPTS ...]
List of IDA Python scripts to execute in this order
--filter FILTER External python script with optional arguments
defining a filter for the names of the files to
analyse. See filters/names.py for example
--cleanup Cleanup i.e. remove .asm files that we don't need
--temp-cleanup Cleanup temporary database files i.e. remove .id0,
.id1, .id2, .nam, .dmp files if IDA Pro crashed and
did not delete them
--verbose be more verbose to debug script
--max-ida MAX_IDA Maximum number of instances of IDA to run at a time
(default: 10)
--list-only List only what files would be handled without
executing IDA
--version IDA_VERSION
Override IDA version (e.g. "7.5"). This is used to
find the path of IDA on Windows.
आप किसी भी कमांड लाइन के साथ --list-only का उपयोग कर सकते हैं ताकि केवल यह सूचीबद्ध हो सके कि टूल वास्तव में उसे किए बिना क्या करेगा।
C:\idahunt>idahunt.py --inputdir C:\re --analyse --filter "filters\names.py -a 32 -v" --list-only
[idahunt] Simulating only...
[idahunt] ANALYSING FILES
[idahunt] Analysing C:\re\cves\cve-2014-4076.dll
[idahunt] Analysing C:\re\cves\cve-2014-4076.exe
[idahunt] Analysing C:\re\DownloadExecute.exe
[idahunt] Analysing C:\re\ReverseShell.exe
यहाँ हम प्रारंभिक विश्लेषण शुरू करते हैं। यह कुछ सेकंड में समाप्त होता है:
C:\idahunt>idahunt.py --inputdir C:\re --analyse --filter "filters\names.py -a 32 -v"
[idahunt] ANALYSING FILES
[idahunt] Analysing C:\re\cves\cve-2014-4076.dll
[idahunt] Analysing C:\re\cves\cve-2014-4076.exe
[idahunt] Analysing C:\re\DownloadExecute.exe
[idahunt] Analysing C:\re\ReverseShell.exe
[idahunt] Waiting on remaining 4 IDA instances
यहाँ हम प्रारंभिक विश्लेषण द्वारा बनाई गई अस्थायी .asm फ़ाइलों को साफ़ करते हैं:
C:\idahunt>idahunt.py --inputdir C:\re --cleanup
[idahunt] Deleting C:\re\cves\cve-2014-4076.asm
[idahunt] Deleting C:\re\DownloadExecute.asm
[idahunt] Deleting C:\re\ReverseShell.asm
हम जनरेट की गई .idb फ़ाइलों के साथ-साथ कुछ .log फ़ाइलें भी देख सकते हैं जिनमें IDA Pro आउटपुट विंडो होती है।
C:\idahunt>tree /f C:\re
Folder PATH listing
Volume serial number is XXXX-XXXX
C:\RE
│ DownloadExecute.exe
│ DownloadExecute.idb
│ DownloadExecute.log
│ ReverseShell.exe
│ ReverseShell.idb
│ ReverseShell.log
│
└───cves
cve-2014-4076.dll
cve-2014-4076.exe
cve-2014-4076.idb
cve-2014-4076.log
यहाँ हम एक बुनियादी IDA Python स्क्रिप्ट निष्पादित करते हैं जो IDA Pro आउटपुट विंडो में [script_template] I execute in IDA, yay! प्रिंट करती है।
C:\idahunt>idahunt.py --inputdir C:\re --filter "filters\names.py -a 32 -v" --scripts C:\idahunt\script_template.py
[idahunt] EXECUTE SCRIPTS
[idahunt] Executing script C:\idahunt\script_template.py for C:\re\cves\cve-2014-4076.dll
[idahunt] Executing script C:\idahunt\script_template.py for C:\re\cves\cve-2014-4076.exe
[idahunt] Executing script C:\idahunt\script_template.py for C:\re\DownloadExecute.exe
[idahunt] Executing script C:\idahunt\script_template.py for C:\re\ReverseShell.exe
[idahunt] Waiting on remaining 4 IDA instances
चूँकि यह .log फ़ाइल में सहेजा जाता है, हम जाँच सकते हैं कि यह सफलतापूर्वक निष्पादित हुआ: