Новости вебджастис-обновления

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


Начнём с важной оговорки.

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

Поэтому корректный вопрос звучит иначе: «Можно ли без значительных усилий и специальных познаний обойти установленные меры безопасности? Являются ли предпринятые меры безопасности достаточными для затруднения реальной возможности преднамеренного изменения фиксируемой информации при одновременном сохранении удобства и доступности сервиса для добросовестных пользователей?».

Мы считаем, что хороший сервис не должен строиться исходя из презумпции недобросовестности его пользователей, а тем более из презумпции умысла на совершение уголовного преступления, имея ввиду ст.303 УК РФ. Сервис должен иметь разумные пределы защиты и ограничений исходя из реального, а не абсолютного уровня риска, равно как и суд оценивая доказательства исходит из баланса вероятностей, не принуждая стороны доказывать буквально каждое произнесенное слово или содержимое представленного документа.

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

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

В новой версии мы немного “подкрутили гайки", усилив защиту и очень ждем вашей обратной связи, если вдруг баланс между безопасностью и удобством перестал отвечать интересам большинства пользователей.

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

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

Серверный контур: независимая проверка контента

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

В рамках серверной архивации формируется  копия интернет-ресурса, полученная напрямую из сети вне контроля пользователя. Система сохраняет не только внешний вид страницы, но и связанные с ней материалы, необходимые для последующего воспроизведения и проверки её состояния: HTML-код, изображения, таблицы стилей, сценарии, документы и другие данные. Дополнительно могут создаваться визуальные копии, последовательность переходов, технические сведения о процессе загрузки.

Архивирование выполняется отдельно от браузера пользователя и позволяет сопоставить содержимое, зафиксированное расширением, с версией ресурса, самостоятельно полученной сервером в тот же период времени.

Также сохраняются:

  • адреса и IP-данные сетевых узлов;
  • коды и ответы серверов;
  • HTTP-заголовки;
  • сведения о перенаправлениях;
  • метки времени запросов и ответов;
  • данные о доменном имени и его регистрации, полученные из общедоступных WHOIS-источников;
  • результаты трассировки сетевого маршрута до ресурса;
  • иные технические параметры, позволяющие проверить источник, доступность и сетевой путь получения информации.

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

Это позволяет валидировать процедуру фиксации и зафиксированные данные, как в момент фиксации, так и постфактум. 

Новости вебджастис-обновления


Клиентский контур: контроль целостности сессии

Расширение контролирует всю сессию фиксации от начала до конца. В актуальной версии действуют следующие правила:

  1. Фиксация выполняется после подлинного, полного завершения загрузки страницы из сети: критерий — сетевой исход главного документа (webRequest.onCompleted для main_frame). Принудительная остановка или прерванная перезагрузка (ERR_ABORTED) не засчитывается и прекращает сессию, даже если браузер сообщил статус complete.
  2.  Открытие инструментов разработчика на любом этапе активной фиксации — вплоть до финальной отправки данных на сервер — немедленно прекращает сессию: сброс расширения, стирание записанных видео и скриншотов из IndexedDB и закрытие вкладки. Защита покрывает захват, превью и экран оформления протокола, где полезная нагрузка заново собирается из хранилища.
  3. Детектируются: открытие DevTools во время фиксации (единственный вектор подмены ресурсов через Local Overrides), попытки доступа к service worker'у расширения через служебные страницы (chrome://inspect, chrome://serviceworker-internals), отзыв у расширения доступа к сайтам и аномально частые перезагрузки главного документа.
  4. Заверяются только реальные сетевые документы: служебные состояния (about:blank и т.п.) нелегитимны — такие вкладки закрываются на старте фиксации и при срабатывании защиты, а проверка идёт по действительному адресу документа.


Юридический контур

Создание протоколов с преднамеренно измененными данными и их использование в качестве доказательств прямо запрещены п. 5.4 Лицензионного соглашения. В зависимости от обстоятельств такие действия могут квалифицироваться как фальсификация доказательств (ст. 303 УК РФ). При выявлении вмешательства сервис передает необходимую информацию в суд и правоохранительные органы, а также принимает иные меры, предусмотренные законодательством и лицензионным соглашением. 


Итог

Достоверность фиксации в ShotApp обеспечивается не одним механизмом, а тремя контурами: серверным (независимый контент и сетевые данные), клиентским (контроль целостности сессии) и юридическим (ответственность за фальсификацию). Обойти нужно все три одновременно — и именно поэтому попытки вмешательства не приводят к появлению юридически пригодного, но недостоверного протокола.