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