Бесплатная кросс-платформенная утилита TrueCrypt остаётся самым популярным средством шифрования. Её используют известные правозащитники, интернет-активисты и десятки миллионов рядовых пользователей по всему миру. В последнее время внимание к ней усилилось из-за проводимой экспертной оценки, которая уже дала первые результаты.

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

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

Самая популярная утилита шифрования впервые подверглась тщательному аудиту (коллаж по материалам researchershub.org).
Самая популярная утилита шифрования впервые подверглась тщательному аудиту (коллаж по материалам researchershub.org).

Об этих особенностях TrueCrypt «Компьютерра» уже писала ранее. Дополнительные вопросы вызывает странная лицензия программы, которая во многом похожа на GPL, но не является полностью свободной. Это препятствует включению TrueCrypt в дистрибутивы Linux и повышает общую настороженность.

Открытый код — необходимое, но недостаточное условие обеспечения безопасности. Недавно обнаруженная уязвимость Heartbleed лишний раз подтверждает это.

Сама TrueCrypt тоже успела подмочить репутацию: в версии 5.1 была обнаружена некорректная работа с драйвером диска, которая приводила к записи данных в открытом виде при использовании режима hibernate.

Седьмую версию TrueCrypt проверяла команда разработчиков защищённой модификации ОС Ubuntu, но это была преимущественно теоретическая работа с оценкой программы в специфической среде.

С тех пор программа сильно изменилась, а её полноценного анализа так никто и не провёл. Поэтому программист Кеннет Уайт (Kenneth White) и криптограф профессор Мэттью Грин (Matthew Green) выступили с общественной инициативой первого полномасштабного аудита TrueCrypt.

Профессор Мэттью Грин (фото: opencryptoaudit.org).
Профессор Мэттью Грин (фото: opencryptoaudit.org).

В середине октября они начали сбор средств на двух краудфандинговых платформах — IndieGoGo и FundFill. Конечная цель была указана как получение $25 тыс. на привлечение специалистов по аудиту. Среди них должны были быть юристы, программисты и независимые криптографы (очень желательно — за пределами США). Планировалось изучить правовой статус лицензии, проанализировать исходный код программы и убедиться в отсутствии уязвимостей.

Инициатива True Crypt Audit получила широкий резонанс и привлекла гораздо больше пожертвований, чем рассчитывали её организаторы. Всего они собрали около $63 тыс. и 33,71 биткойна (что на момент публикации статьи составляло более $14 тыс.). Итого на аудит поступило втрое больше изначально требуемой суммы.

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

Серьёзный сдвиг с мёртвой точки произошёл только в минувший понедельник. На сайте проекта появился отчёт компании iSEC, подписанный двумя экспертами в области безопасности (ещё четверо указаны как рецензенты).

К настоящему времени в последней версии (7.1a) удалось обнаружить одиннадцать уязвимостей, четыре из которых признаны угрозами среднего уровня.

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

Главные уязвимости TrueCrypt 7.1a (изображение: opencryptoaudit.org).

«Исходный код [утилиты TrueCrypt] для загрузчика и драйвера ядра Windows не соответствует принятым стандартам безопасности, — сказано в отчёте. — Это обусловлено использованием небезопасных или устаревших функций, несовместимых типов переменных и так далее».

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

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

«Результаты проверки пока не пугают меня, — сообщает профессор Грин в интервью изданию Ars Technica. — Хотя качество кода оказалось не столь уж высоким, ничего страшного в нём нет, и это обнадеживает».

Создание зашифрованного раздела в Mac OS X с помощью TrueCrypt (изображение: truecrypt.org).
Создание зашифрованного раздела в Mac OS X с помощью TrueCrypt (изображение: truecrypt.org).

В следующем году утилита TrueCrypt может отметить своё десятилетие, однако её авторы до сих пор остаются в тени. Отдельные следы ведут то в Чехию, то в штат Невада, но не приводят к реально существующим людям.

Профессор Грин связался с Дэвидом Морганом, от имени которого размещаются обновления на сайте TrueCrypt.com. Собеседник выразил интерес к результатам аудита и признал наличие как минимум одной уязвимости.

«Предполагалось, что TrueCrypt защитит вас от некоторых проблем, а не будет гарантированно надёжным средством, как этого хотелось бы некоторым», — ответил он.

Теперь команда Open Crypto Audit Project приступает ко второй фазе аудита — непосредственной проверке в разных сценариях атак криптостойкости файловых контейнеров и дисковых разделов, защищённых с помощью TrueCrypt.