
भेद्यता अनुसंधान सहायक जो IDA Hex-Rays डीकंपाइलर से स्यूडोकोड निकालता है।
"हैकिंग अपने सभी अनुमानों पर हर समय प्रश्न उठाने का अनुशासन है।"
-- Dave Aitel
Haruspex एक अत्यंत तेज़ IDA हेडलेस प्लगइन है जो IDA के डीकंपाइलर द्वारा उत्पन्न स्यूडोकोड को ऐसे प्रारूप में निकालता है जो किसी IDE में आयात करने, या Semgrep, weggli, या oneiromancer जैसे स्टैटिक विश्लेषण टूल्स द्वारा पार्स करने के लिए उपयुक्त होना चाहिए।

decompile_to_file] को इनवोक कर सकते हैं ताकि किसी फ़ंक्शन को डीकंपाइल किया जा सके और उसका स्यूडोकोड और टाइप परिभाषाएँ डिस्क पर सहेजी जा सकें, साथ ही उन फ़ंक्शन्स को अलग पहचाना जा सके जिन्हें डीकंपाइल नहीं किया जा सकता, जैसे कि अनुपलब्ध Hex-Rays लाइसेंस जैसी त्रुटियों से।नवीनतम रिलीज़ प्राप्त करने का सबसे आसान तरीका crates.io के माध्यम से है:
export IDADIR=/path/to/ida # if not set, the build script will check common locations
cargo install haruspex --locked
Windows पर, इसके बजाय निम्नलिखित कमांड्स का उपयोग करें:
$env:LIBCLANG_PATH="\path\to\clang+llvm\bin"
$env:PATH="\path\to\ida;$env:PATH"
$env:IDADIR="\path\to\ida" # if not set, the build script will check common locations
cargo install haruspex --locked
वैकल्पिक रूप से, आप सोर्स से बिल्ड कर सकते हैं:
git clone --depth 1 https://github.com/0xdea/haruspex
cd haruspex
export IDADIR=/path/to/ida # if not set, the build script will check common locations
cargo build --release --locked
Windows पर, इसके बजाय निम्नलिखित कमांड्स का उपयोग करें:
git clone --depth 1 https://github.com/0xdea/haruspex
cd haruspex
$env:LIBCLANG_PATH="\path\to\clang+llvm\bin"
$env:PATH="\path\to\ida;$env:PATH"
$env:IDADIR="\path\to\ida" # if not set, the build script will check common locations
cargo build --release --locked
IDADIR एनवायरनमेंट वेरिएबल सेट है।haruspex <binary_file>
<binary_file> के बगल वाली आउटपुट डायरेक्टरी में खोजें, जिसका नाम उसी के नाम पर रखा गया होगा और उसका एक्सटेंशन, यदि कोई हो, .dec से बदल दिया गया होगा (उदाहरण के लिए, foo.exe और foo दोनों foo.dec उत्पन्न करते हैं, इसलिए केवल अपने एक्सटेंशन में भिन्न बाइनरीज़ एक ही आउटपुट डायरेक्टरी साझा करती हैं):
vim foo.dec
code foo.dec
केवल नवीनतम IDA रिलीज़ आधिकारिक रूप से समर्थित है, लेकिन पुराने संस्करण भी काम कर सकते हैं। निम्नलिखित तालिका प्रत्येक IDA संस्करण के लिए नवीनतम संगत रिलीज़ का सारांश प्रस्तुत करती है:
| IDA संस्करण | नवीनतम संगत रिलीज़ |
|---|---|
| v9.0.240925 | v0.2.4 |
| v9.0.241217 | v0.3.5 |
| v9.1.250226 | v0.6.2 |
| v9.2.250908 | v0.7.5 |
| v9.3.260213 | v0.8.1 |
| v9.3.260327 | v0.9.0 |
| v9.3.260421 | v0.9.3 |
| v9.4.260714 | वर्तमान रिलीज़ |
| v9.4.260915 | वर्तमान रिलीज़ |
[!NOTE] अतिरिक्त जानकारी के लिए idalib-rs दस्तावेज़ देखें।
इस परियोजना के विकास को निम्नलिखित संगठनों द्वारा समर्थन दिया गया है:
.c के बजाय .cpp एक्सटेंशन का उपयोग करें (यह issue देखें)?