Другие способы взлома архивов существуют! Например, небезызвестная plain-text атака. Правда, насколько я знаю, она работает только против zip-архивов. Вот можно почитать по теме:
[code:1:1330273299]
Многие, думаю, слышали о программе Advanced Archive Password Recovery, которая предназначена для подбора паролей к многим типам архивов. Итак, берём: Advanced Archive Password Recovery v.2.11 (размер — 850 кило). Прогу эту сделала небезызвестная фирма Элкомсофт. Утилита поддерживает следующие типы архивов: ZIP, RAR, ACE, ARJ. Поддерживаются такие типы атаки, как: 1)банальный перебор паролей; 2)перебор паролей по маске; 3)по словарю; 4)plaintext-атака; 5)гарантированная расшифровка WinZip и 6)пароль из ключей. Подробнее остановимся на этих типах атаки: plaintext-атака; гарантированная расшифровка WinZip и пароль из ключей. Итак, что же это за атака такая: plaintext? Как известно, ZIP-файлы шифруются по довольно сильному алгоритму: пароль на архив не сохраняется внутри этого самого архива, а конвертируется в 32-битный ключ, который и используется для шифрования архива. В результате, итоговая сложность по перебору всех возможных вариантов равняется 2^96 (2 в 96 степени!!!). Как видите, это очень много: даже имея в своём распоряжении все компьютеры Земли, мы не узнаем этот самый пароль до конца своей жизни… НО: этот алгоритм не так мощен, как, например, DES, RSA, IDEA и т.д. Т.е., один из способов взлома защиты ZIP-файлов таков: нам нужен архив с точной копией одного из файлов из зашифрованного архива, сделанным тем же архиватором и с той же степенью компрессии. К счастью, этот тип атаки не настолько долог, как простой перебор всех возможных паролей, что позволяет его использовать для более быстрого вскрытия паролей на ZIP и GZIP архивы. Да, архив с этим самым файлом не должен быть меньше 12 байт. Атака происходит в 2 этапа: отброс заведомо неподходящих ключей, а после — поисх подходящих. На первой фазе работы, которая занимает от 1 до 3 минут (это зависит от размера архива с одним файлом и количества вашей оперативной памяти), оставшееся время не может быть вычислено, так что бОльшую часть времени процесс-индикатор держиться на нуле.
У меня этот тип атаки отлично работал: архив размером 60 кило (размер вспомогательного архива — 32 203 байта) с паролём Test был "хакнут" за 1-у минуту 25 секнд (у меня Celeron 900 Mhz и 512 метров памяти). Однако это непоказательный пример: атака "в лоб без ортимизации под WinZIp (я делал архив 7-ZIP'ом)" возымела успех через несколько десятков секунд, а с оптимизацией — вообще никокого успеха не возымела.
Теперь поговорим о гарантированной расшифровке WinZip. Как гордо утверждают авторы, это одна из самых крутых возможностей программы. Эта атака подобна предыдущей, одныко вам не надо иметь никаких дополнительных архивов с файлами, а в самом запаролёном архиве должно быть как минимум 5 файлов. Атака работает с архивами, созданными при помощи WinZip не выше версии 8.0 включительно, а так же другими архиваторами на основе исходников Info-ZIP. Если архив создан при помощи "неправильного" архиватора или имеет меньше 5 файлов, программа выдаст сообщение об ошибке. Атака состоит из трёх этапов: первые два ищут подходящие ключи, а последний генерирует пароль (не более 10 символов) на основе этих ключей. Обычно, первая часть атаки длиться несколько минут (прога может показывать оставшееся врямя как несколько часов, но это теоретический максимум), вторая — около полу-часа (тут тоже не стоит обращать внимания на то, что предсказывает программа), а последняя — 2-3 минуты. Атака работает с большинством ZIP-архивов, и даже если пароль достаточно длинен и не был найден на последней стадии атаки, программа сможет расшифровать архив, чтобы просто снять парольную защиту. Этот тип атаки базируется на плохом генераторе случайных чисел, который использовался в WinZip до версии 8.1. Однако, даже версии WinZip ниже 8.1 в 0,4% случаях генерируют "нормальные" архивы, которые не могут быть взломаны этим типом атаки. В таком случае, программа покажен предупреждение, которое не означает, что она обломилать, просто на первой стадии атаки не будет найдено ни одного ключа. К сожалению, проверить этот тип атаки я не смог, т.к. WinZip'а у меня не нашлось, а те архивы, что создают 7-ZIP и WinRar, оказались "правильными".
Ну и наконец, о пароле из ключей замолвим слово. Как вы наверное заметили, два предыдущих метода атаки сперва пытаются найти ключи шифрования для запароленных архивов. Они так же могут расшифровать сам архив, если не было найдено ни одного пароля. Однако эти атаки могут использоваться только для архивов с паролями длинной менее 10 символов. Для архивов с более длинными паролями существует специальный тип атаки. Если у вас есть ключи шифрования для запароленного архива, и вы хотите найти этот длинный пароль, выберете "Пароль из ключей" в качестве атаки и введите эти ключи на закладке "Plaintext". Обычно эта атака используется чтобы узнать пароль на рахив длинной 14-15 символов. Лучше всего в свойствах атаки установить её начало с 7-го символа пароля, т.к. его (пароля) начало может быть восстановлено из "хвоста". Стоит помнить, что, в любом случае, атака начинается с конца пароля, об этом нужно помнить, вводя позицию для старта.
[/code:1:1330273299]