
Статический анализатор бинарного кода с интеграцией с IDA. Выполняет анализ значений и потоков данных (taint analysis), восстановление типов, обнаружение использования после освобождения (use-after-free) и двойного освобождения (double-free).
BinCAT — это статический набор инструментов для анализа бинарного кода, предназначенный для помощи специалистам по реверс-инжинирингу, напрямую из IDA или с помощью Python для автоматизации.
Он предоставляет:
Вы можете посмотреть (более старую версию) BinCAT в действии здесь:
Ознакомьтесь с руководством, чтобы увидеть соответствующие задачи.
Поддерживаемые хостовые платформы:
Поддерживаемые процессоры для анализа (пока что):
Поддерживается только IDA v7.4 или новее
Более старые версии могут работать, но мы не будем их поддерживать.
Бинарный дистрибутив включает всё необходимое:
Шаги установки:
install_plugin.pyАнализатор может использоваться локально или через веб-сервис.
На Linux:
На Windows:
BinCAT должен работать с IDA на Wine после установки pip:
~/.wine/drive_c/Python/python.exe get-pip.pyCtrl-Shift-B или меню Edit -> Plugins -> BinCATBinCAT Configuration, нажмите <-- Current, чтобы задать начальный адресГлобальные параметры можно настроить через меню Edit/BinCAT/Options.
Конфигурация и параметры по умолчанию хранятся в $IDAUSR/idabincat/conf.
save to idbПредоставляется руководство, а здесь можно найти описание формата файла конфигурации.
Предоставляется учебное пособие, чтобы помочь вам попробовать возможности BinCAT.
BinCAT распространяется под лицензией GNU Affero General Public License.
Код BinCAT на OCaml включает код из оригинальной среды выполнения Ocaml, распространяемой под LGPLv2.
Плагин BinCAT для IDA содержит код из python-pyqt5-hexview от Willi Ballenthin, распространяемый под лицензией Apache 2.0.
BinCAT включает модифицированную копию newspeak.
Автоматические сборки для Linux и Windows выполняются автоматически с помощью GitHub Actions (см. здесь), результаты можно получить на вкладке Actions GitHub.