Как я справился с запароленным RAR-архивом
Восстановление данных Recovery mode Приветствую! Однажды ко мне в руки попал RAR архив. Я совершенно точно знал, что в нём и мне это было нужно. НО, было одно но, архив был запаролен. Если вам интересно, как я решил эту проблему, прошу подкат. Когда-то давно, лет 8-10 назад, я совершенно точно знал что делать. Но годы берут своё. Навыки, которые не используешь, имеют свойство забываться. И я решил воспользоваться великим способом решения проблемы: погуглить. Благо гуглить я умею и искать нужную информацию тоже. НО я был просто изумлен, от того что я увидел. Все форумы, все источники пестрили тем, что призывали к тому, чтобы бросить эту гнусную, гадкую, скучную и долгую затею. И призывали найти, либо дикого хацкера, либо бросить. Должен отметить, что нашёл всего два ресурса, в которых давались дельные советы. Первый – какой-то прогерско-хакерский форум, и там ребята молодцы, писали строки конкретного кода и идея, как ломануть пароль. Я к сожалению уже не найду ту ветку дабы её процитировать, но идея сводилась не к подбору пароля путём перебора, а к его подбору через ХЭШфункцию. Уважаемые друзья программисты, не пинайте больно, уж сильно далеко я убрел от ИТ, могу наврать, но тогда всё показалось таким знакомым и логичным, потому в определениях могу ошибаться. Второй ресурс ссылался на некоторое кол-во софтин, которые могут подобрать пароль путём перебора, их сравнение между собой, и их бесплатность или платность, сильные или слабые стороны. Из своего старого опыта, любой RAR архив который мне попадался, я вскрывал самой простой софтиной максимум за пару часов. Про сложности паролей, конечно, спорить не буду, и про мощи компьютеров из тех времен тоже. Это просто опыт, то что было, не обессутте. И так, я понял, что кодить я не буду, ну не смогу я уже. Нужно искать какую-нить софтину. И я отправился. После десятка скачиваний и попыток заразить мой компьютер различными гадостями, я уже было отчаялся. Потратив 15 минут на поиск софта — много. В идеале бы поднять виртуалку, но жалко было время и ресурсов ноута. Только я был готов сдаться, я нашёл маааленький архивчик. В данном архиве была софтинка, и к моему изумлению таблеточка. Всё это вместе весило не более 2мб. Установив её за минуту, полечив, я запустил. Увидел простой интерфейс, скормил ей файлик – архива, и для старта задал минимальные требования к паролю. Решил попробовать прогнать на первом этапе только циферный пароль с длиной от одного до 8 символов. И поставив на прогон, собрался забыть о ней на денёк, но только я хотел было встать и налить чаю, как софтина мигнула и я увидел заветные Success. Я аж охнул. Посмотрел пароль: 777. 🙂 Лишний раз убедился, что пользователи не утруждают себя придумыванием сложных паролей. Отдельно хочу отметить, что хоть у меня получилось всё так просто, это вовсе не говорит о том, что всё так просто произойдёт всегда. Например, если бы я замутил пароль на архив себе, то я бы точно отказался от идеи его взламывать. Даже если пароль только из цифр и букв латинского алфавита, то это реально на долго 🙁 В таком случае я бы взвесил много раз, рельно мне нужно то, что лежит в архиве, и если я без этого не смог бы жить, тогда скорее… Отвечу цитатой из поста, одного из правильных форумов:«Да, можно ассемблером пропатчить сам WinRAR, чтобы он принимал любой пароль, наверно также можно подправить контрольную сумму файлов в самом архиве, но толка от этого будет ноль. Не хранится в самом архиве не пароль, не хеш от пароля. Принцип разархирование прост – при вводе пароля, из него 262144 раз вычисляется хеш по алгоритму SHA1, и полученным ключом WinRAR пытается расшифровать (по AES) и разархировать файлы (тут не проверяется правильный пароль или нет). После того как файлы расшифрованы и разархированны, из них вычисляется контрольная сумма по CRC32, и это сумма сравнивается с той суммой которая прописана в самом архиве. Если эти суммы совпадает – мы получает расшифрованные файлы, а если не совпадает, то получаем предупреждение что контрольная сумма или пароль неправильны. Нет в RAR других проверок правильности пароля — только вот это проверка контрольный суммы «готового продукта». Тут просто нечего ломать. Любые попытки сломать сам WinRAR или архив приведет к тому, что файлы будут разшифрованны не правильно. Если посмотреть процесс разархивации при помощи «Process Monitor» от Microsoft, то там хорошо видно, как WinRAR создает временные файлы в папке %Userprofile%Temp. И если правами доступа запретить стирать файлы из этой папки, то можно даже посмотреть результат ввода неправильного пароля. Единственный способ взлома архива RAR – брутфорс. Если кто то предлагает другой способ – не верти, это развод.» Соглашусь с автором, только бутфорс. Помнится ещё в институте на занятиях криптологии, я зауважал winRAR с точки зрения безопасности. Ну, и на последок, не используйте данные знания для подбора паролей к чужим архивам, с большой долей вероятности это преследуется по закону. Легкого кода! 😉Используемые источники:
- https://m.habr.com/ru/post/224263/