Член команды Google Project Zero Джеймс Форшоу (James Forshaw) обнаружил две критические уязвимости в драйвере TrueCrypt, который программа устанавливает в Windows-системах. Ошибки безопасности CVE-2015-7358, CVE-2015-7359 позволяют злоумышленникам осуществить эскалацию привилегий, получив полные права администратора и доступ ко всем данным пользователя даже в том случае, если они зашифрованы.
Уязвимости остались незамеченными во время независимого аудита кода приложения. Проверка состояла из двух этапов и проводилась инженерами iSEC Partners после того, как разработчики TrueCrypt внезпано заявили о закрытии проекта, сообщив о том, что в его коде могут содержаться уязвимости.
Форшоу считает, что найденные им уязвимости не являются бэкдорами. Исследователь заметил, что по всей видимости, участники аудита просто их не заметили.
Аудиторы фокусировались именно на поисках «закладок» в коде — подозрения в их наличии появились после странных заявлений первоначальных разработчиков TrueCrypt, которые так и остались анонимными.
Исследователь пока не представил подробных данных, заявив, что хочет дать авторам форков неделю на исправление багов. Поскольку инструмент более официально не развивается, то дыры безопасности напрямую в коде изначального приложения исправлены не будут. Тем не менее, ошибки были исправлены в открытой программе VeraCrypt, которая основана на TrueCrypt.
Версия VeraCrypt 1.15, выпущенная в конце сентября, содержит патчи для найденных Форшоу уязвимостей.
По словам эксперта исследовательского центра Positive Research Артема Шишкина, эксплуатировать найденные Форшоу уязвимости очень просто. «Встроенный статический верификатор на такое не жалуется, однако тот, кто «шарит» в безопасности, первым делом полезет это проверять». Эксперт не уверен в том, что уязвимости представляли собой «закладки»: «Сомнительно, скорее всего халтура, оставшаяся со времен Windows XP».
Руководитель отдела анализа приложений Positive Technologies Дмитрий Скляров предположил, что обнаруженные уязвимости действительно могли быть оставлены разработчиками TrueCrypt намеренно.
«Ошибка позволяет сделать скорее не Privilege Escalation, а получить доступ к тому TrueCrypt, смонтированному под другим пользователем, не имея прав администратора. То есть получить контроль над машиной уязвимость не позволяет, но зато обеспечение конфиденциальности явно хромает.
В свете этих фактов я, как профессиональный параноик, констатирую, что эти уязвимости вполне могут являться запланированными закладками. И тот факт, что они так похожи на «раздолбайство», делает их хорошими закладками, ибо специально созданные уязвимости довольно трудно сохранить незаметными».
По мнению Склярова, в ходе качественно проведенного аудита безопасности такие ошибки должны были быть обнаружены:
«В таких случаях всегда ищут конкретные типы уязвимостей — из описания похоже, что в проведенном аудите искали бэкдоры и алгоритмические закладки. А значит, хорошим аудитом подобные дыры должны быть обязательно выявлены».