Как взломать запароленный RAR-архив

от автора

Приветствую!
Однажды ко мне в руки попал RAR архив.
Я совершенно точно знал, что в нём и мне это было нужно.
НО, было одно но, архив был запаролен.

Если вам интересно, как я решил эту проблему, прошу подкат.


Когда-то давно, лет 8-10 назад, я совершенно точно знал что делать. Но годы берут своё. Навыки, которые не используешь, имеют свойство забываться.
И я решил воспользоваться великим способом решения проблемы: погуглить.

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

Должен отметить, что нашёл всего два ресурса, в которых давались дельные советы. Первый – какой-то прогерско-хакерский форум, и там ребята молодцы, писали строки конкретного кода и идея, как ломануть пароль. Я к сожалению уже не найду ту ветку дабы её процитировать, но идея сводилась не к подбору пароля путём перебора, а к его подбору через ХЭШфункцию. Уважаемые друзья программисты, не пинайте больно, уж сильно далеко я убрел от ИТ, могу наврать, но тогда всё показалось таким знакомым и логичным, потому в определениях могу ошибаться.

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

Из своего старого опыта, любой RAR архив который мне попадался, я вскрывал самой простой софтиной максимум за пару часов. Про сложности паролей, конечно, спорить не буду, и про мощи компьютеров из тех времен тоже. Это просто опыт, то что было, не обессутте.
И так, я понял, что кодить я не буду, ну не смогу я уже. Нужно искать какую-нить софтину. И я отправился. После десятка скачиваний и попыток заразить мой компьютер различными гадостями, я уже было отчаялся. Потратив 15 минут на поиск софта — много. В идеале бы поднять виртуалку, но жалко было время и ресурсов ноута.

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

Установив её за минуту, полечив, я запустил. Увидел простой интерфейс, скормил ей файлик – архива, и для старта задал минимальные требования к паролю. Решил попробовать прогнать на первом этапе только циферный пароль с длиной от одного до 8 символов. И поставив на прогон, собрался забыть о ней на денёк, но только я хотел было встать и налить чаю, как софтина мигнула и я увидел заветные Success. Я аж охнул. Посмотрел пароль: 777. 🙂

image

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

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

В таком случае я бы взвесил много раз, рельно мне нужно то, что лежит в архиве, и если я без этого не смог бы жить, тогда скорее…
Отвечу цитатой из поста, одного из правильных форумов:
«Да, можно ассемблером пропатчить сам WinRAR, чтобы он принимал любой пароль, наверно также можно подправить контрольную сумму файлов в самом архиве, но толка от этого будет ноль.

Не хранится в самом архиве не пароль, не хеш от пароля.

Принцип разархирование прост – при вводе пароля, из него 262144 раз вычисляется хеш по алгоритму SHA1, и полученным ключом WinRAR пытается расшифровать (по AES) и разархировать файлы (тут не проверяется правильный пароль или нет). После того как файлы расшифрованы и разархированны, из них вычисляется контрольная сумма по CRC32, и это сумма сравнивается с той суммой которая прописана в самом архиве. Если эти суммы совпадает – мы получает расшифрованные файлы, а если не совпадает, то получаем предупреждение что контрольная сумма или пароль неправильны. Нет в RAR других проверок правильности пароля — только вот это проверка контрольный суммы «готового продукта».

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

Если посмотреть процесс разархивации при помощи «Process Monitor» от Microsoft, то там хорошо видно, как WinRAR создает временные файлы в папке %Userprofile%\Temp\. И если правами доступа запретить стирать файлы из этой папки, то можно даже посмотреть результат ввода неправильного пароля.

Единственный способ взлома архива RAR – брутфорс. Если кто то предлагает другой способ – не верти, это развод.»

Соглашусь с автором, только бутфорс. Помнится ещё в институте на занятиях криптологии, я зауважал winRAR с точки зрения безопасности.

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

Легкого кода! 😉

ссылка на оригинал статьи http://habrahabr.ru/post/224263/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *