|
Approach to analyzing executable code based on the software architecture recovery
[Подход к анализу исполняемого кода на основе восстановления программной архитектуры]
D. S. Kononov Federal State Unitary Enterprise «18 CSRI», Ministry of Defence of RF
Аннотация:
В статье рассматриваются новый подход к получению дополнительной информации об исследуемом программном модуле на основе предварительного восстановления программной архитектуры в ходе анализа исполняемого кода. В результате появляется возможность сократить требования к затрачиваемым ресурсам за счёт ограничения области исследования, рационального выбора приоритетов, абстрагирования от второстепенных элементов. В работе демонстрируется осуществимость восстановления программной архитектуры в рамках двухэтапного процесса: вначале проводится выделение обособленных компонентов, а затем определяются их назначения и взаимоотношения. Предлагается автоматизированный метод декомпозиции программного модуля, позволяющий выделять компоненты, соответствующие статическим библиотекам, классам и их группам. Данный метод базируется на кластеризации функций по расстояниям между ними в адресном пространстве и на графе вызовов. Приведено описание реализации разработанного метода в виде плагина для дизассемблера IDA.
Ключевые слова:
анализ исполняемого кода, программная архитектура, кластеризация, граф вызовов, расстояние между функциями, программный модуль, декомпозиция.
Образец цитирования:
D. S. Kononov, “Approach to analyzing executable code based on the software architecture recovery”, Труды ИСП РАН, 30:5 (2018), 75–88
Образцы ссылок на эту страницу:
https://www.mathnet.ru/rus/tisp361 https://www.mathnet.ru/rus/tisp/v30/i5/p75
|
Статистика просмотров: |
Страница аннотации: | 128 | PDF полного текста: | 72 | Список литературы: | 36 |
|