Brute force Подробный анализ


Оглавление (нажмите, чтобы открыть):

Взлом паролей. Как пользоваться Brutus AET2 и что такое полный перебор?

Время от времени у некоторых пользователей возникает необходимость подобрать пароль к почтовому ящику или какому-либо ресурсу. Причины у всех свои, но далеко не каждый владеет нужным навыками. Для них и существует представленный ниже материал, в котором неопытные хакеры найдут информацию о том, как пользоваться Brutus AET2 − известной утилитой для взлома паролей.

Brutus AET2 – что это такое?

Brutus представляет собой специализированную утилиту для взлома паролей. Данная программа обладает обширным арсеналом ресурсов, которые она поможет «вскрыть». Приложение можно использовать для взлома любого веб-сайта, почтового ящика или даже FTP-сервера, то есть практически никаких ограничений для начинающих хакеров нет. Зачем нужен подобный инструмент? Возможно, вы забыли личный пароль и не можете его восстановить, а может быть, вы решили заглянуть в чью-либо переписку. Вариантов использования существует масса. Если появилась необходимость подобрать пароль, то в первую очередь следует узнать, как пользоваться Brutus AET2.

Как работает утилита?

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

Как пользоваться Brutus AET2?

Работа с программой требует ряда подготовительных процедур. В первую очередь вам необходимо настроить приложение и обзавестись словарем паролей (таковой можно создать самостоятельно или же найти в Сети подходящий вариант) для «брута» (процесс подбора паролей), который будет использован самой утилитой Brutus AET2. Инструкция по работе с программой состоит из нескольких основных этапов, каждый из которых представляет собой заполнение полей в приложении. Также необходимо определиться с типом подбора.

Brutus AET2 настройка, выбор типа подбора, словари

Основное окно программы включает в себя ряд полей и опций. Первая графа называется Target. Здесь следует указать точный адрес, где расположены поля для ввода данных (например, ваша любимая социальная сеть). Сайты могут немного отличаться, как могут отличаться и формы логина. Для того чтобы правильно указать информацию, следует сразу же обратиться к полю Type. В нем есть несколько вариантов:

  • HTTP (Basic Auth) – если на сайте, который нужно взломать, при логине появляется дополнительное окно, то смело выбираем данный пункт и вписываем в поле Target адрес этого окна.
  • HTTP (Forms) – если на сайте просто нужно заполнить форму с логином и паролем, то выбираем данный пункт.
  • FTP – просто указываете адрес сервера (обычно это ftp) и его название.
  • POP3 – это почта, поэтому указываем здесь адрес почтового сервиса (обычно он начинается с pop3 или mail) и его название.

Дальше следует раздел Connection Options. Тут все просто – порт будет выставлен автоматически, а время соединения можно настроить на свой вкус. Также существует возможность использовать прокси-сервер. Следующий раздел, называемый Authentication Options, является заключительным этапом. Он, в свою очередь, состоит из нескольких граф. Первая носит название Username. Тут есть два варианта: либо использовать готовый список пользовательских имен, каждое из которых будет подбираться отдельно, либо применить одно конкретное имя. Вторая графа – это пресловутый словарь. Как пользоваться Brutus AET2 со словарем? Все очень просто. Надо создать обычный текстовый файл и занести в него нужные символы или их комбинации, после чего прикрепить в приложение и запустить его. Как пользоваться Brutus AET2 без словаря? Тут сложнее. Вернее, настроить легко, а вот результатов добиться труднее. Существует два варианта. Первый – это комбо-листы (программа будет добавлять цифры и различные символы к логину), второй – это то, что называется BruteForce.

BruteForce (полный перебор) – это метод грубой силы, при котором программа будет бездумно перебирать все существующие символы и вставлять каждый из них в поле логина/пароля. Почему данный метод малоэффективен? Да потому, что для взлома более или менее внятного пароля, скажем, на двенадцать символов потребуется два миллиона лет. Единственное, на ком сработает, так это на людях, привыкших к паролям «12345», «199402». Такие пароли будут выявлены мгновенно. Все, программа готова к работе. Теперь можно ее запускать и следить за полем Positive Authentication Results, где появятся подошедшие комбинации логина и пароля.

LiveInternetLiveInternet

Видео

Метки

Рубрики

  • Браузеры (82)
  • Internet Explorer (16)
  • Разное (7)
  • Opera (6)
  • Google Chrome (5)
  • Mozilla Firefox (46)
  • iPad, iPhone (2)
  • Вопрос-ответ (0)
  • Всё про ЛиРу и для ЛиРУ (37)
  • Памятка (1)
  • Азы (7)
  • Оформление (24)
  • Помощь (8)
  • Комп для домохозяек (111)
  • Windows Media Player (9)
  • Видеоуроки (2)
  • Как сделать. (91)
  • Советы (8)
  • Уроки (3)
  • Компьютер (180)
  • Windows® 7 (66)
  • Windows® XP (55)
  • Мошенничество в сети (1)
  • Безопасность (18)
  • Осторожно, вирус! (23)
  • Прибамбасики (4)
  • Советы (17)
  • Памятка (2)
  • Полезности (25)
  • Качалки (6)
  • Сайты (8)
  • Ссылки (10)
  • Программы (308)
  • Download Master (37)
  • Dropbox (15)
  • WinRAR (8)
  • Adobe Flash Player (3)
  • Word 2007 (45)
  • Nero (1)
  • PicPick (10)
  • Skype ( Скайп) (18)
  • Sony Vegas (12)
  • VirtualDub (13)
  • Антивирусники (26)
  • Бесплатный софт (14)
  • Полезные программы (74)
  • Рunto Switcher (12)
  • Уроки и руководства (4)
  • µTorrent (13)
  • Сервисы (121)
  • Google (56)
  • Поисковики (9)
  • Evernote (5)
  • Yandex (3)
  • Видеосервисы (3)
  • он-лайн сервисы (38)
  • Файлообменники (2)
  • Фотосервисы (9)
  • Тесты (4)
  • Фото и видеообработка (111)
  • Программы для обработки (6)

  • Видеообработка (4)
  • Zoner Photo Studio (1)
  • Плагины,фильтры (1)
  • Уроки по flash (1)
  • Всё о ФШ и для ФШ (26)
  • Графические редакторы (4)
  • Уроки Фотошоп (39)
  • Фотообработка (17)
  • Фото (видео)редакторы он-лайн (7)
  • Что это? (53)
  • О программах (19)
  • Памятка (4)
  • Понятия (27)

Цитатник

Некоторые фильтры AAAfilter Bas relief CPK filter D.

Все полезности в одном посте! 🙂 Собственно пост удобной навигации по блогу:-) Все ссылки на сам.

Самые азы о создании постов. Я все в картинках сделала, так, мне кажется, — доступнее. Если чт.

Поиск по дневнику

Интересы

Друзья

Постоянные читатели

Сообщества

Статистика

Брутфорс (brute force) — метод грубой силы

Суббота, 07 Мая 2011 г. 00:06 + в цитатник

БрутфорсПолный перебор (или метод «грубой силы» от англ. brute force ) —

метод поиска и взлома пароля путем перебора всех теоретически возможных вариантов. Позволяет перебрать все возможные пароли, составленные из определенного набора символов.
Также к этому типу взлома относится атака по словарю. В этом случае перебор происходит по набору хорошо известных распространенных паролей. 1) Брутфорс — способ долгий, но мощный. Подбираются все возможные комбинации для заданной длины пароля и набора символов (латинские символы большого и малого регистра, цифры, специальные знаки и т.д.)
Способ хорош тем что вы обязательно подберете необходимый пароль (только времени это может занять очень много).
Способ защиты от брутфорса — ставить сложные и длинные пароли. Сложные — значит составлять пароль из как можно большего числа символов, включая специальные знаки («`!

@ и т.д.) ну и конечно ставить лимиты на «попытки входа».

2) Словарная атака — пароли подбираются из заранее составленного словаря. Если пользователь выбрал пароль, например spiderman, zimmerman и подобные, то мы подберем пароль по словарю. Словарная атаки намного быстрее, она более эффективна когда нужно ломать например не одну асю, а все возможные (например от 000000 до 999999) по какому-нибудь слову которое можно найти в словаре.
Защита от словарной атаки: не ставить простые пароли, а ставить наборы символов (что-то вроде L@

I,\mI=). Да, запомнить такие пароли сложнее, но и взломать очень непросто.
Брутфорс атаки являются самым простым, но по сей день эффективным способом взлома компьютерных систем.

Никогда не используйте простые пароли, как, например:

  • qwerty
  • 123456
  • admin
  • vkontakte1
  • password
  • имя почтового ящика
  • дату рождения
  • никнейм

Если Ваш пароль простой,немедленно поменяйте его на сложный, воспользовавшись рекомендациями.Контрмеры:

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

Лучшие инструменты пен-тестера: брутфорс паролей

Содержание статьи

У каждого из команды ][ свои предпочтения по части софта и утилит для
пен-теста. Посовещавшись, мы выяснили, что выбор так разнится, что можно
составить настоящий джентльменский набор из проверенных программ. На том и
решили. Чтобы не делать сборную солянку, весь список мы разбили на темы – и в
этот раз коснемся утилит для подбора пароля к различным сервисам.

Brutus AET2

Последний релиз программы был в 2000 году. У тулзы давно нет официального
сайта. Но при этом Brutus AET2 по-прежнему является одним самых шустрых и
продвинутых брутфорсеров для основных Интернет-протоколов. Если нужно подобрать
пароль для HTTP (на тех страничках, где используется авторизация по
логину/паролю), произвольному веб-сервису с авторизацией через форму, почтовому
аккаунту, файловому или Telnet серверу, знай: Brutus – отличный вариант.

В общем случае для подбора пароля нужно указать хост и порт сервиса, выбрать
протокол, установить количество используемых потоков (максимум — 60), а также
таймаут. В целях анонимности можно подключить сокс или прокси. В зависимости от
протокола также указывается ряд дополнительных параметров. Например, для подбора
пароля на каком-то сайте (тип брутфорса — HTTP Form), необходимо указать метод
(POST или GET), обозначить параметры формы (в Brutus встроено простое средство
для их анализа), а в случае необходимости подделать cookie, включив
соответствующую опцию.

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

Универсальный брутфорсер для протоколов HTTP FORM, TELNET, POP3, FTP.

John the Ripper

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

Так что же нет способа отыскать локальный пароль в никсах или Windows? Есть,
если взять в помощники тулзу John The Ripper, которая как раз и занимается
восстановление паролей по их хешам. Основная задача тулзы — аудит слабых паролей
в UNIX системах, но также справляется и с NTLM хешами, которые используются для
хранения паролей под виндой, Kerberos, и некоторыми другими. Причем к программе
можно подключить модули, предоставляющие поддержку MD4 хешей, LDAP и MySQL
паролей.

John The Ripper проводить атаку по словарю и брутфорс. В режиме атаки по
словарю программа берёт предполагаемые пароли из указанного файла, генерирует
хеш и сверяет его с эталонным. В режиме брутфорса программа перебирает все
возможные комбинации пароля.

Сама тулза работает через консоль, а настройки для брута передаются с помощью
целого ряда опций и параметров. Впрочем, если не жаждешь разбираться с
многочисленными ключами, то можно немного схалтурить, воспользовавшись
замечательным GUI-интерфейсом от стороннего разработчика. FSCrack v1.0.1
(www.foundstone.com/us/resources/proddesc/fscrack.htm) — классно реализованный
фронт-енд, в котором параметры для взлома задаются через удобное окошко, а он
уже сам составляет команду для запуска Джона и выдает результат работы.

Для локального взлома паролей для никсов и винды.

L0phtCrack

А это программа уже целенаправленно разработана для аудита паролей в Windows.
L0phtCrack восстанавливает пароли от Windows по их хешам, раздобытым с локальной
машины, сервера в сети, контроллера домена или Active Directory. В программе
есть встроенный снифер, который может перехватить зашифрованные хеши по локалке.
Впрочем, помимо виндовых хешей программа отлично управится и с юниксовым Shadow.

Для восстановления пароля используется различные атаки: по словарю, брутфорс,
гибридный способ. В последнем случае можно задать настройки для мутации пароля:
например, dana в Dana99. Разработчики не поленились упростить процедуру по
подбору пароля: теперь прямо на запуске программы появляется специальный мастер,
который последовательно выясняет, что именно ты хочешь сделать.

Интересный факт. После приобретения в 2006 компанией Symantec, поддержка и
развитие программы заглохло, однако, ребята-разработчики выкупили свою
разработку обратно в мае этого года выпустили на свет LC6. Последняя версия
отлично работает под 64-битными система, использует преимущество
многопроцессорный и многоядерных систем. К сожалению, за использование
L0phtCrack разработчики просят почти триста баксов, хотя и предоставляют
триальный срок без ограничений. Но у тулзы есть бесплатные аналоги, например,
консольная Pwdump (www.foofus.net/fizzgig/pwdump/),
а также ophcrack (ophcrack.sourceforge.net),
использующий для взлома Rainbow-таблицы.

Восстановление пароля Windows и Unix по его хешу.

Cain and Abel

Об этой утилите мы уже рассказывали, когда составляли нашу
подборку сниферов.
Но вместе с тем это еще и сногсшибательный инструмент для восстановления
паролей. Если не брать в расчет восстановление слабо защищенных паролей
(например, сохраненных в браузере) и просмотр пасса под звездочками, то основная
часть программы заключается во встроенной утилите для взлома 25 различных видов
хешей: начиная от пресловутого MD5 и заканчивая NTLMv2 для восстановления
паролей в винде. Для подбора применяется как атака по словарю, так и тупой
брутфорс.

Взлом 25 различных хешей (пароли Windows, MySQL, MSSQL, Oracle, SIP, VNC,
CISCO, ключи WPA-PSK и т.д.).

THC-Hydra

Аббревиатура THC в названии программы — уже гарант качества. Но этот проект
THC-Hydra надолго войдет в истории хакерского движения, как один из лучших
универсальных брутфорсеров. В основе программы лежит модульная структура,
поэтому проект с самого начала быстро развивался: количество поддерживаемых
протоколов росло как на дрожжах. Сейчас с помощью гидры пароль можно подобрать к
более чем 30 протоколам, включая telnet, ftp, http, https, smb, несколькими
СУБД, и т.д. Кстати, THC-Hydra
брутит и SSH, но для этого требуется наличие библиотеки libssh.

Мощнейший брутер, однако, в виду огромного количества настроек и опций далеко
не всем покоряется с первого раза :). Если со стандартной установкой
«./configure&make&make install» справляют все, то совладать с многочисленными
ключами для запуска не так просто. В качестве примера приведу несколько основных
функций:

  • -R — восстановление сессии после сбоя;
  • -e ns — проверка наличия пустого пасса и пасса, равного логину;
  • -C FILE — брут из файла с записями вида логин:пароль;
  • -o FILE — вывод результатов работы в файл;
  • -f — завершение брута после первой найденной пары логин:пасс;
  • -t TASKS — количество потоков;
  • -w TIME — тайм-аут (30 секунд по дефолту).

Подробнее об использовании Hydra ты можешь прочитать в нашей старой статье
«Брутфорс по-нашему!» (73
номер ][). К счастью, сами разработчики позаботились о графической части
утилиты, но она запуститься только под никсами.

Многопоточный брутфорсер для следующих протоколов: Samba, FTP, POP3, IMAP,
Telnet, HTTP Auth, LDAP, NNTP, MySQL, VNC, ICQ, Socks5, PCNFS, Cisco, SSH, ICQ.

TSGrinder

Одна из немного утилит для подбора пароля для подключения к удаленному
рабочему столу винды по протоколу RPD. Задачу такого перебора сильно осложняет
шифрованное соединение и обмен ключами: сымитировать подобный криптообмен
данными достаточно трудно. Вторая загвоздка заключается в отсутствии к RPD
консольного режима. Но умельцы, однако, нашли способ обойти оба ограничения —
использовать стандартные средства для работы по RDP и эмулировать ввод
логина/пароля, как будто это делает сам пользователь.

За одно такое подключение тулза проверяет несколько паролей. TSGrinder может
проверить 5 паролей за одно подключение, переконнетиться и проверить пять
следующих. Одновременно с этим тулза поддерживает несколько потоков.

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

Для работы утилиты необходимо установить Microsoft Simulated Terminal Server
Client tool, которую также называют roboclient. Его можно закачать с сайта

ftp://ftp.microsoft.com/ResKit/win2000/roboclient.zip.

Для брутфорса RPD-акков.

RainbowCrack

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

Основная проблема: таблицы всех возможных паролей занимают слишком большой
объём на дисках. Поэтому используется оригинальный формат таблиц: хеши
собираются в цепочки по несколько тысяч комбинаций — каждая следующая комбинация
получается из предыдущей очередным применением той же функции хеширования. В
таблицы записывается только начало и конец каждой такой цепочки. Для того, чтобы
найти пароль по такой таблице, нужно применить к заданному хешу точно так же
функцию хеширования несколько тысяч раз (в зависимости от используемой длины
цепочек) и на очередной итерации получим хеш, который является концом одной из
цепочек в наших таблицах. После чего прогоняем эту цепочку заново от начального
хеша до нужного нам и находим комбинацию, предшествующую нашему хешу — это и
есть искомый пароль.

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

Чрезвычайно быстрое восстановление пароля по хешу с использованием
Rainbow-таблиц.

Md5 Crack Monster v1.1

Перед тем как лезть на рожон, запуская брутфорс хеша, не поленись пробить его
по онлайн базам. Например, в gdataonline.com содержится более миллиарда
уникальных записей, а это лишь один из многочисленных проектов (некоторые из них
смотри ниже). Чтобы упростить муторное занятие по проверке хеша на различных
сервисах рекомендую тебе классный скрипт Md5 Crack Monster, написанный на Perl.
Он прочекает хеш по солидному списку сервисов и выдаст результат.

Поиск значения хеша в онлайн базах.

THC PPTP bruter


Кто сказал, что подобрать пароль к VPN-аккаунту невозможно из-за особенностей
авторизации? Чушь! Парни из всемирно-известной хакерской группы THC уже давно
доказали обратное, выпустив public-релиз тулзы THC-pptp-bruter. Данная прога
представляет собой узкоспециализированный брутфорсер для PPTP-протокола
(1723/TCP), который действительно работает! �� Правда, только в том случае,
когда сервер используют авторизацию Microsoft Window Chap V2. Спешу обрадовать:
чаще всего используется именно она, причем как на Windows серверах, так и
серьезных CISCO-системах. Что касается старой Window Chap V1, то ее поддержку
тебе, вероятно, придется реализовать самостоятельно :))

Проблема реализации брутфорса заключается в том, что Microsoft намеренно
реализовала в PPTP-протоколе систему защиты против брутфорса. Если не вдаваться
в подробности, то ее смысл заключался в установке ограничения: «за одну секунду
можно ввести только один пароль». Естественно, что с такой скоростью перебора
хакер далеко не уедет и шансы подобрать пароль будут сведены к нулю. Однако в
реализации по традиции не обошлось без изъянов, которые были опубликованы на
багтраках, а группа THC успешно заюзала их в конкретной программе. С помощью
THC-pptp-bruter можно обойти ограничения, установленные Microsoft, и добиться
скорости более чем 300-400 паролей в секунду. Эта цифра, естественно, сильно
варьируется в зависимости от задержки в доставке пакетов до сервера, так что
наибольшей скорости можно добиться в локальной сети. Огорчает лишь то, что для
работы pptp-bruter необходима пара сторонних библиотек. Без них программа
попросту не скомпилируется.

Для брута VPN-соединения.

CIFSPwScanner

Сканнер для аудита стойкости паролей у CIFS/SMB-ресурсов. С его помощью ты
ловко сможешь подобрать необходимые данные для подключения к вражеской шаре в
локалке. Главное — правильно вбить необходимую команду и подготовить словарик
для брута, наполненный самыми разными человеческими мыслями и любовью. Для
CIFSPwS она выглядит так: CifsPwScanner -t server -u users [options]. Остальные
опции ты можешь посмотреть в мане к программе или в интерактивном хелпе.
CIFSPwScanner написан на Java, а поэтому может быть запущен под любой
платформой.

Подбор пароля к шарам.

piggy 1.0.1

Многопоточный брутфорс Microsoft SQL серверов, реализованный в виде
консольного приложения. Поддерживает диапазонный режим сканирования, когда на
заданный пароль проверяются сразу несколько серверов, хранящих базы. Это
особенно актуально, когда ты произвёл сервисный скан подсети NMAP на порт 1433
(TCP), традиционный для этого сервиса, получил необходимый баннер базы, после
чего скормил полученные адреса piggy. Поскольку халатность администраторов
зачастую поистине безмерна, вероятность улова весьма и весьма велика. Кроме
этого piggy работает с составленными тобой файлами, для проведения атаки по
словарю.

Аудит паролей MSSQL-сервера.

Хинты по работе со словарями

Отбросить повторяющиеся пароли в файле-словаре можно с помощью стандартных
средство никсов. Для этого понадобится одна единственная команда:

cat words.txt | sort | uniq > dictionary.txt

Если ты знаешь, что политика по установке паролей не позволяет пользователям
выбирать пасс, менее чем в 6 символов длиной и содержащий как минимум одну букву
и цифру, то можно сэкономить немало времени на переборе, если предварительно
отбросить все невозможные варианты. Вместе с THC Hydra идет замечательная
утилита pw-inspector, с помощью которой из существующего словаря легко составить
новый словарик, включающий в себя только «правильные» пароли. В нашем случае это
делается так:

cat dictionary.txt | pw-inspector -m 6 -c 2 -n > passlist.txt

WARNING

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

Взлом пароля методом грубой силы. Изучаем bruteforce атаку.

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

Что такое хешкрекинг?

Восстановление паролей к хешам, или хешкрекинг (от англ. hash cracking), — весьма увлекательный процесс, для которого требуются хорошие знания в различных областях — криптографии, комбинаторике, программировании и многом другом. Нужно также отлично разбираться в железе, чтобы обеспечить бесперебойную работу своей фермы в течение многих недель и месяцев при максимaльной загрузке.

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

Большинство хешкрекеров на форумах — этакие робин гуды. Они тратят свое время и ресурсы на то, чтобы помочь сломать хеши другим пользователям, и при этом непрерывно накапливают себе новые пароли и правила их формирования. Для них любые хеши — этo вызов их интеллекту, их опыту, их мастерству. И эти парни находят сложнейшие пароли, которые никто другой восстановить не может. Как у них это получается? Каким софтом и железом они пользуются? Что еще нужно знать, чтобы ломать хеши так же эффективно, как они? Об этом мы и расскажем в нашей статье.

Хеши и пароли пользователей

Сейчас хешкрекинг в основном производится на видеопроцессорах (GPU). На обычных процессорах (CPU) брутятся только те алгоритмы, которые не реализованы под GPU. Для брута на GPU фактичeски уже стандартом стало использование программы oclHashcat, имеющей сборки как для Windows, так и для Linux, а также поддерживающей все современные видеопроцессоры — и NVIDIA, и AMD. Совсем недавно ее автор перевел программу в разряд Open Source, и теперь она доступна на GitHub, так что каждый желающий может присоединиться к работе над ее новыми версиями.

Для распределения работы этой программы между несколькими компьютерами используется оболочка hashtopus. Другим популярным GPU-брутфорсером остается нестареющий John the Ripper (JtR) в сборке Jumbo, который также имеет множество алгоритмов под все видеокарты, но для получения максимальной эффективности его желательно все-таки пересобирать под каждую конкретную конфигурацию железа.

Для работы на CPU программ гораздо больше, но самыми функциональными остаются все те же hashcat и JtR. Еще можно к ним добавить программу Hash Manager, которая больше заточена под обработку хешей в «промышленных масштабах», то есть очень крупных списков, которые не удается загрузить в другие программы. Все эти программы бесплатные, и каждый решает сам, что выбрать себе для ежедневной работы, только практика показывает, что желательно уметь владеть всем этим софтом — как правило, профессиональные хешкрекеры используют ту или иную программу в зависимости от конкретной ситуации.

Еще нужно учесть, что все эти программы консольные, не имеют встроенного GUI и, чтобы использовать их максимально эффективно, нужно уметь работать в консоли (см. врезку). А в идеале еще нужно уметь программировать командные файлы (BAT или CMD), чтобы максимально гибко настраивать работу программ. Тогда можно однократно составить для себя комплект командных файлов для разных атак, а потом, когда все настроено, весь хешкрекинг сведется к заполнению файла нужными хешами и запуску того или иного командного файла c определенными параметрами.

Консоль — райский дом хешкрекера

Самый продвинутый хешкрекерский софт — консольный и управляется либо через параметры командной строки, либо через редактирование файлов конфигурации. Но тенденция такова, что пользователи все дальше и дальше уходят от консоли, требуют графического интерфейса и наиболее популярный вопрос с форумов по работе с такими программами звучит так: «Я запустил программу, выскочило черное окно и закрылось. Что делать?» Ответ очевиден — изучать консоль.

Скорее всего, линуксоиды и так владеют навыками работы в консоли, а вот для пользователей Windows лучшим выбором будет программа FAR Manager. С ее помощью очень удобно работать со списками хешей и другими файлами. А если ее объединить с дополнительными инструментами (например, из состава программы Hash Manager), то получится просто убойный комплект, позволяющий обрабатывать любые файлы буквально за секунды.

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

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

Железо

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

Хорошая настольная ферма для брута хешей на пяти видеокартах

Требования к ферме такие же, как и при майнинге криптовалют, то есть нужно хорошее охлаждение, стабильное электропитание и грамотное размещение видеокарт, чтобы они не нагревали друг друга. До недавнего времени основными видеокартами для брута служили (как и в майнинге) видеокарты на процессорах AMD, так как они были более эффективны по соотношению цена/скорость. Однако после релиза архитектуры sm_50 (Maxwell) от NVIDIA выяснилось, что она лучше для брута, при этом видеокарты с такой архитектурой потребляют гораздо меньше электроэнергии, а также более тихие и холодные. И сейчас эффективнее всего для брута хешей карты NVIDIA GTX 980Ti.

GTX 980Ti — отличный выбор для хешкрекинга

И недаром же на форуме InsidePro все больше и больше хешкрекеров переходят на эти видеокарты (судя по подписям в их сообщениях) — при пиковом потреблении всего 165 Вт на алгоритме MD5 они выдают скорость порядка 15 миллиардов паролей в секунду. Но у них один недостаток — высокая цена, которая практически не снижается, а в связи со скачком курса доллара она поднялась еще больше. Если же основной критерий — цена, а все остальные параметры не важны, то можно взять видеокарты на процессорах AMD и упаковать ими свою ферму. К примеру, обычная цена системы c двумя средними видеокартами составляет около 1200–1300 долларов.

Что касается CPU, то тут все просто — чем больше ядер, выше частота и больше объем кеша, тем быстрее будет идти перебор. Мощный процессор позволит как использовать ферму для перебора паролей на GPU, так и параллельно с ними нагружать CPU второстепенной работой — например, проверкой других хешей по словарям, пока все GPU заняты гибридной или комбинированной атакой. Поддержка новейших наборов команд (SSE и AVX последних версий) также необходима, так как почти все вышеперечисленные программы имеют код, заточенный под эти наборы команд, что существенно увеличивает скорость перебора.

А есть хоть что-то, в чем CPU еще может конкурировать с GPU по скорости брута? При небольших объемах — нет, конечно. Но вот на больших списках хешей в десятки миллионов хешей (особенно соленых) очень часто обработка списка на CPU дает такую же скорость или даже большую, чем на видеокарте. А уж сотни миллионов хешей в GPU часто просто не загрузить физически — остается только разбивать список на более мелкие фрагменты и брутить их по очереди, но это пропорционально увеличивает время атаки, в то время как на CPU можно загрузить и обработать весь список за один заход, если позволяет объем RAM.

И есть еще одна тема, где со временем CPU может обогнать GPU, — это сопроцессор Intel Xeon Phi. Да, его цена пока очень высока, но, возможно, со временем она станет приемлемой, и его можно будет прикупить и задействовать для брута хешей на домашнем компьютере. Вот тогда может получиться очень мощная система, так как в нем присутствует около 60 четырехъядерных процессоров (в зависимости от модели), а это даст нам до 240 потоков для перебора. На тяжелых алгоритмах типа bcrypt (которые очень медленны даже на видеокартах) этот сопроцессор может быть в разы быстрее даже самых топовых видеокарт, так что не зря ребята из команды john-users прозвали его «убийцей bcrypt». Правда, хешкрекерского софта под него в паблике пока нет, но со временем он обязательно появится.

Вычислительные сопроцессоры Intel Xeon Phi, базирующийся на архитектуре Many Integrated Core

Конечно, читатель может возразить — а как же микросхемы FPGA (ПЛИС), выдающие при майнинге того же биткойна огромные скорости? Да, они выдают даже терахеши в секунду, только они запрограммированы под единственный алгоритм SHA-256, который при хешировании обычных паролей пользователей применяется весьма редко (а другой популярный алгоритм майнера — SCRYPT — применяется еще реже). Плюс сама по себе микросхема ПЛИС выдает невысокую скорость, а терахеши получаются путем объединения десятков (а то и сотен микросхем) в матрицы, а это уже недешевое решение. Но главный недостаток всех ПЛИС — они программируются только на брут одиночного хеша. Конечно, на эти микросхемы уже портировано множество алгоритмов, включая MD5, но практической пользы от этого мало — выгодней купить видеокарту. Хотя и Altera, и Xilinx развивают свои линейки ПЛИС весьма активно, и со временем эта тема тоже может стать очень интересной для хешкрекера.

Можно ли заработать на хешкрекинге?

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

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

Словари

Успех в хешкрекинге основан на хороших словарях, желательно состоящих из реальных паролей пользователей. Где же их взять? Есть три пути, рассмотрим их подробнее.

  1. Скачать из интернета готовые словари (погуглив слово wordlist). Это самый простой способ, но и словари эти весьма низкого качества — в них много мусора и искусственно нагенерированных слов, а мало реальных паролей. Так что этот вариант — если только на первое время.
  2. Скачать вложения (аттачменты) к сообщениям о сломанных хешах на форумах InsidePro и HashKiller — там часто размещаются просьбы о помощи при бруте крупных списков, и другие форумчане помогают, выкладывая свои результаты в формате хеш:пароль. А значит, можно накачать себе таких файлов и извлечь оттуда все пароли. Это уже будут очень хорошие словари, но у них будет один недостаток — все пароли из таких словарей лежат в паблике и доступны также и всем остальным хешкрекерам.
  3. Нарабатывать словари самому, постоянно обрабатывая списки невзломанных хешей, которые можно накачать с тех же форумов. Это самый действенный метод, хотя и самый долгий. Однако такие словари — наиболее ценные, так как содержат только реальные, уникальные и часто приватные пароли. У профессиональных хешкрекеров есть даже такой термин, как «майнинг реалпассов», то есть если есть платные хеши — ферма брутит их, если их нет — ферма не простаивает, а сутками брутит списки несломанных хешей с форумов, непрерывно нарабатывая все новые и новые уникальные пароли в копилку хешкрекера.

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

Частотные словари

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

Что это такое? Это обычные словари, но в них пароли отсортированы в порядке убывания частоты их употребления. В таких словарях первыми идут наиболее популярные пароли — см. примеры таких словарей в дистрибутиве программы Hash Manager, файлы Top100xx.dic. Очевидно, что эффективней проверить хеши сначала на самые часто употребляемые пароли, затем — на более редкие и так далее. Это позволит быстро сломать все популярные пароли и существенно облегчить список хешей для последующей работы.

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

Дополнительные инструменты

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

Обычно через хешкрекера проходит множество всевозможных текстовых файлов:

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

В общем, сотни и тысячи подобных разнородных файлов — это еще та головная боль. И все выкручиваются по-разному — кто-то в том же линуксе делает часть работы командами самой ОС (например, grep), кто-то пишет себе скрипты на Perl, кто-то использует различные программы. Но факт очевиден — помимо брутфорсеров, нужны еще инструменты, которые должны работать с текстовыми файлами: сортировать, чистить, конвертировать из одного формата в другой, извлекать или переставлять данные, проверять формат и так далее.

Без этих инструментов работать крайне сложно, и поэтому с каждым брутфорсером обычно поставляется свой комплект различных утилит. И hashcat имеет такой комплект, и JtR тоже, но самый крупный комплект утилит под Windows имеет программа Hash Manager. В ней более 70 инструментов, построенных по принципу одна функция = один файл. Таким образом, из них, как из кирпичиков, можно собрать BAT-файл, выполняющий обработку файлов любой сложности. А 64-битные версии инструментов позволяют обрабатывать файлы неограниченного размера.

Вот пример BAT-файла, демонстрирующий, как из списка, в котором перемешаны хеши разных типов, вытащить только хеши от Magento с двухсимвольной солью:

Алгоритмы хеширования

С одной стороны, набор актуальных алгоритмов хеширования почти не меняется со временем. Причины просты — алгоритмы хеширования паролей пользователей ОС не меняются годами, да и в интернете сотни тысяч ресурсов все еще базируются на устаревших движках, и обновление версий не происходит, несмотря на то что все новые версии форумов и CMS уже поддерживают более надежное хеширование — например, в IPB версии 4 уже сразу стоит алгоритм bcrypt. С другой стороны, небольшие изменения все-таки происходят — все больше начинает попадаться очень тяжелых алгоритмов — различные варианты PBKDF2 и тот же bcrypt, которые брутятся с мизерной скоростью даже на фермах.

Всего же известны уже сотни алгоритмов, примеры их хешей можно посмотреть здесь. Подавляющее большинство алгоритмов хеширования базируется на каком-либо из стандартных алгоритмов — MD5, SHA-1, SHA-256 и SHA-512 или на их комбинациях. Брутфорсеры давно уже поддерживают десятки таких алгоритмов в GPU-версиях и сотни алгоритмов в CPU-версиях.

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

Если же исходников движка нет, тогда нужно заполучить хеш от какого-то заранее известного пароля — например, зарегистрировать пару новых пользователей на форуме, желательно с одинаковым простым паролем вида 123456. Если их хеши будут одинаковы (считаем, что доступ к хешам у хакера есть), значит, при хешировании используется только пароль. Если разные, то к паролю подмешивается еще что-то, уникальное для каждого пользователя, — соль, логин, email. А дальше можно попробовать подобрать алгоритм по имеющемуся паролю и хешу. Например, в программе Hash Manager, в папке Bonus\SearchAlgorithm есть BAT-файл для автоматического поиска алгоритма по всем доступным в программе алгоритмам (около 400), включая проверку паролей в кодировке Unicode, а также соли (или имени пользователя) в шестнадцатеричном виде.

Ну а если так и не удается определить алгоритм, то можно спросить на форуме — например, здесь. Вдруг кто-то уже сталкивался с такими хешами?

По другую сторону баррикады

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

Иногда для этого достаточно перейти на самую свежую версию движка и выбрать алгоритм, самый медленный по скорости брута. Но если обновление движка не планируется, а администратор хочет максимально обезопасить пароли своих пользователей от подбора, то есть другой вариант — пропатчить код проверки пароля так, чтобы у всех вновь зарегистрированных пользователей (или сменивших свои пароли после определенной даты) пароли хешировались по-другому. Как?

Конечно, можно использовать любой стандартный тяжелый алгоритм из Linux-функции crypt() — sha512crypt или bcrypt. Но если удастся заполучить такие хеши, то хешкрекер по сигнатурам сразу определит алгоритм и сможет ломать хеши (хоть и медленно). Вывод — нужно хешировать пароли так, чтобы хешкрекер не мог однозначно определить алгоритм по виду хеша, а это делается только нестандартными методами.

Например, можно подмешивать к паролю статическую соль (пусть даже одинаковую для всех, но очень длинную — 200–500 символов) и хешировать обычной PHP-функцией md5. Этой соли в БД форума нет (как, например, в движках vBulletin или osCommerce), она прошита только в PHP-коде, доступ к которому получить гораздо сложнее, чем к хешам. Но даже если заполучить эту соль, то почти нет брутфорсеров, поддерживающих работу с такой длинной солью (во всяком случае, на GPU — точно нет).

Другой вариант — циклически хешировать обычный MD5 от пароля этак 50–100 тысяч раз. На скорости авторизации пользователей это почти не скажется, но скорость брута таких хешей будет мизерной (при условии, что еще удастся выяснить количество итераций — опять же, только из PHP-кода). А если не удастся — то их вообще не сбрутить.

Еще можно взять более длинный хеш от другого алгоритма (например, SHA-256 или SHA-512) и вместо цельного хеша хранить в БД его фрагмент размером 32 символа из середины хеша (да еще и байты можно переставить). Хешкрекер, увидев такой хеш, будет уверен, что это MD5 (или его модификация), и будет пытаться сбрутить его, но бесполезно.

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

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


Конкурсы по хешкрекингу

А где хешкрекер может посоревноваться с другими хешкрекерами в своем умении ломать хеши? Конечно же, на конкурсах! Основные — конкурс Crack Me If You Can, проводимый фирмой KoreLogic в рамках ежегодной конференции DEF CON, и конкурс Hash Runner на ежегодной конференции Positive Hack Days.

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

Исторически сложилось так, что с самых первых конкурсов сформировались три основные команды — InsidePro, hashcat и john-users, которые все эти годы стабильно делили меж собой три призовых места в различных комбинациях. Даже по названиям команд уже очевидно, вокруг какого софта или сайта они объединились. В составе каждой из команд есть автор этого софта, и причина этого тоже понятна — на конкурсах всегда встречаются новые или видоизмененные алгоритмы хеширования, и нужно очень быстро модифицировать программу-брутфорсер или добавить в нее новый алгоритм. Тому, кто не имеет возможности быстро (часто за несколько часов или даже минут) перекроить софт под нужные фишки, очень сложно претендовать на приз.

Все отчеты о конкурсах доступны на сайтах команд, а также на сайтах организаторов — например, тут.

Архивное фото — организаторы конкурса по хешкрекингу на DEFCON 2012

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

Заключение

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

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

Как сломать хеш, если под руками нет ни железа, ни софта?

Для этого можно проверить свой хеш в онлайн-базах хешей типа www.cmd5.ru. Или сразу на сервисах типа www.hashchecker.de, которые проверяют хеш массово в десятках баз, и, может быть, тебе повезет.

Но у таких сервисов есть недостаток — в основном они содержат хеши от искусственно сгенерированных паролей. Пока единственный сервис, где собраны только реальные хеши и пароли пользователей, — Hash Finder. На нем уже накоплено более 500 миллионов таких хешей и паролей — все они были кем-то когда-то реально использованы, поэтому процент найденных паролей на нем гораздо выше, чем на других сервисах.

Еще вариант — разместить свой хеш (или список хешей) на одном из хешкрекерских форумов, где всегда можно получить помощь. Самые популярные форумы: forum.insidepro.com, forum.hashkiller.co.uk, forum.antichat.ru/forums/76.

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

HackWare.ru

Этичный хакинг и тестирование на проникновение, информационная безопасность

Брут-форс веб-сайтов: инструкция по использованию patator, Hydra, Medusa

Брут-форс входа: эффективен даже на сайтах без уязвимостей

Брут-форс (перебор паролей) на веб-сайтах вызывает больше всего проблем у (начинающих) пентестеров. Если перебирать пароли на разных, например, FTP серверах, то команды, которыми запускаются программы, будут мало отличаться друг от друга – только различные цели. Если же мы переходим к перебору паролей в веб-формах, то тут всё по-другому: трудно найти два сайта, на которых был бы одинаковый набор полей формы с одинаковыми именами и одинаковое поведение при успешном или неуспешном входе.

Кроме этого разнообразия, даже без проактивной защиты веб-форма может быть создана разработчиком так, что в неё уже после нажатия на кнопку «Отправить» добавляются поля, без которых сервер не принимает форму. Анализом статичного кода это выяснить иногда очень непросто. Также на стороне веб-мастера очень легко реализовать такие анти-брутфорс меры как добавление скрытых полей со случайными значениями, анализ заголовка Referer и прочее. Всё это требует дополнительных сил на анализ.

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

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

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

Брут-форс формы, передающей данные методом GET, я буду показывать на примере Damn Vulnerable Web Application (DVWA). А перебор паролей формы, передающей данные методом POST я буду показывать на примере OWASP Mutillidae II. Я буду работать с этими уязвимыми веб-приложениями, предустановленными в Web Security Dojo.

Да и, пожалуй, рассмотрим ещё брут-форс входа на нескольких актуальных версиях реальных веб-приложений.

Передача данных из формы аутентификации на веб-сервер

Методы отправки данных

Как уже было упомянуто, веб-формы могут отправлять данные методом GET или POST.

get

Этот метод предназначен для получения требуемой информации и передачи данных в адресной строке. Пары «имя=значение» присоединяются в этом случае к адресу после вопросительного знака и разделяются между собой амперсандом (символ &). Удобство использования метода get заключается в том, что адрес со всеми параметрами можно использовать неоднократно, сохранив его, например, в закладки браузера, а также менять значения параметров прямо в адресной строке.

post

Метод post посылает на сервер данные в запросе браузера. Это позволяет отправлять большее количество данных, чем доступно методу get, поскольку у него установлено ограничение в 4 Кб. Большие объемы данных используются в форумах, почтовых службах, заполнении базы данных, при пересылке файлов и др.

Пример формы, которая отправляет данные методом GET:

Обратите внимание на action=»handler.php» – значение этого атрибута говорит о том, что данные будут отправлены файлу handler.php. Т.е. если я введу в текстовое поле, например hackware, то после нажатия на кнопку «Отправить» будет открыта страница ./handler.php?str=hackware

Пример формы, которая отправляет данные методом POST:

Если я введу в текстовое поле, например hackware, то после нажатия на кнопку «Отправить» будет открыта страница ./handler.php, т.е. в адресной строке передаваемые данные не отображаются.

Пусть вас не сбивает с толку формы, в которых отсутствуют атрибуты method и/или action. Они не являются обязательными. Если они отсутствуют, то используются значения по умолчанию. Для method это get, а для action – сама страница с формой (т.е. данные отправляются тому же скрипту/файлу, который показывает форму).

Отправляемые данные

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

Поведение веб-приложения при получении данных для входа

Проверка успешности входа

Как узнать, вошли ли мы? Т.е. как понять, что пароль успешно угадан? Для этого анализируется страница, которая присылается после попытки входа. Иногда мы не можем знать, что показывается залогиненому пользователю, поскольку у нас нет действительной учётной записи. Поэтому популярным стал метод от противного: мы пробуем ввести какой-либо логин и пароль и смотрим на ошибку. Например, это может быть «Account does not exist». Далее программа по перебору сравнивает выдаваемые ей страницы и если там отсутствует строка «Account does not exist», значит пароль подобран.

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

Поведение веб-приложения при удачном или неудачном входе не ограничивается только показом сообщения. Также вместе или даже вместо показа какого-либо сообщения веб-приложение может:

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

И ещё по поводу отображаемых данных – многие популярные веб-приложения имеют поддержку многих языков. Это также важно учитывать, поскольку вы ожидаете от знакомого вам веб-приложения «Account does not exist», а с учётом своей локали оно будет показывать «ไม่มีบัญชีอยู่»…

Кукиз, заголовки, скрытые поля, случайные данные в скрытых полях

Нужно помнить о таких возможных моделях поведения веб-приложения как:

  • присваивать кукиз с сессией каждому, кто открыл веб-форму, а при получении из неё данных, проверять, имеется ли такая сессия. Если сессии нет, то не принимать даже верный пароль. Т.е. перед каждой попыткой требуется получить веб-страницу с формой, при этом сохранить полученные кукиз для отправки их вместе с кандидатами в логины и пароли;
  • при каждом обновлении страницы форма может содержать скрытые поля со случайными данными. Это требует перед каждой попыткой получение формы, извлечение этих случайных данных, добавление их в передаваемое с логином и паролем тело запроса;
  • могут быть упрощённые варианты: статичные кукиз и статичные данные в скрытых полях формы. Это не требует получения их при каждой попытки входа. Но нужно не забывать добавлять значение скрытых полей в тело запроса, а про кукиз помнить, что сессия может закончиться по таймауту и нужно получить новое куки.

Сбор имён пользователей

Некоторые веб-приложения содержат имена пользователей (логин) на страницах их профилей, иногда в качестве части адреса страницы профиля, иногда необходимо использовать дополнительные программы для выявления логинов (например, для WordPress это может делать WPScan). На это не нужно жалеть времени. Если удастся собрать валидные логины пользователей, то это очень-очень сильно сократит время подбора по сравнению если бы мы брали имена пользователей из словаря.

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

Подготовка Web Security Dojo

Установим необходимые нам программы и немного обновимся (это внутри Web Security Dojo):

Установим свежую версию Medusa из исходных кодов:

Установим свежую версию Hydra из исходных кодов:

Скачаем последнюю версию скрипта patator:

Ещё обратите внимание, что я обновил Damn Vulnerable Web Application (DVWA) и Damn Vulnerable Web Application (DVWA) до последних версий. Как это сделать описано на соответствующих страницах по приведённым ссылкам.

Ещё нам понадобятся списки слов (словари). Скачаем парочку, если с ними не получится подобрать пароль, то позже скачаем ещё и другие словари:

Сбор данных о работе веб-формы

Нужно начать со сбора данных о работе веб-формы. Анализ статичных данных (HTML кода) может быть трудным и очень легко что-то пропустить. Поэтому мы будем анализировать «живые» данные, которые непосредственно отправляет браузер. Для подобного анализа нам нужен прокси. Мы воспользуемся Burp Suite Free Edition.

Настройка прокси в Burp Suite для анализа данных передаваемых из веб-формы

Запустите Burp Suite, это можно сделать из меню, либо, если вы скачали свежую версию, так:

Переходим во вкладку Proxy -> Options. Там в самом верху в Proxy Listeners нажимаем Add и добавляем новый прослушиватель: на любом не занятом порту, например, 7070. В качестве Specific Address выберите IP компьютера атакующего (т.е. той машины, где запущен Burp).

Здесь же перейдите во вкладку Request handling и поставьте галочку на Support invisible proxying (enable only if needed).

Когда добавите новый прослушиватель, поставьте галочку там, где Running (это будет означать, что он задействован в данное время).

Теперь спуститесь в самый низ, найдите Allow requests to web interface using fully-qualifyed DNS hostnames и поставьте там галочку.

Теперь перейдите в Proxy -> Intercept, отключите его.

Теперь в браузере открываете Настройки -> Advanced -> Network -> Connections Settings.

Там выберите Manual Proxy Configuration и в полях HTTP Proxy введите IP и порт прокси в Burp Suite.

Брут-форс веб-форм, использующих метод GET

Обратите внимание, для входа у нас запрашивается логин и пароль. Мы будем брутфорсить не эту форму (хотя ничего не помешало бы нам это сделать). Эта форма служит для доступа в DVWA, страницы которой содержат уязвимые веб-приложения, в том числе те, которые предназначены для входа, но от которых мы не знаем пароли. От этой формы мы знаем пару логин:пароль, введём их. Скорее всего, после этого в наш браузер будет записана куки. При каждом обращении к страницам DVWA, сервер будет запрашивать куки и сверять – имеется ли такая сессия. Если сессия имеется, то мы будем беспрепятственно просматривать страницы DVWA. Очень хорошо, что мы обратили на это внимание – ведь нам нужно настроить наши программы для брутфорса так, чтобы и они отправляли куки с валидной сессией, иначе они не смогут «общаться» с внутренними страницами DVWA, которые содержат веб-форму, которую мы хотим брут-форсить.

Перейдите в DVWA Security и поставьте низкий уровень безопасности (Low), сохраните сделанные изменения:

Переходим во вкладку Brute Force.

На самом деле, там под звёздочками уже имеется пароль пользователя admin. Но наша задача заключается узнать этот пароль с помощью брут-форса. Дополнительно в задании нам сообщили о четырёх пользователях, пароли которых также нужно узнать. Поэтому я дописываю к паролю одну цифру, чтобы сделать его заведомо неверным, нажимаю Отправить. На странице сайта мы видим:

Важной информацией является следующее:


  • при неверном пароле сервер выдаёт надпись «Username and/or password incorrect.»
  • судя по адресу http://localhost/dvwa/vulnerabilities/brute/?username=admin&password=password11&Login=Login# сервер использует отправку данных методом GET.

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

Теперь переходим в Burp Suite для анализа данных:

  • GET /dvwa/vulnerabilities/brute/?username=admin&password=password11&Login=Login HTTP/1.1
  • Cookie: security=low; PHPSESS > Первая говорит о том, что данные передаются только методом GET, а также содержит строку запроса /dvwa/vulnerabilities/brute/?username=admin&password=password11&Login=Login

Вторая содержи куки, без которого нас не пустят на внутренние страницы сервера. Т.е. их также нужно обязательно указывать.

В некоторых случаях также важной могла бы оказаться строка с Referer:

Но данное веб-приложение не проверяет Referer, поэтому в программе необязательно указывать этот заголовок.

Также посмотрим ответ веб-сервера:

Редиректа (Location:) и записи новых кукиз не происходит. А в ответе при неверном пароли присутствует слово «incorrect»:

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

Использование patator для брут-форса веб-форм, передающих данные методом GET

Если предыдущий материал показался вам сложным, то у меня для вас плохая новость – сложное начинается только сейчас. Поэтому собрались! ))

patator предназначен для брут-форса большого количества разнообразных служб (и не только служб, кстати). Для брут-форса входа веб-приложений предназначен модуль http_fuzz.

Страница patator в Энциклопедии инструментов хакера является огромной. Это связано с большим количеством доступных модулей и примеров. Давайте выпишем только те опции, которые нам могут пригодиться для подбора пароля веб-сайтов:

Глобальные опции patator (применимы ко всем модулям, в том числе и для http_fuzz):

Опции модуля http_fuzz:

Давайте начнём строить нашу команду для запуска перебора паролей с помощью patator.

Начинаться она будет с ./patator.py http_fuzz, здесь ./patator.py – это расположение файла скрипта, а http_fuzz – название используемого модуля.

Как мы помним, серверу передаётся строка /dvwa/vulnerabilities/brute/?username=admin&password=password11&Login=Login, которая является относительным адресом страницы. Абсолютный адрес в нашем случае выглядит так http://localhost/dvwa/vulnerabilities/brute/?username=admin&password=password11&Login=Login. Этот адрес мы указываем с опцией url: url=»http://localhost/dvwa/vulnerabilities/brute/?username=admin&password=password11&Login=Login»

Слово admin мы заменяем на заполнитель FILE0 а вместо password11 указываем второй заполнитель FILE1. В итоге адрес, который мы будем запрашивать каждый раз на веб-сервере, и который мы указываем с опцией url становится таким: url=»http://localhost/dvwa/vulnerabilities/brute/?username=FILE0&password=FILE1&Login=Login»

Также нам нужно указать расположение файлов с именами пользователей и паролями. Обратите внимание, вместо FILE0 и FILE1 используется сокращённая запись 0= и 1=. Файлы расположены в той же директории, что и скрипт patator, поэтому к нашей команде я добавляю 0=namelist.txt 1=password_medium.txt

Далее мы добавляем используемый метод: method=GET

Куки передаются в заголовках, поэтому добавляем наши куки строкой: header=’Cookie: security=low; PHPSESS >

Теперь после опции -x нам нужно указать действие и условие таким образом, чтобы при успешном входе подобранные логин и пароль выводились нам, а неудачные попытки – нет. Неудачной попыткой являются те, когда в присылаемом от сервера ответе присутствует слово incorrect. В качестве действия мы выбираем ignore. Тогда получается -x ignore:fgrep=’incorrect’.

Соберём всё вместе, в конечном счёте получается следующая команда:

Обратите внимание, что если вы попытаетесь использовать эту же команду в Web Security Dojo в Damn Vulnerable Web Application (DVWA), скачаете эти же самые словари, которые я использую, то у вас всё равно ничего не получится! Поскольку вам значение 1n3b0ma83kl75996udoiufuvc2 (куки) нужно поменять на своё.

Перебор затянется на длительное время, логи Apache (чтобы убедиться, что процесс идёт), можно смотреть следующей командой:

Чтобы посмотреть прогресс в самой программе, нажмите [ENTER]. Для просмотра всех доступных интерактивных команд, нажмите h.

Вот результат выполнения брут-форса:

С одной стороны, программу минимум мы выполнили и нашли пароль администратора. Но мы не нашли ни одного (из четырёх) паролей пользователя.

Скорость перебора составила 264 протестированных комбинации за секунду.

И ещё обратите внимание, что одну и ту же учётную запись мы взломали четыре раза. Это не ошибка patator – это проблема наших словарей, в которых одни и те же имена пользователя и/или пароли повторялись несколько раз. Для брут-форса веб-приложений это плохо. Кстати, давайте посчитаем,

Всего было протестировано 2096668 комбинации логин:пароль. Это можно проверить и самому. Посчитаем количество имён пользователя:

Посчитаем количество паролей:

Всего комбинаций: 2908*721=2096668

А теперь давайте удалим дубликаты и снова посчитаем количество комбинаций:

Т.е. если бы мы догадались начать с удаления дубликатов, то количество комбинаций, необходимых для тестирования, сократилось бы примерно на 350 тысяч… Пусть это послужит нам уроком.

Мы не узнали данных ни одного из четырёх пользователей. Нам нужны новые словари для продолжения брут-форса, но давайте введём полученные данные учётной записи admin:password и продолжим исследование веб-приложения. Мы видим фотографию пользователя:

Фотография размещена по адресу http://localhost/dvwa/hackable/users/admin.jpg. А что если мы заглянем в папку http://localhost/dvwa/hackable/users/ .

Я почти уверен, что название файлов изображений соответствуют именам пользователей, т.е. это

Это отличный подарок для нас, поскольку в качестве новых словарей имён пользователя я собрался брать «First names facebook-firstnames.txt.bz2 (16,464,124 bytes)» отсюда. Это большой список и новый брут-форс сильно бы затянулся. Вместо этого я создаю файлик opened_names.txt и вписываю туда всего 4 строчки:

В качестве паролей я попробую словарик «500 самых плохих паролей»:

Теперь моя команда с новыми словарями выглядит так:

Ну наконец-то и на моей улице праздник. Буквально за считанные секунды я взломал пароли для трёх учётных записей из четырёх.

Из файла opened_names.txt я убираю все строки, кроме 1337 (чтобы уже взломанные пользователи не отнимали время). Попробую с таким сочетанием:

Возьмём молоток побольше — Rockyou:

Результат получен на удивление быстро:

Недостающая пара: 1337:charley

Ещё из скриншота видны ложные срабатывания, когда в пароле присутствуют специальные символы. Это может означать наличие другой уязвимости, например, SQL-инъекции.

Использование Medusa для брут-форса веб-форм, передающих данные методом GET

У программы Medusa также очень большая страница справки, которая содержит информацию по всем модулям программы. Выпишем информацию по модулю web-form, поскольку именно он применяется для брут-форса форм входа веб-сайтов.

web-form

Доступные опции модуля:

  • USER-AGENT:? Значение пользовательского агента (User-agent). По умолчанию: «I’m not Mozilla, I’m Ming Mong».
  • FORM:? Целевая форма для запроса. По умолчанию: «/»
  • DENY-SIGNAL:? Сообщение неудачной аутентификации. Попытка помечается как успешная, если этот текст отсутствует в ответе сервера. По умолчанию: «Login incorrect»
  • CUSTOM-HEADER:? Пользовательский HTTP заголовок.

Можно указать больше заголовков, используя эту опцию несколько раз.

Методы и поля для отправки веб-службе. Валидными методами являются GET и POST. Действительные данные, которые отправляет форма, также должны быть определены здесь. Особенно поля имя_пользователя и пароль. Поле имя_пользователя должно быть первым, за ним следует поле пароля. По умолчанию: «post?username=&password=»

Пример использования: «-M web-form -m USER-AGENT:»g3rg3 gerg» -m FORM:»webmail/index.php» -m DENY-SIGNAL:»deny!» -m FORM-DATA:»post?user=&pass=&submit=True» -m CUSTOM-HEADER:»Cookie: name=value»

Если внимательно всмотреться в опции Medusa, то станет понятно, что программа patator является более гибкой и способной выполнять брут-форс веб-форм практически при любом поведении веб-приложения. Про Medusa этого сказать нельзя, но для нашей ситуации её функционала достаточно. Давайте составит команду для запуска брут-форса под наши условия.

  • Начинается команда с вызова бинарного файла Medusa – /usr/local/bin/medusa.
  • Далее после опции -h нам нужно указать адрес хоста, который будет брут-форситься: -h localhost
  • Теперь опциями -U и -P укажем файлы с именами пользователей и паролями: -U opened_names.txt -P 500-worst-passwords.txt
  • После опции -M нужно указать используемый модуль: -M web-form

Все остальные величины являются опциями модуля web-form и начинаются с -m.

  • После -m FORM указываем адрес формы, которой отправляются логин и пароль: -m FORM:»/dvwa/vulnerabilities/brute/»
  • С -m DENY-SIGNAL указываем фразу или слово, которые говорят о неудачной аутентификации: -m DENY-SIGNAL:»incorrect»
  • Метод отправки, а также сами отправляемые данные указываются после -m FORM-DATA. Здесь нужно быть особенно внимательным. В самом начале указывается метод передачи данных (post или get). Первым обязательно должно идти поле с именем пользователя, а вторым – поле с паролем. Заполнители не указываются. Для нашего примера верной является такая строка: -m FORM-DATA:»get?username=&password=&Login=Login»
  • С -m CUSTOM-HEADER указываются заголовки. Можно использовать много раз для передачи нескольких заголовков. В нашем случае обязательным являются только куки: -m CUSTOM-HEADER:»Cookie: security=low; PHPSESS > Итак, собираем всё вместе в одну команду:

И всё в этой команде хорошо и правильно, кроме одного, Medusa вылетает с ошибкой не успев перебрать ни одного пароля:

Автор уже извещён о данной ошибке: https://github.com/jmk-foofus/medusa/issues/14. Будем надеяться, что он её поправит.

Использование THC-Hydra для брут-форса веб-форм, передающих данные методом GET

Как обычно, начнём знакомство с Hydra со страницы с опциями и выпишем те из них, которые нужны для брут-форса веб-форм.

Опции модулей http-get-form, https-get-form, http-post-form, https-post-form

Модули требует страницу и параметры веб-формы.

По умолчанию этот модуль настроен следовать максимум пяти редиректам подряд. Он каждый раз собирает новое куки с того же URL без переменных. Параметр принимает три разделённых «:» значения, плюс опциональные значения.

(Примечание: если вам нужно двоеточие в строке опций в качестве значения, экранируйте его с «\:», но не экранируйте «\» с «\\».)

  • : : [: [: ]
  • Первое — это страница на сервере (URL) на которую отправляются данные методом GET или POST.
  • Второе — это переменные POST/GET получаемые либо из браузера, либо прокси и т. д. Имена пользователей и пароли будут подставлены вместо заполнителей «^USER^» и «^PASS^» (ПАРАМЕТРЫ ФОРМЫ).
  • Третье — это строка, которая проверяет неверный вход (по умолчанию). Перед условием неверного входа должна стоять «F=», перед условиям успешного входа должна стоять «S=». Это то место, где больше всего людей ошибаются. Вы должны проверить веб-приложение, на что похожа строка, которую он выдаёт при неуспешном входе и указать её в этом параметре!

Следующие параметры опциональны:

задаёт другую страницу с которой собрать начальные кукиз.

для отправки с каждым запросом заданного пользователем HTTP заголовка

^USER^ и ^PASS^ также могут быть размещены в этих заголовках!


Примечание: ‘h’ добавит определённый пользователем заголовок в конец, независимо от того, отправила ли уже Hydra заголовок или нет.

‘H‘ заменит значение этого заголовка, если оно существует, тем, которое указал пользователь или добавит заголовок в конец.

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

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

Собираем нашу команду:

  • Как всегда, она начинается с бинарного файла THC-Hydra: hydra
  • Опциями -L и -P задаём файлы со списками имён пользователя и паролей: -L opened_names.txt -P 500-worst-passwords.txt
  • Установим количество потоков: -t 10
  • Из четырёх схожих модулей выбираем http-get-form и через символы :// указываем адрес localhost. Здесь же через слеш нам нужно указать адрес страницы формы (/dvwa/vulnerabilities/brute/), передаваемые форме данные, где необходимо указать «^USER^» и «^PASS^» в тех местах, куда будут подставлены имена и пароли (username=^USER^&password=^PASS^&Login=Login) и третье это строка, которая проверяет верный или неверный ввод (incorrect). Все эти данные разделены двоеточиями. Получается:
  • Не забываем, что нам обязательно нужно передать куки, для этого используем опцию h и через двоеточие ещё дописываем (если внутри заголовка присутствует своё двоеточие, то обязательно экранируем его): h=Cookie\: security=low; PHPSESS > В конечном счёте у нас получилось:

    И опять, хорошая команда, правильно составлено, но есть одно «но»:

    Много ложных срабатываний и ни одного угаданного пароля… Я пробовал менять команду, в качестве условия устанавливал успешный вход с соответствующей строкой. Но результат всегда один: ложные срабатывания и ни одного угаданного пароля… Всё-таки слова автора patator:

    Неудовлетворённость существующими программами была вызвана следующими их недостатками:

    • они не работают или работают ненадёжно (несколько раз в прошлом они выдавали ложноотрицательные результаты)
    • они недостаточно гибкие (как сделать перебор по всем спискам слов, подставить любой параметр модуля)
    • у них отсутствуют полезные функции (отображение прогресса или пауза во время выполнения)

    Это не пустая болтовня о неудовлетворительном качестве альтернативных инструментов. Мы только что в этом убедились сами.

    Брут-форс веб-форм, использующих метод POST

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

    Использование patator для брут-форса веб-форм, передающих данные методом POST

    Теперь давайте перейдём к брутфорсу веб-входа, когда данные передаются с использованием POST.

    Я буду практиковаться в OWASP Mutillidae II, установленной в Web Security Dojo.

    Там есть страничка входа http://localhost/mutill >

    Как видим, вход не произошёл, из важного:

      мы остались на странице http://localhost/mutill > Переходим теперь в Burp Suite:

    Здесь важными являются строки:

      POST /mutill > Они говорят нам о том, что данные передаются методом POST странице /mutill >

    Анализирует ответ сервера:

    Редиректов и записи новых куки нет.

    Начинаем строить нашу команду.

    • Она начинается с ./patator.py http_fuzz (файл программы и указание используемого модуля).
    • Далее с опцией url мы указываем адрес страницы, на которую отправляются данные: url=»localhost/mutill > Всё вместе:

    Как видим, результаты есть:

    При моих параметрах, иногда возникала ошибка 500 Internal Server Error, которая в данной ситуации означает лишь то, что я заDoS’ил сервер.

    Брут-форс входа в phpMyAdmin, WordPress, Joomla!, Drupal

    [ДОПИСЫВАЕТСЯ — БУДЕТ ДОБАВЛЕНО ПОЗЖЕ]

    Заключение

    Итак, из тройки patator, Hydra и Medusa полностью адекватно работающей оказалась только одна программа – patator.

    Более того, гибкость patator позволяет проводить брут-форс в обстоятельствах, которые были бы не по зубам Hydra и Medusa (если бы они работали).

    Если плачевные результаты Hydra и Medusa связаны с моими неправильными действиями, то просьба написать в комментариях, в чём именно мои ошибки.

    Брут паролей. Длительность взлома методом «полного перебора» (brute force)

    Безопасность — Помощь в обнаружении и удалении вредоносного кода с сайта. Устранение последствий взлома. Все о веб безопасности.

    Ссылки сообщества
    Пользователи
    Experience
    Поиск по форуму
    Поиск по метке
    Расширенный поиск
    Найти все сообщения с благодарностями
    Найти все сообщения с Плохо
    Google™ Search
    К странице.
    ЛУЧШИЕ ТЕМЫ РАЗДЕЛА
    «Безопасность»

    Полный перебор (или метод «грубой силы», англ. brute force) — метод решения математических задач. Относится к классу методов поиска решения исчерпыванием всевозможных вариантов.

    Пример продолжительности подбора паролей
    В таблице представлено оценочное время полного перебора паролей в зависимости от их длины. Предполагается, что в пароле могут использоваться 36 различных символов (латинские буквы одного регистра + цифры), а скорость перебора составляет 100 000 паролей в секунду (класс атаки B, типичный для восстановления пароля из Кэша Windows (.PWL файлов) на Pentium 100)
    Символ — Время
    5 — 10 мин
    6 — 6 часов
    7 — 9 дней
    8 — 10 мес
    9 — 32 года
    10 — 1161 год
    11 — 41082 года
    12 — 1.5 млн.лет
    .
    Проще говоря, 12 символьный сложный пароль довольно устойчив к бруту.

    23.04.2013, 21:58 #1
    «Спасибо» от:
    23.04.2013, 22:29 #2
    • Обзор SEO софт для Вебмастера!
    • ZennoPoster 5 + Бонус шаблоны | Купить SEoDOR со скидкой
    23.04.2013, 22:32 #3
    «Спасибо» от:

    это один символ, которого не существует на клавиатуре (Alt+4567)
    Брутфануть не получится, не зная хитрости.

    Upd. форум делает проверку на символы

    23.04.2013, 22:38 #4

    Кулхацкеры есть? У меня тут в гараже несколько компов валяется, там точно Pentium 100 есть.
    Продам. Два килобакса. Нет, три килобакса. Идеален для взлома паролей.
    Пруфлинк: http://www.seocafe.info/bezopasnost/. tml#post225571

    24.04.2013, 00:03 #5
    «Спасибо» от:

    Наверное, специалисты скажут более точно.

    Но, вряд ли способности брута в условиях нынешней скорости передачи данных веба превзойдут вычислительные способности раритетного «пенька» (Pentium 100).

    24.04.2013, 00:16 #6
    24.04.2013, 07:38 #7

    Alex LM, может этот «пентиум-100» что-то типа условной единицы, вроде лошадиной силы?

    П.С. А вообще есть такой фактор, как везение. Было дело, подбирал пароль к БД. 10 знаков. Дуал ксеон, 8 гиг. В пятницу вечером запустил (без особых надежд на успех мероприятия), в понедельник пришел в офис — готово. Пароль достаточно сложный был. По моему так просто повезло, что при переборе какая-то из комбинаций быстро высветилась.

    24.04.2013, 11:24 #8
    «Спасибо» от:

    Кто в Я ндекс продвигал, тот в цирке не смеется. народная мудрость

    Со временем найдутся все

    24.04.2013, 11:43 #9

    так, давайте более популярные понятия. Чтобы понимать ситуацию глубже, вам нужно знать какую-то специфику. И так:

    скорость брута паролей зависит, в первую очередь, от метода брута и метода получения ответа от проверяющего звена. К примеру, это может быть брутом админки, сайта, тогда, очевидно, что каждый раз мы будем выгружать html-страницу и парсить ее, чотбы понять — угадали, или нет. Это может быть брутом какого-то базового аутентификационного интерфейса, типа rdp,ssh, даже скайпика, или аськи — в таком случае, брут будет быстрее за счет того, что ответ от сервера гораздо короче. Но это все не сравнится со скоростью локального брута. О последнем приведу живой пример:

    Мы взломали форум кафешки с целью взломать мыло Умки, надеясь, что у него пароль на форуме такой же, как пароль на мыльнике (это случается в 80% случаев, хотя не думаю, что умка мог бы так сплоховать). И так, форум кафешки — булка, которая хранит пароли в хеше md5, брутить который мы и собираемся. в чем суть хеширования? это сложно осознать неподготовленному уму, но факт в том, что хеширование от шифрования отличается тем, что хеширование — процесс необратимый. тобишь, мы можем получить хеш от пароля, но, даже зная, как мы получили этот хеш — мы никогда не сможем понять даже приблизительно, как выглядел пароль до процесса хеширования. единственный допустимый вариант — это брут этого хеша. ну и как частные решения — брут по осмысленному словарю и комбинациям (over 70% всех паролей) и брут по рейнбоу-таблицам (около 50% от всех паролей). Есть, так же, брут тривиальный — брут перебором по заданной маске брута. Так вот, сам процесс брута хешей заключается в хешировании очередного пароля и сверке полученного хеша со взламываемым, если хеш совпал, то мы знаем пароль Умки и можем попробовать авторизоваться в мыльнике.

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

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

    Вон, Уник прав, добавление какого-то спец.символа, которого нету на клаве — практически полностью обезопасит от брута

    Брутфорс перебор паролей. Brute force: Подробный анализ

    Здравствуйте, друзья! За последнее время в интернете произошло несколько интересных событий: Яндекс запустил бета-версию Островов и изменил интерфейс Вордстат, ЦОП Profit-Partner начал очередную акцию с подарками, стартовало несколько новых конкурсов. Но, пожалуй, самое резонансное, это массовые Brute Force атаки на сайты , которым подверглись хостинги по всему миру в конце июля. Опасности взлома подвержены в основном сайты на CMS WordPress и Joomla. В случае успешного взлома, сайт становится частью ботнета и используется для новых атак.


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

    Защита от брутфорс атак (перебора паролей) на стороне хостинга

    Многие хостинги своевременно отреагировали на действия хакеров, но, видимо, не все. Во всяком случае, я заметил активные действия со стороны Бегет, Спринтхост и Макхост. ТаймВеб и 1gb.ua никаких видимых движений не производили, за остальных сказать не могу.

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

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

    При попытке входа в админ.панель блога на хостинге sprinthost.ru меня до сих пор встречает такая страница:

    На mchost.ru аналогичная картина:

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

    Наши клиенты защищены настолько, насколько это возможно

    Игорь, опишите, пожалуйста, вкратце сложившуюся ситуацию. Атаки идут по всему миру и длятся уже довольно долго, неужели никому, кроме хостингов и вебмастеров, до этого нет дела?

    Первые атаки были еще в мае, но они были не столь заметными, хотя в интернет-новостях отметились. Лаборатория Касперского делала заявления по этому поводу, насколько я помню.

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

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

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

    Кстати, я специально не использовал слово “хакер”, т.к. очень часто хакеры находят уязвимость или разрабатывают хаки, но не используют их сами, а продают. А покупатели, обычно не хакеры, уже специализируются на получении дохода.

    Российские органы поиском подобных злоумышленников не занимаются, за редким исключением, например, когда была атака на сайт Аэрофлота. Говорят, что нет тех.средств для этого. В США ФБР занимается только крупными группами и сетями и, обычно, когда дела связаны с кражей банковской информации или взломом сайтов крупных компаний. Но по большому счету борьба с этим всегда была на конечных потребителях.

    Насколько масштабны эти атаки и какие сайты им подвержены?

    На данный момент атакам подвержены сайты на WordPress и Joomla. Они достаточно масштабны, как по силе, так и по объему. Все хостинг-компании, у которых есть значительное количество сайтов, фиксируют эти атаки, т.к. они идут круглосуточно. Атакуют не хостинг-компанию, а именно сайты и не имеет значение, на каком хостинге он находится. Есть большая база сайтов и боты атакующих ходят по этим сайтам с целью подбора паролей, если там стоит WP или Joomla. Сложность тут состоит в том, что обращения идут с миллионов разных IP-адресов (видимо, используются разные бот-сети), поэтому блокировки не работают. Изначально создатели этих атак допустили небольшую техническую ошибку, о которой не буду упоминать, что позволило нам сразу запустить минимальную защиту и за несколько дней довести ее до максимальной.

    Тут есть еще один важный момент. Сразу заметно возросла нагрузка на серверы, т.к. заметно увеличилось количество запросов к сайтам.

    Чего добиваются хакеры и зачем им это надо?

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

    Для нас, как для хостинг-компании, подбор паролей – это ежедневная ситуация. Поэтому мы научились с ней бороться, но не всегда возможно обратиться к нашим клиентам с этим. Например, когда мы добавили в панель функцию, запрещающую ставить легкие пароли (11111111, password и прочие), то были жалобы на это:-). Люди думают, что взлом их сайта никому не нужен, но они не понимают, что эти взломы делаются ботами на автомате, а люди лишь контролируют процесс. И если взломщик заработает с взлома их сайта всего 10 рублей, например, за размещение рекламы на несколько дней или редиректа на другой сайт, то с миллиона взломанных сайтов уже будет 10 миллионов. А есть клиенты, которые не замечают взлома месяцами.

    Какие уязвимости, прежде всего, могут использовать и что предпринять обычным вебмастерам, особенно новичкам?

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

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

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

    Были на Вашей памяти подобные атаки, и как часто это происходит? Или это самая крупномасштабная акция за последнее время?

    Атаки на CMS были постоянно, но не было такой широкой и мощной. Обычно атакующие боты были рассчитаны на какие-то уязвимости самих CMS, поэтому задевали немного сайтов. Нужно лишь вовремя обновлять CMS. Подбор паролей для FTP, к сожалению, тоже был всегда, но опять же в небольших масштабах. Обычно взламывали те сайты, которые сами пренебрегали своей безопасностью, например, ставя самые простые пароли. Сейчас ситуация отличается тем, что идет очень сильный перебор паролей.

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

    Спасибо Игорю за это блиц-интервью и содержательные ответы!

    Простые способы защиты админки WordPress от взлома

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

    • не использовать стандартный логин admin и установить сложный пароль для входа в админку WordPress (подробнее );
    • ограничить число попыток входа в админ.панель, например, с помощью плагинов или Limit Login Attempts ;
    • если у вас статичный IP, то можно разрешить вход только ему через файл.htaccess;
    • изменить стандартный адрес входа /wp-login.php и /wp-admin , например, с помощью простого плагина или более мощного Better WP Security ;
    • не использовать виджет “Мета “, так как в нем есть прямая ссылка “Войти “.

    Вот такая информация. А как у вас обстоят дела, почувствовали ли вы на своих сайтах силу брутфорс атак?

    P.S. Кого интересуют промо-коды на 3 месяца бесплатного хостинга по тарифу “Профи” от Макхост, обращайтесь, поделюсь.

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

    Что такое хешкрекинг?

    Восстановление паролей к хешам, или хешкрекинг (от англ. hash cracking), — весьма увлекательный процесс, для которого требуются хорошие знания в различных областях — криптографии, комбинаторике, программировании и многом другом. Нужно также отлично разбираться в железе, чтобы обеспечить бесперебойную работу своей фермы в течение многих недель и месяцев при максимaльной загрузке.

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

    Большинство хешкрекеров на форумах — этакие робин гуды. Они тратят свое время и ресурсы на то, чтобы помочь сломать хеши другим пользователям, и при этом непрерывно накапливают себе новые пароли и правила их формирования. Для них любые хеши — этo вызов их интеллекту, их опыту, их мастерству. И эти парни находят сложнейшие пароли, которые никто другой восстановить не может. Как у них это получается? Каким софтом и железом они пользуются? Что еще нужно знать, чтобы ломать хеши так же эффективно, как они? Об этом мы и расскажем в нашей статье.

    Рис. 1. Хеши и пароли пользователей

    Сейчас хешкрекинг в основном производится на видеопроцессорах (GPU). На обычных процессорах (CPU) брутятся только те алгоритмы, которые не реализованы под GPU. Для фактичeски уже стандартом стало использование программы oclHashcat , имеющей сборки как для Windows, так и для Linux, а также поддерживающей все современные видеопроцессоры — и NVIDIA, и AMD. Совсем недавно ее автор перевел программу в разряд Open Source, и теперь она доступна на GitHub, так что каждый желающий может присоединиться к работе над ее новыми версиями.

    Для распределения работы этой программы между несколькими компьютерами используется оболочка hashtopus . Другим популярным GPU-брутфорсером остается нестареющий John the Ripper (JtR) в сборке Jumbo , который также имеет множество алгоритмов под все видеокарты, но для получения максимальной эффективности его желательно все-таки пересобирать под каждую конкретную конфигурацию железа.

    Для работы на CPU программ гораздо больше, но самыми функциональными остаются все те же hashcat и JtR. Еще можно к ним добавить программу Hash Manager , которая больше заточена под обработку хешей в «промышленных масштабах», то есть очень крупных списков, которые не удается загрузить в другие программы. Все эти программы бесплатные, и каждый решает сам, что выбрать себе для ежедневной работы, только практика показывает, что желательно уметь владеть всем этим софтом — как правило, профессиональные хешкрекеры используют ту или иную программу в зависимости от конкретной ситуации.

    Еще нужно учесть, что все эти программы консольные, не имеют встроенного GUI и, чтобы использовать их максимально эффективно, нужно уметь работать в консоли (см. врезку). А в идеале еще нужно уметь программировать командные файлы (BAT или CMD), чтобы максимально гибко настраивать работу программ. Тогда можно однократно составить для себя комплект командных файлов для разных атак, а потом, когда все настроено, весь хешкрекинг сведется к заполнению файла нужными хешами и запуску того или иного командного файла c определенными параметрами.

    Консоль — райский дом хешкрекера

    Самый продвинутый хешкрекерский софт — консольный и управляется либо через параметры командной строки, либо через редактирование файлов конфигурации. Но тенденция такова, что пользователи все дальше и дальше уходят от консоли, требуют графического интерфейса и наиболее популярный вопрос с форумов по работе с такими программами звучит так: «Я запустил программу, выскочило черное окно и закрылось. Что делать?» Ответ очевиден — изучать консоль.

    Скорее всего, линуксоиды и так владеют навыками работы в консоли, а вот для пользователей Windows лучшим выбором будет программа FAR Manager . С ее помощью очень удобно работать со списками хешей и другими файлами. А если ее объединить с дополнительными инструментами (например, из состава программы Hash Manager), то получится просто убойный комплект, позволяющий обрабатывать любые файлы буквально за секунды.

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

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

    Железо

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

    Рис. 2. Хорошая настольная ферма для брута хешей на пяти видеокартах

    Требования к ферме такие же, как и при майнинге криптовалют, то есть нужно хорошее охлаждение, стабильное электропитание и грамотное размещение видеокарт, чтобы они не нагревали друг друга. До недавнего времени основными видеокартами для брута служили (как и в майнинге) видеокарты на процессорах AMD, так как они были более эффективны по соотношению цена/скорость. Однако после релиза архитектуры sm_50 (Maxwell) от NVIDIA выяснилось, что она лучше для брута, при этом видеокарты с такой архитектурой потребляют гораздо меньше электроэнергии, а также более тихие и холодные. И сейчас эффективнее всего для брута хешей карты NVIDIA GTX 980Ti (см. рис. 3).

    И недаром же на форуме InsidePro все больше и больше хешкрекеров переходят на эти видеокарты (судя по подписям в их сообщениях) — при пиковом потреблении всего 165 Вт на алгоритме MD5 они выдают скорость порядка 15 миллиардов паролей в секунду. Но у них один недостаток — высокая цена, которая практически не снижается, а в связи со скачком курса доллара она поднялась еще больше. Если же основной критерий — цена, а все остальные параметры не важны, то можно взять видеокарты на процессорах AMD и упаковать ими свою ферму. К примеру, обычная цена системы c двумя средними видеокартами составляет около 1200–1300 долларов.

    Можно ли заработать на хешкрекинге?

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

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

    Рис. 3. GTX 980Ti — отличный выбор для хешкрекинга

    Что касается CPU, то тут все просто — чем больше ядер, выше частота и больше объем кеша, тем быстрее будет идти перебор. Мощный процессор позволит как использовать ферму для перебора паролей на GPU, так и параллельно с ними нагружать CPU второстепенной работой — например, проверкой других хешей по словарям, пока все GPU заняты гибридной или комбинированной атакой. Поддержка новейших наборов команд (SSE и AVX последних версий) также необходима, так как почти все вышеперечисленные программы имеют код, заточенный под эти наборы команд, что существенно увеличивает скорость перебора.

    А есть хоть что-то, в чем CPU еще может конкурировать с GPU по скорости брута? При небольших объемах — нет, конечно. Но вот на больших списках хешей в десятки миллионов хешей (особенно соленых) очень часто обработка списка на CPU дает такую же скорость или даже большую, чем на видеокарте. А уж сотни миллионов хешей в GPU часто просто не загрузить физически — остается только разбивать список на более мелкие фрагменты и брутить их по очереди, но это пропорционально увеличивает время атаки, в то время как на CPU можно загрузить и обработать весь список за один заход, если позволяет объем RAM.

    И есть еще одна тема, где со временем CPU может обогнать GPU, — это сопроцессор Intel Xeon Phi. Да, его цена пока очень высока, но, возможно, со временем она станет приемлемой, и его можно будет прикупить и задействовать для брута хешей на домашнем компьютере. Вот тогда может получиться очень мощная система, так как в нем присутствует около 60 четырехъядерных процессоров (в зависимости от модели), а это даст нам до 240 потоков для перебора. На тяжелых алгоритмах типа bcrypt (которые очень медленны даже на видеокартах) этот сопроцессор может быть в разы быстрее даже самых топовых видеокарт, так что не зря ребята из команды john-users прозвали его «убийцей bcrypt». Правда, хешкрекерского софта под него в паблике пока нет, но со временем он обязательно появится.

    Конечно, читатель может возразить — а как же микросхемы FPGA (ПЛИС), выдающие при майнинге того же биткойна огромные скорости? Да, они выдают даже терахеши в секунду, только они запрограммированы под единственный алгоритм SHA-256, который при хешировании обычных паролей пользователей применяется весьма редко (а другой популярный алгоритм майнера — SCRYPT — применяется еще реже). Плюс сама по себе микросхема ПЛИС выдает невысокую скорость, а терахеши получаются путем объединения десятков (а то и сотен микросхем) в матрицы, а это уже недешевое решение. Но главный недостаток всех ПЛИС — они программируются только на брут одиночного хеша. Конечно, на эти микросхемы уже портировано множество алгоритмов, включая MD5, но практической пользы от этого мало — выгодней купить видеокарту. Хотя и Altera, и Xilinx развивают свои линейки ПЛИС весьма активно, и со временем эта тема тоже может стать очень интересной для хешкрекера.

    Словари

    Успех в хешкрекинге основан на хороших словарях, желательно состоящих из реальных паролей пользователей. Где же их взять? Есть три пути, рассмотрим их подробнее.

    1. Скачать из интернета готовые словари (погуглив слово wordlist). Это самый простой способ, но и словари эти весьма низкого качества — в них много мусора и искусственно нагенерированных слов, а мало реальных паролей. Так что этот вариант — если только на первое время.
    2. Скачать вложения (аттачменты) к сообщениям о сломанных хешах на форумах InsidePro и HashKiller — там часто размещаются просьбы о помощи при бруте крупных списков, и другие форумчане помогают, выкладывая свои результаты в формате хеш:пароль. А значит, можно накачать себе таких файлов и извлечь оттуда все пароли. Это уже будут очень хорошие словари, но у них будет один недостаток — все пароли из таких словарей лежат в паблике и доступны также и всем остальным хешкрекерам.
    3. Нарабатывать словари самому, постоянно обрабатывая списки невзломанных хешей, которые можно накачать с тех же форумов. Это самый действенный метод, хотя и самый долгий. Однако такие словари — наиболее ценные, так как содержат только реальные, уникальные и часто приватные пароли. У профессиональных хешкрекеров есть даже такой термин, как «майнинг реалпассов», то есть если есть платные хеши — ферма брутит их, если их нет — ферма не простаивает, а сутками брутит списки несломанных хешей с форумов, непрерывно нарабатывая все новые и новые уникальные пароли в копилку хешкрекера.

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

    Частотные словари

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

    Что это такое? Это обычные словари, но в них пароли отсортированы в порядке убывания частоты их употребления. В таких словарях первыми идут наиболее популярные пароли — см. примеры таких словарей в дистрибутиве программы Hash Manager, файлы Top100xx.dic. Очевидно, что эффективней проверить хеши сначала на самые часто употребляемые пароли, затем — на более редкие и так далее. Это позволит быстро сломать все популярные пароли и существенно облегчить список хешей для последующей работы.

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

    Дополнительные инструменты

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

    Обычно через хешкрекера проходит множество всевозможных текстовых файлов:

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


    В общем, сотни и тысячи подобных разнородных файлов — это еще та головная боль. И все выкручиваются по-разному — кто-то в том же линуксе делает часть работы командами самой ОС (например, grep), кто-то пишет себе скрипты на Perl, кто-то использует различные программы. Но факт очевиден — помимо брутфорсеров, нужны еще инструменты, которые должны работать с текстовыми файлами: сортировать, чистить, конвертировать из одного формата в другой, извлекать или переставлять данные, проверять формат и так далее.

    Без этих инструментов работать крайне сложно, и поэтому с каждым брутфорсером обычно поставляется свой комплект различных утилит. И hashcat имеет такой комплект, и JtR тоже, но самый крупный комплект утилит под Windows имеет программа Hash Manager. В ней более 70 инструментов, построенных по принципу одна функция = один файл. Таким образом, из них, как из кирпичиков, можно собрать BAT-файл, выполняющий обработку файлов любой сложности. А 64-битные версии инструментов позволяют обрабатывать файлы неограниченного размера.

    Вот пример BAT-файла, демонстрирующий, как из списка, в котором перемешаны хеши разных типов, вытащить только хеши от Magento с двухсимвольной солью:

    REM Извлекаемтолькострокидлиной35 символовExtractLinesByLen . exe % 1 35 35

    MOVE / Y % 1.Lines 2.txt

    REM ПроверяемформатхешейIsCharset . exe 2.txt ? h 1

    REM ПроверяемформатсолиIsCharsetInPos . exe 2.txt 33 «:» IsCharsetInPos . exe 2.txt 34 ? l ? u ? d

    IsCharsetInPos . exe 2.txt 35 ? l ? u ? d

    REM Готово! Вфайле2.txt осталисьтолькохешиотMagento

    В дистрибутиве программы Hash Manager, в папке Bonus , можно найти около 30 готовых примеров, выполняющих различные полезные функции для хешкрекера.

    Алгоритмы хеширования

    С одной стороны, набор актуальных алгоритмов хеширования почти не меняется со временем. Причины просты — алгоритмы хеширования паролей пользователей ОС не меняются годами, да и в интернете сотни тысяч ресурсов все еще базируются на устаревших движках, и обновление версий не происходит, несмотря на то что все новые версии форумов и CMS уже поддерживают более надежное хеширование — например, в IPB версии 4 уже сразу стоит алгоритм bcrypt. С другой стороны, небольшие изменения все-таки происходят — все больше начинает попадаться очень тяжелых алгоритмов — различные варианты PBKDF2 и тот же bcrypt, которые брутятся с мизерной скоростью даже на фермах.

    Всего же известны уже сотни алгоритмов, примеры их хешей можно посмотреть . Подавляющее большинство алгоритмов хеширования базируется на каком-либо из стандартных алгоритмов — MD5, SHA-1, SHA-256 и SHA-512 или на их комбинациях. Брутфорсеры давно уже поддерживают десятки таких алгоритмов в GPU-версиях и сотни алгоритмов в CPU-версиях.

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

    Если же исходников движка нет, тогда нужно заполучить хеш от какого-то заранее известного пароля — например, зарегистрировать пару новых пользователей на форуме, желательно с одинаковым простым паролем вида 123456. Если их хеши будут одинаковы (считаем, что доступ к хешам у хакера есть), значит, при хешировании используется только пароль. Если разные, то к паролю подмешивается еще что-то, уникальное для каждого пользователя, — соль, логин, email. А дальше можно попробовать подобрать алгоритм по имеющемуся паролю и хешу. Например, в программе Hash Manager, в папке BonusSearchAlgorithm есть BAT-файл для автоматического поиска алгоритма по всем доступным в программе алгоритмам (около 400), включая проверку паролей в кодировке Unicode, а также соли (или имени пользователя) в шестнадцатеричном виде.

    Ну а если так и не удается определить алгоритм, то можно спросить на форуме — например, . Вдруг кто-то уже сталкивался с такими хешами?

    По другую сторону баррикады

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

    Иногда для этого достаточно перейти на самую свежую версию движка и выбрать алгоритм, самый медленный по скорости брута. Но если обновление движка не планируется, а администратор хочет максимально обезопасить пароли своих пользователей от подбора, то есть другой вариант — пропатчить код проверки пароля так, чтобы у всех вновь зарегистрированных пользователей (или сменивших свои пароли после определенной даты) пароли хешировались по-другому. Как?

    Конечно, можно использовать любой стандартный тяжелый алгоритм из Linux-функции crypt() — sha512crypt или bcrypt. Но если удастся заполучить такие хеши, то хешкрекер по сигнатурам сразу определит алгоритм и сможет ломать хеши (хоть и медленно). Вывод — нужно хешировать пароли так, чтобы хешкрекер не мог однозначно определить алгоритм по виду хеша, а это делается только нестандартными методами.

    Например, можно подмешивать к паролю статическую соль (пусть даже одинаковую для всех, но очень длинную — 200–500 символов) и хешировать обычной PHP-функцией md5. Этой соли в БД форума нет (как, например, в движках vBulletin или osCommerce), она прошита только в PHP-коде, доступ к которому получить гораздо сложнее, чем к хешам. Но даже если заполучить эту соль, то почти нет брутфорсеров, поддерживающих работу с такой длинной солью (во всяком случае, на GPU — точно нет).

    Другой вариант — циклически хешировать обычный MD5 от пароля этак 50–100 тысяч раз. На скорости авторизации пользователей это почти не скажется, но скорость брута таких хешей будет мизерной (при условии, что еще удастся выяснить количество итераций — опять же, только из PHP-кода). А если не удастся — то их вообще не сбрутить.

    Еще можно взять более длинный хеш от другого алгоритма (например, SHA-256 или SHA-512) и вместо цельного хеша хранить в БД его фрагмент размером 32 символа из середины хеша (да еще и байты можно переставить). Хешкрекер, увидев такой хеш, будет уверен, что это MD5 (или его модификация), и будет пытаться сбрутить его, но бесполезно.

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

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

    Конкурсы по хешкрекингу

    А где хешкрекер может посоревноваться с другими хешкрекерами в своем умении ломать хеши? Конечно же, на конкурсах! Основные — конкурс Crack Me If You Can, проводимый фирмой KoreLogic в рамках ежегодной конференции DEF CON, и конкурс Hash Runner на ежегодной конференции Positive Hack Days.

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

    Исторически сложилось так, что с самых первых конкурсов сформировались три основные команды — InsidePro, hashcat и john-users, которые все эти годы стабильно делили меж собой три призовых места в различных комбинациях. Даже по названиям команд уже очевидно, вокруг какого софта или сайта они объединились. В составе каждой из команд есть автор этого софта, и причина этого тоже понятна — на конкурсах всегда встречаются новые или видоизмененные алгоритмы хеширования, и нужно очень быстро модифицировать программу-брутфорсер или добавить в нее новый алгоритм. Тому, кто не имеет возможности быстро (часто за несколько часов или даже минут) перекроить софт под нужные фишки, очень сложно претендовать на приз.

    Все отчеты о конкурсах доступны на сайтах команд, а также на сайтах организаторов — например, .

    Рис. 4. Архивное фото — организаторы конкурса по хешкрекингу на DEFCON 2012

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

    Заключение

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

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

    Как сломать хеш, если под руками нет ни железа, ни софта?

    Для этого можно проверить свой хеш в онлайн-базах хешей типа www.cmd5.ru . Или сразу на сервисах типа www.hashchecker.de , которые проверяют хеш массово в десятках баз, и, может быть, тебе повезет.

    Но у таких сервисов есть недостаток — в основном они содержат хеши от искусственно сгенерированных паролей. Пока единственный сервис, где собраны только реальные хеши и пароли пользователей, — Hash Finder . На нем уже накоплено более 500 миллионов таких хешей и паролей — все они были кем-то когда-то реально использованы, поэтому процент найденных паролей на нем гораздо выше, чем на других сервисах.

    Еще вариант — разместить свой хеш (или список хешей) на одном из хешкрекерских форумов, где всегда можно получить помощь. Самые популярные форумы:

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

    Last updated by at Ноябрь 18, 2020 .

    Мы выпустили новую книгу «Контент-маркетинг в социальных сетях: Как засесть в голову подписчиков и влюбить их в свой бренд».

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

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

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

    Известные брутфорс-акции

    Ежемесячные атаки на банковские структуры, различные ведомства и министерства за рубежом до русскоязычных новостных платформ доходили в искаженном виде и сильно не освещались. Но в начале августа 2013 года рунет, а конкретнее — владельцы сайтов на популярных CMS столкнулись с массовыми атаками на ресурсы. Целью злоумышленников являлся доступ к админ-панелям, и если бы хостинг-провайдеры вовремя не спохватились и не заставили бы владельцев привязать к админкам IP-адреса, последствия могли быть весьма печальны. Атаке подвергались страницы /wp-login.php и /wp-admin, взломанные сайты присоединялись к ботнет-сети и пополняли армию атакующих.

    Программы для брутфорса

    Администрация портала не несет ответственности за незаконное применение пользователями предоставленной им информации о ПО. Статья несет лишь ознакомительную функцию. Кроме того, все программы расцениваются операционной системой и антивирусами, как опасные для использования, поэтому могут содержать в себе вредоносный код.

    Brutus — AET2

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

    В окне Target вводим адрес сервера. В Authentication options вписываем наиболее распространенные имена пользователей, хотя программа ссылается на документ user.txt взламываемого компьютера. Ставим галочку напротив Single user. в выпадающем окне Pass Mode выбираем Brute Force. Далее — Range.

    Всплывет окно для задания параметров, если есть какая-то информация о содержании пароля, указываем ее здесь. Это может быть длина символов, нижний регистр, верхний регистр, все символы, только цифры или буквы.

    [ Web ] Brute Forcer

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

    • адрес личного кабинета (вроде sire.ru/wp-admin для админки вордпресс);
    • вводимые поля (логин, пароль);
    • индикатор успешного входа.

    Приложение имеет встроенный менеджер словарей паролей.

    Router Brute force

    Метод подбора паролей используется и в более прозаичных случаях — например для получения доступа к Wi-Fi. Программа разработана для системы Android. Имеется встроенный словарь распространенных паролей, который можно дополнять скачанными модификациями и дополнениями с интернета, либо вписать самостоятельно. В поле логин забито значение “admin” по умолчанию.

    Брутфорс для ВК

    Специализированные форум и паблики соцсетей кишат сообщениями и предложениями услуг по взлому страниц вконтакте методом подбора. Всевозможные “хакерские” сайты предлагают скачать чудодейственную программу, которая в считанные минуты подберет ключ к любой странице ВК. Доля правды в этом есть — пароль и логин от аккаунта соцсети станут известны разработчикам программы, поскольку доверчивый пользователь, скачавший приложение, введет их в окне настройки. Весь, абсолютно весь софт, продвигаемый под брендом взлома вконтакте имеет две цели — вытянуть средства за оплату ПО юзером, либо похитить его данные.

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

    Как обезопасить себя от взлома

    Как бы банально это ни звучало — не разглашайте конфиденциальные данные, даже если собеседник вам симпатичен. Устанавливайте пароли чуть более сложные, нежели пресловутые 123456789, qwerty, даты рождения, имена и фамилии, и прочие шаблонные комбинации.

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

    Социальная инженерия для брута

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

    Стоит ли игра свеч

    Что такое брутфорс в современных реалиях? Будем откровенны — все программы предлагают лишь теоретическое решение проблемы, так как на практике скомпилировать множество вариаций паролей хотя бы в диапазоне от 0-9, А-я, A-z, при условии символов в количестве от 6 до 9 будет непросто, итоговая сумма комбинаций равняется 220 триллионам!, а подбор такого количества запросов с учетом использования даже мощного оборудования, смены IP-адресов превысит 90 тыс. лет! Конечно, выставление определенных критериев вроде дат, имен, значимых событий, исключения лишних параметров и видов комбинаций, подключение антикапча-сервисов, а также проведение операции посредством сети, состоящей из множества компьютеров, значительно ускорит процесс, но опять же не гарантирует результата и вряд ли окупит потраченные усилия и средства.

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

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

    Что такое хешкрекинг?

    Восстановление паролей к хешам, или хешкрекинг (от англ. hash cracking), — весьма увлекательный процесс, для которого требуются хорошие знания в различных областях — криптографии, комбинаторике, программировании и многом другом. Нужно также отлично разбираться в железе, чтобы обеспечить бесперебойную работу своей фермы в течение многих недель и месяцев при максимaльной загрузке.

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

    Большинство хешкрекеров на форумах — этакие робин гуды. Они тратят свое время и ресурсы на то, чтобы помочь сломать хеши другим пользователям, и при этом непрерывно накапливают себе новые пароли и правила их формирования. Для них любые хеши — этo вызов их интеллекту, их опыту, их мастерству. И эти парни находят сложнейшие пароли, которые никто другой восстановить не может. Как у них это получается? Каким софтом и железом они пользуются? Что еще нужно знать, чтобы ломать хеши так же эффективно, как они? Об этом мы и расскажем в нашей статье.

    Сейчас хешкрекинг в основном производится на видеопроцессорах (GPU). На обычных процессорах (CPU) брутятся только те алгоритмы, которые не реализованы под GPU. Для брута на GPU фактичeски уже стандартом стало использование программы oclHashcat , имеющей сборки как для Windows, так и для Linux, а также поддерживающей все современные видеопроцессоры — и NVIDIA, и AMD. Совсем недавно ее автор перевел программу в разряд Open Source, и теперь она доступна на GitHub, так что каждый желающий может присоединиться к работе над ее новыми версиями.

    Для распределения работы этой программы между несколькими компьютерами используется оболочка hashtopus . Другим популярным GPU-брутфорсером остается нестареющий John the Ripper (JtR) в сборке Jumbo, который также имеет множество алгоритмов под все видеокарты, но для получения максимальной эффективности его желательно все-таки пересобирать под каждую конкретную конфигурацию железа.

    Для работы на CPU программ гораздо больше, но самыми функциональными остаются все те же hashcat и JtR. Еще можно к ним добавить программу Hash Manager , которая больше заточена под обработку хешей в «промышленных масштабах», то есть очень крупных списков, которые не удается загрузить в другие программы. Все эти программы бесплатные, и каждый решает сам, что выбрать себе для ежедневной работы, только практика показывает, что желательно уметь владеть всем этим софтом — как правило, профессиональные хешкрекеры используют ту или иную программу в зависимости от конкретной ситуации.


    Еще нужно учесть, что все эти программы консольные, не имеют встроенного GUI и, чтобы использовать их максимально эффективно, нужно уметь работать в консоли (см. врезку). А в идеале еще нужно уметь программировать командные файлы (BAT или CMD), чтобы максимально гибко настраивать работу программ. Тогда можно однократно составить для себя комплект командных файлов для разных атак, а потом, когда все настроено, весь хешкрекинг сведется к заполнению файла нужными хешами и запуску того или иного командного файла c определенными параметрами.

    Консоль — райский дом хешкрекера

    Самый продвинутый хешкрекерский софт — консольный и управляется либо через параметры командной строки, либо через редактирование файлов конфигурации. Но тенденция такова, что пользователи все дальше и дальше уходят от консоли, требуют графического интерфейса и наиболее популярный вопрос с форумов по работе с такими программами звучит так: «Я запустил программу, выскочило черное окно и закрылось. Что делать?» Ответ очевиден — изучать консоль.

    Скорее всего, линуксоиды и так владеют навыками работы в консоли, а вот для пользователей Windows лучшим выбором будет программа FAR Manager . С ее помощью очень удобно работать со списками хешей и другими файлами. А если ее объединить с дополнительными инструментами (например, из состава программы Hash Manager), то получится просто убойный комплект, позволяющий обрабатывать любые файлы буквально за секунды.

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

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

    Железо

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

    Требования к ферме такие же, как и при майнинге криптовалют, то есть нужно хорошее охлаждение, стабильное электропитание и грамотное размещение видеокарт, чтобы они не нагревали друг друга. До недавнего времени основными видеокартами для брута служили (как и в майнинге) видеокарты на процессорах AMD, так как они были более эффективны по соотношению цена/скорость. Однако после релиза архитектуры sm_50 (Maxwell) от NVIDIA выяснилось, что она лучше для брута, при этом видеокарты с такой архитектурой потребляют гораздо меньше электроэнергии, а также более тихие и холодные. И сейчас эффективнее всего для брута хешей карты NVIDIA GTX 980Ti.

    И недаром же на форуме InsidePro все больше и больше хешкрекеров переходят на эти видеокарты (судя по подписям в их сообщениях) — при пиковом потреблении всего 165 Вт на алгоритме MD5 они выдают скорость порядка 15 миллиардов паролей в секунду. Но у них один недостаток — высокая цена, которая практически не снижается, а в связи со скачком курса доллара она поднялась еще больше. Если же основной критерий — цена, а все остальные параметры не важны, то можно взять видеокарты на процессорах AMD и упаковать ими свою ферму. К примеру, обычная цена системы c двумя средними видеокартами составляет около 1200–1300 долларов.

    Что касается CPU, то тут все просто — чем больше ядер, выше частота и больше объем кеша, тем быстрее будет идти перебор. Мощный процессор позволит как использовать ферму для перебора паролей на GPU, так и параллельно с ними нагружать CPU второстепенной работой — например, проверкой других хешей по словарям, пока все GPU заняты гибридной или комбинированной атакой. Поддержка новейших наборов команд (SSE и AVX последних версий) также необходима, так как почти все вышеперечисленные программы имеют код, заточенный под эти наборы команд, что существенно увеличивает скорость перебора.

    А есть хоть что-то, в чем CPU еще может конкурировать с GPU по скорости брута? При небольших объемах — нет, конечно. Но вот на больших списках хешей в десятки миллионов хешей (особенно соленых) очень часто обработка списка на CPU дает такую же скорость или даже большую, чем на видеокарте. А уж сотни миллионов хешей в GPU часто просто не загрузить физически — остается только разбивать список на более мелкие фрагменты и брутить их по очереди, но это пропорционально увеличивает время атаки, в то время как на CPU можно загрузить и обработать весь список за один заход, если позволяет объем RAM.

    И есть еще одна тема, где со временем CPU может обогнать GPU, — это сопроцессор Intel Xeon Phi. Да, его цена пока очень высока, но, возможно, со временем она станет приемлемой, и его можно будет прикупить и задействовать для брута хешей на домашнем компьютере. Вот тогда может получиться очень мощная система, так как в нем присутствует около 60 четырехъядерных процессоров (в зависимости от модели), а это даст нам до 240 потоков для перебора. На тяжелых алгоритмах типа bcrypt (которые очень медленны даже на видеокартах) этот сопроцессор может быть в разы быстрее даже самых топовых видеокарт, так что не зря ребята из команды john-users прозвали его «убийцей bcrypt». Правда, хешкрекерского софта под него в паблике пока нет, но со временем он обязательно появится.

    Конечно, читатель может возразить — а как же микросхемы FPGA (ПЛИС), выдающие при майнинге того же биткойна огромные скорости? Да, они выдают даже терахеши в секунду, только они запрограммированы под единственный алгоритм SHA-256, который при хешировании обычных паролей пользователей применяется весьма редко (а другой популярный алгоритм майнера — SCRYPT — применяется еще реже). Плюс сама по себе микросхема ПЛИС выдает невысокую скорость, а терахеши получаются путем объединения десятков (а то и сотен микросхем) в матрицы, а это уже недешевое решение. Но главный недостаток всех ПЛИС — они программируются только на брут одиночного хеша. Конечно, на эти микросхемы уже портировано множество алгоритмов, включая MD5, но практической пользы от этого мало — выгодней купить видеокарту. Хотя и Altera, и Xilinx развивают свои линейки ПЛИС весьма активно, и со временем эта тема тоже может стать очень интересной для хешкрекера.

    Можно ли заработать на хешкрекинге?

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

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

    Словари

    Успех в хешкрекинге основан на хороших словарях, желательно состоящих из реальных паролей пользователей. Где же их взять? Есть три пути, рассмотрим их подробнее.

    1. Скачать из интернета готовые словари (погуглив слово wordlist). Это самый простой способ, но и словари эти весьма низкого качества — в них много мусора и искусственно нагенерированных слов, а мало реальных паролей. Так что этот вариант — если только на первое время.
    2. Скачать вложения (аттачменты) к сообщениям о сломанных хешах на форумах InsidePro и HashKiller — там часто размещаются просьбы о помощи при бруте крупных списков, и другие форумчане помогают, выкладывая свои результаты в формате хеш:пароль. А значит, можно накачать себе таких файлов и извлечь оттуда все пароли. Это уже будут очень хорошие словари, но у них будет один недостаток — все пароли из таких словарей лежат в паблике и доступны также и всем остальным хешкрекерам.
    3. Нарабатывать словари самому, постоянно обрабатывая списки невзломанных хешей, которые можно накачать с тех же форумов. Это самый действенный метод, хотя и самый долгий. Однако такие словари — наиболее ценные, так как содержат только реальные, уникальные и часто приватные пароли. У профессиональных хешкрекеров есть даже такой термин, как «майнинг реалпассов», то есть если есть платные хеши — ферма брутит их, если их нет — ферма не простаивает, а сутками брутит списки несломанных хешей с форумов, непрерывно нарабатывая все новые и новые уникальные пароли в копилку хешкрекера.

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

    Частотные словари

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

    Что это такое? Это обычные словари, но в них пароли отсортированы в порядке убывания частоты их употребления. В таких словарях первыми идут наиболее популярные пароли — см. примеры таких словарей в дистрибутиве программы Hash Manager, файлы Top100xx.dic. Очевидно, что эффективней проверить хеши сначала на самые часто употребляемые пароли, затем — на более редкие и так далее. Это позволит быстро сломать все популярные пароли и существенно облегчить список хешей для последующей работы.

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

    Дополнительные инструменты

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

    Обычно через хешкрекера проходит множество всевозможных текстовых файлов:

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

    В общем, сотни и тысячи подобных разнородных файлов — это еще та головная боль. И все выкручиваются по-разному — кто-то в том же линуксе делает часть работы командами самой ОС (например, grep), кто-то пишет себе скрипты на Perl, кто-то использует различные программы. Но факт очевиден — помимо брутфорсеров, нужны еще инструменты, которые должны работать с текстовыми файлами: сортировать, чистить, конвертировать из одного формата в другой, извлекать или переставлять данные, проверять формат и так далее.

    Без этих инструментов работать крайне сложно, и поэтому с каждым брутфорсером обычно поставляется свой комплект различных утилит. И hashcat имеет такой комплект, и JtR тоже, но самый крупный комплект утилит под Windows имеет программа Hash Manager. В ней более 70 инструментов, построенных по принципу одна функция = один файл. Таким образом, из них, как из кирпичиков, можно собрать BAT-файл, выполняющий обработку файлов любой сложности. А 64-битные версии инструментов позволяют обрабатывать файлы неограниченного размера.

    Вот пример BAT-файла, демонстрирующий, как из списка, в котором перемешаны хеши разных типов, вытащить только хеши от Magento с двухсимвольной солью:

    REM Извлекаем только строки длиной 35 символов ExtractLinesByLen.exe %1 35 35 REM Переименовываем файл с извлеченными строками в файл 2.txt MOVE /Y %1.Lines 2.txt REM Проверяем формат хешей IsCharset.exe 2.txt ?h 1 REM Проверяем формат соли IsCharsetInPos.exe 2.txt 33 «:» IsCharsetInPos.exe 2.txt 34 ?l?u?d IsCharsetInPos.exe 2.txt 35 ?l?u?d REM Готово! В файле 2.txt остались только хеши от Magento

    Алгоритмы хеширования

    С одной стороны, набор актуальных алгоритмов хеширования почти не меняется со временем. Причины просты — алгоритмы хеширования паролей пользователей ОС не меняются годами, да и в интернете сотни тысяч ресурсов все еще базируются на устаревших движках, и обновление версий не происходит, несмотря на то что все новые версии форумов и CMS уже поддерживают более надежное хеширование — например, в IPB версии 4 уже сразу стоит алгоритм bcrypt. С другой стороны, небольшие изменения все-таки происходят — все больше начинает попадаться очень тяжелых алгоритмов — различные варианты PBKDF2 и тот же bcrypt, которые брутятся с мизерной скоростью даже на фермах.

    Всего же известны уже сотни алгоритмов, примеры их хешей можно посмотреть . Подавляющее большинство алгоритмов хеширования базируется на каком-либо из стандартных алгоритмов — MD5, SHA-1, SHA-256 и SHA-512 или на их комбинациях. Брутфорсеры давно уже поддерживают десятки таких алгоритмов в GPU-версиях и сотни алгоритмов в CPU-версиях.

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

    Если же исходников движка нет, тогда нужно заполучить хеш от какого-то заранее известного пароля — например, зарегистрировать пару новых пользователей на форуме, желательно с одинаковым простым паролем вида 123456. Если их хеши будут одинаковы (считаем, что доступ к хешам у хакера есть), значит, при хешировании используется только пароль. Если разные, то к паролю подмешивается еще что-то, уникальное для каждого пользователя, — соль, логин, email. А дальше можно попробовать подобрать алгоритм по имеющемуся паролю и хешу. Например, в программе Hash Manager, в папке Bonus\SearchAlgorithm есть BAT-файл для автоматического поиска алгоритма по всем доступным в программе алгоритмам (около 400), включая проверку паролей в кодировке Unicode, а также соли (или имени пользователя) в шестнадцатеричном виде.

    Ну а если так и не удается определить алгоритм, то можно спросить на форуме — например, . Вдруг кто-то уже сталкивался с такими хешами?

    По другую сторону баррикады

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

    Иногда для этого достаточно перейти на самую свежую версию движка и выбрать алгоритм, самый медленный по скорости брута. Но если обновление движка не планируется, а администратор хочет максимально обезопасить пароли своих пользователей от подбора, то есть другой вариант — пропатчить код проверки пароля так, чтобы у всех вновь зарегистрированных пользователей (или сменивших свои пароли после определенной даты) пароли хешировались по-другому. Как?

    Конечно, можно использовать любой стандартный тяжелый алгоритм из Linux-функции crypt() — sha512crypt или bcrypt. Но если удастся заполучить такие хеши, то хешкрекер по сигнатурам сразу определит алгоритм и сможет ломать хеши (хоть и медленно). Вывод — нужно хешировать пароли так, чтобы хешкрекер не мог однозначно определить алгоритм по виду хеша, а это делается только нестандартными методами.

    Например, можно подмешивать к паролю статическую соль (пусть даже одинаковую для всех, но очень длинную — 200–500 символов) и хешировать обычной PHP-функцией md5. Этой соли в БД форума нет (как, например, в движках vBulletin или osCommerce), она прошита только в PHP-коде, доступ к которому получить гораздо сложнее, чем к хешам. Но даже если заполучить эту соль, то почти нет брутфорсеров, поддерживающих работу с такой длинной солью (во всяком случае, на GPU — точно нет).

    Другой вариант — циклически хешировать обычный MD5 от пароля этак 50–100 тысяч раз. На скорости авторизации пользователей это почти не скажется, но скорость брута таких хешей будет мизерной (при условии, что еще удастся выяснить количество итераций — опять же, только из PHP-кода). А если не удастся — то их вообще не сбрутить.

    Еще можно взять более длинный хеш от другого алгоритма (например, SHA-256 или SHA-512) и вместо цельного хеша хранить в БД его фрагмент размером 32 символа из середины хеша (да еще и байты можно переставить). Хешкрекер, увидев такой хеш, будет уверен, что это MD5 (или его модификация), и будет пытаться сбрутить его, но бесполезно.

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

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

    Конкурсы по хешкрекингу

    А где хешкрекер может посоревноваться с другими хешкрекерами в своем умении ломать хеши? Конечно же, на конкурсах! Основные — конкурс Crack Me If You Can, проводимый фирмой KoreLogic в рамках ежегодной конференции DEF CON, и конкурс Hash Runner на ежегодной конференции Positive Hack Days.

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

    Исторически сложилось так, что с самых первых конкурсов сформировались три основные команды — InsidePro, hashcat и john-users, которые все эти годы стабильно делили меж собой три призовых места в различных комбинациях. Даже по названиям команд уже очевидно, вокруг какого софта или сайта они объединились. В составе каждой из команд есть автор этого софта, и причина этого тоже понятна — на конкурсах всегда встречаются новые или видоизмененные алгоритмы хеширования, и нужно очень быстро модифицировать программу-брутфорсер или добавить в нее новый алгоритм. Тому, кто не имеет возможности быстро (часто за несколько часов или даже минут) перекроить софт под нужные фишки, очень сложно претендовать на приз.

    Все отчеты о конкурсах доступны на сайтах команд, а также на сайтах организаторов — например, .

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

    Заключение

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

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

    Как сломать хеш, если под руками нет ни железа, ни софта?

    Для этого можно проверить свой хеш в онлайн-базах хешей типа www.cmd5.ru . Или сразу на сервисах типа www.hashchecker.de , которые проверяют хеш массово в десятках баз, и, может быть, тебе повезет.

    Но у таких сервисов есть недостаток — в основном они содержат хеши от искусственно сгенерированных паролей. Пока единственный сервис, где собраны только реальные хеши и пароли пользователей, — Hash Finder . На нем уже накоплено более 500 миллионов таких хешей и паролей — все они были кем-то когда-то реально использованы, поэтому процент найденных паролей на нем гораздо выше, чем на других сервисах.

    Еще вариант — разместить свой хеш (или список хешей) на одном из хешкрекерских форумов, где всегда можно получить помощь. Самые популярные форумы: forum.insidepro.com , forum.hashkiller.co.uk , forum.antichat.ru/forums/76 .

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

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

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

    Принцип действия брутфорса

    Хакер пишет специальную программу для подбора паролей либо использует уже готовое решение своих коллег. Она может быть ориентирована на определённый почтовый сервис, сайт, соцсеть (т.е. предназначена для взлома конкретного ресурса). Далее выполняется подготовка к взлому. Она состоит из следующих этапов:

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

    Поиск адресов/портов прокси осуществляется в прокси-граббере (Proxy Grabber). Эта утилита самостоятельно извлекает все данные для подключения к серверам-посредникам из сайтов, предоставляющих прокси (они задаются в списке). Другими словами, выполняется сбор прокси.

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

    В итоге, получается готовый прокси лист в виде списка IP/порт, сохранённый в файле txt. (Он понадобится при настройке программы брутфорс).

    К брутфорсу необходимо подключить словарь — некое множество комбинаций паролей и логинов — которые он будет подставлять в форму для входа. Он также, как и прокси-лист, имеет вид списка в обычном текстовом файле (.txt). Словари, они же базы, распространяются через хакерские форумы, сайты и файлообменники. Более опытные «умельцы» создают их самостоятельно и предоставляют всем желающим за определённую плату. Чем больше база (количество комбинаций, логинов, аккаунтов), тем лучше (для хакера) — тем больше вероятность успеха взлома.

    Загружается прокси лист; программа подбора автоматически будет менять прокси, чтобы веб-сервер не обнаружил атаку и, соответственно, источник (узел) атаки.

    Подключается словарь из комбинаций пароль/логин. Устанавливается количество потоков — сколько одновременно комбинаций брутфорс будет проверять. Мощный компьютер с высокой скоростью интернета уверено справляется с 120-200 потоками (это оптимальное значение). От этой настройки напрямую зависит скорость брута. К примеру, если выставить всего 10 потоков, подбор будет выполняться очень медленно.

    Успешные попытки взлома программа фиксирует: сохраняет сбрученные аккаунты (пароль/логин) в файл. Длительность процедуры подбора колеблется от нескольких часов до нескольких дней. При этом она не всегда оказывается результативной — по причине высокой криптоустойчивости данных для входа либо осуществления других защитных мер со стороны атакуемого.

    Виды брутфорса

    Персональный взлом


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

    Шансы такого взлома невелики, например, по сравнению с той же XSS-атакой. Он может увенчаться успехом, если владелец аккаунта использовал пароль из 6-7 символов с незатейливой символьной комбинацией. В противном случае на «разгадывание» более устойчивых вариантов из 12,15, 20 букв, цифр и спецсимволов понадобятся годы — десятки и сотни лет, исходя из расчётов математической формулы поиска.

    Брут/чек

    К брутфорсу подключается база данных с логинами/паролями от почтовых ящиков одного почтового сервиса (например, mail.ru) либо разных. И прокси лист — для маскировки узла (так как по множественным запросам с одного IP-адреса веб-сервисы электронной почты довольно быстро детектируют атаку).

    В опциях брута указывается список ключевых слов (как правило, названия сайтов) — ориентиры по которым он будет искать на взломанных ящиках в письмах данные для входа (например: steampowered, worldoftanks, 4game, VK). Либо конкретный интернет-ресурс.

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

    Нажимаете «СТАРТ» и программа-взломщик начинает брут. Она действует по следующему алгоритму:

    1. Загружает из базы логин/пароль к мэйлу.
    2. Проверяет доступ, или «чекает», (автоматически авторизуется): если удаётся в аккаунт зайти — плюсует в графе good (гуды) единицу (значит найден ещё один рабочий мэйл) и начинает его просматривать (см. следующие пункты); если доступа нет — заносит его в bad (бэды).
    3. Во всех «гудах» (открытых мэйлах) брутфорс сканирует письма по заданному хакером запросу — то есть ищет логины/пароли к указанным сайтам и платёжным системам.
    4. При обнаружении искомых данных — копирует их и заносит в отдельный файл.

    Таким образом, совершается массовый «угон» аккаунтов — от десятков до сотен. Добытыми «трофеями» злоумышленник распоряжается уже по своему усмотрению — продажа, обмен, сбор данных, кража денег.

    Удаленный взлом компьютера

    Брутфорс в совокупности с другими хакерскими утилитами используется для получения удаленного доступа к запароленному ПК жертвы через интернет-канал.

    Данный вид атаки состоит из следующих этапов:

    1. Выполняется поиск IP-сетей, в которых будет проводиться атака на компьютеры пользователей. Диапазоны адресов берутся из специальных баз либо посредством специальных программ, например таких, как IP Geo. В ней можно выбирать IP-сети по конкретному округу, региону и даже городу.
    2. Отобранные диапазоны IP и словари подбора устанавливаются в настройках брутфорса Lamescan (или его аналога), предназначенного для удалённого брута логина/пароля входа в систему. После запуска Lamescan делает следующее:
    • выполняет коннект на каждый IP из заданного диапазона;
    • после установления связи пытается подключиться к хосту (ПК) через порт 4899 (но могут быть и другие варианты);
    • если порт открыт: пытается получить доступ к системе, при запросе пароля выполняет подбор; в случае успеха — сохраняет в своей базе IP-адрес хоста (компьютера) и данные для входа.
    1. Хакер запускает утилиту Radmin, предназначенную для управления удалёнными ПК. Задаёт сетевые координаты жертвы (IP, логин и пароль) и получает полный контроль над системой — рабочий стол (отображается визуально на дисплее компьютера взломщика), файловые директории, настройки.

    Программы для брута

    Классический брутфорс, один из самых первых. Тем не менее, не теряет своей актуальности и конкурирует с новыми решениями. Имеет шустрый алгоритм перебора и поддерживает все основные интернет-протоколы — TCP/IP, POP3, HTTP и др. Умеет подделывать куки. Брутит по словарю и генерирует пароли самостоятельно.

    Мощный брут- чекер. Оснащён расширенным арсеналом функций по работе с базами (проверка, сортировка по доменам). Поддерживает различные типы прокси, проверяет их работоспособность. Выполняет сканирование писем в ящиках по таким настройкам, как дата, ключевое слово, адрес, непрочитанные сообщения. Может скачивать письма с Mail.ru и Yandex.

    Appnimi Password Unlocker

    Программа для подбора брутфорсом пароля к файлу на локальном компьютере. Этакая рабочая лошадка. Бесплатный вариант программы позволяет подбирать пароли не более 5 символов. О том как установить и пользоваться программой Appnimi Password Unlocker можно прочитать

    Взлом паролей. Как пользоваться Brutus AET2 и что такое полный перебор?

    Время от времени у некоторых пользователей возникает необходимость подобрать пароль к почтовому ящику или какому-либо ресурсу. Причины у всех свои, но далеко не каждый владеет нужным навыками. Для них и существует представленный ниже материал, в котором неопытные хакеры найдут информацию о том, как пользоваться Brutus AET2 − известной утилитой для взлома паролей.

    Brutus AET2 – что это такое?

    Brutus представляет собой специализированную утилиту для взлома паролей. Данная программа обладает обширным арсеналом ресурсов, которые она поможет «вскрыть». Приложение можно использовать для взлома любого веб-сайта, почтового ящика или даже FTP-сервера, то есть практически никаких ограничений для начинающих хакеров нет. Зачем нужен подобный инструмент? Возможно, вы забыли личный пароль и не можете его восстановить, а может быть, вы решили заглянуть в чью-либо переписку. Вариантов использования существует масса. Если появилась необходимость подобрать пароль, то в первую очередь следует узнать, как пользоваться Brutus AET2.

    Как работает утилита?

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

    Как пользоваться Brutus AET2?

    Работа с программой требует ряда подготовительных процедур. В первую очередь вам необходимо настроить приложение и обзавестись словарем паролей (таковой можно создать самостоятельно или же найти в Сети подходящий вариант) для «брута» (процесс подбора паролей), который будет использован самой утилитой Brutus AET2. Инструкция по работе с программой состоит из нескольких основных этапов, каждый из которых представляет собой заполнение полей в приложении. Также необходимо определиться с типом подбора.

    Brutus AET2 настройка, выбор типа подбора, словари

    Основное окно программы включает в себя ряд полей и опций. Первая графа называется Target. Здесь следует указать точный адрес, где расположены поля для ввода данных (например, ваша любимая социальная сеть). Сайты могут немного отличаться, как могут отличаться и формы логина. Для того чтобы правильно указать информацию, следует сразу же обратиться к полю Type. В нем есть несколько вариантов:

    • HTTP (Basic Auth) – если на сайте, который нужно взломать, при логине появляется дополнительное окно, то смело выбираем данный пункт и вписываем в поле Target адрес этого окна.
    • HTTP (Forms) – если на сайте просто нужно заполнить форму с логином и паролем, то выбираем данный пункт.
    • FTP – просто указываете адрес сервера (обычно это ftp) и его название.
    • POP3 – это почта, поэтому указываем здесь адрес почтового сервиса (обычно он начинается с pop3 или mail) и его название.

    Дальше следует раздел Connection Options. Тут все просто – порт будет выставлен автоматически, а время соединения можно настроить на свой вкус. Также существует возможность использовать прокси-сервер. Следующий раздел, называемый Authentication Options, является заключительным этапом. Он, в свою очередь, состоит из нескольких граф. Первая носит название Username. Тут есть два варианта: либо использовать готовый список пользовательских имен, каждое из которых будет подбираться отдельно, либо применить одно конкретное имя. Вторая графа – это пресловутый словарь. Как пользоваться Brutus AET2 со словарем? Все очень просто. Надо создать обычный текстовый файл и занести в него нужные символы или их комбинации, после чего прикрепить в приложение и запустить его. Как пользоваться Brutus AET2 без словаря? Тут сложнее. Вернее, настроить легко, а вот результатов добиться труднее. Существует два варианта. Первый – это комбо-листы (программа будет добавлять цифры и различные символы к логину), второй – это то, что называется BruteForce.

    BruteForce (полный перебор) – это метод грубой силы, при котором программа будет бездумно перебирать все существующие символы и вставлять каждый из них в поле логина/пароля. Почему данный метод малоэффективен? Да потому, что для взлома более или менее внятного пароля, скажем, на двенадцать символов потребуется два миллиона лет. Единственное, на ком сработает, так это на людях, привыкших к паролям «12345», «199402». Такие пароли будут выявлены мгновенно. Все, программа готова к работе. Теперь можно ее запускать и следить за полем Positive Authentication Results, где появятся подошедшие комбинации логина и пароля.

    Немного об информационной безопасности

    Многие начинающие разработчики так увлекаются написанием кода, что совсем забывают о безопасности своих работ. И что самое главное — забывают о таких уязвимостях, как запрос SQL, XXS. А ещё придумывают лёгкие пароли для своих административных панелей и подвергаются брутфорсу. Что это за атаки и как можно их избежать?

    SQL-инъекция

    SQL-инъекция – это самый распространённый вид атаки на базу данных, который осуществляется при SQL-запросе для конкретной СУБД. От таких атак страдает множество людей и даже крупных компаний. Причина — ошибка разработчика при написании базы данных и, собственно говоря, SQL-запросов.

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

    Атака может быть удачно воспроизведена в сценариях, написанных на PHP, ASP, Perl и других языках. Успешность таких атак больше зависит от того, какая используется СУБД и как реализован сам сценарий. В мире очень много уязвимых сайтов для SQL-инъекций. В этом легко убедиться. Достаточно ввести «дорки» — это специальные запросы по поиску уязвимых сайтов. Вот некоторые из них:

      inurl:index.php? >Как ими пользоваться? Достаточно ввести их в поисковик Google или Яндекс. Поисковик выдаст вам не просто уязвимый сайт, но и страницу на эту уязвимость. Но мы не будем на этом останавливаться и убедимся, что страница действительно уязвима. Для это достаточно после значения « >

        inurl:games.php? >И сайт нам выдаст ошибку о запросе SQL. Что же нужно дальше нашему хакеру?

      А дальше ему нужна это самая ссылка на страницу с ошибкой. Затем работа над уязвимостью в большинстве случаев происходит в дистрибутиве «Kali linux» с его утилитами по этой части: внедрение инъекционного кода и выполнение необходимых операций. Как это будет происходить, я вам не могу сказать. Но об этом можно найти информацию в интернете.

      XSS Атака

      Данный вид атаки осуществляется на файлы Cookies. Их в свою очередь очень любят сохранять пользователи. А почему нет? Как же без них? Ведь благодаря Cookies мы не вбиваем сто раз пароль от Vk.com или Mail.ru. И мало тех, кто от них отказывается. Но в интернете для хакеров часто фигурирует правило: коэффициент удобства прямо пропорционален коэффициенту небезопасности.

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

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

      Хакер может добавить на какой-нибудь форум или гостевую книгу JS-код:

      Скрипты переадресуют нас на заражённую страницу, где будет выполнятся код: будь то сниффер, какое-либо хранилище или эксплоид, который так или иначе похитит наши Cookies с кэша.

      Почему именно JavaScript? Потому что JavaScript отлично ладит с веб-запросами и имеет доступ к Cookies. Но если наш скрипт будет переводить нас на какой-нибудь сайт, то пользователь это легко заметит. Здесь же хакер применяет более хитрый вариант — просто вписывает код в картинку.

      Мы просто создаём изображение и приписываем ему в качестве адреса наш сценарий.

      Как уберечься от всего этого? Очень просто — не переходите по подозрительным ссылкам.

      DoS и DDos Атаки

      DoS (от англ. Denial of Service отказ в обслуживании) — хакерская атака на вычислительную систему с целью привести её к отказу. Это создание таких условий, при которых добросовестные пользователи системы не могут получить доступ к предоставляемым системным ресурсам (серверам), либо этот доступ затруднён. Отказ системы может быть и шагом к её захвату, если во внештатной ситуации ПО выдаёт какую-либо критическую информацию: например, версию, часть программного кода и пр. Но чаще всего это мера экономического давления: потеря простой службы, приносящей доход. Счета от провайдера или меры по уходу от атаки ощутимо бьют «цель» по карману. В настоящее время DoS и DDoS-атаки наиболее популярны, так как позволяют довести до отказа практически любую систему, не оставляя юридически значимых улик.

      Чем отличается DoS от DDos атаки?

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

      DDoS — это фактически такая же атака, как и DoS. Но если в DoS один пакет запроса, то в DDoS их очень может быть от сотни и более. Даже сверхмощные сервера могут не справиться с такой перегрузкой. Приведу пример.

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

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

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

      Bruteforce атака

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

      Категорически не рекомендуется ставить простой пароль. Это могут быть 12345, 1114457, vasya111 и т. д. Не рекомендуется ставить пароли длиной меньше 10-11 символов. Иначе вы можете подвергнуться самой обычной и не сложной атаки — Брутфорсу.

      Брутфорс — это атака перебора пароля по словарю с использованием специальных программ. Словари могут быть разные: латиница, перебор по цифрам скажем до какого-либо диапазона, смешанные (латиница +цифры), и даже бывают словари с уникальными символами @#4$%&*

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

      Как же работают «Хакеры»? В большинстве случаев они либо подозревают, либо заранее знают часть пароля. Совсем логично предположить, что пароль пользователя уж точно не будет состоять из 3 или 5 символов. Такие пароли приводят к частым взломам. В основном хакеры берут диапазон от 5 до 10 символов и прибавляют туда несколько символов, которые возможно знают заранее. Далее генерируют пароли с нужными диапазонами. В дистрибутиве Kali linux имеются даже программы для таких случаев. И вуаля, атака уже не будет длиться долго, так как объём словаря уже не такой и большой. К тому же хакер может задействовать мощность видеокарты. Некоторые из них поддерживают систему CUDA, при этом скорость перебора увеличивается аж в 10 раз. И вот мы видим, что атака таким простым способом вполне реальна. А ведь брутфорсу подвергаются не только сайты.

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

      Бывали у вас случаи взлома? Поделитесь в комментариях!

      Здравствуйте, дорогие читатели!

      Я решил немного рассказать об информационной безопасности. Статья будет полезна начинающим программистам и тем, кто только-только начал заниматься Frontend-разработкой. В чём проблема?

      Многие начинающие разработчики так увлекаются написанием кода, что совсем забывают о безопасности своих работ. И что самое главное — забывают о таких уязвимостях, как запрос SQL, XXS. А ещё придумывают лёгкие пароли для своих административных панелей и подвергаются брутфорсу. Что это за атаки и как можно их избежать?

      SQL-инъекция

      SQL-инъекция – это самый распространённый вид атаки на базу данных, который осуществляется при SQL-запросе для конкретной СУБД. От таких атак страдает множество людей и даже крупных компаний. Причина — ошибка разработчика при написании базы данных и, собственно говоря, SQL-запросов.

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

      Атака может быть удачно воспроизведена в сценариях, написанных на PHP, ASP, Perl и других языках. Успешность таких атак больше зависит от того, какая используется СУБД и как реализован сам сценарий. В мире очень много уязвимых сайтов для SQL-инъекций. В этом легко убедиться. Достаточно ввести «дорки» — это специальные запросы по поиску уязвимых сайтов. Вот некоторые из них:

        inurl:index.php? >Как ими пользоваться? Достаточно ввести их в поисковик Google или Яндекс. Поисковик выдаст вам не просто уязвимый сайт, но и страницу на эту уязвимость. Но мы не будем на этом останавливаться и убедимся, что страница действительно уязвима. Для это достаточно после значения « >

          inurl:games.php? >И сайт нам выдаст ошибку о запросе SQL. Что же нужно дальше нашему хакеру?

        А дальше ему нужна это самая ссылка на страницу с ошибкой. Затем работа над уязвимостью в большинстве случаев происходит в дистрибутиве «Kali linux» с его утилитами по этой части: внедрение инъекционного кода и выполнение необходимых операций. Как это будет происходить, я вам не могу сказать. Но об этом можно найти информацию в интернете.

        XSS Атака

        Данный вид атаки осуществляется на файлы Cookies. Их в свою очередь очень любят сохранять пользователи. А почему нет? Как же без них? Ведь благодаря Cookies мы не вбиваем сто раз пароль от Vk.com или Mail.ru. И мало тех, кто от них отказывается. Но в интернете для хакеров часто фигурирует правило: коэффициент удобства прямо пропорционален коэффициенту небезопасности.

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

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

        Хакер может добавить на какой-нибудь форум или гостевую книгу JS-код:

        Скрипты переадресуют нас на заражённую страницу, где будет выполнятся код: будь то сниффер, какое-либо хранилище или эксплоид, который так или иначе похитит наши Cookies с кэша.

        Почему именно JavaScript? Потому что JavaScript отлично ладит с веб-запросами и имеет доступ к Cookies. Но если наш скрипт будет переводить нас на какой-нибудь сайт, то пользователь это легко заметит. Здесь же хакер применяет более хитрый вариант — просто вписывает код в картинку.

        Мы просто создаём изображение и приписываем ему в качестве адреса наш сценарий.

        Как уберечься от всего этого? Очень просто — не переходите по подозрительным ссылкам.

        DoS и DDos Атаки

        DoS (от англ. Denial of Service отказ в обслуживании) — хакерская атака на вычислительную систему с целью привести её к отказу. Это создание таких условий, при которых добросовестные пользователи системы не могут получить доступ к предоставляемым системным ресурсам (серверам), либо этот доступ затруднён. Отказ системы может быть и шагом к её захвату, если во внештатной ситуации ПО выдаёт какую-либо критическую информацию: например, версию, часть программного кода и пр. Но чаще всего это мера экономического давления: потеря простой службы, приносящей доход. Счета от провайдера или меры по уходу от атаки ощутимо бьют «цель» по карману. В настоящее время DoS и DDoS-атаки наиболее популярны, так как позволяют довести до отказа практически любую систему, не оставляя юридически значимых улик.

        Чем отличается DoS от DDos атаки?

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

        DDoS — это фактически такая же атака, как и DoS. Но если в DoS один пакет запроса, то в DDoS их очень может быть от сотни и более. Даже сверхмощные сервера могут не справиться с такой перегрузкой. Приведу пример.

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

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

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

        Bruteforce атака

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

        Категорически не рекомендуется ставить простой пароль. Это могут быть 12345, 1114457, vasya111 и т. д. Не рекомендуется ставить пароли длиной меньше 10-11 символов. Иначе вы можете подвергнуться самой обычной и не сложной атаки — Брутфорсу.

        Брутфорс — это атака перебора пароля по словарю с использованием специальных программ. Словари могут быть разные: латиница, перебор по цифрам скажем до какого-либо диапазона, смешанные (латиница +цифры), и даже бывают словари с уникальными символами @#4$%&*

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

        Как же работают «Хакеры»? В большинстве случаев они либо подозревают, либо заранее знают часть пароля. Совсем логично предположить, что пароль пользователя уж точно не будет состоять из 3 или 5 символов. Такие пароли приводят к частым взломам. В основном хакеры берут диапазон от 5 до 10 символов и прибавляют туда несколько символов, которые возможно знают заранее. Далее генерируют пароли с нужными диапазонами. В дистрибутиве Kali linux имеются даже программы для таких случаев. И вуаля, атака уже не будет длиться долго, так как объём словаря уже не такой и большой. К тому же хакер может задействовать мощность видеокарты. Некоторые из них поддерживают систему CUDA, при этом скорость перебора увеличивается аж в 10 раз. И вот мы видим, что атака таким простым способом вполне реальна. А ведь брутфорсу подвергаются не только сайты.

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

        Бывали у вас случаи взлома? Поделитесь в комментариях!

        Brute-force встроенными средствами Kali Linux

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

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

        Дисклеймер: Данная статья написана только в образовательных целях и автор не несёт ответственности за ваши действия. Ни в коем случае не призываем читателей на совершение противозаконных действий. Материал размещен только с целью ознакомления и принятию мер по обеспечению безопасности. Использование материалов в противоправных и противозаконных запрещено законом РК.

        Ликбез

        Brute-force (атака полным перебором) – метод решения математических задач, сложность которого зависит от количества всех возможных решений. Сам же термин brute-force обычно используется в контексте хакерских атак, когда злоумышленник пытается подобрать логин/пароль к какой-либо учетной записи или сервису.

        Рассмотрим инструменты, которые можно использовать для выполнения brute-force атак на SSH и WEB-сервисы, доступные в Kali Linux (Patator, Medusa, Hydra, Metasploit), а также BurpSuite и даже самый известный сетевой сканер nmap.

        Brute-force SSH

        Для примера возьмем тестовую машину 192.168.60.50 и попробуем подобрать пароль пользователя test по SSH.

        Мы будем использовать популярные пароли из стандартного словаря rockyou.txt. Этот и другие словари доступны в свободном доступе на гитхабе.

        Patator

        Для подбора пароля средствами Patator используем команду:

        где:
        ssh_login — необходимый модуль
        host – наша цель
        user – логин пользователя, к которому подбирается пароль или файл с логинами для множественного подбора
        password – словарь с паролями
        -x ignore:mesg=’Authentication failed’ — команда не выводить на экран строку, имеющую данное сообщение. Параметр фильтрации подбирается индивидуально.

        Hydra

        Для подбора пароля используя Hydra выполним команду:

        где:
        -V – показывать пару логин+пароль во время перебора
        -f – остановка как только будет найден пароль для указанного логина
        -P – путь до словаря с паролями
        ssh://192.168.60.50 – указание сервиса и IP-адрес жертвы

        Medusa

        Для подбора пароля с использованием Medusa выполним команду:

        где:
        -h – IP-адрес жертвы
        -u – логин
        -P – путь к словарю
        -M – выбор модуля
        -f – остановка после нахождения валидной пары логин/пароль
        -v – настройка отображения сообщений на экране во время процесса подбора

        Metasploit

        Произведем поиск инструмента для проведения brute-force атаки по SSH:

        search ssh_login и получили ответ:

        Для просмотра необходимых параметров, воспользуемся командой show options. Для нас это:
        rhosts – IP-адрес жертвы
        rport – порт
        username – логин SSH
        userpass_file – путь до словаря
        stop_on_success – остановка, как только найдется пара логин/пароль
        threads – количество потоков

        Указание необходимых параметров производится через команду “set“.

        Указав необходимые параметры набираем команду “run” и ждем.

        Противодействие

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

        Пример настройки iptables:

        Такое правило установит ограничение доступа к SSH для каждого IP-адреса до 1 соединения в секунду, значительно усложнив перебор. Также эффективным решением может быть использование двухфакторной аутентификации (например, используя eToken) или аутентификации с использованием ключевой пары, а также использование ACL на основе IP-адресов.

        Brute-force WordPress

        Рассмотрим другой пример — подбор пароля окна авторизации веб-формы.

        Для примера будем подбирать пароль от учетной записи администратора wordpress.

        BurpSuite

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

        Отлично, мы увидели POST запрос для авторизации с ним мы и будем работать.
        В BODY указано какой логин и пароль проверялись, а значит, мы можем попробовать самостоятельно подставить нужные нам значения.
        Передаем этот запрос в Intruder и там выбираем необходимые параметры для атаки.

        В пункте Payload Positions тип атаки оставляем sniper, но для проверки оставляем только параметр pwd. Таким образом, при атаке будет изменяться только этот параметр.

        Загружаем необходимый словарь и начинаем атаку.

        Из поведения веб-приложения мы видим, что неверный пароль возвращает код ответа 200. После перебора словаря, видим, что один из паролей дал ответ с кодом 302 — он и является верным.

        Данный метод перебора занимает намного больше времени, чем при использовании Patator, Hydra, Medusa и т.д.

        Даже с учетом того, что мы взяли небольшой словарь, BurpSuite перебирал словарь около 40 минут.

        Hydra

        Попробуем подобрать пароль с помощью Hydra.
        Как мы уже знаем, при неверной авторизации возвращается код 200, а при успешной – 302. Попробуем использовать эту информацию.
        Для запуска используем команду:

        Здесь мы указываем обязательные параметры:
        -l – имя пользователя
        -P – словарь с паролями
        -t – количество потоков
        http-post-form – тип формы, у нас POST.
        /wp-login.php – это URL страницы с авторизацией
        ^USER^ — показывает куда подставлять имя пользователя
        ^PASS^ — показывает куда подставлять пароль из словаря
        S=302 – указание на какой ответ опираться Hydra. В нашем случае, ответ 302 при успешной авторизации.

        Patator

        Как мы уже знаем, при неудачной авторизации возвращается код 200, а при удачной – 302. Будем использовать тот же принцип, что и с Hydra:
        Запуск производится командой:

        http_fuzz – модуль для brute-force атаки http
        url – адрес страницы с авторизацией
        FILE0 — путь до словаря с паролями
        body – информация, которая передается в POST запросе при авторизации
        -t — количество потоков
        -x – В данном случае мы указали команду не выводить на экран сообщения строки, содержащие параметр с кодом 200
        accept_cookie – сохранение параметра cookie и передачи его в следующий запрос
        Как итог – нам удалось подобрать пароль.

        Nmap

        Утилита Nmap позволяет позволяет в том числе производить подбор паролей для веб-форм авторизации, если использовать скрипт http-wordpress-brute с соответствующими аргументами:
        –script-args – добавление аргументов
        user или userdb – логин или файла с логинами
        pass или passdb — указание пароля или словаря
        thread – количество потоков
        firstonly=true – выводить результат после первого же правильного пароля

        Противодействие

        Ограничить (усложнить) brute-force атаки на web-приложения можно средствами iptables (по аналогии с SSH) и средствами nginx.

        Для этого необходимо создать зону лимитов:

        и задействовать ее:

        Такие настройки позволят ограничить количество запросов с одного IP-адреса до 40 в секунду.

        Усложнить задачу перебора можно используя следующие методы:
        — Применение межсетевого экрана и прочего ПО для ограничения количества обращений к защищаемому сервису. О том, как мы используем машинное обучение для выявления подобных атак (в том числе распределенных), можно почитать в статье.
        — Использование средств, препятствующих быстрой проверке корректности ключа (например, Captcha).

        Заключение

        В данной статье мы поверхностно рассмотрели некоторые популярные инструменты. Сократить риск подбора пароля можно, следуя следующим рекомендациям:
        — используйте устойчивые к подбору пароли;
        — не создавайте пароли, используя личную информацию, например: дату рождения или имя + дата рождения или мобильный телефон;
        — регулярно меняйте пароль;
        — на всех аккаунтах применяйте уникальные пароли.

        Подобные рекомендации (как и рекомендации по безопасной веб-разработке) мало кто соблюдает, поэтому необходимо использовать различные программные решения, позволяющие:
        — ограничить подключение по IP-адресу, или, если это невозможно, ограничить одновременное количество соединений с сервисом (средствами iptables, nginx и прочими);
        — использовать двухфакторную аутентификацию;
        — выявлять и блокировать подобные атаки средствами SIEM, WAF или другими (например, fail2ban)

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

        Не нарушайте законы, подписывайтесь на наш канал, становитесь умнее и прогресивнее…

        Мастер Йода рекомендует:  Видеоурок по веб-разработке от GeekBrains
        Добавить комментарий
    24.04.2013, 11:44 #10