Як зламати запаролений rar-архів, savepearlharbor
Вітаю!
Одного разу до мене в руки потрапив RAR архів.
Я абсолютно точно знав, що в ньому і мені це було потрібно.
АЛЕ, було одне але, архів був запаролено.
Якщо вам цікаво, як я вирішив цю проблему, прошу підкат.
Колись давно, років 8-10 тому, я абсолютно точно знав що робити. Але роки беруть своє. Навички, що не використовуєш, мають властивість забуватися.
І я вирішив скористатися великим способом вирішення проблеми: погуглити.
Благо гуглити я вмію і шукати потрібну інформацію теж. АЛЕ я був просто здивований, від того що я побачив. Всі форуми, все джерела рясніли тим, що закликали до того, щоб кинути цю мерзенну, бридку, нудну і довгу затію. І закликали знайти, або дикого хацкери, або кинути.

Мушу зазначити, що знайшов всього два ресурси, в яких давалися слушні поради. Перший - якийсь прогерско-хакерський форум, і там хлопці молодці, писали рядки конкретного коду і ідея, як ломануть пароль. Я на жаль вже не знайду ту гілку щоб її процитувати, але ідея зводилося не до підбору пароля шляхом перебору, а до його підбору через ХЕШфункцію. Шановні друзі програмісти, не штовхайте боляче, вже сильно далеко я побрів від ІТ, можу набрехати, але тоді все здалося таким знайомим і логічним, тому в визначеннях можу помилятися.
Другий ресурс посилався на якесь у софтин, які можуть підібрати пароль шляхом перебору, їх порівняння між собою, і їх безкоштовність або платність, сильні або слабкі сторони.
Зі свого старого досвіду, будь-який RAR архів який мені попадався, я розкривав найпростішої софтиной максимум за пару годин. Про складності паролів, звичайно, сперечатися не буду, і про мощі комп'ютерів з тих часів теж. Це просто досвід, то що було, не обессутте.
І так, я зрозумів, що кодіть я не буду, ну не зможу я вже. Потрібно шукати якусь нитку софтину. І я вирушив. Після десятка завантажень і спроб заразити мій комп'ютер різними гидотами, я вже було зневірився. Витративши 15 хвилин на пошук софта - багато. В ідеалі б підняти виртуалку, але шкода було час і ресурсів ноута.
Тільки я був готовий здатися, я знайшов маааленький архівчік. В даному архіві була софтинка, і на мій подив пігулку. Все це разом важило не більше 2Мб.
Встановивши її за хвилину, полечу, я запустив. Побачив простий інтерфейс, згодував їй файлик - архіву, і для старту задав мінімальні вимоги до паролю. Вирішив спробувати прогнати на першому етапі тільки ціферний пароль з довжиною від одного до 8 символів. І поставивши на прогін, зібрався забути про неї на деньок, але тільки я хотів було встати і налити чаю, як софтіна блимнула і я побачив заповітні Success. Я аж зойкнув. Подивився пароль: 777. 🙂

Зайвий раз переконався, що користувачі не обтяжують себе вигадуванням складних паролів.
Окремо хочу відзначити, що хоч у мене вийшло все так просто, це зовсім не говорить про те, що все так просто відбудеться завжди.
Наприклад, якби я замутив пароль на архів собі, то я б точно відмовився від ідеї його зламувати. Навіть якщо пароль тільки з цифр і букв латинського алфавіту, то це реально на довго 🙁
В такому випадку я б зважив багато разів, рельной мені потрібно те, що лежить в архіві, і якщо я без цього не зміг би жити, тоді швидше ...
Відповім цитатою з поста, одного з правильних форумів:
«Так, можна ассемблером пропатчити сам WinRAR, щоб він приймав будь-пароль, напевно також можна підправити контрольну суму файлів в самому архіві, але толку від цього буде нуль.
Чи не зберігається в самому архів не пароль, що не хеш від пароля.
Принцип разархірованіе простий - при введенні пароля, з нього 262144 раз обчислюється хеш за алгоритмом SHA1, і отриманим ключем WinRAR намагається розшифрувати (по AES) і разархіровать файли (тут не перевіряється правильний пароль чи ні). Після того як файли розшифровані і разархірованни, з них обчислюється контрольна сума по CRC32, і це сума порівнюється з тією сумою яка прописана в самому архіві. Якщо ці суми збігаються - ми отримує розшифровані файли, а якщо не збігається, то отримуємо попередження що контрольна сума або пароль неправильні. Ні в RAR інших перевірок правильності пароля - тільки ось це перевірка контрольний суми «готового продукту».
Тут просто нема чого ламати. Будь-які спроби зламати сам WinRAR або архів призведе до того, що файли будуть разшіфрованни неправильно.
Якщо подивитися процес розархівації за допомогою «Process Monitor» від Microsoft, то там добре видно, як WinRAR створює тимчасові файли в папці% Userprofile% \ Temp \. І якщо правами доступу заборонити прати файли з цієї папки, то можна навіть подивитися результат введення неправильного пароля.
Єдиний спосіб злому архіву RAR - брутфорс. Якщо хто то пропонує інший спосіб - не верти, це розлучення. »
Ну, і на останок, не використовуйте ці знання для підбору паролів до чужих архівів, з великою часткою ймовірності це переслідується по закону.