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

Исходное сообщение
"Филтьрация пакетов в FreeBSD"

Отправлено savio , 17-Июн-09 12:56 
Можно ли в FreeBSD фильтровать пакеты по:
- содержимому пакета
- размеру пакета
?

Содержание

Сообщения в этом обсуждении
"Филтьрация пакетов в FreeBSD"
Отправлено Pahanivo , 17-Июн-09 14:18 
>Можно ли в FreeBSD фильтровать пакеты по:
>- содержимому пакета

до TCP/UDP уровня
>- размеру пакета

а зачем?
>?


"Филтьрация пакетов в FreeBSD"
Отправлено savio , 17-Июн-09 15:58 
>до TCP/UDP уровня

каким образом? поделитесь пожалуйста



"Филтьрация пакетов в FreeBSD"
Отправлено Pahanivo , 17-Июн-09 17:15 
>>до TCP/UDP уровня
>
>каким образом? поделитесь пожалуйста

ipfw allow/deny tcp/udp from src_ip [src_port] to dst_ip [dst_port] [setup] [via ...]


"Филтьрация пакетов в FreeBSD"
Отправлено savio , 17-Июн-09 18:10 
>>>до TCP/UDP уровня
>>
>>каким образом? поделитесь пожалуйста
>
>ipfw allow/deny tcp/udp from src_ip [src_port] to dst_ip [dst_port] [setup] [via ...]
>

и где здесь фильтрация по содержимому пакета или его длине?

P.S.
по поводу длины пакета я разобрался. в ipfw опция iplen
а есть лианалогичная опция для содержимого пакета в ipfw?


"Филтьрация пакетов в FreeBSD"
Отправлено Pahanivo , 17-Июн-09 18:24 
>[оверквотинг удален]
>>>каким образом? поделитесь пожалуйста
>>
>>ipfw allow/deny tcp/udp from src_ip [src_port] to dst_ip [dst_port] [setup] [via ...]
>>
>
>и где здесь фильтрация по содержимому пакета или его длине?
>
>P.S.
>по поводу длины пакета я разобрался. в ipfw опция iplen
>а есть лианалогичная опция для содержимого пакета в ipfw?

читать умеешь?
если умеешь перечитай топ от начала НЕ ПРОПУСКАЯ строк


"Филтьрация пакетов в FreeBSD"
Отправлено savio , 17-Июн-09 18:30 
>[оверквотинг удален]
>>>
>>
>>и где здесь фильтрация по содержимому пакета или его длине?
>>
>>P.S.
>>по поводу длины пакета я разобрался. в ipfw опция iplen
>>а есть лианалогичная опция для содержимого пакета в ipfw?
>
>читать умеешь?
>если умеешь перечитай топ от начала НЕ ПРОПУСКАЯ строк

перечитал. ничего нового не увидел. возможно ты имееш ввиду что до уровня TCP/UDP, а содержимое этого пакета по протоколу TCP/UDP чтоб  смотреть какой уровень нужен?


"Филтьрация пакетов в FreeBSD"
Отправлено Deac , 17-Июн-09 19:28 
>>[оверквотинг удален]
>
>перечитал. ничего нового не увидел. возможно ты имееш ввиду что до уровня
>TCP/UDP, а содержимое этого пакета по протоколу TCP/UDP чтоб  смотреть
>какой уровень нужен?

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

Для анализа информации в пакетах нужен не "уровень TCP/IP", а вполне конкретный уровень паранойи или столь же конкретный "злой умысел".


"Филтьрация пакетов в FreeBSD"
Отправлено savio , 17-Июн-09 23:00 
>[оверквотинг удален]
>>TCP/UDP, а содержимое этого пакета по протоколу TCP/UDP чтоб  смотреть
>>какой уровень нужен?
>
>Если под "содержимым" подразумеваются флаги в TCP, то может.
>Если под "содержимым" подразумевается непосредственно информация, передаваемая в пакетах, то нужен НЕ
>firewall, а анализатор трафика по нужным именно тебе критериям, который в
>свою очередь может управлять firewall-ом.
>
>Для анализа информации в пакетах нужен не "уровень TCP/IP", а вполне конкретный
>уровень паранойи или столь же конкретный "злой умысел".

умысел не злой. нужно блокировать пересылку файлов через icq для некоторых юзеров(потребовало начальсво)
при передаче файлов аськой в пакете содержится строка "_FT",
c помощью iptables эту проблему просто решить. у меня же FreeBSD с ipfw


"Филтьрация пакетов в FreeBSD"
Отправлено Pahanivo , 18-Июн-09 07:37 
>[оверквотинг удален]
>>свою очередь может управлять firewall-ом.
>>
>>Для анализа информации в пакетах нужен не "уровень TCP/IP", а вполне конкретный
>>уровень паранойи или столь же конкретный "злой умысел".
>
>умысел не злой. нужно блокировать пересылку файлов через icq для некоторых юзеров(потребовало
>начальсво)
>при передаче файлов аськой в пакете содержится строка "_FT",
>c помощью iptables эту проблему просто решить. у меня же FreeBSD с
>ipfw

очередной юный чайнег который взялся за то чего не понимает
а если другая софтина начнет отправлять пакеты с данным контентом? и что там прямо во всех пакетах одинаковый тег? )
ты видимо даже не понимаешь сколько времени потребуется фаеру на разбор каждого пакета в данном случае да и про уровни ISO/OSI никогда не слышал
для разбора прикладных протоколов надо использовать соответствующий прокси а не страдать извращенным ананизмом


"Филтьрация пакетов в FreeBSD"
Отправлено savio , 18-Июн-09 10:03 
>[оверквотинг удален]
>>
>>умысел не злой. нужно блокировать пересылку файлов через icq для некоторых юзеров(потребовало
>>начальсво)
>>при передаче файлов аськой в пакете содержится строка "_FT",
>>c помощью iptables эту проблему просто решить. у меня же FreeBSD с
>>ipfw
>
>очередной юный чайнег который взялся за то чего не понимает
>а если другая софтина начнет отправлять пакеты с данным контентом? и что
>там прямо во всех пакетах одинаковый тег? )

ты бы читал мои посты повнимательней, тогда не задавал глупых бы ыопросов.
много софта шлет строку "_FT" по порту 5190? думаю что только аська :)

>ты видимо даже не понимаешь сколько времени потребуется фаеру на разбор каждого
>пакета в данном случае да и про уровни ISO/OSI никогда не
>слышал
>для разбора прикладных протоколов надо использовать соответствующий прокси а не страдать извращенным
>ананизмом

ну да, ты же не слыхал наверное что такое iptables? да? представляеш, он может на ходу разбирать пакет.


"Филтьрация пакетов в FreeBSD"
Отправлено Pahanivo , 18-Июн-09 11:49 
>[оверквотинг удален]
>>>ipfw
>>
>>очередной юный чайнег который взялся за то чего не понимает
>>а если другая софтина начнет отправлять пакеты с данным контентом? и что
>>там прямо во всех пакетах одинаковый тег? )
>
>ты бы читал мои посты повнимательней, тогда не задавал глупых бы ыопросов.
>
>много софта шлет строку "_FT" по порту 5190? думаю что только аська
>:)

угумс - а с каких пор передачу файлов в асе стала идти по порту 5190 ?
>>ты видимо даже не понимаешь сколько времени потребуется фаеру на разбор каждого
>>пакета в данном случае да и про уровни ISO/OSI никогда не
>>слышал
>>для разбора прикладных протоколов надо использовать соответствующий прокси а не страдать извращенным
>>ананизмом
>
>ну да, ты же не слыхал наверное что такое iptables? да? представляеш,
>он может на ходу разбирать пакет.

iptables как и любой другой фаервол по определению не умеет АНАЛИЗИРОВАТЬ (разбирать) пакет по содержанию
для особо одаренных и грамотных перцев я поясню: чтобы анализировать сетевой трафик не достаточно одного пакета - пакет не есть данные (в смысле трафик) - пакет часть данных (трафика), чтобы осуществлять анализ боле-менее приемлимо надо захватить весь поток - а фаер этого делать не умеет и не должен. фаер (в твоем случае iptables) умеет только СРАВНИВАТЬ поле данных (имеется ввиду паке ip) с ШАБЛОНОМ. вполне верояно для определенных ПРИКЛАДНЫХ протоколов существуют стандартные инициирующие данные на этапе соединения - но это только для некоторых протоколов - в общем случае абсолютно ничего нельзя гарантировать. к тому же если протокол поддерживает минимальное шифрование - то вообще все усилия впустую. дополнительно получаем глюки со всеми пакетами в которых случайно оказалась данная последовательность - теорию вероятности знаешь? посчитать примерную вероятно дропнуть левый пакет? в ASCII 128 символов - возводим в 3 степень и получаем вероятность возникновение определенной последовательности и 3 символов (_FT)
итого вероятность 1/2097152 - те при случайном потоке символов и равномерном распределении (пример упрощен чисто для расчета) из каждых 2097152 бай вероятность случайного появления последовательности будет 1 ! те очень вероятно ! Пакет ip - 1400 байтоф => 2097152 / 1400 =~ 1500  => итого из 1500 пакетов практически гарантированно бутед один которые не пройдет через фаревол - хотя должен - да конечено TCP протокол повторно передаст данные )) и он опять не пройдет ибо данные теже )) гарантированно получаем подвисшее соединение.
и самое печальное во всем этом - что этот глюк практически невозможно отловить - ибо анализ очень сложен
грамотные читатель скажет что я задрал вероятности - да, я рассмотрел идеальных случай - НО, (причем оооочень большое НО) если взять шифрованное соединение в котором все символы равномерно распределены (это есть основы шифрования) то мой расчет идеально подходит ...
те фактически при поиске случайной последовательности из трех символов мы практически гарантированно имеем глюки с соединениями в которых передается более 2Мб ...

вот таквот, понимающий ты наш ))
ты наверно и не слыхал что такое теория вероятности? да? представляешь - она работает!


"Филтьрация пакетов в FreeBSD"
Отправлено savio , 18-Июн-09 12:57 
>[оверквотинг удален]
>грамотные читатель скажет что я задрал вероятности - да, я рассмотрел идеальных
>случай - НО, (причем оооочень большое НО) если взять шифрованное соединение
>в котором все символы равномерно распределены (это есть основы шифрования) то
>мой расчет идеально подходит ...
>те фактически при поиске случайной последовательности из трех символов мы практически гарантированно
>имеем глюки с соединениями в которых передается более 2Мб ...
>
>вот таквот, понимающий ты наш ))
>ты наверно и не слыхал что такое теория вероятности? да? представляешь -
>она работает!

вся твоя теория вероятности не подходит, так как рассматриваем только трафик по порту 5190, так что... а по поводу шифрования то это да, согласен....


"Филтьрация пакетов в FreeBSD"
Отправлено Pahanivo , 18-Июн-09 14:14 
>[оверквотинг удален]
>>те фактически при поиске случайной последовательности из трех символов мы практически гарантированно
>>имеем глюки с соединениями в которых передается более 2Мб ...
>>
>>вот таквот, понимающий ты наш ))
>>ты наверно и не слыхал что такое теория вероятности? да? представляешь -
>>она работает!
>
>вся твоя теория вероятности не подходит, так как рассматриваем только трафик по
>порту 5190, так что... а по поводу шифрования то это да,
>согласен....

кто тебе сказал что ася шлет файлы только по этому порты?


"Филтьрация пакетов в FreeBSD"
Отправлено angra , 18-Июн-09 13:23 
>ты наверно и не слыхал что такое теория вероятности? да? представляешь - она работает!

А вот ты, Pahanivo, о ней как раз только слышал, но никогда не вникал. Не отрицая общую мысль поста категорически не согласен с математическими выкладками.


"Филтьрация пакетов в FreeBSD"
Отправлено Pahanivo , 18-Июн-09 14:13 
>>ты наверно и не слыхал что такое теория вероятности? да? представляешь - она работает!
>
>А вот ты, Pahanivo, о ней как раз только слышал, но никогда
>не вникал. Не отрицая общую мысль поста категорически не согласен с
>математическими выкладками.

абаснуй ) перетрем )


"Филтьрация пакетов в FreeBSD"
Отправлено angra , 18-Июн-09 15:05 
Лень :)
Но можно пару пунктов для затравки.
1. ascii это конечно 128, но вот данные передаются в байтах и не подчиняются ascii, как следствие 256, а не 128 комбинаций.
2. Упростим до двоичного кода и уберем термины. Поставим условие, что 0 и 1 встречаются с равной вероятностью, ужесточим это тем, что в каждой последовательной паре из двух символов один будет 0 другой 1, тем самым исключая вариант типа 111111000000. Какая вероятность 11 или 00? Что насчет таких последовательностей: 010101010101 и 01100110110?


"Филтьрация пакетов в FreeBSD"
Отправлено Pahanivo , 18-Июн-09 17:47 
>Лень :)
>Но можно пару пунктов для затравки.
>1. ascii это конечно 128, но вот данные передаются в байтах и
>не подчиняются ascii, как следствие 256, а не 128 комбинаций.

естественно байтами - но и каждый символ передается в отдельном байте - первый или последний бит просто мертвый (варианты mime запаковки я не рассматриваю)
получаем всетаки 128 комбинаций - тем более что чувак ищет именно символы - хотя они конечно могут быть и в двухбитной кодировке - вообще условие мутное изначно поэтому и расчет "на пальцах"
>2. Упростим до двоичного кода и уберем термины. Поставим условие, что 0
>и 1 встречаются с равной вероятностью, ужесточим это тем, что в
>каждой последовательной паре из двух символов один будет 0 другой 1,
>тем самым исключая вариант типа 111111000000. Какая вероятность 11 или 00?
>Что насчет таких последовательностей: 010101010101 и 01100110110?

ммм изначально условие проще - поток символов (байты) - мы ищем три байта подряд - причеме перебираем не по три, а все варианты последовательно беря последовательно каждый байт за начало последовательности )

да хер с ними с расчетами - главное то, что грабли обеспечены да еше причем какие!


"Филтьрация пакетов в FreeBSD"
Отправлено angra , 19-Июн-09 08:02 
>естественно байтами - но и каждый символ передается в отдельном байте -
>первый или последний бит просто мертвый (варианты mime запаковки я не
>рассматриваю)
>получаем всетаки 128 комбинаций - тем более что чувак ищет именно символы
>- хотя они конечно могут быть и в двухбитной кодировке -

Сдай своего драгдиллера или просто поделись травой :)


"Филтьрация пакетов в FreeBSD"
Отправлено Pahanivo , 19-Июн-09 08:42 
>>естественно байтами - но и каждый символ передается в отдельном байте -
>>первый или последний бит просто мертвый (варианты mime запаковки я не
>>рассматриваю)
>>получаем всетаки 128 комбинаций - тем более что чувак ищет именно символы
>>- хотя они конечно могут быть и в двухбитной кодировке -
>
>Сдай своего драгдиллера или просто поделись травой :)

чото не так? )


"Филтьрация пакетов в FreeBSD"
Отправлено angra , 20-Июн-09 05:58 
1. Двухбитная кодировка это нечто
2. Национальные однобайтовые кодировки и псевдографика используют как раз расширенный ascii, то есть верхние 128 из 256 возможных значений байта
3. mime запаковки превращают поток произвольных символов в подмножество ascii, а не наоборот
4. Бинарный файл(а это подавляющее большинство) абсолютно не связан с ascii и использует полный байт.


"Филтьрация пакетов в FreeBSD"
Отправлено Pahanivo , 21-Июн-09 21:39 
>1. Двухбитная кодировка это нечто

естно байтная ) очепятко
>2. Национальные однобайтовые кодировки и псевдографика используют как раз расширенный >ascii, то
>есть верхние 128 из 256 возможных значений байта

в протоколах для передачи управляющих последовательностей както не особо используются символы отличные от латиницы )
а для нее и 128 по самое нимагу
>3. mime запаковки превращают поток произвольных символов в подмножество ascii, а не
>наоборот

а я сказал наооброт? )
>4. Бинарный файл(а это подавляющее большинство) абсолютно не связан с ascii и
>использует полный байт.

да юох с ним - давай считать 256 а не 128 )
дело сути не меняет
128^3=2097152
256^3=16777216 - вероятно меньше в 8 раз - те не каждая серия из 1500 пакетов будет "потенциально глюкавой", а серия из 12000 )


"Филтьрация пакетов в FreeBSD"
Отправлено Pahanivo , 17-Июн-09 20:57 
>[оверквотинг удален]
>>>P.S.
>>>по поводу длины пакета я разобрался. в ipfw опция iplen
>>>а есть лианалогичная опция для содержимого пакета в ipfw?
>>
>>читать умеешь?
>>если умеешь перечитай топ от начала НЕ ПРОПУСКАЯ строк
>
>перечитал. ничего нового не увидел. возможно ты имееш ввиду что до уровня
>TCP/UDP, а содержимое этого пакета по протоколу TCP/UDP чтоб  смотреть
>какой уровень нужен?

какой уровень? ты это у МЕНЯ спрашиваешь какой ТЕБЕ нужен уровень?
пространственно-тупой вопрос - адекватный ответ


"Филтьрация пакетов в FreeBSD"
Отправлено Merlin_ua , 18-Июн-09 14:18 
Если вопрос стоит только в том, чтоб заблокировать передачу файлов через ICQ то вот что нашол:
http://forum.uined.ru/archive/index.php?t-40.html

"Филтьрация пакетов в FreeBSD"
Отправлено savio , 18-Июн-09 21:37 
>Если вопрос стоит только в том, чтоб заблокировать передачу файлов через ICQ
>то вот что нашол:
>http://forum.uined.ru/archive/index.php?t-40.html

пока вы тут байты обсуждали, прочитал что при конекте через http-прокси файлы не передаются. проблема в том что  прозрачный прокси для icq не работает. для клиента должно быть все прозрачно. ничего чтоб не настраивал.

если ли какая-то програмулина которая может любой(не совсем любой) трафик перенаправлять через http прокси?

под виндовс есть FreeCAP. но она запускается на клиентской стороне. хочеться по аналогии тоже самое но под unix и на серверной


"Филтьрация пакетов в FreeBSD"
Отправлено Слава , 19-Июн-09 04:33 
>Если вопрос стоит только в том, чтоб заблокировать передачу файлов через ICQ
>то вот что нашол:
>http://forum.uined.ru/archive/index.php?t-40.html

Дату постов посмотрели? 2005 год
тогда это действительно легко блокировалось, а сейчас аська умеет обмениваться файлами, если не получается напрямую, исключительно через свои AOL сервера, т.е. по порту 5190
и заблокировать это можно действительно только применяя REGEXP именно к телу пакета, а не к заголовкам.
Автор прав в iptables это стандартная фича и там не надо ловить весь поток, достаточно дропнуть этот один пакетик и аська обломается передать/получить файл, так что вопрос очень даже актуален +1 так сказать
Подозреваю, что на FreeBSD это можно реализовать с помощью netgraph, но не смотрел, есть ли у него подобный модуль, доберусь до сервера, гляну.


"Филтьрация пакетов в FreeBSD"
Отправлено savio , 19-Июн-09 10:17 
>[оверквотинг удален]
>не получается напрямую, исключительно через свои AOL сервера, т.е. по порту
>5190
>и заблокировать это можно действительно только применяя REGEXP именно к телу пакета,
>а не к заголовкам.
>Автор прав в iptables это стандартная фича и там не надо ловить
>весь поток, достаточно дропнуть этот один пакетик и аська обломается передать/получить
>файл, так что вопрос очень даже актуален +1 так сказать
>Подозреваю, что на FreeBSD это можно реализовать с помощью netgraph, но не
>смотрел, есть ли у него подобный модуль, доберусь до сервера, гляну.
>

очень интересно, посмотрите плиз, а то я пока с netgraph строго на "Вы"


"Филтьрация пакетов в FreeBSD"
Отправлено shutdown now , 02-Июл-09 01:51 
>[оверквотинг удален]
>>а не к заголовкам.
>>Автор прав в iptables это стандартная фича и там не надо ловить
>>весь поток, достаточно дропнуть этот один пакетик и аська обломается передать/получить
>>файл, так что вопрос очень даже актуален +1 так сказать
>>Подозреваю, что на FreeBSD это можно реализовать с помощью netgraph, но не
>>смотрел, есть ли у него подобный модуль, доберусь до сервера, гляну.
>>
>
>очень интересно, посмотрите плиз, а то я пока с netgraph строго на
>"Вы"

http://nuclight.livejournal.com/122098.html