2012-03-02 2 views
0

Мне было интересно, можно ли заблокировать этот конкретный пакет в IPTables?IPTables Как заблокировать определенный пакет UDP?

IP (tos 0x0, ttl 122, id 59478, offset 0, flags [none], proto: **UDP** (17), **length: 32**) 49.125.39.7.53125 > 68.68.27.40.34535: UDP, **length 0** 
    0x0000: 4500 0020 e856 0000 7a11 a086 317d 2707 E....V..z...1}'. 
    0x0010: 4444 1b28 cf85 86e7 0008 0000 0000 0000 DD.(............ 
    0x0020: 0000 0000 0000 0000 0000 0000 0000 

IP (tos 0x0, ttl 43, id 42852, offset 0, flags [none], proto: UDP (17), length: 32) 15.205.231.92.63002 > 68.68.27.40.18287: UDP, length 0 
    0x0000: 4500 0020 a764 0000 2b11 91d3 0fcd e75c E....d..+......\ 
    0x0010: 4444 1b28 f61a 476f 0008 0000 0000 0000 DD.(..Go........ 
    0x0020: 0000 0000 0000 0000 0000 0000 0000  

Это Поддельная DoS атака, со случайными исходными IP-адресов на случайные порты назначения, исчерпав УДП порты наши потребности сервера приложений. Я хочу заблокировать пакет в соответствии с выделенными частями дампа tcp, а именно: длина UDP: 32 + длина 0 в конце. Это возможно?

Или можно заблокировать пакеты с помощью шестнадцатеричной строки в дампе?

Спасибо любезно, Floyd

ответ

0

В IPTables есть модуль u32, чтобы проверить, является ли количество до 4 байт, извлеченных из пакета имеет заданные значения. Возможно, вы можете протестировать пакет DoS attachek или нет. Ниже приведен пример:

iptables -A INPUT -j DROP -m u32 --u32 "16 & 0xFFFF = 0x4444" 

См manpage of iptables (вы должны использовать man iptables на вашей среде) более подробно.

+0

Доступен ли модуль u32 в centos5? – Floyd

+0

@Floyd, есть модуль u32 доступен в CentOS 5 (я проверил мои хосты CentOS 5.3). См. 'Man iptables' для получения дополнительной информации. – kamae

+0

'[root @ dbox ~] # iptables -m u32 -h iptables v1.3.5: Не удалось загрузить совпадение u32 ':/lib/iptables/libipt_u32.so: невозможно открыть файл общих объектов: нет такого файла или каталога' Я вижу упоминание u32 в man-страницах, но, по-видимому, отсутствующий модуль CentOS 5.7, означает ли это, что мне придется перекомпилировать ядро? – Floyd