
Набор инструментов для создания рецептов в стиле CyberChef для IDA Pro: объединяйте в цепочку 289 операций кодирования, шифрования, сжатия и хеширования над байтами базы данных, а затем записывайте результаты обратно в бинарный файл.
Инструментарий рецептов/операций в стиле CyberChef, встроенный в IDA Pro 9.x. Создавайте многошаговые цепочки преобразования данных — кодирование, шифрование, сжатие, хеширование, извлечение — и запускайте их непосредственно для байтов или строк из вашей базы данных IDA. Внедряйте результат обратно в бинарный файл или добавляйте его в качестве комментария.
┌──────────────┬──────────────────┬─────────────────────────────┐
│ 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) — браузер операций, конструктор рецептов
и панель ввода-вывода в одном окнеFromHex+XOR(0x55)+ADD(3) или FromBase64+NOT+ROL(3)pycryptodome (опционально)Скопируйте оба файла — idachef_plugin.py и папку idachef/ — в каталог
плагинов IDA:
| ОС | Путь |
|---|---|
| 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
(Необязательно) Для шифрования AES/DES/RC4: установите pycryptodome в Python IDA:
"<ida>/python3/python.exe" -m pip install pycryptodome
Всё остальное — Base64/32/85, hex, XOR, ROT13/47, gzip/zlib/bzip2/lzma, MD5/SHA*, CRC, HMAC, экстракторы — работает только со стандартной библиотекой.
Перезапустите IDA (или Edit → Plugins → IDAChef / Ctrl-Alt-C).
Edit → Plugins → IDAChef или нажмите Ctrl-Alt-C.
Все панели основаны на разделителях и свободно изменяются в размерах — перетаскивайте разделители между столбцами, между списком рецептов и редактором его аргументов, а также между разделами Input / Output / Batch.
Слева — Обозреватель операций: древовидный список с поиском и категориями. Дважды щёлкните по операции, чтобы добавить её в рецепт. Введите текст в поле поиска, чтобы отфильтровать по имени, категории или описанию.
В центре — Рецепт: упорядоченный список операций. Щёлкните по шагу, чтобы отредактировать его аргументы. Используйте кнопки Up / Down / Remove / Clear, чтобы переупорядочить или сбросить. Аргументы обновляются на лету по мере ввода (при включённом Auto Bake). Save Recipe / Load Recipe экспортируют и импортируют цепочку в формате JSON (также копируется в буфер обмена); Load Recipe дополнительно принимает рецепты, экспортированные из CyberChef, сопоставляя их позиционные аргументы со схемами IDAChef.
Справа — Панель ввода-вывода:
Входной текст обрабатывается как обычный текст (с поддержкой escape-последовательностей \xHH).
Используйте явные шаги рецепта — From Hex, From Base64, From Binary и т. д. —
чтобы декодировать ввод перед дальнейшей обработкой.
Каждый запуск выводит три строки в окно вывода IDA:
Input: 5e6877497d7d71526c776d536c707c6c
Step 1 'From Hex' -> ^hwI}}qRlwmSlp|l
Step 2 'XOR' -> KX...
Result: KX...
Всё байтовое содержимое выводится как декодированный текст (UTF-8 с запасным вариантом Latin-1), обрезается до 300 символов. Ошибки включают индекс шага и сообщение об исключении.
Операция Formula (compound) позволяет объединять в цепочку несколько байтовых операций в одном шаге рецепта с помощью синтаксиса выражений:
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
Поддерживаемые побайтовые операции: XOR, ADD, SUB, AND, OR, NOT,
ROL, ROR, SHL, SHR, MUL, MOD
Необязательный префикс From: FromHex или FromBase64 (декодирует весь
ввод до применения побайтовых операций). Если префикс не указан,
входные байты используются как есть.