Аппаратно-программные средства и методы защиты информации. Варлатая С.К - 190 стр.

UptoLike

190
внесении программных дефектов и дальнейшей замене оригинальных программ
на программы с приобретенными закладками. И, наконец, может
осуществляться полная замена прикладной исполняемой программы на
исполняемую программу нарушителя, что впрочем, требует от последнего
необходимость иметь точные и полные знания целевого назначения и конечных
результатов прикладной программы.
Все средства исследования ПО можно разбить на
2 класса: статические и
динамические. Первые оперируют исходным кодом программы как данными и
строят ее алгоритм без исполнения, вторые же изучают программу,
интерпретируя ее в реальной или виртуальной вычислительной среде. Отсюда
следует, что первые являются более универсальными в том смысле, что
теоретически могут получить алгоритм всей программы, в том числе и
тех
блоков, которые никогда не получат управления. Динамические средства могут
строить алгоритм программы только на основании конкретной ее трассы,
полученной при определенных входных данных. Поэтому задача получения
полного алгоритма программы в этом случае эквивалентна построению
исчерпывающего набора текстов для подтверждения правильности программы,
что практически невозможно, и вообще при динамическом исследовании
можно
говорить только о построении некоторой части алгоритма.
Два наиболее известных типа программ, предназначенных для
исследования ПО, как раз и относятся к разным классам: это отладчик
(динамическое средство) и дизассемблер (средство статистического
исследования). Если первый широко применяется пользователем для отладки
собственных программ и задачи построения алгоритма для него вторичны и
реализуются
самим пользователем, то второй предназначен исключительно для
их решения и формирует на выходе ассемблерный текст алгоритма.
Помимо этих двух основных инструментов исследования, можно
использовать:
"дискомпиляторы", программы, генерирующие из исполняемого кода
программу на языке высокого уровня;
внесении программных дефектов и дальнейшей замене оригинальных программ
на   программы       с    приобретенными       закладками.   И,   наконец,   может
осуществляться полная замена прикладной исполняемой программы на
исполняемую программу нарушителя, что впрочем, требует от последнего
необходимость иметь точные и полные знания целевого назначения и конечных
результатов прикладной программы.
         Все средства исследования ПО можно разбить на 2 класса: статические и
динамические. Первые оперируют исходным кодом программы как данными и
строят ее алгоритм без исполнения, вторые же изучают программу,
интерпретируя ее в реальной или виртуальной вычислительной среде. Отсюда
следует, что первые являются более универсальными в том смысле, что
теоретически могут получить алгоритм всей программы, в том числе и тех
блоков, которые никогда не получат управления. Динамические средства могут
строить алгоритм программы только на основании конкретной ее трассы,
полученной при определенных входных данных. Поэтому задача получения
полного алгоритма программы в этом случае эквивалентна построению
исчерпывающего набора текстов для подтверждения правильности программы,
что практически невозможно, и вообще при динамическом исследовании
можно говорить только о построении некоторой части алгоритма.
         Два   наиболее   известных    типа     программ,    предназначенных   для
исследования ПО, как раз и относятся к разным классам: это отладчик
(динамическое       средство)   и     дизассемблер    (средство    статистического
исследования). Если первый широко применяется пользователем для отладки
собственных программ и задачи построения алгоритма для него вторичны и
реализуются самим пользователем, то второй предназначен исключительно для
их решения и формирует на выходе ассемблерный текст алгоритма.
         Помимо этих двух основных инструментов исследования, можно
использовать:
     •    "дискомпиляторы", программы, генерирующие из исполняемого кода
          программу на языке высокого уровня;

                                         190