Компании Loohuis Consulting и Opendawn, при поддержке организаций NLnet Foundation и Linux Foundation, представили свободный инструмент Binary Analysis Tool
для обнаружения фактов использования кода GPL-проектов в бинарных
прошивках. Для определения в бинарном файле наличия включения целых
программ или их фрагментов программа использует специальную базу
знаний, построенную на основе доступных исходных текстов. База включает
в себя такие данные как символьные и строковые сигнатуры популярных
программ, данные о файловых системах, драйверах, данные о чипсетах и
связанной с аппаратными платформами информацией. В процессе проверки
может быть использована как централизованная база знаний, так и БД,
подготовленная собственными силами, например, с целью выявления следов
использования определенной программы.
На сайте проекта особо подчеркивается, что представленная
система не относится к категории инструментов, использующих методы
обратного инжиниринга, так как базируется на методе бинарного
сопоставления без декодирования данных. Программа может быть
использована без ограничений, как энтузиастами, так и коммерческими
компаниями, не опасаясь судебного преследования за обратный инжиниринг.
В базовом виде программа позволяет выявить в бинарной прошивке
факты использования Linux ядра и BusyBox, показать их версии и
параметры конфигурации, определить тип задействованной внутри прошивки
файловой системы и показать размещенные на ней типовые системные
утилиты.
Binary Analysis Tool представляет собой модульный фреймворк, написанный на языке Python и распространяющийся
в рамках лицензии Apache. Для построения поискового индекса
задействован модуль PyLucene, работающий поверх написанного на языке
Java поискового движка Lucene. Из дополнительных зависимостей названы:
binutils, e2tools, squashfs-tools, module-init-tools, gzip и xz.
Процесс использования программы наглядно продемонстрирован на
специально подготовленном видеоролике.
Источник
|