Настоящий "Tsunami" от Google

Настоящий "Tsunami" от Google

Kevin Mitnick

Компания Google открыла исходники своего сканера.

Настоящий "Tsunami" от Google

Привет, Аноним.

Сегодня я хочу рассказать тебе о сканере "Tsunami" от Google. Не так давно в репозитории Google появился этот проект. Сегодня попробуем его в деле, а также заглянем под капот. Чтобы оценить эффективность поиска уязвимостей протестируем его на уязвимых машинах. По результатам можно будет определиться, какой это сканер и можно ли брать его на вооружение.

Что за зверь этот "Tsunami"?

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

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

Быстрый старт

Разработчики собрали список всех необходимых команд для установки в один скрипт. Таким образом, после запуска скрипт скачает два репозитория google/tsunami-security-scanner и google/tsunami-security-scanner-plugins в $HOME/tsunami/repos и доставит все существующие плагины. Никакой дополнительной активности в скрипте не предусматривается.

$ bash -c "$(curl -sfL https://raw.githubusercontent.com/google/tsunami-security-scanner/master/quick_start.sh)"
Установка Tsunami

В целом процесс установки не подразумевает ничего особенного. После успешной установки получаем "заготовку" команды для сканирования хоста.

Сканер от Google имеет две основные зависимости nmap >= 7.80 и ncrack >= 0.7. После этого становиться немного яснее что под капотом у этого зверя. Сканер использует две довольно известные утилиты — nmap и ncrack, которые работают в два этапа.

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

Как работает на практике?

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

 
cd /root/tsunami && java -cp "tsunami-main-0.0.2-SNAPSHOT-cli.jar:/root/tsunami/plugins/*"  -Dtsunami-config.location=/root/tsunami/tsunami.yaml  com.google.tsunami.main.cli.TsunamiCli  --ip-v4-target=10.10.10.3  --scan-results-local-output-format=JSON  --scan-results-local-output-filename=/tmp/tsunami-output.json

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

Виртуальная машина Windows с CVE-2008-4250(ms08_067_netapi)

Виртуальная машина Linux с CVE-2007-2447(Samba)

Виртуальная машина Linux со слабыми паролями FTP и WEB уязвимостями

Вначале, сканер проходит по открытым портам с помощью NMAP. Это видно в логах походу сканирования. В нашем случае были открыты FTP и SSH. После сканирования был брутфорс по этим сервисам, в логах это выглядит примерно так:

В результате сканирования первой машины был получен вывод, что хост сканировался с помощью 5 плагинов и было найдено 4 уязвимости. Я проверил отчет. Там было найдено 4 учетных записи, которые подходят для FTP. Учетки были действительно валидные. Но сложность учеток не была высокой, и логины и пароли были со стандартных словарей.

Логи сканирования одной из машин
Логи сканирования одной из машин

По результатам можно сделать вывод, что сканер использует в свой работы базовые возможности Nmap и Ncrack. Для эксплуатации на данный момент доступно всего 5 модулей:

  • NcrackWeakCredentialDetectorPlugin
  • YarnExposedManagerApiDetector
  • JenkinsExposedUiDetector
  • JupyterExposedUiDetector
  • WordPressInstallPageDetector

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

Заключение

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

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

Report Page