Проверьте надежность пароля с помощью того же хакерского инструмента

Ваш пароль безопасен? Мы все слышали много советов о том, какие пароли вы никогда не должны выбирать, и есть различные инструменты, которые утверждают, что для оценки безопасности вашего пароля в Интернете

, Однако это может быть только сомнительно точным. Единственный способ действительно проверить безопасность ваших паролей — это попытаться взломать их.

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

Настройка Hashcat

Инструмент, который мы собираемся использовать, называется Hashcat. Официально он предназначен для восстановления пароля

, но на практике это немного похоже на высказывание BitTorrent

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

, Как побочный эффект, это делает его очень мощным способом проверки безопасности пароля.

Примечание. Это руководство предназначено для Windows. Те из вас, кто работает в Linux, могут посмотреть видео ниже, чтобы понять, с чего начать.

Вы можете получить Hashcat с веб-страницы hashcat.net. Загрузите и разархивируйте его в папку загрузок. Далее нам потребуется получить некоторые вспомогательные данные для инструмента. Мы собираемся приобрести список слов, который представляет собой огромную базу паролей, которую инструмент может использовать в качестве отправной точки, в частности набор данных rockyou.txt. Загрузите его и вставьте в папку Hashcat. Убедитесь, что он называется «rockyou.txt»

Теперь нам нужен способ генерирования хэшей. Мы будем использовать WinMD5, который представляет собой легкий бесплатный инструмент, который хэширует определенные файлы. Загрузите его, разархивируйте и поместите в каталог Hashcat. Мы собираемся создать два новых текстовых файла: hashes.txt и password.txt. Поместите оба в каталог Hashcat.

Это оно! Вы сделали

Народная история хакерских войн

Прежде чем мы на самом деле используем это приложение, давайте немного поговорим о том, как пароли на самом деле взламываются и как мы дошли до этого момента.

Еще в туманной истории информатики веб-сайты хранили обычные пароли в виде простого текста. Кажется, это имеет смысл. Вам необходимо убедиться, что пользователь отправил правильный пароль. Очевидный способ сделать это — хранить копию паролей под рукой в ​​небольшом файле и проверять введенный пользователем пароль по списку. Легко.

Это была огромная катастрофа. Хакеры получат доступ к серверу с помощью некоторой коварной тактики (например, вежливого запроса), украдут список паролей, войдут в систему и украдут все деньги. По мере того, как исследователи в области безопасности поднимались из-за обломков этой катастрофы, стало ясно, что нам нужно сделать что-то другое. Решение было хэшированием.

Для тех, кто не знаком, хэш-функция

это фрагмент кода, который берет часть информации и математически складирует ее в кусок бессмысленного тарабарщины. Это называется «хеширование» данных. Что в них классного, так это то, что они движутся только в одном направлении. Очень легко взять часть информации и выяснить ее уникальный хэш. Очень трудно взять хеш и найти часть информации, которая его генерирует. Фактически, если вы используете случайный пароль, вы должны попробовать каждую возможную комбинацию, чтобы сделать это, что более или менее невозможно.

Те, кто следит за вами дома, могут заметить, что хэши имеют некоторые действительно полезные свойства для приложений с паролями. Теперь вместо хранения пароля вы можете хранить хэши паролей. Если вы хотите подтвердить пароль, вы хэшируете его, удаляете оригинал и сверяете со списком хэшей. Все хэш-функции дают одинаковые результаты, поэтому вы все равно можете проверить, что они отправили правильные пароли. Важно отметить, что настоящие незашифрованные пароли никогда не хранятся на сервере. Поэтому, когда хакеры взламывают сервер, они не могут украсть пароли — только бесполезные хеши. Это работает достаточно хорошо.

Реакция хакеров на это заключалась в том, чтобы потратить много времени и энергии на разработку действительно умных способов обратить вспять хэши.

,

Как работает Hashcat

Мы можем использовать несколько стратегий для этого. Одним из самых надежных является тот, который использует Hashcat, который должен заметить, что пользователи не очень изобретательны и склонны выбирать одинаковые пароли.

Например, большинство паролей состоят из одного или двух английских слов, пары цифр и, возможно, некоторых «букв-заменителей» замены букв или случайной заглавной буквы. Из выбранных слов некоторые являются более вероятными, чем другие: «пароль», название службы, ваше имя пользователя и «привет» — все они популярны. Так же популярны имена домашних животных и текущего года.

Зная это, вы можете начать генерировать очень правдоподобные предположения о том, что могли выбрать разные пользователи, что должно (в конечном итоге) позволить вам правильно угадать, сломать хеш и получить доступ к своим учетным данным для входа. Это звучит как безнадежная стратегия, но помните, что компьютеры смехотворно быстры. Современный компьютер может попробовать миллионы догадок в секунду.

Это то, что мы будем делать сегодня. Мы будем притворяться, что ваши пароли находятся в хеш-списке в руках злоумышленника, и запускать тот же инструмент взлома хеша, который хакеры используют на них. Думайте об этом как о пожарной тренировке для вашей онлайн-безопасности. Давайте посмотрим, как это происходит!

Как использовать Hashcat

Во-первых, нам нужно генерировать хэши. Откройте WinMD5 и ваш файл «password.txt» (в блокноте). Введите один из ваших паролей (только один). Сохраните файл. Откройте его с помощью WinMD5. Вы увидите небольшую коробку с хешем файла. Скопируйте это в свой файл «hashes.txt» и сохраните его. Повторите это, добавляя каждый файл в новую строку в файле «hashes.txt», пока вы не получите хеш для каждого пароля, который вы обычно используете. Затем, просто для удовольствия, введите хеш для слова «пароль» в качестве последней строки.

хэши

Здесь стоит отметить, что MD5 — не очень хороший формат для хранения хэшей паролей — он достаточно быстр для вычислений, делая брутфорсинг более жизнеспособным. Поскольку мы проводим деструктивное тестирование, для нас это действительно плюс. При реальной утечке пароля наши пароли будут хэшироваться с помощью Scrypt или какой-либо другой безопасной хэш-функции, которые медленнее тестировать. Используя MD5, мы можем, по сути, смоделировать процессирование, затрачивая гораздо больше вычислительной мощности и времени, чем у нас есть на самом деле.

WinMD5Running

Затем убедитесь, что файл «hashes.txt» был сохранен, и запустите Windows PowerShell. Перейдите в папку Hashcat (CD .. поднимается на уровень, Ls перечисляет текущие файлы, и CD [имя файла] входит в папку в текущем каталоге). Сейчас типа ./hashcat-cli32.exe –hash-type = 0 –attack-mode = 8 hashes.txt rockyou.txt.

Эта команда в основном говорит: «Запустите приложение Hashcat. Настройте его на работу с хэшами MD5 и используйте атаку «режим принца» (которая использует различные стратегии для создания вариантов слов в списке). Попробуйте разбить записи в файле «hashes.txt» и использовать файл «rockyou.txt» в качестве словаря.

Нажмите ввод и примите лицензионное соглашение (которое в основном говорит: «Я клянусь, я не буду ничего взламывать с этим»), а затем дайте ему поработать. Хеш для пароля должен появиться через секунду или две. После этого это просто вопрос ожидания. Слабые пароли появятся в течение нескольких минут на быстром, современном процессоре. Обычные пароли появятся через пару часов, через день или два. Надежные пароли могут занять очень много времени. Один из моих старых паролей был взломан менее чем за десять минут.

hashcatrunning

Вы можете оставить это включенным так долго, как захотите. Я советую хотя бы на ночь или на вашем компьютере, пока вы на работе. Если вы сделаете это 24 часа, ваш пароль, вероятно, будет достаточно надежным для большинства приложений — хотя это не гарантия. Хакеры могут желать проводить эти атаки в течение длительного времени или иметь доступ к лучшему списку слов. Если вы сомневаетесь в безопасности вашего пароля, найдите лучший.

Мой пароль был взломан: что теперь?

Скорее всего, некоторые ваши пароли не сохранили. Итак, как вы можете генерировать надежные пароли для их замены? Как выясняется, действительно сильной техникой (популяризованной xkcd) являются парольные фразы. Откройте ближайшую книгу, откройте случайную страницу и положите палец на страницу. Возьмите ближайшее имя, глагол, прилагательное или наречие и запомните это. Если у вас их четыре или пять, смешайте их без пробелов, цифр или заглавных букв. НЕ используйте «correcthorsebatterystaple». К сожалению, он становится популярным в качестве пароля и включен во многие списки слов.

Один примерный пароль, который я только что сгенерировал из антологии научной фантастики, которая сидела на моем журнальном столике, — это «leanedsomeartisansharmingdarling» (также не используйте этот). Это гораздо проще запомнить, чем произвольную строку букв и цифр, и, вероятно, более безопасно. Носители английского языка имеют рабочий словарный запас около 20 000 слов. В результате для последовательности из пяти случайно выбранных общих слов существует 20000 ^ 5, или около трех возможных комбинаций секстиллионов. Это далеко за пределами любой текущей атаки грубой силы.

Напротив, случайно выбранный восьмисимвольный пароль будет синтезирован в терминах символов, с приблизительно 80 возможностями, включая верхний регистр, нижний регистр, числа, символы и пробелы. 80 ^ 8 — это только квадриллион. Это по-прежнему звучит громко, но сломать его на самом деле возможно. Учитывая десять высококлассных настольных компьютеров (каждый из которых может делать около десяти миллионов хешей в секунду), это может быть взломано через несколько месяцев — и безопасность полностью развалится, если она не будет случайной. Это также гораздо сложнее запомнить.

Другой вариант — использовать менеджер паролей, который может генерировать для вас безопасные пароли на лету, и все они могут быть «разблокированы» с помощью одного мастер-пароля. Вам все еще нужно выбрать действительно хороший мастер-пароль (и если вы его забудете, у вас проблемы), но если ваши хеши паролей просочились в результате взлома веб-сайта, у вас будет сильный дополнительный уровень безопасности.

Постоянная бдительность

Надежная защита паролем не очень сложна, но требует, чтобы вы знали об этой проблеме и предпринимали шаги для обеспечения безопасности. Этот вид разрушительного тестирования может быть хорошим сигналом для пробуждения. Интеллектуально знать, что ваши пароли могут быть небезопасными. Еще один факт — увидеть, как он выскочил из Hashcat через несколько минут.

Как ваши пароли держались? Дайте нам знать об этом в комментариях!

Ссылка на основную публикацию
Adblock
detector