Как попытаться взломать пароль самостоятельно, чтобы проверить его надежность
В статье протестировано 3 разных пароля с помощью инструмента для взлома паролей с открытым исходным кодом, чтобы выяснить, какой метод действительно работает, когда дело касается безопасности паролей.
В статье протестировано 3 разных пароля с помощью инструмента для взлома паролей с открытым исходным кодом, чтобы выяснить, какой метод действительно работает, когда дело касается безопасности паролей.
Что такое взлом пароля?
Как попытаться взломать пароль самостоятельно, чтобы проверить его надежность Изображение 1
Когда вы создаете учетную запись в онлайн-сервисе, провайдер обычно шифрует ваши данные для входа на свои серверы. Это делается с помощью алгоритма создания «хеша», кажущейся уникальной случайной строки букв и цифр для вашего пароля. Конечно, на самом деле это не случайная строка, а очень специфическая строка символов, которую может сгенерировать только ваш пароль, но для неподготовленного глаза это выглядит как беспорядочный беспорядок.
Гораздо быстрее и проще превратить слово в хеш, чем «декодировать» хеш обратно в слово. Поэтому, когда вы устанавливаете пароль, служба, в которую вы входите, пропустит ваш пароль через хэш и сохранит результат на своих серверах.
Если этот файл паролей станет известен, хакеры попытаются узнать его содержимое, взломав пароли. Поскольку шифрование паролей происходит быстрее, чем их расшифровка, хакеры настраивают систему, которая принимает потенциальные пароли в качестве входных данных, шифрует их тем же методом, что и сервер, а затем сравнивает результаты с базой данных паролей.
Если хэш потенциального пароля совпадает с любой записью в базе данных, хакер знает, что каждая попытка соответствует потенциальному паролю.
Как взломать собственные пароли с помощью HashCat
Давайте попробуем взломать некоторые пароли, созданные в этой статье, чтобы увидеть, насколько это просто. Для этого мы будем использовать Hashcat, бесплатный инструмент для взлома паролей с открытым исходным кодом, который может использовать каждый.
Для этих тестов пример будет взломать следующие пароли:
- 123456: классический кошмар пароля и кибербезопасности. 123456 — это . NordPass подсчитал, что 3 миллиона учетных записей использовали пароль 123456, из которых 1,2 миллиона защищены учетными записями корпоративного уровня.
- Сьюзен48! : пароль, соответствующий шаблонам, которые большинство пользователей используют для создания безопасных паролей. В целом это соответствует критериям базовой защиты паролем, но, как мы увидим позже, у него есть некоторые важные недостатки, которыми можно воспользоваться.
- t9^kJ$2q9a : пароль, созданный с помощью инструмента Bitwarden. Он настроен на создание пароля длиной 10 символов, состоящего из прописных и строчных букв, символов и цифр.
Теперь давайте зашифруем пароли с помощью MD5. Вот как бы выглядели пароли, если бы они находились в сохраненном файле паролей:
- 123456: e10adc3949ba59abbe56e057f20f883e
- Сьюзен48! : df1ce7227606805745ee6cbc644ecbe4
- t9^kJ$2q9a : 450e4e0ad3ed8766cb2ba83081c0a625
Теперь пришло время их взломать.
Выполните простой джейлбрейк, используя метод атаки по словарю.
Как попытаться взломать пароль самостоятельно, чтобы проверить его надежность Изображение 2
Для начала давайте выполним атаку по словарю, один из наиболее распространенных методов атаки на пароль. Это простая атака, при которой хакер берет список потенциальных паролей, просит Hashcat преобразовать их в MD5 и проверяет, соответствует ли какой-либо из них трем записям выше. Для этого теста давайте воспользуемся файлом «rockyou.txt» в качестве словаря, который стал одной из крупнейших утечек паролей в истории.
Чтобы начать взлом, автор статьи зашёл в папку Hashcat, кликнул правой кнопкой мыши по пустому месту и нажал «Открыть в Терминале». Теперь, когда терминал открыт и для него установлена папка Hashcat, запустите приложение Hashcat с помощью следующей команды:
.hashcat -m 0 -a 0 файл_пароля.txt rockyou.txt -o results.txt
Вот что делает команда:
- .hashcat вызывает Hashcat.
- -m 0: указывает тип используемого шифрования. В этом случае мы будем использовать MD5, указанный как 0 в справочной документации Hashcat.
- -a 0: указывает атаку, которую необходимо выполнить. В справочной документации Hashcat для Dictionary Attack указано значение 0, поэтому мы называем это здесь.
- passfile.txt rockyou.txt: первый файл содержит 3 зашифрованных пароля, которые мы установили ранее. Второй файл — это вся база данных паролей Rockyou.
- -o results.txt: эта переменная определяет, куда мы помещаем результаты. В этой команде взломанные пароли помещаются в TXT-файл с именем «results».
Несмотря на большой размер rockyou, Hashcat обработал их все за 6 секунд. В полученном файле Hashcat сообщает, что взломал пароль 123456, но пароли Сьюзан и Bitwarden не были взломаны. Это связано с тем, что 123456 использовался кем-то другим в файле rockyou.txt, но никто больше не использовал пароли Susan или Bitwarden, а это означает, что они были достаточно безопасными, чтобы выдержать эту атаку.
Как защитить свой аккаунт от взлома пароля
Основными факторами, препятствующими взлому пароля Bitwarden, являются его длина (10 символов) и непредсказуемость. Поэтому при создании пароля постарайтесь сделать его как можно более длинным и равномерно распределить символы, цифры и заглавные буквы по всему паролю. Это не позволяет хакерам использовать маски для прогнозирования местоположения каждого элемента и значительно усложняет взлом.
Вы, вероятно, знакомы со старыми поговорками о паролях, такими как «используйте массив символов» и «сделайте его как можно более длинным». Надеюсь, вы знаете, почему люди рекомендуют эти полезные советы: в них заключается ключевое различие между паролем, который легко взломать, и безопасным паролем.
Изабелла Хамфри
Обновление от 11 декабря 2024 г.