Архив метки: Безопасность

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

Раньше большинство паролей хранилось в открытом виде, но очень быстро разработчики поняли, что так делать небезопасно. Лучше хранить не сам пароль, а его хэш, набор цифр определенного размера, который генерируется на основе пароля. В таком случае, даже если злоумышленник получит хэш, то он не сможет узнать пароль. Существуют различные способы хэширования, например, md5, sha1, sha2 и многие другие. Но существует способ восстановления пароля из хэша. Для этого можно использовать перебор, нам достаточно создавать хэш для каждого возможного пароля и сравнивать его с тем хэшем, который нужно расшифровать.

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

Какие хэши можно перебрать?

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

Программа hashcat поддерживает работу с такими алгоритмами хэширования: md5, md5crypt, sha1, sha2, sha256, md4, mysql, sha512, wpa, wpa2, grub2, android, sha256crypt, drupal7, scrypt, django и другими.

Установка hashcat

Если вы используете Windows, то вам достаточно загрузить установщик из официального сайта.

Вам нужно выбрать hashcat binaries нужной версии внизу страницы. В архиве находятся исполняемые файлы для Windows, Linux и MacOS, так что у вас не возникнет проблем. В Linux вы также можете установить утилиту из официальных репозиториев. Например, в Ubuntu команда будет выглядеть вот так:

sudo apt install hashcat

Но это еще не все. Если в вашей системе есть видеокарта, то программа будет использовать ее. И на нее должен быть установлен драйвер, желательно проприетарный. Я не буду на этом останавливаться. Но если видеокарта слабая, то можно использовать процессор. Для этого нужно установить несколько пакетов для работы OpenCL на процессоре. Вот так выглядят команды установки в Ubuntu:

sudo apt install libhwloc-dev ocl-icd-dev ocl-icd-opencl-dev
$ sudo apt install pocl-opencl-icd

Теперь мы можем выполнить тестирование производительности:

hashcat -D 1 -b

Утилита hashcat

Сначала давайте рассмотрим синтаксис и возможные опции утилиты, а потом уже перейдем к ее использованию. Это консольная утилита, поэтому придется использовать ее через терминал. Давайте сначала рассмотрим синтаксис:

$ hashcat опции файл_хэшей словари_и_настройки

Как видите, все довольно просто. Начнем с основных опций, которые настраивают как будет вести себя утилита:

  • -h - вывести доступные команды и опции;
  • -V - версия программы;
  • -m - тип хэша, который нужно перебрать, например, md5 или sha;
  • -a - вид атаки;
  • -b - запустить тестирование производительности;
  • --hex-salt - указать соль, которая использовалась при хэшировании;
  • --hex-charset - набор символов, для исходных данных;
  • --status - автоматически обновлять состояние подбора;
  • -o - файл для записи результата;
  • -p - символ, которым разделены хэши для перебора;
  • -c - размер кэша для словаря;
  • -n - количество потоков;
  • -l - ограничить количество слов для перебора;
  • -r - файл с правилами генерации вариантов;
  • -D - устройство для перебора, CPU или GPU;
  • --pw-min - минимальная длина варианта, символов;
  • --pw-max - максимальная длина варианта, символов;
  • --table-min - длина пароля для табличной атаки;
  • --table-max - максимальная длина пароля для табличной атаки;
  • --table-file - файл таблицы, для атаки по таблице.

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

  • Straight - обычная атака, берет слова из словаря и проверяет их;
  • Combination - комбинирует слова из словаря в разные комбинации;
  • Toggle-Case - по очереди пробует разный регистр букв для каждого символа слова;
  • Brute-force - атака простым перебором на основе маски или символов;
  • Permutation - при этом типе атаки программа берет слова из словаря и меняет в них буквы местами для получения разных комбинаций;
  • Table-Lookup - Табличная атака, берется одно слово и словаря, а затем на его основе создаются варианты из таблицы. Каждый символ из таблицы будет заменен на набор прописанных вариантов;
  • Prince - новый вид атаки перебора, которая работает быстрее, обычной.

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

  • ?l = abcdefghijklmnopqrstuvwxyz;
  • ?u = ABCDEFGHIJKLMNOPQRSTUVWXYZ;
  • ?d = 0123456789;
  • ?s = !"#$%&'()*+,-./:;<=>?@[]^_`{|}~;
  • ?a = ?l?u?d?s - любой символ;
  • ?b = 0x00 - 0xff.

Теперь мы разобрали все необходимое и можно переходить к практике.

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

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

1. Перебор по словарю в Hashcat

Расшифровка md5 проще всего выполняется по словарю. Поскольку полный перебор занимает очень много времени, то перебрать наиболее часто употребляемые варианты может быть намного быстрее. Для перебора нам понадобится словарь, обычно используется rockyou. Словарь можно скачать командой:

wget http://scrapmaker.com/data/wordlists/dictionaries/rockyou.txt

Теперь нам еще осталось подготовить хэши, которые будем перебирать. Проще всего это сделать с помощью команды Linux md5sum:

echo -n "password" | md5sum

Например, создадим три хэша. Затем сложим их в файл ~/hashes:

vi hashes

2ac9cb7dc02b3c0083eb70898e549b63
5f4dcc3b5aa765d61d8327deb882cf99
b59c67bf196a4758191e42f76670ceba

Теперь, когда все собрано, мы готовы к перебору. Команда перебора по словарю будет выглядеть вот так:

hashcat -m 0 -D 1 -a 0 -t 20 ~/hashes ~/rockyou.txt -o data.txt

Здесь -m 0 указывает на то, что нужно перебирать хэш md5, а -a 0 указывает на использование обычной атаки по словарю. С помощью опции -n мы задаем количество потоков. Опция -D 1 говорит программе, что нужно использовать процессор. Если вам нужна видеокарта hashcat, используйте -D 0.

Затем, мы указываем файл с хэшами, которые будем перебирать - hashes и словарь. Перебор может занять долгое время, но когда комбинация будет найдена, программа запишет ее в файл data.txt.

Что касается других алгоритмов, то для них нужно будет указать только другой номер типа хєша. Например, для SHA это будет 100. Чтобы узнать нужный номер вы можете использовать такую команду:

hashcat --help | grep SHA1

2. Расшифровка md5 полным перебором

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

hashcat -m 300 -a 3 -n 32 --custom-charset=?l?d ~/hashes

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

hashcat -m 0 -a 3 --force -D 1 --potfile-disable --increment-min 5 --increment --increment-max 6 --custom-charset1=?l?d ~/hashes

Здесь мы говорим программе, что нужно начинать с размера слова 5 символов и завершить размером 6. Также можно использовать маски. Маска позволяет точно указать какой набор символов использовать, в какой последовательности и сколько. Указывать маску нужно на месте словаря. Например, маска слова из четырех цифр будет ?d?d?d?d, а маска из четырех любых цифр, букв разного регистра и специальных символов будет выглядеть ?a?a?a?a. Также можно комбинировать маску с известной частью: abc?a?a. Рассмотрим пример команды:

hashcat -m 0 -a 3 --force -D 1 --potfile-disable ~/hashes ?d?d?d?d

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

hashcat -m 0 --show ~/hashes

Выводы

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

 

Как пользоваться Tor Browser

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

Одна из программ, которая позволяет оставаться анонимным при просмотре различных сайтов, прятать свой IP адрес, браузер и характеристики компьютера - это анонимный браузер Tor. В этой статье мы рассмотрим как пользоваться Tor Browser, как установить и настроить программу, а также как правильно ее применять.

Что такое Tor Browser?

Tor Browser - это не просто обычный браузер с настроенным VPN для сокрытия IP. Он разрабатывается проектом TorProject и использует сервис Tor для обеспечения анонимности.

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

Tor Browser основан на Mozilla Firefox и объединяет в себе не только сервис Tor, но и ряд расширений браузера, которые позволяют повысить анонимность и безопасность. Среди них HTTPS Everywhere, NoScript, а также расширения для управления сервисом Tor.

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

Как пользоваться Tor Browser?

Перед тем, как мы рассмотрим как пользоваться Tor Browser необходимо разобрать установку программы. Мы будем говорить об установке в Linux, но в Windows или MacOS не будет большой разницы, так как установка выполняется загрузкой файла из официального сайта.

1. Установка Tor Browser

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

После того как загрузка будет завершена, перейдите в папку с архивом и распакуйте его:

Перейдите в папку, которая появилась в результате распаковки и запустите скрипт "Setup Tor Browser":

Скрипт подготовит программу к работе и иконка превратится в просто "Tor Browser":

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

2. Первый запуск

Чтобы запустить анонимный браузер Tor просто выполните двойной клик по программе:

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

Будет выполнено быстрое соединение и откроется окно браузера. Здесь сразу же вы можете настроить уровень безопасности, который определяет, будет ли включен JavaScript и возможности воспроизведения видео или нет:

Чтобы проверить действительно ли работает Tor и ваш ip адрес скрыт, откройте ссылку по центру страницы:

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

3. Изменение IP адреса

С помощью Tor Browser вы можете очень быстро изменить свой IP адрес. В левом верхнем углу браузера есть иконка настроек Tor. Чтобы изменить IP адрес для текущего сайта просто нажмите "Новая цепочка для этого сайта". Страница обновится и вы увидите новый адрес, поскольку браузер подключится через новый выходной узел:

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

В остальном же использование браузера Tor сводится к вводу нужного адреса и просмотра сайтов.

4. Настройка подключения к сети

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

 

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

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

Настройка портов для подключения:

К сожалению, это все, что вы можете настроить в графическом интерфейсе Tor Browser. Но у нас еще есть в запасе конфигурационные файлы.

5. Настройка Tor

Мы все еще можем настроить браузер Tor, а точнее сервис Tor через конфигурационный файл torrc. Он находится по адресу /Browser/TorBrowser/Data/Tor:

Мы обязательно рассмотрим настройку Tor более подробно в одной из следующих статей, а сейчас только немного пробежимся по основным параметрам, которые вы можете здесь изменить. Допустим, вы хотите, чтобы выбирались выходные узлы только из России, то есть у вас был только российский IP. Откройте ваш файл torrc и добавьте в него такую строчку:

ExitNodes {ru}

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

StrictExitNodes 1

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

ExcludeNodes {ru}, {ua}

Это были основные параметры, относительно узлов, которые вы можете захотеть использовать. Обратите внимание, что настройки вступят в силу только после перезапуска Tor.

Выводы

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

Как пользоваться Hydra

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

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

Установка THC Hydra

Первым делом нам необходимо установить этот инструмент. Это довольно популярная утилита для тестирования безопасности, поэтому вы можете найти ее в официальных репозиториях. Для установки нужных пакетов в Ubuntu выполните:

sudo apt install hydra

Чтобы установить программу в Red Hat/CentOS команда аналогичная:

sudo yum install hydra

Но в официальных репозиториях, как правило, находятся более старые версии программы. Если вы хотите самую свежую, то придется собрать ее из исходников. Но здесь нет ничего сложного. Сначала загрузим исходники последней версии с GitHub, на данный момент, это 8.4:

wget https://github.com/vanhauser-thc/thc-hydra/archive/v8.4.tar.gz

Затем необходимо их распаковать и перейти в папку с исходниками:

tar xvpzf thc-hydra-v8.4.tar.gz
$ cd thc-hydra-v8.4

Дальше выполните такие команды для компиляции и установки:

./configure
$ make
$ sudo make install

Разработчики поступили очень грамотно, когда настроили установку в /usr/local. Таким образом, утилита не распространится по всей файловой системе, а будет в одном месте. Если вы еще хотите установить графическую оболочку, то вам нужно переместиться в папку hydra-gtk и выполнить те же команды:

cd hydra-gtk
$ ./configure
$ make
$ sudo make install

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

Программа THC Hydra

Перед тем как мы начнем рассматривать как пользоваться htc hydra, нам необходимо разобраться какие параметры команде передавать и как это делать. Давайте сначала рассмотрим общий синтаксис:

$ hydra опции логины пароли -s порт адрес_цели модуль параметры_модуля

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

  • -R - восстановить ранее прерванную сессию Hydra;
  • -S - использовать SSL для подключения;
  • -s - указать порт;
  • -l - использовать логин;
  • -L - выбирать логины из файла со списком;
  • -p - использовать пароль;
  • -P - использовать пароль из файла со списком;
  • -M - взять список целей из файла;
  • -x - генератор паролей;
  • -u - по умолчанию hydra проверяет все пароли для первого логина, эта опция позволяет проверить один пароль для всех логинов;
  • -f - выйти, если правильный логин/пароль найден;
  • -o - сохранить результат в файл;
  • -t - количество потоков для программы;
  • -w - время между запросами в секундах;
  • -v - подробный вывод;
  • -V - выводить тестируемые логины и пароли.

Это были основные опции, которые, вы будете использовать. Теперь рассмотрим модули, а также способы аутентификации, которые вы можете подобрать:

  • adam6500;
  • asterisk;
  • cisco;
  • cisco-enable;
  • cvs;
  • ftp;
  • http-head;
  • http-get;
  • http-post;
  • http-get-form;
  • http-post-form;
  • http-proxy;
  • http-proxy-urlenum;
  • icq;
  • imap;
  • irc;
  • ldap2;
  • ldap3;
  • mssql;
  • nntp;
  • pcanywhere;
  • pcnfs;
  • pop3;
  • redis;
  • rexec;
  • rlogin;
  • rpcap;
  • rsh;
  • rtsp;
  • s7-300;
  • smb;
  • smtp;
  • smtp-enum;
  • snmp;
  • socks5;
  • ssh;
  • teamspeak;
  • telnet;
  • vmauthd;
  • vnc;
  • xmpp.

Как видите, количество доступных протоколов достаточно большое, вы можете проверить безопасность как ssh, ftp, и до веб-форм. Дальше мы рассмотрим как пользоваться hydra, как использовать самые часто применяемые протоколы.

Как пользоваться thc-hydra

Как вы уже догадались, hydra перебирает пароли из переданного ей файла, оттуда же берутся и логины. Также вы можете попросить программу генерировать пароли самостоятельно, на основе регулярного выражения. А вот уже их подстановка и передача на удаленный сервер настраивается с помощью строки параметров модуля. Естественно, что файлы с паролями нужно заготовить. В этой статье для примеров я буду использовать файл паролей от John the ripper, который вы можете без проблем найти в интернете. Также можно использовать словари топ500 паролей, и от Cain & Abel, где находится более 300000 пароля. Логин будем использовать только один - admin.

Перебор пароля FTP

Сначала поговорим про использование hydra в консольной версии. На самом деле, это основная программа. Команда будет выглядеть таким образом:

hydra -l admin -P john.txt ftp://127.0.0.1

Как вы помните опция -l задает логин пользователя, -P - файл со списком паролей. Далее мы просто указываем протокол и айпи цели. Готово, вот так просто можно перебрать пароль от вашего FTP, если вы установили его слишком простым и не настроили защиты. Как видите, утилита перебирает пароли со скоростью 300 шт в минуту. Это не очень быстро, но для простых паролей достаточно опасно. Если вы хотите получить больше информации во время перебора нужно использовать опции -v и -V вместе:

hydra -l admin -P john.txt -vV ftp://127.0.0.1

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

hydra -l admin -P john.txt ftp://[192.168.0.0/24]

Также вы можете брать цели из файла со списком. Для этого используется опция -M:

hydra -l admin -P john.txt -M targets.txt ftp

Если подбор по словарю не сработал, можно применить перебор с автоматической генерацией символов, на основе заданного набора. Вместо списка паролей нужно задать опцию -x а ей передать строку с параметрами перебора. Синтаксис ее такой:

минимальная_длина:максимальная_длина:набор_символов

С максимальным и минимальным количеством, я думаю все понятно, они указываются цифрами. В наборе символов нужно указать a для всех букв в нижнем регистре, A - для букв в верхнем регистре и 1 для всех цифр от 0 до 9. Дополнительные символы указываются после этой конструкции как есть. Например:

  • 4:4:1 - пароль размером четыре символа, состоящий только из цифр. А именно все пароли в диапазоне 0000-9999;
  • 4:8:1 - пароль от четырех до восьми символов, только из цифр;
  • 4:5:aA1. - пароль, размером от 4 до 5 символов, состоит из цифр, букв верхнего и нижнего регистра или точки.

Вся команда будет выглядеть вот так:

hydra -l admin -x 4:4:aA1. ftp://127.0.0.1

Можно пойти другим путем и указать ip цели и порт вручную с помощью опции -s, а затем указать модуль:

hydra -l admin -x 4:4:aA1 -s 21 127.0.0.1 ftp

Пароли для ssh, telet и других подобных сервисов перебираются подобным образом. Но более интересно рассмотреть перебор паролей для http и html форм.

Перебор пароля аутентификции HTTP

Различные роутеры часто используют аутентификацию на основе HTTP. Перебор пароля от такого типа формы входа выполняется очень похожим образом на ftp и ssh. Строка запуска программы будет выглядеть вот так:

hydra -l admin -P ~/john.txt -o ./result.log -V -s 80 127.0.0.1 http-get /login/

Здесь мы использовали логин admin, список паролей из файла john.txt, адрес цели 127.0.0.1 и порт 80, а также модуль http-get. В параметрах модулю нужно передать только адрес страницы входа на сервере. Как видите, все не так сильно отличается.

Перебор паролей веб-форм

Самый сложный вариант - это перебор паролей для веб-форм. Здесь нам нужно узнать что передает на сервер нужная форма в браузере, а затем передать в точности те же данные с помощью hydra. Вы можете посмотреть какие поля передает браузер с помощью перехвата в wireshark, tcpdump, в консоли разработчика и так далее. Но проще всего открыть исходный код формы и посмотреть что она из себя представляет. Далеко ходить не будем и возьмем форму WordPress:

Как видите, передаются два поля log и pwd, нас будут интересовать только значения полей input. Здесь несложно догадаться, что это логин и пароль. Поскольку форма использует метод POST для передачи данных, то нам нужно выбрать модуль http-post-form. Синтаксис строки параметров будет выглядеть вот так:

адрес_страницы:имя_поля_логина=^USER^&имя_поля_пароля=^PASS^&произвольное_поле=значение:строка_при_неудачном_входе

Строчка запуска программы будет выглядеть вот так:

hydra -l user -P ~/john.txt -o ./result.log -V -s 80 127.0.0.1 http-post-form "/wp-admin:log=^USER^&pwd=^PASS^:Incorrect Username or Password"

Переменные ^USER^ и ^PASS^ содержат имя пользователя и пароль взятые из словаря, также, возможно, придется передать дополнительные параметры, они передаются также, только значения будут фиксированы. Заканчивается выражение строкой, которая присутствует на странице при неудачном входе. Скорость перебора может достигать 1000 паролей в минуту, что очень быстро.

Графическая утилита xhydra

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

Здесь есть несколько вкладок:

  • Target - цели атаки;
  • Passwords - списки паролей;
  • Tuning - дополнительные настройки;
  • Specific - настройки модулей;
  • Start - запуск и просмотр статуса атаки.

Я думаю, вы без труда во всем этом разберетесь когда освоите консольный вариант. Например, так выполняется настройка перебора паролей ftp:

Выводы

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

Установка ClamAV в Ubuntu

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

Именно для таких целей был разработан антивирус ClamAV. Ещё он будет полезен на домашнем компьютере если вам приходится иметь дело с Windows. Для Linux систем вирусы от Windows не страшны, но лучше их удалить если есть такая возможность. В этой статье мы рассмотрим как установить ClamAV в Ubuntu.

Читать далее Установка ClamAV в Ubuntu

Как пользоваться Wireshark для анализа трафика

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

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

Основные возможности Wireshark

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

  • Захват пакетов в реальном времени из проводного или любого другого типа сетевых интерфейсов, а также чтение из файла;
  • Поддерживаются такие интерфейсы захвата: Ethernet, IEEE 802.11, PPP и локальные виртуальные интерфейсы;
  • Пакеты можно отсеивать по множеству параметров с помощью фильтров;
  • Все известные протоколы подсвечиваются в списке разными цветами, например TCP, HTTP, FTP, DNS, ICMP и так далее;
  • Поддержка захвата трафика VoIP-звонков;
  • Поддерживается расшифровка HTTPS-трафика при наличии сертификата;
  • Расшифровка WEP-, WPA-трафика беспроводных сетей при наличии ключа и handshake;
  • Отображение статистики нагрузки на сеть;
  • Просмотр содержимого пакетов для всех сетевых уровней;
  • Отображение времени отправки и получения пакетов.

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

Как пользоваться Wireshark

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

sudo apt install wireshark

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

kdesu wireshark

А для Gnome / Unity:

gksu wireshark

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

Анализ сетевого трафика

Для начала анализа выберите сетевой интерфейс, например eth0, и нажмите кнопку Start.

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

  • Верхняя часть - это меню и панели с различными кнопками;
  • Список пакетов - дальше отображается поток сетевых пакетов, которые вы будете анализировать;
  • Содержимое пакета - чуть ниже расположено содержимое выбранного пакета, оно разбито по категориям в зависимости от транспортного уровня;
  • Реальное представление - в самом низу отображается содержимое пакета в реальном виде, а также в виде HEX.

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

Здесь мы видим пакет запроса к DNS, чтобы получить IP-адрес сайта, в самом запросе отправляется домен, а в пакете ответа мы получаем наш вопрос, а также ответ.

Для более удобного просмотра можно открыть пакет в новом окне, выполнив двойной клик по записи:

Фильтры Wireshark

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

  • ip.dst - целевой IP-адрес;
  • ip.src - IP-адрес отправителя;
  • ip.addr - IP отправителя или получателя;
  • ip.proto - протокол;
  • tcp.dstport - порт назначения;
  • tcp.srcport - порт отправителя;
  • ip.ttl - фильтр по ttl, определяет сетевое расстояние;
  • http.request_uri - запрашиваемый адрес сайта.

Для указания отношения между полем и значением в фильтре можно использовать такие операторы:

  • == - равно;
  • != - не равно;
  • < - меньше;
  • > - больше;
  • <= - меньше или равно;
  • >= - больше или равно;
  • matches - регулярное выражение;
  • contains - содержит.

Для объединения нескольких выражений можно применять:

  • && - оба выражения должны быть верными для пакета;
  • || - может быть верным одно из выражений.

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

Сначала отфильтруем все пакеты, отправленные на 194.67.215.125 (kovalets.net). Наберите строку в поле фильтра и нажмите Apply. Для удобства фильтры Wireshark можно сохранять с помощью кнопки Save:

ip.dst == 194.67.215.125

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

ip.dst == 194.67.215.125 || ip.src == 194.67.215.125

Дальше отберём пакеты с ttl меньше 10:

ip.ttl < 10

Также мы можем отобрать переданные большие файлы:

http.content_length > 5000

Отфильтровав Content-Type, мы можем выбрать все картинки, которые были загружены; выполним анализ трафика Wireshark,  пакеты, которого содержат слово image:

http.content_type contains image

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

Например, я хочу вывести в виде колонки ttl (время жизни) пакета. Для этого откройте информацию о пакете, найдите это поле в разделе IP. Затем вызовите контекстное меню и выберите опцию Apply As Column:

Далее вы увидите нужную колонку после обновления:

Таким же образом можно создать фильтр на основе любого нужного поля. Выберите его и вызовите контекстное меню, затем нажмите Apply as filter или Prepare as filter, затем выбираем Selected, чтобы вывести только выбранные значения, или Not selected, чтобы их убрать:

Указанное поле и его значение будет применено или во втором случае подставлено в поле фильтра:

Таким способом вы можете добавить в фильтр поле любого пакета или колонку. Там тоже есть эта опция в контекстном меню. Для фильтрации протоколов вы можете использовать и более простые условия. Например, выполним анализ трафика Wireshark для протоколов HTTP и DNS:

http || dns

Еще одна интересная возможность программы - использование Wireshark для отслеживания определённого сеанса между компьютером пользователя и сервером. Для этого откройте контекстное меню для пакета и выберите Follow TCP stream.

Затем откроется окно, в котором вы найдете все данные, переданные между сервером и клиентом:

Диагностика проблем Wireshark

Возможно, вам интересно, как пользоваться Wireshark 2.0 для обнаружения проблем в сети. Для этого в левом нижнем углу окна есть круглая кнопка, при нажатии на неё открывается окно Expet Tools. В нём Wireshark собирает все сообщения об ошибках и неполадках в сети:

Окно разделено на такие вкладки, как Errors, Warnings, Notices, Chats. Программа умеет фильтровать и находить множество проблем с сетью, и тут вы можете их очень быстро увидеть. Здесь тоже поддерживаются фильтры Wireshark.

Анализ трафика Wireshark

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

Для этого сначала нужно остановить захват трафика с помощью красного квадрата на панели. Затем откройте меню File -> Export Objects -> HTTP:

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

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

Выводы

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

Опасные уязвимости Linux

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

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

Песочница программ Linux

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

В каждом из перечисленных случаев будет полезной песочница linux. Конечно, идеальное решение для изоляции программ в Linux - это виртуальные машины или контейнеры, но не всегда есть время и знания их настраивать, а простая песочница предоставляет легкое и быстрое решение. Идея заключается в том, чтобы ограничить приложению доступ к вашей системе, личным данным, файлам и другой информации. Программа будет работать только в изолированном окружении. В операционной системе Windows есть утилита Sandboxie, которая реализует такую функциональность. Но в Linux есть альтернатива Sandboxie - FireJail.

Читать далее Песочница программ Linux

Как установить Tor Browser на Ubuntu

В этой статье мы рассмотрим как установить Tor Browser на Ubuntu 16.04. Вы узнаете как установить эту программу из PPA с помощью нескольких команд терминала, а также с помощью установщика из официального сайта продукта.

Программное обеспечение Tor защищает ваш компьютер и скрывает ваш IP адрес в сети путем маршрутизации ваших соединений через распределенную сеть серверов, запущенных и поддерживаемых добровольцами по всему миру. Никто не может следить за вашими передвижениями в интернете, узнать какие сайты вы посещаете или ваше местоположение.
Читать далее Как установить Tor Browser на Ubuntu