Взлом пароля ZIP методом брутфорс на Python

python icon

Продолжим изучать и использовать Python в ИБ. В этой статье мы напишем программу на Python для взлома пароля zip-архива, с помощью брутфорса (перебор пароля).

Еще по теме: Асимметричное шифрование с помощью Python

Иногда попадаются защищенные паролем архивы Zip. Если был использован простой ненадежный пароль, то его легко взломать с помощью атаки брутфорс.

Брутфорс (от англ. brute force — грубая сила) — метод подбора пароля (или ключа, используемого для шифрования), предполагающий систематический перебор всех возможных комбинаций символов. Он может занять много времени, если используется большой словарь, с большим количеством возможных вариантов пароля.

Для перебора будем использовать популярный словарь для брута «rockyou».

Использование Python для взлома пароля ZIP

  1. Сначала импортируйте библиотеку zipfile.
  2. Инициализируйте объект ZipFile, который помогает извлекать содержимое zip-файла.
  3. Подсчитайте количество слов, присутствующих в файле «rockyou.txt», и отобразите его в терминале.
  4. Вызовите функцию «crack_password», которая возвращает true, если пароль найден, иначе возвращает false. Передайте имя текстового файла и объект ZipFile в качестве параметров.
  5. Переменная idx используется для отслеживания номеров строк.
  6. Откройте текстовый файл «rockyou.txt» в режиме « rb», чтобы обрабатывать содержимое файла в двоичной форме. Это связано с тем, что файл содержит некоторые специальные символы, которые не могут быть обработаны, если файл открыт в режиме « r» и будет генерировать UnicodeDecodeError.
  7. После открытия файла извлеките строку из файла, а затем отделите от нее слово.
  8. В блоке try извлеките содержимое zip-файла, указав пароль в поле pwd метода extractall. Метод extractall() извлечет все содержимое zip-файла в текущий рабочий каталог. Вышеупомянутая программа извлекает zip-файл с именем «gfg.zip» в том же каталоге, что и этот скрипт Python.
  9. Если пароль неверный, будет сгенерировано исключение. В блоке exclude продолжите цикл, чтобы проверить другие слова в файле.
  10. Если пароль найден, верните true, или false и отобразите желаемое сообщение.

Ниже приведен полный код:

Взлом ZIP методом перебора на Python

На этом все. Надеюсь статья была полезна и вы разобрались с кодом.

Еще по теме:

ВКонтакте
OK
Telegram
WhatsApp
Viber

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

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