Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
isa_recovery — ISA Recovery | Kitploit
Инструменты/GitHubGitHub/infobyte/isa_recovery
Безопасность встроенных системОбратная инженерияАппаратная БезопасностьАнализ Бинарных ФайловМашинное ОбучениеОбучение и ОбразованиеОбратная Разработка с Помощью ИИАнализ Прошивок
GitHubinfobyte/isa_recovery

isa_recovery

ISA Recovery

Репозиторий
22 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

ISA Recovery System

ISA Recovery System

Конвейер обратной разработки, который превращает бинарный файл прошивки и его (возможно, неверное) дизассемблирование в рабочую спецификацию процессора для Ghidra. Когда вы сталкиваетесь с проприетарным процессором без документации и без поддержки в Ghidra, этот инструмент восстанавливает реальную кодировку каждой инструкции — какие биты являются опкодом, какие регистрами, какие непосредственными значениями — и записывает SLEIGH-спецификацию, которую можно напрямую загрузить в Ghidra для декомпиляции прошивки.

По своей сути это агентный рабочий процесс: фиксированный конвейер, в котором каждый шаг выполняет большая языковая модель, которой поручена узкая задача. Рабочий процесс управляется детерминированным кодом, а не самими LLM, и каждый сгенерированный в итоге конструктор SLEIGH перед принятием проверяется компиляцией с помощью бинарника sleigh из Ghidra. Неудачные компиляции возвращаются модели для исправления — до трёх попыток.

Как это работает

root@kitploit:~
Objdump
   │
   ▼
Bootstrap ─── deterministic clustering (no LLM)
       │
       ▼
   ┌─ Processing Loop ──────────────────────────┐
   │  Text Interpreter → Bit Interpreter ──┐    │
   │       → Knowledge Manager             │    │
   │            → Supervisor               │    │
   │                 │          split ─────┘    │
   │                 └── next cluster ──────────┤
   └────────────────────────────────────────────┘
       │
       ▼
   Knowledge Base
       │
       ▼
   SLEIGH Generator ─── compile-verify-retry loop
       │
       ▼
   Ghidra .slaspec

Инструкции группируются в кластеры по структуре (размер в байтах, шаблон токенов, маска фиксированных битов). Затем каждый кластер анализируется цепочкой специализированных LLM-шагов:

  • Интерпретатор текста извлекает текстовый шаблон (add {REG1}, {REG2}, {REG3}).
  • Интерпретатор битов сопоставляет каждый заполнитель с диапазоном битов с помощью инструментов корреляции полей; может запросить разделение, если кластер смешивает кодировки.
  • Менеджер знаний интегрирует данные по каждому кластеру в типизированную базу знаний о регистрах, инструкциях, режимах адресации и архитектурных особенностях.
  • Супервизор — это в первую очередь детерминированный контролёр (структурные проверки коэффициентов совпадений, несопоставленных заполнителей, перекрытия опкодов). Он обращается к LLM только тогда, когда проверка не проходит, и может либо принять результат, либо повторно запустить конкретного агента с обратной связью, либо передать вопрос человеку через TUI.

Когда база знаний заполнена, отдельный генератор SLEIGH строит спецификацию Ghidra в два этапа: сначала детерминированный каркас всех конструкторов с пометкой unimpl, затем LLM заполняет семантику p-code по одной инструкции за раз, компилируя каждую бинарником sleigh из Ghidra и повторяя попытку при сбое.

Спроектирован как второй пилот для аналитика, а не замена: TUI раскрывает каждое решение, супервизор передаёт неоднозначные кластеры человеку, а полная история переписки с LLM, вызовов инструментов и расхода токенов записывается на диск.

Протестировано на LEGv8, MIPS, pi32v2 и x86.

Быстрый старт

root@kitploit:~
# Docker (recommended)
echo "ANTHROPIC_API_KEY=sk-ant-..." > .env
./docker/run.sh integration_tests/mips

# Local
pip install -e ".[all]"
python -m main --config config.yaml

Что вам нужно (и что вы получите)

Входные данные: бинарный файл прошивки и дизассемблирование от objdump — даже полученное для неправильной архитектуры. Инструмент сам не решает задачу дизассемблирования; качество результата напрямую зависит от качества входного дизассемблирования.

Выходные данные: файл .slaspec для Ghidra плюс JSON-база знаний о регистрах, кодировках инструкций, режимах адресации и архитектурных особенностях.

Документация

Полная документация — архитектура, внутреннее устройство агентов, разобранные примеры, справочник по конфигурации — находится в вики:

root@kitploit:~
pip install -e ".[docs]"
cd wiki && mkdocs serve

Затем откройте http://localhost:8000.

Требования

  • Python >= 3.11
  • Переменная окружения ANTHROPIC_API_KEY
  • Docker (необязательно, для run.sh)
  • Ghidra (требуется для шага компиляции-проверки SLEIGH)
Скачать инструмент