DOI: 10.17587/prin.10.14-19
УДК: 004.056.53
Подход к разработке анализатора исходных текстов программ на основе использования LLVM
П. В. Закалкин, канд. техн. наук, сотр., e-mail: ansmed82@mail.ru, П. В. Мельников, канд. техн. наук, сотр., e-mail: ansmed82@mail.ru, М. Н. Горюнов, канд. техн. наук, сотр., e-mail: brviktorov@mail.ru, Р. В. Борзов, сотр., e-mail: brviktorov@mail.ru, Академия Федеральной службы охраны Российской Федерации, г. Орел
Описан подход к разработке анализатора исходных текстов программ, в основе которого лежит механизм символьного исполнения кода (инструментарий LLVM/Clang посредством Python binding). Предлагаемое решение обеспечивает корректный разбор файлов исходных текстов на отдельные составляющие с учетом их структуры и взаимосвязей. Оно позволяет избежать ошибок вставки датчиков и предоставляет эффективный механизм реализации алгоритмов поиска уязвимостей.
Ключевые слова: исходный код, дефект кода, поиск уязвимостей, статический анализ кода, динамический анализ кода, символьное исполнение кода, LLVM, Clang, Python binding, недекларированные возможности, анализатор исходных текстов
Стр. 14–19