Посл.ответ |
Сообщение |
Ранг: 7.5 (гость), 1thx Активность: 0.01↘0 Статус: Участник
|
Создано: 03 декабря 2016 01:54 · Личное сообщение · #1
Мне нужно написать анализатор IP-пакетов с несложной фильтрацией по IP и порту. Сейчас у меня готова программа, перехватывающая IP-пакеты, но в них не содержится порт: это уже часть протокола TCP или UDP. Каким образом мне добраться до порта? В хекс-дампе вижу HTTP-хедеры и другой мусор. Это тоже будет использоваться при фильтрации, но сейчас мне важнее определить ip:port. Пишу на винсокетах.
| Сообщение посчитали полезным: |
|
 Ранг: 1053.6 (!!!!), 1078thx Активность: 1.06↘0.81 Статус: Участник
|
Создано: 03 декабря 2016 02:41 · Личное сообщение · #2
равсокеты что ли ? ну опиши стурктуру айпи пакета + удп, кастишь свой пакет в структуру и из структуры по полям забираешь свои айпи + порт хост ендиан только учесть надо https://en.wikipedia.org/wiki/User_Datagram_Protocol
| Сообщение посчитали полезным: |
Ранг: 7.5 (гость), 1thx Активность: 0.01↘0 Статус: Участник
|
Создано: 03 декабря 2016 03:00 · Личное сообщение · #3
Вроде, получается. Смысл всего этого - фильтрация пакетов. Видимо, нужно предусмотреть возможность доставки только разрешенных пакетов. Как реализовать эту доставку или отклонение после того, как пакер проанализирован?
| Сообщение посчитали полезным: |
 Ранг: 1053.6 (!!!!), 1078thx Активность: 1.06↘0.81 Статус: Участник
|
Создано: 03 декабря 2016 03:05 · Личное сообщение · #4
я хз вообще зачем это если для винды то там какой то механизм фаервола был для доступа с юзер левела и можно было поставить хук процедуру в винде, которая вызывалась и по ее результатам можно было мочить пакет или пропускать хз, погуглите я уже забыл, может уже в современных виндах и отключили эту фишку Добавлено спустя 41 минутуhttps://msdn.microsoft.com/windows/hardware/drivers/network/porting-packet-processing-drivers-and-apps-to-wfp https://msdn.microsoft.com/en-us/library/aa366510(v=vs.85).aspx
| Сообщение посчитали полезным: |
Ранг: 53.9 (постоянный), 19thx Активность: 0.04↘0 Статус: Участник
|
Создано: 03 декабря 2016 04:10 · Личное сообщение · #5
ZeroMemory пишет: Смысл всего этого - фильтрация пакетов. http://www.winpcap.org/
| Сообщение посчитали полезным: |
Ранг: 7.5 (гость), 1thx Активность: 0.01↘0 Статус: Участник
|
Создано: 03 декабря 2016 13:12 · Личное сообщение · #6
Zorn пишет: http://www.winpcap.org/ Я не для себя пишу. Мне нужно сделать простой сетевой экран.
| Сообщение посчитали полезным: |
Ранг: 53.9 (постоянный), 19thx Активность: 0.04↘0 Статус: Участник
|
Создано: 09 декабря 2016 04:14 · Личное сообщение · #7
И в чем проблема ? Нельзя поставит winpcap, но вашу программу можно ?
| Сообщение посчитали полезным: |
 Ранг: 324.3 (мудрец), 222thx Активность: 0.48↘0.37 Статус: Участник
|
Создано: 09 декабря 2016 23:19 · Личное сообщение · #8
ZeroMemoryПорт содержится не в ip-пакете, а повыше уровнем - а в заголовке tcp или udp. Странный такой вопрос, поснифали бы что-нибудь WireShark'ом - знали бы уже, где порт.
----- IZ.RU | Сообщение посчитали полезным: |
Ранг: 3.1 (гость), 4thx Активность: 0=0 Статус: Участник
|
Создано: 18 декабря 2016 19:11 · Поправил: LoDS · Личное сообщение · #9
 пипец.... человек пишет сетевой экран.... пи***ц.. Человек, я тебе рекомендую разобраться для начала с моделью OSI, потом разобраться с основами сетевого взаимодействия, потом с написанием драйверов. Ивот только после этого садиться писать код. Я прям предвещаю следующий вопрос в теме: -как дропать пакеты?...
| Сообщение посчитали полезным: |