Программно-компьютерная экспертиза представляет собой разновидность судебной компьютерно-технической экспертизы. С развитием компьютерной техники возникло новое направление совершаемых правонарушений, которые получили название преступлений в сфере компьютерной информации. В подобных преступлениях и не только для достижения цели используются средства компьютерной техники и программного обеспечения.
Основной целью программно-компьютерной экспертизы является установление причастности исследуемого программного комплекса к расследуемому преступному деянию. Также в результате анализа могут быть обнаружены следы совершенных противоправных действий. Предметом исследования данной экспертизы являются особенности разработки и применения программных средств компьютерной системы. Анализ может проводиться как по гражданским, так и по уголовным делам.
Объектами программно-компьютерной экспертизы являются следующие компоненты:
- Операционные системы (системное программное обеспечение).
- Утилиты (вспомогательные программы).
- Программные средства для разработки программного обеспечения, а также для его отладки.
- Прикладные программы, предназначенные для выполнения определенных функций – текстовые редакторы, электронные таблицы, программы для работы с двухмерной и трехмерной графикой, программы для создания презентаций, почтовые программы, чертежные редакторы и многое другое.
Поводом для назначения программно-компьютерной экспертизы может быть обоснованное подозрение на некорректную работу программного обеспечения, несовместимость двух и более программ, находящихся в одной цепи выполнения каких-либо операций и так далее.
Программно-компьютерная экспертиза широко применяется при расследовании уголовных дел, однако постепенно возрастает потребность в подобной исследовании и в других видах судопроизводства, что вызвано обширной компьютеризаций всех областей жизни. В настоящее время возникает множество гражданских дел, в том числе решаемых в арбитражных судах. Также большое количество дел связано с защитой прав потребителей, а также с нарушением авторских прав при распространении контрафактной продукции.
Задачи, которые решаются с помощью программно-компьютерной экспертизы
Программно-компьютерная экспертиза решает широкий спектр задач, связанных со специфическими особенностями программно обеспечения, его разработки, внедрения, применения и так далее. Большое разнообразие задач, решаемых с помощью данного исследования, обусловлено тем, что компьютерные системы с соответствующим программным обеспечением применяются практически во всех областях деятельности человека. Основными задачами программно-компьютерной экспертизы являются:
- Установление общих характеристик исследуемого программного обеспечения, анализ его компонентного состава.
- Классификация отдельных системных или прикладных программных средств, входящих в представленное для проведения экспертизы программное обеспечение.
- Установление контрафактности (или наличия таковых признаков) программного обеспечения в целом или его компонентов.
- Установление специфических характеристик исследуемого программного обеспечения. Определяется тип программного обеспечения, его наименование, версия, разработчик, вид представления (удаленный, явный или скрытый).
- Установление данных владельца и разработчика исследуемого программного средства. Для юридических лиц устанавливаются реквизиты организации. Для физических лиц – данные, удостоверяющие личность.
- Определение файлового состава исследуемого программного обеспечения с указанием их параметров – даты создания, типа, размера (объема), прочих атрибутов.
- Установление функционального предназначения исследуемого программного средства.
- Выявление наличия на исследуемой компьютерной системе программного обеспечения, предназначенного для решения определенной задачи.
- Установление технических характеристик аппаратного средства, необходимых для нормального функционирования исследуемого программного обеспечения.
- Определение совместимости программного и аппаратного состава компьютерной системы и исследуемого программного обеспечения.
- Установление принадлежности данного класса задач к функциональным возможностям исследуемого программного обеспечения.
- Установление текущего состояния компьютерной системы, а именно программного обеспечения, уровень работоспособности системы и способность системы к реализации определенных задач.
- Установление конфигурации устройств ввода-вывода в данной компьютерной системе, оснащенной исследуемым программным обеспечением.
- Выявление в исследуемом программном обеспечении отклонения от стандартных параметров (наличие недокументированных функций, инфицирования и пр.).
- Установление наличия в исследуемом программном обеспечении программных или программно-аппаратных средств защиты от копировании и несанкционированного доступа.
- Определение алгоритмов представленного для исследования программного средства.
- Установление способа защиты программного обеспечения.
- Установление инструментов разработки исследуемого программного обеспечения (типов компиляторов, языка программирования, системных библиотек).
- Выявление скрытых кодов с первоначальной версией программы.
- Определение модификаций исходных алгоритмов.
- Установление применения специфических приемов алгоритмизации и программирования.
- Установление хронологии производства изменений в исследуемом программном обеспечении.
- Установление хронологии применения исследуемого программного средства, начиная с момента его установки и активации.
- Установление возможных последствий последующей эксплуатации представленного на экспертизу программного обеспечения.
- Установление возможности выполнения исследуемой программой заданных функций после внесения изменений.
Методы проведения программно-компьютерной экспертизы
Методы исследования программного обеспечения, применяемые в ходе программно-компьютерной экспертизы, принято классифицировать, исходя из типа исследуемого объекта. Различают следующие группы методов:
- Методы анализа исходных кодов.
- Методы исследования программных алгоритмов.
- Методы изучения исполняемых кодов (загрузочных модулей).
Экспертиза загрузочных модулей базируется на исследовании программных средств с помощью основных методов, отслеживающих все прерывания, которые вызываются данной программой. Метод, используемый экспертом, должен точно соответствовать типу решаемой им задачи. Соответственно, для получения достоверного результата исследования, необходимо выбирать эксперта, обладающего высоким уровнем профессиональной компетенции и большим опытом проведения исследований.
При проведении анализа вредоносных программ (вирусов, червей и пр.) используют различные методы мониторинга – анализ файловых сигнатур (метод мониторинга дисковой памяти), сверка контрольных сумм (метод мониторинга оперативной памяти) и так далее.
Порядок проведения программно-компьютерной экспертизы
Процедура проведения программно-компьютерной экспертизы стандартна для всех подобных исследований. На первом этапе проводится консультация эксперта для определения разновидности экспертизы, предмета и задач исследования, а также стоимости и сроков его проведения.
На следующем этапе заключается договор с организацией на проведение экспертизы, после чего инициатор экспертизы передает специалисту программное средство на том носителе, на котором оно установлено, и всю имеющуюся документацию. В договор вносится предмет исследования, имеющиеся задачи исследования, поставленные перед экспертом вопросы, а также предполагаемые сроки окончания выполнения экспертизы. Далее специалист по производству исследования производит необходимые экспертные мероприятия и составляет экспертное заключение, которое является основным результатом проведения исследования и может быть представлено в качестве доказательства в ходе судебного разбирательства. В экспертное заключение вносится описание проведенного исследования, копии представленных документов и ответы на поставленные перед специалистом вопросы.
Правовая база для проведения программно-компьютерной экспертизы
Глава 28 Уголовного кодекса РФ описывает преступления в сфере компьютерной информации, а также меры наказания, назначаемые за подобные правонарушения. Глава содержит три статьи. Статья 272 регламентирует меры ответственности за незаконный доступ к закрытой компьютерной информации. Статья 273 предусматривает меры наказания за разработку, применение и распространение так называемых вредоносных программ, приводящих к уничтожению или блокированию информации в персональных компьютерах и производственных сетях. Статья 274 предписывает ответственность за несоблюдение техники использования персональных компьютеров, компьютерных систем или компьютерных сетей. Средствами программно-компьютерной экспертизы получается обоснование для вынесения решений по обозначенным в этой главе преступлениям.
Вопросы, которые ставятся перед специалистом по проведению программно-компьютерной экспертизы
Полный список вопросов весьма обширен. В каждом конкретном случае проведения программно-компьютерной экспертизы перечень вопросов формируется в зависимости от конечной цели исследования и разновидности исследуемого программного обеспечения. Вопросы, задаваемые эксперту, базируются на задачах, решаемых в процессе осуществления исследования. В общем случае вопросы выглядят следующим образом:
- Каковы общие характеристики исследуемого программного обеспечения?
- Из каких компонентов состоит данное программное обеспечение?
- Какова классификационная принадлежность исследуемого программного обеспечения?
- Каковы характеристики файлов, составляющих исследуемое программное обеспечение (дата создания, тип, размер и пр.)?
- Как называется данное программное средство? Каков его тип? Кто является разработчиком?
- Какая версия программного обеспечения представлена для проведения экспертизы?
- Какова функциональная особенность исследуемого программного обеспечения?
- Присутствуют ли в данной компьютерной системе программные средства, предназначенные для выполнения конкретной функциональной задачи?
- Каковы должны быть аппаратные характеристики компьютерной системы, необходимые для корректной работы исследуемой программы?
- Совместима ли исследуемая программа с аппаратным состоянием компьютерной системы, а также с уже установленным на нем программным обеспечением?
- Использовалась ли данная программа для выполнения определенных функциональных задач?
- Работоспособно ли исследуемое программное обеспечение? каково его фактическое состояние?
- Как именно организована система ввода-вывода данных в исследуемом программном обеспечении?
- Обнаружены ли в исследуемом программном обеспечении отклонения от стандартных характеристик типовых аналогичных программ?
- Включены ли в структуру программного продукта средства защиты от копирования и несанкционированного доступа?
- Каков алгоритм организации защиты от копирования и несанкционированного доступа?
- Каков основной алгоритм, лежащий в основе исследуемого программного обеспечения?
- Какие основные инструментальные средства использовались при разработке данного программного продукта?
- Каковы реквизиты разработчика (владельца) представленного для проведения экспертизы программного обеспечения?
- Какова хронология внесения модификаций в исследуемое программное обеспечение?
- Какова хронология применения исследуемого программного обеспечения, начиная с момента установки?
- Каковы возможные последствия дальнейшего применения представленного для экспертизы программного продукта?
- Какова причина изменений в программном обеспечении – действия пользователя, влияние вредоносной программы, ошибки программной среды, сбой аппаратуры и пр.?
Проведение экспертизы по уголовному делу
Согласно Постановлению Пленума Верховного Суда Российской Федерации от 21 декабря 2010 г. N 28 "О судебной экспертизе по уголовным делам" экспертиза по уголовному делу может быть проведена либо государственным экспертным учреждением, либо некоммерческой организацией, созданной в соответствии с Гражданским кодексом Российской Федерации и Федеральным законом "О некоммерческих организациях", осуществляющих судебно-экспертную деятельность в соответствии с принятыми ими уставами.
Коммерческие организации и лаборатории, индивидуальные предприниматели, образовательные учреждения не имеют права проводить экспертизу по уголовному делу, ровно как и некоммерческие организации, для которых экспертная деятельность не является уставной. Экспертиза, подготовленная указанными организациями в рамках уголовного процесса, может быть признана недопустимым доказательством, т.е. доказательством, полученным с нарушением требований процессуального закона.
Недопустимые доказательства не могут использоваться в процессе доказывания, в том числе, исследоваться или оглашаться в судебном заседании, и подлежат исключению из материалов уголовного дела.
Так как АНО "Судебный эксперт" является автономной некоммерческой организацией, а проведение судебных экспертиз является её основной уставной деятельностью (см. раздел "Документы организации"), то она имеет право проводить экспертизы в том числе и по уголовным делам.