URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 1995
[ Назад ]

Исходное сообщение
"Раздел полезных советов: Как настроить пакетный фильтр для фильтрации по содержимому пакетов"

Отправлено auto_tips , 02-Май-03 01:27 
Следующие правила блокируют прохождение пакетов, данные в которых содержат подстроку virus.exe
и ведут лог пакетов с строкой secret внутри:
iptables -A INPUT -m string --string "secret" -j LOG --log-level info --log-prefix "SECRET"
iptables -I INPUT -j DROP -p tcp -s 0.0.0.0/0 -m string --string "virus.exe"
# Block Code Red
iptables -I INPUT -j DROP -p tcp -m string --string "cmd.exe"
# Block Nimda
iptables -I INPUT -j DROP -p tcp -m string --string "root.exe"
iptables -I INPUT -j DROP -p tcp -m string --string "default.ida"


URL:
Обсуждается: http://www.opennet.me/tips/info/231.shtml


Содержание

Сообщения в этом обсуждении
"A как настроить iptables для фильтрации пакетов исходя из URL"
Отправлено sasha , 02-Май-03 01:27 
Можно ли фильтровать пакеты которые приходят с сайта в URL которого встречается определенное слово, например banner или counter?

"Как настроить пакетный фильтр для фильтрации по содержимому пакетов"
Отправлено Mike , 19-Янв-06 19:23 
У меня iptables 1.3.4 и kernel-2.6.14. Приведенные правила не срабатывают. Iptables требует определить опцию --algo (алгоритм), но какой алгоритм я не знаю? В файле libipt_string.c определено несколько опций для STRING match: --from Offset to start searching from;
--to Offset to stop serching;
--algo Algorithm;
--string [!] string строка в пакете;
--hex-string [!] string строка в шестнадцатиричном виде. Может кто знает, что задать в опции algo?

"Как настроить пакетный фильтр для фильтрации по содержимому пакетов"
Отправлено DRVTiny , 24-Сен-06 19:45 
У меня тот же вопрос. Что это ещё за algo такое???

"Как настроить пакетный фильтр для фильтрации по содержимому пакетов"
Отправлено DRVTiny , 24-Сен-06 20:02 
Вы не поверите, но algo - это и в самом деле алгоритм! Например, kmp - это алгоритм Кнута-Мориса-Пратта, bm - наверное, Бойера-Мура. Только непонятно, каким образом об этом должен узнать пользователь?
Я эти ценные сведения почерпнул из lib/textsearch.c, но это же догадаться ещё надо туда залезть!

"Как настроить пакетный фильтр для фильтрации по содержимому пакетов"
Отправлено DRVTiny , 24-Сен-06 20:03 
Работает так:
iptables -I INPUT -p tcp --sport 80 --dport 1024: -m string --algo kmp --string linux -j DROP

"Как настроить пакетный фильтр для фильтрации по содержимому пакетов"
Отправлено DRVTiny , 24-Сен-06 20:05 
Работает так:
iptables -I INPUT -p tcp --sport 80 --dport 1024: -m string --algo kmp --string linux -j DROP
Только что проверял - OpenNet с этим правилом действительно не грузится :)

"Как настроить пакетный фильтр для фильтрации по содержимому пакетов"
Отправлено DRVTiny , 24-Сен-06 20:25 
Перечень алгоритмов, поддерживаемых функцией поиска подстрок, реализованных ядре, можно получить так :
(находясь в корне исходников ядра)
ls lib | sed -nr 's/^ts_([^\.]+)\.c$/\1/p'

Описания алгоритмов:
fsm: A naive finite state machine text search approach
bm: Boyer-Moore text search implementation
kmp: Knuth-Morris-Pratt text search implementation


"Как настроить пакетный фильтр для фильтрации по содержимому пакетов"
Отправлено Александр , 08-Фев-15 08:42 
Для CentOS 6 подошел такой вариант фильтра:
iptables -A INPUT -p tcp --dport 80 -m string --string "MJ12bot" --algo kmp -j DROP
заблокировать бота MJ12bot

"Как настроить пакетный фильтр для фильтрации по содержимому пакетов"
Отправлено Azizoro , 25-Мрт-19 13:15 
С такими правилами указал однин запрет, у меня утром на работе интернет стал зависать. После удаления строчки блокировки vk.com интернет заработал нормально

"Как настроить пакетный фильтр для фильтрации по содержимому пакетов"
Отправлено Azizoro , 25-Мрт-19 14:17 
Заметил процесс ksoftirqd  стал жрать ЦПУ