Тотальный перебор. При атаке методом тотального перебора последовательно перебираются все возможные варианты пароля без использования специальных алгоритмов и баз данных. Сгенерированные пробные пароли представляют собой случайные комбинации символов (типа jh7Hfh65L). При данном типе атаки можно задать набор символов, из которых будут составляться пробные пароли, а также задать минимальную и максимальную длину пароля.
Методом последовательного перебора подобрать пароль можно всегда — это лишь вопрос времени, которое может исчисляться годами и даже столетиями. Поэтому эффективность такого метода весьма низкая. Если заранее известен набор символов, используемый для пароля (например, только английские буквы и цифры, или только русские буквы, или только цифры), а также приблизительная длина пароля, то это существенно упрощает задачу его подбора и делает задачу вполне решаемой. Недостаток данного подхода в том, что если пароль длиннее определенного количества символов, данный подход абсолютно неэффективен.
Крутой заказ на фрилансе | Подбираем забытый пароль к Excel файлу с помощью Python
Тотальный перебор, оптимизированный по статистике встречаемости символов. При реализации данного метода атаки, в первую очередь подбираются пароли, состоящие из наиболее часто встречающихся символов конкретно взятого алфавита, за счет чего время перебора значительно сокращается. Иногда при подборе паролей используется не только статистика встречаемости символов, но и статистика встречаемости биграмм и триграмм – комбинаций двух и трех последовательностей символов соответственно. Также используется сочетание соседних клавиш.
Тотальный перебор, оптимизированный с помощью словарей. В данном методе атаки, вначале опробуются пароли, состоящие из слов входящих в состав словаря. В том случае, если подбираемый пароль отсутствует в словаре, опробуются всевозможные комбинации слов из словаря, слова из словаря с добавленными к началу и/или к концу одной или несколькими буквами, цифрами, знаками препинания и т.д. Для увеличения эффективности атаки по словарю можно использовать варианты:
— добавление повтора слов;
— проверка обратного порядка символов в словах;
— проверка усеченных слов;
— проверка слов без гласных;
— проверка слов с использование транслитерации букв;
— проверка слов созданных с помощью замены букв кириллицы латинской раскладкой.
Часто данный метод используется в комбинации с предыдущим. Преимуществом данного метода является его высокая скорость. Недостатком является то, что таким образом могут быть найдены только очень простые пароли, которые имеются в словаре или являются модификациями слов словаря. Успех реализации данной атаки напрямую зависит от качества и объема используемого словаря.
Подбор пароля по маске. Данный метод представляет собой модифицированную атаку методом последовательного перебора и используется в том случае, если о пароле имеется определенная предварительная информация. Например, если известны некоторые символы пароля, то можно дополнительно указывать, какие символы должны присутствовать в пароле (и их местоположение), то есть настраивать маску пароля.
Генерация рандомных паролей | PYTHON
Подбор пароля с использованием знаний о владельце пароля. Данный метод атаки применяется без использования технических средств. Метод основан на использовании слабостей человеческого фактора и считается очень разрушительным.
Злоумышленник получает информацию, путем сбора информации о служащих объекта атаки, с помощью обычного телефонного звонка или путем проникновения в организацию под видом ее служащего. Злоумышленник под видом служащего компании может позвонить в службу технической поддержки и просить напомнить свой пароль, либо меняет его на новый. Имена служащих можно узнать из источников открытой информации.
Данная атака в конечном итоге формирует словарь паролей и дальше перебор происходит по первому методу.
Подбор образа пароля. Данный подход, как правило, применяется в том случае, если подсистема аутентификации устроена так, что образ пароля существенно короче самого пароля. Однако в этом случае злоумышленник, подобрав образ пароля, должен получить сам пароль, соответствующий подобранному образу, а это возможно только в том случае, если хэш-функция, применяемая в системе, не обладает достаточной стойкостью. В списке пользователей системы хранится не сам пароль, а образ пароля, который, в свою очередь, является результатом применения к паролю хэш-функции [45].
Источник: studfile.net
Как сделать программу для подбора паролей
В этой статье мы разберем инструменты, которые доступны дистрибутиве Kali Linux.
Hydra
Hydra – это взломщик, который поддерживает множество протоколов: Cisco AAA, Cisco auth, Cisco enable, CVS, FTP, HTTP(S)-FORM-GET, HTTP(S)-FORM-POST, HTTP(S)-GET, HTTP(S)-HEAD, HTTP-Proxy, ICQ, IMAP, IRC, LDAP, MS-SQL, MySQL, NNTP, Oracle Listener, Oracle SID, PC-Anywhere, PC-NFS, POP3, PostgreSQL, RDP, Rexec, Rlogin, Rsh, SIP, SMB(NT), SMTP, SMTP Enum, SNMP v1+v2+v3, SOCKS5, SSH (v1 and v2), SSHKEY, Subversion, Teamspeak (TS2), Telnet, VMware-Auth, VNC and XMPP.
Чтобы запустить, перейдите в Applications → Password Attacks → Online Attacks → hydra.
Откроется консоль терминала, как показано на следующем снимке экрана.
Сейчас мы будем подбирать пароль для FTP на хосте с IP адресом 192.168.1.101
У нас есть список паролей в файле password.lst и файл с логинами в файле user.lst по пути usrsharewordlistmetasploit
Команда будет выглядеть следующим образом
# hydra -l /usr/share/wordlists/metasploit/user.lst -P /usr/share/wordlists/metasploit/passwords.lst ftp://192.168.1.101 –V
где –V – это выводить имя пользователя и пароль при попытке подбора (verbose)
Как показано на следующем скриншоте, имя пользователя и пароль найдены — это msfadmin:msfadmin
Если хотите, можно запустить “гидру” в GUI (графическая оболочка). Для этого выберите в меню xhydra-gtk или выполните команду
Johnny
Johnny – это графический интерфейс для инструмента взлома паролей John the Ripper. Как правило, он используется для слабых паролей.
Чтобы открыть его, перейдите в раздел Applications → Password Attacks → johnny.
Сейчас мы попробуем узнать пароль пользователя (в данном случае мы под root) на нашей машине с Kali с помощью следующей команды (файл будет создан на рабочем столе)
Нажмите “Open Passwd File” → OK, и все файлы будут показаны, как на следующем снимке экрана
Нажмите “Start Attack”. После завершения атаки нажмите в левой панели на кнопку “Passwords”, и пароль будет показан.
John
John – это версия Johnny GUI, но через командную строку (CLI). Для запуска откройте терминал и напишите команду
Если мы так же хотим узнать пароль нашего пользователя, но через командную строку, то введем команду
# unshadow passwd shadow > unshadowed.txt
В файле unshadowed.txt будут сохранены нужные нам данные.
Rainbowcrack
Программное обеспечение RainbowCrack ломает хеши по радужной таблице. Радужные таблицы — это обычные файлы, хранящиеся на жестком диске. Как правило, радужные таблицы покупаются или могут быть скомпилированы с помощью различных инструментов.
Чтобы открыть RainbowCrack, перейдите в раздел Applications → Password Attacks → click “rainbowcrack”.
Чтобы воспользоваться этой утилитой, выполните команду
# rcrack /home/user/rainbow_table.txt -f /home/user/pass_hash.txt
Где /home/user/rainbow_table.txt – это файл с радужной таблицей, а /home/user/pass_hash.txt – это файл с хешами паролей.
SQLdict
Это инструмент атаки по словарю для SQL сервера и он очень прост в использовании. Чтобы открыть его, откройте терминал и введите команду
Появится подобное окно
В поле “Target IP Server” введите адрес SQL сервера. В поле “Target Account” введите имя пользователя. Затем выберите файл с паролями и нажмите “Start”. Ждите окончания подбора.
Hash-identifier
Это инструмент, который используется для определения типа хеша, чтобы понять, для чего они используются. Например, если у меня есть хеш, он может сказать мне, является ли он хешем ОС Linux или Windows.
На приведенном выше скриншоте показано, что указанный хеш может быть хешем MD5 и похож на кешированные учетные данные домена.
Вся информация представлена исключительно в образовательных целях. Помните, что все противоправные действия караются законом!
Источник: unlix.ru
#42 Kali Linux для начинающих. Взламываем базу данных. Атаки на пароли.
Давайте рассмотрим еще один способ, как взломать нашу цель. В этом уроке мы будем атаковать сервис базы данных.
Посмотрим на результат сканирования «nmap», а именно нас интересует порт 3306, который используется сервисом «mysql». Это сервис базы данных, и, как Вы знаете, он содержит множество чувствительной информации, такую как имена пользователей, пароли, и т.д.
Нам нужно подключиться к этой базе данных, но у меня нет соответствующего логина и пароля, но я попробую подобрать их с помощью инструмента sqldict. Это сокращение от sql dictionary.
Данный инструмент не стоял у меня в системе, поэтому нужно установить его с помощью команды: «apt-get install sqldict»:
С помощью sqldict можно производить подбор паролей, и данный процесс называется «атака по словарю». Другими словами, я создам список возможных паролей. При первом запуске sqldict в терминале мы видим ошибку, так как нужно сперва выполнить установку «wine32»:
Wine32 – это программа на Kali и других дистрибутивах Linux, которая позволяет запускать программы на Windows в линукс системах. В Windows программа имеет расширение «.exe». Это исполняемые файлы, и они созданы для работы в Windows.
В отобразившейся информации при запуске в терминале нашего инструмента есть команда для установки wine32. Она выглядит как: «dpkg —add-architecture i386 apt update apt -y install wine32»:
Данная программа будет загружаться какое-то время, поэтому мы опустим данный процесс для загрузки в систему.
Рассмотрим еще один инструмент, который можно использовать для достижения той же самой цели. Его можно найти в разделе «Passwords Attacks», и он называется «wordlists»:
В разделе «Атаки на пароли» существует несколько инструментов для проведения подобных атак, но нас интересуют простые атаки, т.е. атаки на онлайн сервисы. Ранее мы уже атаковали запущенные сервисы SSH и FTP. Как правило, для этих сервисов существует подбор имени пользователя и пароль.
И если мы атакуем работающий сервис, для попытки подобрать имя пользователя и пароль, то такая атака называется онлайн-атака на пароли. И сейчас нашей целью будет mysql, который работает на атакуемой машине. Нам нужно подобрать имя пользователя и пароль. Это называется онлайн-атака на пароли. Далее я хочу показать Вам директорию «worldlists». Нас интересует словарь «rockyou.txt»:
Далее нам нужно распаковать текстовый файл rockyou.txt.gz с помощью команды gunzip rockyou.txt.gz:
Давайте воспользуемся этим файлом, и скопируем путь к нему, так как он в дальнейшем нам понадобится.
Сразу хотелось бы отметить, что при работе с инструментами, некоторые из них не будут работать в штатном режиме. Тогда нужно переходить к следующему, и не зацикливаться только на одном. Я постоянно это повторяю, и это очень важно понимать.
Также в этом уроке я буду использовать инструмент «Hydra»:
Для того, чтобы подобрать пароль, мне нужен словарь или список слов для атаки. В интернете я нашел список самых худших паролей всех времен:
Скопируем первые 50 паролей:
С помощью текстового редактора nano создаем файл «temp»:
Обратите внимание на то, что все области, которые выделены в розовый цвет являются разделителями, при помощи табуляции. Имейте ввиду, что таком формате файл бесполезен. Нам нужно создать последовательный список из всех этих слов. Мы воспользуемся командами, которые изучили в предыдущих уроках.
Введем команду cat в терминале:
Нам нужно привести этот файл в порядок. Команда будет выглядеть как: «cat temp | cut –d$’t’ –f 2».
Значок $ используется для того, чтобы вырезать только текст. Можно загуглить данную команду, и Вы быстро разберетесь, как все работает. Просто помните, что после разделителя «Tab», необходимо указать значок доллара, затем добавить –f 2 (второе поле):
И, как видим, у нас появился список всех возможных паролей, которые были скопированы. Разумеется, весь этот вывод на экране нужно сохранить в отдельный файл. Команда будет выглядеть как: «cat temp | cut –d$’t’ –f 2 > worst-50»:
Обратите внимание на то, что я указал файл worst-50 без какого-либо расширения. На самом деле в линуксе можно не указывать расширение, так как файлы являются текстовыми по-умолчанию, и можно прочесть их содержимое.
Давайте внесем последние правки в наш словарь:
Нам нужно удалить строку top, так как она нам не нужна. Жмем горячую клавишу Ctrl+K для удаления первой строки, а перейдя на последнюю жмем «Enter», что будет являться пустой строкой:
Пустая строка будет выполняться, если кто-то будет использовать какой-либо логин и пустой пароль.
Давайте вернемся к инструменту «Hydra», и можем воспользоваться примером, который нам указывают разработчики:
На самом деле половина успеха будет заключаться в правильном использовании имени пользователя. Если у нас нет правильного имени пользователя, то будет проблематично с авторизацией.
Команда для перебора по словарю будет выглядеть следующим образом:
«hydra –l root –P worst-50 mysql://192.168.119.130»:
Hydra сработала практически сразу и был подобран один пароль. Также можем видеть 51 попытку подбора пароля. Обратите внимание, что здесь не указан подобранный пароль, а это значит, что пароль был пустым.
Теперь у нас есть имя пользователя и пароль, для авторизации в базе данных mysql. В случае с FTP, для авторизации нам нужен был FTP-клиент (например, FileZilla). Чтобы пройти SSH-авторизацию, нам нужен был SSH-клиент, а на Windows мы использовали Putty. На Linux – SSH-клиент. В случае с авторизацией в MySQL, нам нужен MySQL-клиент. Для подключения к базе данных нам нужно ввести в терминале следующую команду: «mysql –u root –p –h 192.168.119.130», где опция –u – это имя пользователя, —p – порт, —h – айпи-адрес:
MySQL просит ввести пароль. Мы просто оставляем пустым и жмем «Enter».
Обратите внимание, что консоль изменилась, и мы взаимодействуем с базой данных.
Если Вы никогда не сталкивались с базой данных SQL, то можно использовать графические клиенты, которые выглядят нагляднее, чем то, что мы используем сейчас.