Dynamic program analysis for error detection using goal-seeking input data generation
Динамический анализ программ с целью поиска ошибок и уязвимостей при помощи целенаправленной генерации входных данных

S.P. Vartanov, A.Y. Gerasimov
2014 Proceedings of the Institute for System Programming of RAS  
Динамический анализ программ с целью поиска ошибок и уязвимостей при помощи целенаправленной генерации входных данных Вартанов С. П., Герасимов А. Ю. svartanov@ispras.ru, agerasimov@ispras.ru Аннотация. В статье описываются принципы проведения динамического анализа программ с целью обнаружения в них дефектов различного рода при помощи целенаправленной генерации входных данных. Рассматриваются методы преобразования программ для извлечения трасс выполнения, механизмы отслеживания потоков данных и
more » ... построения входных данных для покрытия путей выполнения. Показывается, как подобный подход позволяет проводить анализ полностью автоматически без привлечения разработчиков и тестировщиков, на основе исполняемого или интерпретируемого кода. Приводится описание инструментов динамического анализа, разработанных в Институте системного программирования РАН,инструмента Avalanche, основанного на фреймворке Valgrind, и прототипа инструмента, производящего анализ программ на языке Java. В конце обзора приводятся результаты работы инструмента Avalanche на проектах с открытым кодом и результаты проведения динамического анализа Java-программ с целью поиска ошибок синхронизации. Ключевые слова: динамический анализ, анализ программ
doi:10.15514/ispras-2014-26(1)-15 fatcat:ppl6hqvrvvaefkylt5n7nwkyai