На волне новостей чип-апокалипсиса 2018 года, когда взломано почти всё, а сайты мировых брендов, сами того не подозревая, майнят в наших браузерах криптовалюту, мы решили покуситься на святая святых и взломать документы, подписанные усиленной квалифицированной электронной подписью. И вот что из этого вышло. Как известно, усиленная квалифицированная электронная подпись (ЭП) позволяет определить лицо, подписавшее документ, и обнаружить факт внесения изменений в документе (см. ст. 5, п. 3 Федерального закона № 63 «Об электронной подписи»). Алгоритм генерации коллизий хеш-функции в этот раз нам не понадобится. Для взлома надо найти способы внесения изменений в электронный документ после его подписания, так, чтобы эти изменения не были обнаружены при проверке ЭП. Начнём. Здесь и далее предполагается, что в системе уже установлен сертификат квалифицированной электронной подписи: 

 Реализуем атаку: В этот раз будем использовать наиболее продвинутый комплекс защиты информации КриптоПро CSP 4.0, соответствующий стандарту ГОСТ Р 34.10-2012: Реализуем атаку: Это эффективные, но не единственные способы атаки. Есть еще макросы, вычисляемые значения полей, стили. Не защитит от них ни использование системы управления данными (PDM), ни откреплённые подписи, ни применение специализированных криптографических комплексов типа КриптоПро CSP. Как же обеспечить защиту от такого рода атак? Самый эффективный способ — публиковать документы в нередактируемый формат или формат фиксированной разметки. Эти форматы нацелены на сохранение первоначального вида документа на любом устройстве, в любой точке мира. Вот наиболее распространённые представители форматов фиксированной разметки: Но и здесь не всё так однозначно. Попробуем провести атаку через шрифт на подписанный PDF-документ: Реализуем атаку: Для PDF удалось реализовать данный вид атаки потому, что этот формат допускает использование шрифтов по ссылке, поэтому он не подходит для создания подлинников.Существует стандарт PDF/A (подмножество PDF), который обеспечивает необходимую защиту. Поэтому перед подписанием каждого PDF необходимо убедиться, что документ соответствует стандарту PDF/A или отсутствуют зависимости от шрифтов. Форматы DWFx и XPS не подвержены такого рода атакам, так как на уровне стандарта ECMA-388 регламентируется хранение ресурсов внутри содержательной части документов (F.3.1 M2.6). Но DWFx не подходит для создания многостраничных текстовых документов, поэтому наиболее универсальным вариантом является XPS. Попробуем по аналогии с PDF провести атаку через шрифт на подписанный XPS-документ: Реализуем атаку: Усиленная квалифицированная электронная подпись по прежнему является надёжной технологией для обнаружения факта внесения изменений в документ. Но следует комплексно оценивать эффективность её применения. Эксперимент показал, что редактируемые форматы DWG, DOC, DOCX не подходят для создания электронных подлинников, так как могут быть легко скомпрометированы. Более защищенными и универсальными для создания подлинников являются форматы PDF/А и XPS, так как они содержат внутри файла всю необходимую информацию для того, чтобы каждый раз отображать документ в неизменном виде. Дмитрий Поскребышев Аналитик