Познание окружающей реальности методом грубой силы
Сегодня мы поговорим про безопасность
данных, но не про всю на свете, а про отдельно взятый частный случай. А именно:
вскрытие RAR-архива, защищенного паролем. Как водится, информационным поводом явилась
вполне конкретная проблема: есть архив, сто лет назад упакованный в режиме «с паролем»,
в архиве лежит относительно полезная вещь, а пароль давно и прочно забыт. Чего делать?
Разумеется, отламывать. А заодно и проверить
достоверность утверждения «раз уж RAR написан не тупыми американцами, а хитроумными
русскими, то и защита у него — мое почтение, ни в жизнь не отломаешь».
Поскольку первая часть полностью соответствует
истине, в качестве фомки решено было использовать изделие еще более хитроумных русских
— Advanced RAR Password Recovery (найти
на SoftSearch,
скачать у автора). Перефразируя классика, что один хитроумный закрыл на ключ,
другой хитроумный завсегда отломать сумеет. ARPR предоставляет на выбор два способа
подбора пароля к архиву: либо по словарю, либо методом грубой силы (в просторечии
— «brute-force attack»). Первый метод не очень интересен: словарные слова в качестве
пароля используют только ярчайшие представители сами знаете чего, и уж ваш покорный
к таким умельцам точно не относится. Второй же метод прост, как садовые грабли —
пользователь слегка параметризует грубую силу (указывая минимально и максимально
возможную длину пароля, а также набор используемых символов), жмет на стартовую
кнопку, и что делает ARPR? Правильно, он перебирает по очереди все возможные комбинации.
Вначале короткие пароли, потом подлиннее, и так далее, пока пользователю не надоест,
или пока пароль не будет найден.
И вот здесь надо рассказать про одну
особенность архиватора RAR. Обычно принято спрашивать пароль на входе — вначале
авторизуемся, потом делаем свое дело. А в RAR сделано слегка по-другому: для того,
чтобы понять — подошел пароль, или же не подошел — нужно сперва распаковать файл.
Эффект запроса пароля на выходе очевиден: если файл относительно большой, тупой
перебор возможных комбинаций требует прямо-таки чудовищное количество времени. В
моем случае на каждое «nm#» и «dv$» требовалось извлечь из архива 14-метровый документ.
Умный ARPR, разумеется, на глазок прикинул, сколько потребуется времени на перебор
по заданным мною параметрам при текущей производительности моей системы — времени
оказалось три с небольшим дня. В течении которых процессор, разумеется, будет загружен
по полной программе. Сразу скажу: терпения у меня не хватило. Запустив процесс отлома
на второй домашней машине, результата я не дождался (скорость перебора — один пароль
в секунду, мракЪ и ужасЪ), смачно плюнул, и отправил архив обратно в мрачные глубины
файлового архива.
Спустя 21 час после старта ARPR
всё ещё перебирает трёхсимвольные пароли. А если пароль состоит из тридцати?
Для сравнения: тестовый архив размером
в 10k с ровно теми же параметрами перебора ARPR отломал за какую-то минуту (правда,
пароль был относительно простым, всего четыре символа). Теперь попробуем сделать
выводы. И выводы получаются сугубо практические.
Вывод первый.
Если вам нужно спрятать некую информацию от посторонних глаз, и в качестве механизма
защиты вы выбрали RAR — в архиве должен быть только один файл с ничего не говорящим
названием. Если файлов на самом деле несколько, их стоит упаковать в промежуточный
архив, полученный data.rar переименовать в data.dat и упаковать заново, на этот
раз — с паролем.
Вывод второй.
Файл должен быть большим — скорость отлома нашего архива будет обратно пропорциональна
размеру файла. Даже если нужно запрятать всего-то пару картинок, просто подмешайте
к ним мусора, метров так -цать. Где взять мусор? Ну, проще не бывает: \Windows\System32,
там его сколько угодно, любых форм и размеров.
Вывод третий.
Пароль должен быть стойким. Самый простой способ изготовить стойкий пароль: взять
любую фразу на русском языке и набрать ее при включенной латинской раскладке, периодически
переключая Caps Lock (например, на второй букве каждого слова туда, а на третьей
букве обратно). Мы говорим: «я иЗобрел сТойкий пАроль!», а подразумеваем «zbPj,htkcNjqrbqgFhjkm!».
Есть некоторая разница в запоминании, согласитесь.
Ну и вывод четвертый.
Архив, упакованный по выводам номер раз и два, и закрытый паролем по выводу номер
три, злые люди будут отламывать до морковкина заговения. Даже с помощью самой продвинутой
на свете ломалки.
Автор: WildHare
Источник: www.softsearch.ru
|