• Aucun résultat trouvé

Data Mining in the service of nmap Sergey Ignatov, Omar “beched” Ganiev sergey@ctf.su, beched@incsecurity.ru

N/A
N/A
Protected

Academic year: 2022

Partager "Data Mining in the service of nmap Sergey Ignatov, Omar “beched” Ganiev sergey@ctf.su, beched@incsecurity.ru"

Copied!
22
0
0

Texte intégral

(1)

Data Mining in the service of nmap

Sergey Ignatov, Omar “beched” Ganiev sergey@ctf.su, beched@incsecurity.ru

(2)

Data Mining in the service of nmap

$who

(3)

Проблема

Мир не стоит не месте, все развивается, сетевые сканеры в том числе. Начиная от дедушки nmap 1.0 (September 1, 1997), сканеры развиваются в раличных направлениях.

● Сканирование всего интернета (zmap)

● Сканирование уязвимостей в сервисах (nmap scripting engine и другие коммерческие сканеры безопаности)

● Интегрированный TCP стек (polarbear from IOActive)

(4)

Data Mining in the service of nmap

Но сканирования обнаруживаются IDS/IPS

:(

(5)

Обход

● Сканирование через сторонние сервисы (ftp bounce, proxy)

● Уязвимости в самом IDS/IPS

● Всякие сетевые хитрости (https://nmap.org/book/man- bypass-firewalls-ids.html)

● Сканировать медленнее чем IDS хранит историю

● Рассмотрим именно такой подход сканирования с задержками, мы хотим его сделать эффективнее

(6)

Data Mining in the service of nmap

Как найти максимальное количество портов за минимальное количество

запросов?

(7)

Internet Census 2012

● http://internetcensus2012.bitbucket.org

● 420K взломанных домашних маршрутизаторов (пароли по умолчанию)

● Просканировали весь интернет!

● Dataset: 9TB of raw logfiles (500Gb in zpaq)

(8)
(9)

Методика

● На основе данных о всех хостах в интернете строим

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

● Идея очень проста: порты не встречаются сами по себе, они встречаются группами, так давайте хранить не список самых вероятных портов, а список самых вероятных групп

(10)

Data Mining in the service of nmap Методика

● По сути группы соответствуют различным классам сетевых устройств/сервисов

● Если нашли открытые порты X,Y и закрытый Z, то

вероятнее всего будут открыты порты из групп где есть порты X или Y, и нет Z

(11)

Методика

● Сначала мы пытались применить всякие умные алгоритмы и machine learning, делая вид, что умеем это

● Но дерево решений для сканирования будет

экспоненциального размера, значит, его построение тоже экспоненциально

● Алгоритмы классификации не в тему

(12)

Data Mining in the service of nmap Методика

● Что ещё можно? Можно пробовать кластеризовать

результаты скана и получить классы сервисов (“сайт”,

“циска”, “винда”, …)

● Проблема: в датасете интернет-скана много NAT-узлов, отравляющих обучение

● Проблема: в датасете много зафаерволенных хостов, в которых виден только порт 80

(13)

Методика

● Для кластеризации нужно метрическое пространство

● Можно взять какой-нибудь simhash, или можно взять длину LCS, которая динамически вычисляется за произведение длин последовательностей

● Но у нас около 10^7 уникальных последовательностей, а подходящая кластеризация работает не лучше чем за

квадрат

● К тому же из NAT-последовательностей надо вычленять разумные подпоследовательности портов

(14)

Data Mining in the service of nmap Методика

● Keep It Simple, Stupid!

● Давайте просто сортировать статистику =)

● В качестве базовой статистики, по которой начинаем сканировать без предварительных знаний, для начала возьмём топ портов

(15)

Сколько открытых портов в интернете?

(16)

Data Mining in the service of nmap TOP13 самых встречаемых групп

(17)

TOP13 самых встречаемых групп

(18)

Data Mining in the service of nmap Чем плох NMap?

● Чем плох NMap? Много чем, там много наследия прошлого

● Главное - он медленный

● По умолчанию NMap сканит по топу портов (4243 порта), при полном наборе сканит случайным образом

(19)

Результаты

● Пока что с лобовым алгоритмом и предварительной статой уже получилось ускорение на 42% относительно NMap

● Статистику измеряли путём имитации сканирования

● При этом сравнивалось, за какое количество запросов наш алгоритм находит столько же портов, сколько всего нашёл NMap (по умолчанию он не ищет дальше своего топа)

(20)

Data Mining in the service of nmap Результаты

(21)

Планы на будущее

● Патч для nmap, изменяемая стратегия сканирования

● Данные по интранету (внутренние пентесты)

● Компактный словарь

(сейчас 150Мб и самый полный 666Мб)

● Более точная кластеризация на основе данных протокола (Тип сервиса, версия, ОС и т.д.)

● ...

(22)

Data Mining in the service of nmap Вопросы

Q?

sergey@ctf.su beched@incsecurity.ru

Références

Documents relatifs

(Jameson, 1991: 25) И заиста, чак и сама помисао на то да је неко озлоглашене бомбардере обојио у дречаве боје и читав пројекат назвао Дугоногави- ткаСалипо песми

Pour ces deux semaines nous t’offrons la possibilité d’ouvrir les pages de ce livre et de plonger droit dans la jungle (et bien plus loin) à la rencontre de Tabaqui le Lèche-Plat,

Executing Nmap with no command line options will perform a basic scan on the specified target.. The table below describes the output fields displayed by

In this part of the book the author aims to define text as an intertext (2.1.), attempts to explain the difference between repeated discourse (E. Coseriu) and free discourse,

Simultaneously the Koszul duality of operads also produces a differential graded Lie algebra which encodes homotopy algebra structures, thereby answering the philosophy of

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

This paper describes the creation of software which combines an interactive mode of operation, including a graphical user interface for the OMNeT++ environment, with

●  XSS - because we have a modern SPA and if we find a way to do XSS attack, we can get access to extra API (like different access to hardware) / filesystem and hijack secret tokens /