20 апреля, 2024

Как взламывать пароли. Часть 2. Стратегия взлома

Содержание:

С возвращением, мои хакеры!

В прошлый раз мы начали серию постов, где знакомились с принципами и технологиями, связанными с искусством взлома паролей. В прошлых статьях мы рассмотрели некоторые инструменты и методы для взлома паролей Windows, онлайн-паролей, Wi-Fi, Linux и даже паролей SNMP. Эта серия нацелена на то, чтобы помочь вам отточить навыки в каждой из этих областей и узнать больше о пока что нетронутых сферах.

Очень часто хакеры, не знакомые ранее со взломом паролей, хотят найти только один инструмент или метод, но, к сожалению, такого универсального инструмента не существует. Тем не менее, это даже хорошо, с точки зрения сетевой безопасности. Для каждого типа пароля требуется уникальная стратегия, подходящая для конкретной ситуации. Эта ситуация может определяться типом шифрования (MD5, SHA1, NTLM и т.д.), удаленным или офлайновым взломом, наличием криптографической соли и так далее. Стратегия взлома пароля должна подбираться для каждой конкретной ситуации.

В этой статье мы хотели бы затронуть проблему стратегии взлома пароля. Многие новички просто запускают свой инструмент для взлома паролей и затем ожидают прорыва, который решит все их проблемы. Они используют огромные словари и надеются на лучшее. Если взломать пароль не удается, то они теряются. Здесь мы хотим разработать стратегию взлома паролей с несколькими итерациями, которая будет работать для подавляющего большинства паролей, хотя и не для всех. Никакая стратегия не будет работать абсолютно на всех паролях, за исключением метода брутфорса, при условии бесконечного времени и больших ресурсов центральных процессоров.

Разработка стратегии взлома паролей

Как правило, взлом пароля начинается с перехвата хешей паролей. В системах Windows они находятся в SAM-файле на локальной машине, LDAP в системах активных каталогов и /etc/shadow в системах Linux и UNIX. Хеши — это одностороннее шифрование, уникальное для каждого пароля (ну, если точнее, то почти для каждого пароля). В каждом конкретном случае для взлома хеша нам нужно знать, какая схема шифрования используется в системе.

Например, системы Linux и Unix используют алгоритм MD5, а современные системы Windows используют HMAC-MD5. Другие системы могут использовать SHA1, MD4, NTLM. Убедитесь, что вы знаете, какой алгоритм хеширования используется в системе, которую вы пытаетесь взломать, иначе вы потратите часы или даже дни безрезультатно.

У утилиты John the Ripper есть функция автоматического определения алгоритма хеширования, которая выдает правильный результат примерно в 90% всех случаев, но если он ошибается, то это означает, что у нас нет никакого способа узнать, какой алгоритм хеширования применялся. В случае с программами Cain and Abel и hashcat мы должны указать им, какой тип хеша мы пытаемся взломать.

Читать также:  Metasploit для начинающего хакера — Armitage ( Часть 4)

На скриншоте мы видим типы хешей и их числовые значения, которые мы можем взломать при помощи программы hashcat.

Шаг 1. Брутфорс коротких паролей

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

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

Кроме того, на данном этапе мы также попытаемся перебрать все числовые пароли. Их взломать проще всего. У 8-значного цифрового пароля есть около 100 миллионов возможных комбинаций, и даже у пароля с 12 символами есть только 1 триллион возможных комбинаций. Благодаря мощному оборудованию мы можем подобрать нужный пароль, даже не вспотев.

На скриншоте выше отображен Cain и Abel, настроенный для брутфорса 6-значного пароля, состоящего из одних цифр.

Шаг 2. «Низко висящие фрукты»

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

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

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

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

Читать также:  Как проверить анонимность vpn сервера

Шаг 3. Попробуйте распространенные пароли

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

Пользователи хотят, чтобы пароль, который они выбрали, соответствовал минимальным требованиями политики, и в то же время легко запоминался. Вот почему вы так часто видите пароли типа «P@ssw0rD». Несмотря на очевидную простоту, он соответствует минимальным требованиям политики паролей — длина 8 символов, наличие прописных и строчных букв, специального символа и цифры. Хотите верьте, хотите нет, но этот пароль и его варианты используются очень часто.

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

Шаг 4. Комбинирование слов с числами

Проход по «низко висящим фруктам» на Шаге 2 и по общеупотребительным паролям на Шаге 3, вероятно, даст несколько паролей, и время, которое займет эта процедура, будет минимальным. Теперь мы перейдем к подбору оставшихся хешей и сделаем следующий шаг по шкале сложности взлома паролей.

На этой итерации мы будем пропускать оставшиеся хеши через вордлист, в котором содержатся более длинные слова и слова с числами. Поскольку пользователи вынуждены периодически менять свои пароли, они часто просто добавляют числа к началу или концу своих текущих паролей. Некоторые из наших инструментов, такие как hashcat и John the Ripper, позволяют нам использовать специальные правила, которые применяются к вордлисту, для комбинирования слов, добавлять в конец или в начало слова цифры, изменять регистр.

Шаг 5. Гибридная атака

На момент перехода к данному этапу (итерации), как правило, нам удается подбирать более 50% всех паролей, но впереди нам предстоит проделать более сложную работу, чтобы взломать нестандартные пароли. Эти пароли часто включают специальные символы и комбинированные слова.

К ним относятся такие пароли, как «socc3rmom» и «n3xtb1gth1ng». Это относительно сильные пароли, включающие специальные символы и цифры, но поскольку они состоят из вариаций словарных слов, то они также часто легко взламываются.

Далее нам нужен будет список паролей, который объединяет в себя словарные слова с числами и специальными символами. К счастью, это то, что John the Ripper делает автоматически, но другие взломщики паролей (например, Cain and Abel) могут и не делать этого. Hashcat может использовать одно из своих правил для того, чтобы объединить слова и специальные символы с вашим вордлистом.

Читать также:  Metasploit для начинающего хакера (Autopwn) (Часть 7)

На скриншоте выше видно комбинаторное правило программы hashcat, которое добавляет символы верхнего регистра в комбинированные слова.

Шаг 6. Наконец, если ни одна попытка не удалась

Если ни одна попытка не удалась, то вам остается использовать брутфорс паролей или переборщиков паролей. С одним процессором это может быть очень долгим процессом, но его можно ускорить в 1000 или более раз при использовании вычислительной мощности ботнета или ASIC’а или с помощью очень быстрого взломщика паролей, использующего несколько графических процессоров (в ближайшем будущем мы опубликуем статью по каждому из этих способов). Самый быстрый взломщик паролей из всех имеющихся работает на 25 GPU и способен вычислять 348 миллиардов хешей в секунду!

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

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

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

Эти правила могут использоваться и в других инструментах для взлома паролей, таких как John the Ripper. На скриншоте выше мы как раз видим список этих правил в hashcat, но они точно также могут использоваться и в John the Ripper.

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

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

Предыдущая статья
( 1).

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