Национальный цифровой ресурс Руконт - межотраслевая электронная библиотека (ЭБС) на базе технологии Контекстум (всего произведений: 634932)
Контекстум
Руконтекст антиплагиат система
Информационные системы и технологии  / 4 2010

АЛГОРИТМ АВТОМАТИЧЕСКОГО ОПРЕДЕЛЕНИЯ ЦИКЛОВ В ИСПОЛНЯЕМОМ КОДЕ (90,00 руб.)

0   0
Первый авторМожин
Страниц4
ID487729
АннотацияРассматривается задача восстановления структурных компонентов программного обеспечения. Предлагается алгоритм автоматического определения циклов в исполняемом коде
УДК004.415.5
Можин, С.В. АЛГОРИТМ АВТОМАТИЧЕСКОГО ОПРЕДЕЛЕНИЯ ЦИКЛОВ В ИСПОЛНЯЕМОМ КОДЕ / С.В. Можин // Информационные системы и технологии .— 2010 .— 4 .— С. 146-149 .— URL: https://rucont.ru/efd/487729 (дата обращения: 28.04.2024)

Предпросмотр (выдержки из произведения)

Научно-технический журнал УДК 004.415.5 С.В. МОЖИН АЛГОРИТМ АВТОМАТИЧЕСКОГО ОПРЕДЕЛЕНИЯ ЦИКЛОВ В ИСПОЛНЯЕМОМ КОДЕ Рассматривается задача восстановления структурных компонентов программного обеспечения. <...> Предлагается алгоритм автоматического определения циклов в исполняемом коде. <...> Ключевые слова: верификация программного обеспечения; граф потока управления; обратный инженеринг; алгоритм поиска структурных компонентов. <...> Ни бинарный код, ни ассемблерный листинг, полученный в результате дизассемблирования, не позволяют с приемлемыми трудозатратами оценить взаимосвязь элементов программы, а также идентифицировать в программе стандартные алгоритмические конструкции [3]. <...> Автоматическое определение структурных компонентов исполняемого кода дает возможность частично преодолеть указанные выше трудности. <...> Программные приложения, представленные в виде исполняемых файлов или на языке ассемблера, сложны для анализа их специалистами в области информационной безопасности и должны быть предоставлены им для анализа на более высоком уровне представления. <...> В частности, при компиляции программы из языка высокого уровня в язык ассемблера характерно отображение «многие к одному» концепций языка высокого уровня в концепции языка ассемблера, как следствие, однозначное восстановление структурных компонентов программы становится зачастую невозможным [2]. <...> Поэтому системы определения структурных компонентов исполняемого кода программ должны работать во взаимодействии с аналитиком, который управляет процессом декомпиляции. <...> В ходе определения структурных компонентов исполняемого кода программы решаются следующие задачи: выделение структурных единиц программы, в частности, подпрограмм в однородном ассемблерном листинге, выявление параметров подпрограмм и возвращаемых ими значений, структурный анализ, то есть восстановление операторов циклов, ветвлений и т.п., восстановление типов данных (как базовых <...>