Восстановление паролей к архивам: форматы ZIP, RAR5 и 7Zip

10 августа, 2021, Oleg Afonin
Рубрика: «Разное»
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Не так давно в продукте для восстановления паролей к зашифрованным архивам Elcomsoft Advanced Archive Password Recovery появилась поддержка форматов RAR5 и 7Zip, для которых стали доступны многопоточные атаки по словарю. В чём уникальность этих форматов, чем отличается новый формат RAR5 от «классических» архивов RAR, есть ли смысл шифровать ZIP-архивы и какой формат наиболее безопасен? Попробуем разобраться.

Историческая справка

Для нас Advanced Archive Password Recovery — продукт, вызывающий ностальгические чувства. В 1997 году именно этот продукт стал самым первым продуктом «Элкомсофт» для взлома паролей, получив название Advanced Zip Password Recovery. В те времена его интерфейс выглядел так:

Читатель со стажем наверняка вспомнит термин «shareware», популярный в 90-х и начале 2000-х годов. Именно таким образом распространялся в те годы этот продукт.

…а начиналось всё со взлома пароля к одному конкретному архиву ZIP, о чём нас попросил один из старых клиентов. Мы создали утилиту командной строки исключительно для того, чтобы подобрать пароль к тому единственному архиву. Спустя несколько месяцев у программы появился графический интерфейс, а ещё некоторое время спустя мы добавили поддержку других архивных форматов. Название пришлось поменять; с тех пор продукт носит имя Advanced Archive Password Recovery.

Уникальность Advanced Archive Password Recovery в сравнении с конкурентами — в использовании специализированных атак, использующих известные нам уязвимости в шифровании ZIP, благодаря некоторые архивы удаётся расшифровать без полного перебора всех возможных комбинаций паролей.

Формат ZIP

Архивный формат ZIP давно и прочно занимает первое место среди подобных. Для архивов в формате ZIP доступно два стандартных способа шифрования: классический метод Zip 2.0 (Legacy) и более современный стандарт AES, для которого, в свою очередь, существуют варианты с ключами длиной 128 и 256 бит. Компания WinZip опубликовала подробный разбор стандартов шифрования, в котором, в частности, не рекомендуется использование устаревшего «классического» способа шифрования:

“Legacy (Zip 2.0) encryption: this older encryption technique provides a measure of protection against casual users who do not have the password and are trying to determine the contents of the files. However, the Zip 2.0 encryption format is known to be relatively weak and cannot be expected to provide protection from individuals with access to specialized password recovery tools.”

“You should not rely on Zip 2.0 encryption to provide strong security for your data. If you have important security requirements for your data, you should instead consider using WinZip’s AES encryption, described above.”

Стандарт шифрования AES используется уже несколько десятилетий. Если пользователь решит установить пароль на архив, WinZip использует именно этот способ шифрования по умолчанию. Почему же мы снова и снова возвращаемся к устаревшему, небезопасному «классическому» стандарту шифрования ZIP? Дело в том, что многие продукты, для которых архивация и шифрование данных не являются основными функциями, для реализации поддержки формата ZIP используют библиотеки с открытым исходным кодом. Среди подобных компонентов попадаются и такие, которые используют исключительно устаревшие методы шифрования — в частности, «классический» вариант шифрования ZIP. На выходе получается архив, зашифрованный по стандарту Zip 2.0 (Legacy). Насколько распространена эта практика? Мы встречаем достаточно много архивов, зашифрованных по «классической» схеме; их число приближается к числу архивов, зашифрованных по стандарту AES.

Насколько действительно плох «классический» метод шифрования? Достаточно сказать, что использование единственного процессора Xeon E5-2603 без графического ускорителя даёт скорость перебора в 54 миллиона паролей в секунду. Это очень и очень много; в рамках современных требований к безопасности такая скорость перебора совершенно недопустима. Для сравнения, на том же процессоре скорость перебора паролей к архиву, зашифрованному новым стандартом AES, составляет порядка 2400 паролей в секунду, что в 22500 раз медленнее и во столько же раз более безопасно. Впрочем, для нового метода шифрования доступно ускорение при помощи графических карт (например, в продукте Elcomsoft Distributed Password Recovery). Даже очень старый ускоритель NVIDIA GTX 1080 демонстрирует скорость перебора паролей ZIP, зашифрованных алгоритмом AES в 203000 паролей в секунду, что в 85 раз превышает скорость атаки средствами центрального процессора. При использовании более современных карт NVIDIA с архитектурой Ampere скорость атаки возрастёт ещё в два раза.

Впрочем, исключительно высокая скорость перебора паролей «классического» шифрования ZIP не является единственной проблемой этого метода. Нам известны как минимум две уязвимости,  позволяющие расшифровать архив ещё быстрее.

ZIP: атака с известным открытым текстом

Атака с известным открытым текстом (known plaintext attack) позволяет расшифровать некоторые типы архивов в формате ZIP без восстановления оригинального пароля. Эта атака доступна только для архивов, защищённых «классическим» шифрованием, и не работает для архивов, зашифрованных AES.

Суть этой атаки — наличие хотя бы одного незашифрованного файла или его части, совпадающей с содержимым зашифрованного архива. Если у вас есть такой файл, а также ZIP-архиватор, использующий тот же устаревший алгоритм шифрования, вы сможете использовать атаку по известному тексту в Advanced Archive Password Recovery. Интересно то, что для этой атаки не нужно восстанавливать исходный пароль: для расшифровки архива он не понадобится. Впрочем, короткие пароли при желании можно достаточно восстановить быстро.

ZIP: гарантированное восстановление для WinZip

Ещё в 1990-х и начале 2000-х WinZip (и другие программы, основанные на исходных кодах Info-ZIP того периода) имели уязвимость в генераторе случайных чисел. Эта уязвимость позволила нам создать атаку, похожую на атаку с использованием известного открытого текста, но не требующую наличия каких-либо файлов из архива. Единственным ограничением было количество файлов в архиве: для использования этой атаки в архиве должно быть не менее 5 файлов. WinZip исправил эту уязвимость в версии 8.1, выпущенной в августе 2001 года.

Данная атака поможет взломать порядка 99,6% поддерживаемых ZIP-архивов, созданных с помощью уязвимой версии WinZip, или 255 из 256 архивов.

Обратите внимание, что в архивах ZIP с шифрованием AES этой уязвимости нет, как нет и каких-либо других известных уязвимостей.

Форматы RAR4, RAR5 и 7Zip

Шифрование в архиваторах RAR и 7Zip реализовано на высоком уровне: ни один из используемых форматов не имеет известных уязвимостей. Чтобы расшифровать архив в формате RAR или 7Zip, вам придётся подобрать исходный пароль методом полного перебора, словарной или гибридной атаки.

И RAR, и 7Zip используют шифрование AES, различаясь, впрочем, в деталях реализации. Интересно, что сильнее всего различаются реализации защиты в «старом» и «новом» форматах RAR (соответственно RAR4 и RAR5).

Шифрование в RAR4

В формате RAR4 архиватор WinRAR использовал шифрование AES с 128-битными или 256-битными ключами шифрования. Однако при попытке расшифровать архив архиватор не проверял вводимый пароль, пытаясь расшифровать файлы и проверяя контрольную сумму только в самом конце процесса, когда файл был полностью расшифрован. Легко догадаться, что перебор паролей для архивов в этом формате был исключительно медленным: для проверки каждого варианта пароля требовалось целиком расшифровать хотя бы один файл из архива. Если в архиве хранится единственный крупный файл, подобрать пароль становится практически невозможно.

Шифрование в RAR5

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

«Намного» быстрее — это насколько конкретно? В десять раз, в сто, тысячу? К сожалению, ответа на этот вопрос нет: если скорость атаки на архив в формате RAR5 мы можем замерить (цифры приводятся на графике ниже), то провести подобные измерения для архивов в формате RAR4 попросту невозможно: скорость атаки будет различаться от файла к файлу в зависимости от того, какого размера файлы находятся внутри.

Шифрование 7Zip

7Zip использует алгоритм шифрования AES-256 в режиме CBC. Ключ шифрования получается в результате 524288 (2^19^) итераций хеш-функции SHA-256. На данный момент в 7Zip не используется криптографическая соль, что нам представляется серьёзным упущением.

Скорость восстановления паролей к 7Zip ниже средней (а, следовательно, стойкость шифрования таких архивов — выше средней). Если сравнивать форматы RAR5 и 7Zip, то атаки на последний выполняются примерно в 3.5 раза медленнее. При использовании Elcomsoft Distributed Password Recovery с графическим ускорителем получаются следующие цифры:

 

 


  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

REFERENCES:

Advanced Archive Password Recovery

Advanced Archive Password Recovery восстанавливает пароли и снимает защиту с архивов ZIP, RAR и 7Zip, созданных во всех версиях программ PKZip, WinZip, 7Zip, RAR и WinRAR (как в графическом интерфейсе, так и в режиме командной строки). Будучи гибкой, настраиваемой и оптимизированной утилитой восстановления паролей, ARCHPR обеспечивает лучшую в своём классе производительность при восстановлении самых сложных паролей.

Официальная страница Advanced Archive Password Recovery »


Elcomsoft Distributed Password Recovery

Производительное решение для восстановление паролей к десяткам форматов файлов, документов, ключей и сертификатов. Аппаратное ускорение с использованием потребительских видеокарт и лёгкое масштабирование до 10,000 рабочих станций делают решение Элкомсофт оптимальным для исследовательских лабораторий и государственных агентств.

Официальная страница Elcomsoft Distributed Password Recovery »

НАШИ НОВОСТИ