Анализ защищенности программного обеспечения

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

ема защиты при своем функционировании отбирает машинные ресурсы у защищаемого ПО, влияя, таким образом, на показатели его временной эффективности и ресурсоемкости. Следовательно, при оценке качества системы защиты ПО данные показатели требуют тщательных оценок, например, путем практических испытаний.

Показатели универсальности систем защиты программного обеспечения.

Из всех показателей универсальности на качество систем защиты ПО наибольшее влияние оказывают: гибкость, мобильность и модифицируемость.

Гибкость систем защиты ПО.

Как было отмечено в главе 1, гибкость характеризуют возможности использования ПО в различных областях.

По отношению к системам защиты ПО под гибкостью будем понимать возможность применения систем защиты для использования с различными видами ПО.

Требуемую гибкость системы защиты ПО необходимо обеспечить уже на стадии технического задания на его разработку. Отметим, что данный показатель имеет большое значение для оценки качества систем защиты навесного типа.

Мобильность систем защиты ПО.

Степень мобильности систем защиты ПО (то есть возможности их переработки для применения на ЭВМ аналогичного класса) во многом зависит от вида оцениваемой системы защиты ПО и способа ее разработки. Например, различные способы защиты алгоритма от отладчиков и дизассемблеров, как правило, вообще непереносимы, и их применение в системе защиты ухудшают ее мобильность. В целом, для оценки мобильности систем защиты ПО применимы вышеописанные методы.

Модифицируемость систем защиты ПО.

Этот показатель для систем защиты ПО характеризуется теми же свойствами, что и для ПО обычного назначения. Исключением могут быть случаи сознательного усложнения реализации алгоритма для затруднения его понимания. Следовательно, оценка данного показателями системы защиты ПО возможна методами, аналогичными для программного обеспечения общего назначения.

Рассмотрев особенности систем защиты ПО можно отметить, что их вспомогательный характер, с одной стороны, и характерные для них специфические особенности построения структуры и функционирования, с другой стороны, хотя и допускают применение набора показателей качества ПО и методов их оценки, описанных в главе 1, но при этом требуют некоторых изменений и доработки применительно к указанной специфике. Это потребует дальнейших исследований, выходящих за рамки данной работы.

2.4.2 Методы анализа и оценки безопасности ПО

На базе средств обнаружения элементов разрушающих программных средств (РПС) - от простейших антивирусных программ-сканеров до сложных отладчиков и дизассемблеров - анализаторов и выработался набор методов, которыми осуществляется анализ безопасности ПО.

Разделим методы, используемые для анализа и оценки безопасности ПО, на две категории: контрольно-испытательные и логико-аналитические (см. рисунок). В основу данного разделения положены принципиальные различия в точке зрения на исследуемый объект (программу). Контрольно-испытательные методы анализа рассматривают РПС через призму фиксации факта нарушения безопасного состояния системы, а логико-аналитические - через призму доказательства наличия отношения эквивалентности между моделью исследуемой программы и моделью РПС.

В такой классификации тип используемых для анализа средств не принимается во внимание - в этом ее преимущество по сравнению, например, с разделением на статический и динамический анализ.

Комплексная система исследования безопасности ПО должна включать как контрольно-испытательные, так и логико-аналитические методы анализа, используя преимущества каждого их них. С методической точки зрения логико-аналитические методы выглядят более предпочтительными, т.к. позволяют оценить надежность полученных результатов и проследить последовательность (путем обратных рассуждений) их получения. Однако эти методы пока еще мало развиты и, несомненно, более трудоемки, чем контрольно-испытательные.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Контрольно-испытательные методы анализа безопасности программного обеспечения

 

.,,,.">Контрольно-испытательные методы - это методы, в которых критерием безопасности программы служит факт регистрации в ходе тестирования программы нарушения требований по безопасности, предъявляемых в системе предполагаемого применения исследуемой программы [10] . Тестирование может проводиться с помощью тестовых запусков, исполнения в виртуальной программной среде, с помощью символического выполнения программы, ее интерпретации и другими методами.

Контрольно-испытательные методы делятся на те, в которых контролируется процесс выполнения программы и те, в которых отслеживаются изменения в операционной среде, к