Хочу анализировать все порты на предмет сканирования. Чем и как собирать статистику?
Имеется debian 12.
Хочу анализировать все порты на предмет сканирования.
Минималка для анализа:
- порт сканирования
- протокол (tcp/udp/...)
- количество пакетов/байт на данных порт
Дополнительно хотелось бы:
- ip адрес источника
- время получения пакета
Ну тем же (nf|ip)tables логируйте unrelated для udp, new для tcp и invalid для остальных. Это будет наиболее приближено к трафику сканеров, но как вы собрались именно сканеры в этом мусоре искать, я не представляю.
Константин, да, верно, это я чушь написал. Там примерно то же самое всё, кроме таймаутов контрака.
Ну как вариант, просто помещать частые коннекты с одного адреса в отдельную цепочку, там логировать уже. Но эвристик, которые задетектят сканер, слишком много может быть.
Ещё по burst rate внезапному на разные порты можно видеть, если сканер ботнетовый. Но умные сканеры давно уже научились лениво сканить, а не душить на все деньги.
Вот чтобы это сделать, надо сначала выяснить с каких ip поступают конекты на закрытые порты. А для этого нужна автоматизированная статистика. В чём и вопрос :)
Константин, это преподаватель тебе задал такое?
Статистика сканирование портов - обще-известна. Это обычно порты http, https, ssh, ftp, pop3, imap, dns, LDAP, smb, и отдельно
порты Windows-систем такие как RDP, популярные DBMS
(MySQL, Postgresql) кеши (Redis) и клиенты торрентов.
Их списки часто публикуют на сайтах инфо-безопасности.
Сильно сомневаюсь что ты соберешь какую-то интересную информацию
которую можно обобщать. Или тебе надо собирать не на одном хосте а на сотне
и в разных странах. Тогда если складывать логи сканов в биг-дату можно
сделать какие-то исследования и понять тренды.