
Порядок назначения, методика проведения и доказательственное значение в арбитражном и гражданском процессе
Введение
📌 Настоящий документ представляет собой системное изложение организационных, процессуальных и методических аспектов проведения экспертного исследования программного обеспечения. В условиях цифровизации экономики и судебной системы программы для электронных вычислительных машин становятся объектами споров все чаще. 🖥️ Для разрешения таких споров требуется специальная процедура — экспертиза программ для ЭВМ, которая позволяет получить объективное научно-техническое заключение. Данная статья адресована судьям, адвокатам, юрисконсультам и техническим специалистам. 📑
Раздел 1. Определение и место экспертизы программ для ЭВМ в системе судебных экспертиз
🏷️ Экспертиза программ для ЭВМ является разновидностью компьютерно-технической экспертизы, выделившейся в самостоятельное направление ввиду специфики объекта. Объектами выступают: исходный код, исполняемые файлы, алгоритмы, базы данных, прошивки. 📦 Предмет — фактические обстоятельства, устанавливаемые на основе специальных знаний в области программирования. В отличие от аппаратной экспертизы, здесь исследуется нематериальная составляющая. 🧠
Раздел 2. Нормативно-правовая база производства экспертизы
📚 Деятельность регламентируется следующими актами:
Федеральный закон № 73-ФЗ «О государственной судебно-экспертной деятельности в РФ».
Гражданский процессуальный кодекс РФ (ст. 79–86).
Арбитражный процессуальный кодекс РФ (ст. 82–87).
Уголовно-процессуальный кодекс РФ (ст. 195–207).
Приказы Минюста об утверждении методических рекомендаций.
Все действия эксперта должны строго соответствовать процессуальным нормам. ⚖️
Раздел 3. Типовые вопросы, разрешаемые экспертизой
📝 При назначении экспертизы суд или стороны формулируют следующие вопросы:
Имеются ли в программе для ЭВМ (название, версия) признаки контрафактности по отношению к другой программе?
Является ли код программы производным (заимствованным) от исходного кода, представленного в материалах дела?
Соответствует ли программа обязательным требованиям технического задания и документации?
Содержит ли программа недекларированные возможности (функции, не описанные в документации)?
Идентичны ли алгоритмы обработки данных в двух сравниваемых программных продуктах?
Возможно ли восстановить алгоритм работы программы без использования исходного кода? 🧩
Раздел 4. Материалы, предоставляемые для производства экспертизы
💾 Для качественного исследования необходимы:
дистрибутивы программы на машинных носителях (CD, DVD, флеш-накопители) или в виде файлов;
исходные тексты (при наличии и при условии, что они не являются коммерческой тайной, раскрываемой суду);
техническая документация (спецификации, руководства администратора, описание API);
логи работы системы и журналы событий;
доступ к серверному или клиентскому окружению, если программа функционирует в специфической среде;
хеш-суммы (MD5, SHA) всех файлов для подтверждения неизменности. 🔐
Раздел 5. Порядок назначения экспертизы: действия суда и сторон
📋 Назначение экспертизы осуществляется:
по ходатайству стороны (истца или ответчика);
по инициативе суда (при возникновении вопросов, требующих специальных знаний).
Сторона, заявляющая ходатайство, обязана внести денежные средства на депозит суда (если иное не предусмотрено соглашением). 💰 Суд выносит определение, в котором указывает: экспертное учреждение или конкретного эксперта, перечень вопросов, сроки проведения, материалы дела. Уклонение от оплаты или непредоставление объектов влечет отказ в удовлетворении ходатайства. ⚠️
Раздел 6. Кейс №1: Спор о нарушении авторских прав на исходный код ERP-системы
🏭 Ситуация: Компания-разработчик «Альфа» обнаружила, что конкурент «Бета» выпустил программный продукт для управления предприятием, функционально и структурно схожий с разработкой «Альфы». Истец предоставил исходный код своей системы и запросил у ответчика исходный код его продукта. Суд назначил экспертизу программ для ЭВМ.
🔬 Методика: Эксперт провел статический анализ абстрактных синтаксических деревьев (AST), вычислил метрику Вагнера — Фишера, а также проанализировал уникальные строковые константы и последовательности вызовов функций.
📊 Результат: Выявлено 86% совпадений нетривиальных фрагментов кода, включая одинаковые ошибки в алгоритме расчета себестоимости. Суд удовлетворил иск, взыскав 12 млн рублей компенсации. 💰
Раздел 7. Кейс №2: Обнаружение закладки в программном обеспечении кассового узла
🏧 Ситуация: В сети розничных магазинов при инвентаризации обнаружена недостача, возникшая, предположительно, из-за нештатной работы кассового ПО. Постановлением следствия назначена экспертиза программ для ЭВМ. Исходный код не предоставлен, исследованию подлежали только исполняемые модули (EXE, DLL).
🕵️ Методика: Применен динамический анализ в контролируемой среде с трассировкой системных вызовов (API Monitor). Эксперт эмулировал различные даты и состояния счетчиков.
📡 Вывод: Выявлен модуль, который при превышении суммы чека более 50 000 рублей отправлял на внешний IP-адрес зашифрованный пакет с данными о продаже. Заключение признано допустимым доказательством по уголовному делу о неправомерном доступе к компьютерной информации (ст. 272 УК РФ). 🔒
Раздел 8. Кейс №3: Несоответствие программы техническому заданию по госконтракту
🏛️ Ситуация: Государственный заказчик (федеральное агентство) заключил контракт на разработку системы документооборота. Исполнитель сдал код, но система зависала при одновременной работе более 50 пользователей и теряла часть вложенных файлов. Техническое задание требовало поддержки 500 одновременных пользователей.
⚙️ Методика: Экспертиза программ для ЭВМ включала нагрузочное тестирование с использованием JMeter, профилирование памяти (профайлер dotMemory) и анализ алгоритмов индексации.
📉 Результат: Установлено, что архитектура базы данных не содержит необходимых индексов, а алгоритм работы с файлами блокирует потоки (thread contention). Эксперт сделал вывод о несоответствии программы условиям контракта. Суд расторг контракт и взыскал неустойку. 📄
Раздел 9. Процессуальный статус заключения эксперта и его оценка судом
🧾 Заключение эксперта является самостоятельным доказательством (ст. 55 ГПК РФ, ст. 64 АПК РФ). Оно не имеет заранее установленной силы и подлежит оценке наряду с другими доказательствами. Однако на практике суды крайне редко отвергают мотивированные, научно обоснованные заключения без назначения повторной экспертизы. 🧑⚖️ Эксперт предупреждается об уголовной ответственности по ст. 307 УК РФ за дачу заведомо ложного заключения. Подпись эксперта скрепляется печатью. 📜
Раздел 10. Методы экспертного исследования: статический и динамический анализ
🔬 Статический анализ проводится без запуска программы. Методы:
лексический разбор (токенизация);
построение графа потока управления (CFG);
построение графа потока данных (DFG);
вычисление метрик сложности по Холстеду и Маккейбу.
⚡ Динамический анализ — исследование в процессе исполнения программы. Методы:
отладка с установкой точек останова (breakpoints);
трассировка системных вызовов и библиотечных функций;
запись и анализ сетевого трафика;
анализ дампов памяти.
Обычно применяется комплексный подход. 🧪
Раздел 11. Сравнительный анализ кода: количественные критерии подобия
📊 Для вывода о контрафактности или заимствовании эксперт использует:
процент совпадения нетривиальных строк кода (без комментариев и пробелов) — порог обычно от 40%;
совпадение сигнатур функций и классов (более 65%);
совпадение AST-узлов (более 70%);
наличие одинаковых уникальных ошибок (багов) в обеих программах.
Экспертиза программ для ЭВМ обязательно сопровождается таблицами сравнения и визуализацией совпадений. 📈 При низком проценте совпадений, но наличии идентичных недокументированных особенностей, эксперт может сделать вывод о заимствовании. 🧩
Раздел 12. Особенности исследования при недоступности исходного кода
🛡️ Если сторона отказывается предоставлять исходные тексты (коммерческая тайна, секретность), эксперт проводит дизассемблирование объектного кода. Используются инструменты IDA Pro, Ghidra, Binary Ninja. 🔧 Эксперт получает ассемблерный код и реконструирует псевдокод высокого уровня. Сравнение может проводиться методом бинаффинга (bin diffing) с выделением уникальных сигнатур. Российские суды признают такие методы допустимыми при условии подробного описания в заключении. 📑
Раздел 13. Экспертиза лицензионной чистоты и обнаружение open source компонентов
♻️ Многие коммерческие продукты используют библиотеки с открытым исходным кодом (Open Source). Лицензии GPL, LGPL, AGPL налагают обязанность раскрывать производный код. Экспертиза программ для ЭВМ может установить:
наличие кода, скопированного из open source репозиториев (GitHub, GitLab);
идентификацию лицензии по заголовочным комментариям и текстам лицензий внутри бинарных файлов;
факт нарушения копилефтных условий (например, использование GPLv3 кода в закрытом приложении).
Суды, получив такое заключение, обязывают нарушителя опубликовать исходный код или прекратить распространение продукта. 🔓
Раздел 14. Редкость компетенции и географическая доступность: готовность к выезду
🗺️ В Российской Федерации количество аттестованных экспертов по исследованию программ для ЭВМ не превышает нескольких десятков человек. Большинство из них сосредоточены в Москве и Санкт-Петербурге. 🚗 Однако ввиду того, что такая экспертиза является весьма редким явлением, мы готовы вылетать для проведения данной экспертизы в любой регион России — от Калининграда до Владивостока, от Мурманска до Махачкалы. ✈️ Это необходимо для осмотра оборудования по месту нахождения организации, изъятых серверов в рамках следственных действий, а также для присутствия при процессуальных действиях (выемка, обыск) в режиме реального времени. 🏢 Все командировочные расходы уже включены в стоимость экспертизы. 🧳
Раздел 15. Экспертное заключение: структура и обязательные элементы
📄 Заключение эксперта состоит из следующих частей:
Вводная: дата, место, основания назначения, данные об эксперте, вопросы, перечень объектов.
Исследовательская: описание методик, ход анализа, промежуточные выводы, таблицы, графики, скриншоты кода.
Синтезирующая: систематизация полученных данных.
Выводы: ответы на каждый вопрос суда в категоричной форме («да», «нет», «установить не представилось возможным»).
Приложения: листинги кода, хеш-суммы, акт применения технических средств.
Заключение нумеруется, подписывается и скрепляется печатью. 🖋️
Раздел 16. Ответственность эксперта и права сторон
⚖️ Эксперт несет уголовную ответственность за дачу заведомо ложного заключения (ст. 307 УК РФ). Он обязан явиться по вызову суда, дать разъяснения. Стороны имеют право:
заявить отвод эксперту (при наличии оснований, ст. 18 73-ФЗ);
представить дополнительные материалы;
ходатайствовать о постановке дополнительных вопросов;
присутствовать при проведении экспертизы (с разрешения суда);
ознакомиться с заключением и ходатайствовать о назначении дополнительной или повторной экспертизы. 📑
Раздел 17. Дополнительная и повторная экспертиза: основания и порядок
🔄 Дополнительная экспертиза назначается при неполноте или неясности первичного заключения, когда эксперт не ответил на часть вопросов. Проводится тем же или другим экспертом.
🔄 Повторная экспертиза назначается при обоснованных сомнениях в правильности или достоверности заключения (например, если выявлены методологические ошибки). Проводится комиссией экспертов. В делах о программном обеспечении повторные экспертизы назначаются примерно в 20% случаев. 📊
Раздел 18. Автоматизированные средства, используемые экспертом
🛠️ Эксперт применяет программные продукты:
Статический анализ исходного кода: SonarQube, PVS-Studio, Resharper, Coverity.
Статический анализ бинарного кода: IDA Pro, Ghidra, Radare2, Binary Ninja.
Сравнение кода: MOSS, JPlag, Simian, DiffMerge.
Динамический анализ: WinDbg, x64dbg, GDB, strace, dtrace.
Анализ сети: Wireshark, TShark, Charles Proxy.
Средства для обеспечения неизменности: вычисление хешей (HashTab, fciv).
Все инструменты должны быть легально приобретены, их применение отражено в исследовательской части. 💻
Раздел 19. Частные случаи: экспертиза прошивок (firmware) и встроенного ПО
🔌 Встраиваемые системы (медицинское оборудование, станки с ЧПУ, автомобильные блоки управления) содержат прошивки, записанные в микроконтроллеры. Экспертиза программ для ЭВМ таких объектов требует:
извлечения прошивки через программатор или интерфейс отладки (JTAG, SWD);
анализа энергонезависимой памяти (EEPROM, Flash);
дизассемблирования для архитектур ARM, AVR, x86, MIPS;
проверки на наличие закладок или модифицированных алгоритмов безопасности. 🚗
Пример: в споре о ДТП с участием электромобиля экспертиза прошивки контроллера установила, что производитель изменил алгоритм ограничения скорости после гарантийного ремонта. 📉
Раздел 20. Экономическая составляющая: оценка стоимости разработки в рамках экспертизы
💰 При нарушении авторских прав истец вправе требовать компенсацию (ст. 1301 ГК РФ). Эксперт-программист может провести расчет стоимости создания аналогичной программы «с нуля», используя:
метод трудозатрат (человеко-часы × средняя ставка разработчика);
метод сравнения рыночных аналогов (анализ цен на готовое ПО);
метод упущенной выгоды (прогноз продаж лицензий).
Полученная цифра затем используется судом для определения размера взыскания. 📊
Раздел 21. Ошибки при назначении экспертизы и способы их предотвращения
❌ Распространенные ошибки:
Постановка правовых, а не технических вопросов («Виновен ли ответчик?»).
Непредоставление сравнительных образцов.
Отсутствие хешей — невозможность подтвердить неизменность объектов.
Назначение экспертом лица, не имеющего опыта работы с конкретным языком программирования.
✅ Рекомендации: предварительно проконсультироваться с экспертом, сформулировать вопросы в письменном виде, обеспечить неизменность файлов, выбирать аттестованных специалистов. 📋
Раздел 22. Экспертиза баз данных как части программного обеспечения
🗄️ Базы данных (СУБД) часто являются неотъемлемой частью ПО. Экспертиза программ для ЭВМ включает:
анализ структуры таблиц и связей (ER-диаграмм);
проверку индексов, хранимых процедур (stored procedures), триггеров;
сравнение схем данных с документацией;
выявление несанкционированных модификаций данных через SQL-логи.
Пример: в споре о корпоративной CRM-системе экспертиза выявила, что исполнитель не создал необходимые индексы, что привело к катастрофическому замедлению работы. 📉
Раздел 23. Обеспечение сохранности объектов: хранение и возврат
📦 Эксперт обязан обеспечить физическую сохранность носителей и файлов. Материалы хранятся в сейфе или опечатанном помещении. После окончания экспертизы все объекты возвращаются суду или лицу, их предоставившему, с актом приема-передачи. Уничтожение или копирование без разрешения суда не допускается. 🔒 При выездном исследовании эксперт составляет протокол осмотра, в котором фиксирует состояние ЭВМ, действия, установленное ПО. 🧾
Заключение
🟩 Экспертиза программ для ЭВМ — это сложный, но крайне востребованный инструмент судебного доказывания в делах, связанных с нарушением авторских прав, плагиатом, невыполнением госконтрактов, распространением вредоносного ПО. Ввиду редкости таких специалистов и необходимости оперативного реагирования, мы готовы вылетать для проведения данной экспертизы в любой регион России в кратчайшие сроки. 🔗 Подробная информация о методологии, стоимости и примерах заключений представлена на официальном сайте: https://sud-expertiza.ru
🟩 Настоящая статья подготовлена в деловом стиле и может использоваться в качестве методического пособия для юристов, судей, следователей и технических специалистов, участвующих в назначении и проведении экспертиз программного обеспечения.





Задавайте любые вопросы