
CyberChef-artiges Rezept-Toolkit für IDA Pro: Verkette 289 Kodierungs-, Verschlüsselungs-, Komprimierungs- und Hashing-Operationen auf Datenbank-Bytes und schreibe die Ergebnisse anschließend zurück in die Binärdatei.
Ein CyberChef-artiges Rezept-/Operations-Toolkit, eingebettet in IDA Pro 9.x. Erstelle mehrstufige Datenverarbeitungsketten — Kodierung, Verschlüsselung, Komprimierung, Hashing, Extraktion — und führe sie direkt auf Bytes oder Strings aus deiner IDA-Datenbank aus. Schreibe das Ergebnis zurück in die Binärdatei oder lege es als Kommentar ab.
┌──────────────┬──────────────────┬─────────────────────────────┐
│ Operations │ Recipe │ I/O Panel │
│ (search) │ │ │
│ │ ┌─ From Hex ──┐ │ Input: 5e 73 68 7d 6c... │
│ Data format │ │ XOR [0x55] │ │ [Get Selected Bytes] │
│ ▸ From Hex │ │ ADD [3] │ │ [Get String @ Cursor] │
│ ▸ To Hex │ └─────────────┘ │ [From Clipboard] │
│ ▸ From B64 │ │ │
│ ... │ [Up] [Down] │ [✓ Auto Bake] [Bake!] │
│ │ [Remove][Clear] │ │
│ Encryption │ │ Output: 4b 58 87 7f e8 │
│ ▸ XOR │ Arguments: │ [Copy] [Output → Input] │
│ ▸ AES Dec │ Key: [0x55 ] │ │
│ ... │ │ Address: [0x140001000] │
│ │ │ [Patch Bytes] [Set Comment] │
└──────────────┴──────────────────┴─────────────────────────────┘
Ctrl-Alt-C) — Operations-Browser, Rezept-Builder
und I/O-Panel in einem einzigen FensterFromHex+XOR(0x55)+ADD(3) oder FromBase64+NOT+ROL(3)pycryptodome (optional)Kopieren Sie sowohl idachef_plugin.py als auch den Ordner idachef/ in Ihr
IDA-Plugins-Verzeichnis:
| OS | Pfad |
|---|---|
| Windows | %APPDATA%\Hex-Rays\IDA Pro\plugins\ |
| macOS | ~/Library/Application Support/Hex-Rays/IDA Pro/plugins/ |
| Linux | ~/.idapro/plugins/ |
plugins/
idachef_plugin.py
idachef/
__init__.py
core/
__init__.py
dish.py
formula.py
logger.py
operation.py
recipe.py
utils.py
operations/
__init__.py
arithmetic.py
ciphers.py
codeformat.py
compression.py
encoding.py
extractors.py
hashing.py
language.py
networking.py
other.py
publickey.py
textutils.py
ui/
__init__.py
chef_widget.py
qt_compat.py
(Optional) Für AES/DES/RC4-Verschlüsselung: Installiere pycryptodome in IDAs Python:
"<ida>/python3/python.exe" -m pip install pycryptodome
Alles andere — Base64/32/85, Hex, XOR, ROT13/47, gzip/zlib/bzip2/lzma, MD5/SHA*, CRC, HMAC, Extraktoren — funktioniert allein mit der Standardbibliothek.
IDA neu starten (oder Edit → Plugins → IDAChef / Ctrl-Alt-C).
Edit → Plugins → IDAChef oder Ctrl-Alt-C drücken.
Alle Bereiche basieren auf Splittern und sind frei skalierbar — ziehen Sie die Trennlinien zwischen den Spalten, zwischen der Rezeptliste und ihrem Argument-Editor sowie zwischen den Abschnitten Eingabe / Ausgabe / Batch.
Links — Operations-Browser: durchsuchbarer, kategorisierter Baum. Doppelklicken Sie auf eine Operation, um sie Ihrem Rezept hinzuzufügen. Geben Sie im Suchfeld ein, um nach Name, Kategorie oder Beschreibung zu filtern.
Mitte — Rezept: geordnete Liste von Operationen. Klicken Sie auf einen Schritt, um seine Argumente zu bearbeiten. Verwenden Sie die Schaltflächen Up / Down / Remove / Clear, um die Reihenfolge zu ändern oder zurückzusetzen. Argumente werden beim Tippen live aktualisiert (mit aktiviertem Auto Bake). Save Recipe / Load Recipe exportieren und importieren die Kette als JSON (wird auch in die Zwischenablage kopiert); Load Recipe akzeptiert zusätzlich Rezepte, die aus CyberChef exportiert wurden, und ordnet deren Positionsargumente den Schemata von IDAChef zu.
Rechts — I/O-Bereich:
Der Eingabetext wird als Klartext behandelt (mit Unterstützung für \xHH-Escapes).
Verwenden Sie explizite Rezeptschritte — From Hex, From Base64, From Binary usw. —,
um Ihre Eingabe vor der weiteren Verarbeitung zu dekodieren.
Jeder Bake-Vorgang gibt drei Zeilen im Ausgabefenster von IDA aus:
Input: 5e6877497d7d71526c776d536c707c6c
Step 1 'From Hex' -> ^hwI}}qRlwmSlp|l
Step 2 'XOR' -> KX...
Result: KX...
Alle Byte-Inhalte werden als dekodierter Text ausgegeben (UTF-8 mit Latin-1-Fallback), bei 300 Zeichen abgeschnitten. Fehler enthalten den Schrittindex und die Ausnahmemeldung.
Die Operation Formula (compound) ermöglicht es, mehrere bytebasierte Operationen in einem einzigen Rezeptschritt mithilfe einer Ausdruckssyntax zu verketten:
FromHex+XOR(0x55)+ADD(3) — decode hex, XOR with 0x55, add 3 (mod 256)
FromBase64+NOT+ROL(3) — decode base64, bitwise NOT, rotate left 3
XOR(0xaa)+SHR(2)+AND(0x7f) — XOR then shift-right then mask
Unterstützte Byte-Level-Operationen: XOR, ADD, SUB, AND, OR, NOT,
ROL, ROR, SHL, SHR, MUL, MOD