информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
За кого нас держат?Сетевые кракеры и правда о деле ЛевинаПортрет посетителя
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
 Умер Никлаус Вирт 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Ну да, все кроме winpcap-а именно это и делают 19.01.09 04:50  Число просмотров: 1712
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
<programming>
[Win32] Перехват входящего HTTP-трафика 18.01.09 07:47  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
Есть игровой клиент, который общается с сервером по HTTP-протоколу. Нужно сделать пассивный перехват вхоящего HTTP-трафика.

Пока додумался только до того, чтобы перехватить API-функцию recv, и включить в неё дополнительный код, который перед тем как завершить функцию recv будет записывать пакет в лог.

Хотелось бы решение попроще придумать. Можно что-то вроде такого сделать: создать сокет, который будет получать данные параллельно с сокетом клиента? т.е. чтобы и туда и туда шло одно и то же.
www.wireshark.org 19.01.09 22:27  
Автор: + <Mikhail> Статус: Elderman
<"чистая" ссылка> <обсуждение закрыто>
wireshark

www.wireshark.org
+1 20.01.09 07:08  
Автор: void <Grebnev Valery> Статус: Elderman
<"чистая" ссылка> <обсуждение закрыто>
Да советовал я ему уже в прошлом посте. Он ту тему закрыл и переоткрыл ее здесь 20.01.09 08:08  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
А так как здесь ПРОГРАММИНГ, то советовать вайршарк - несколько неудобно
А что это такое? Объясните пожалуйста в двух словах 20.01.09 07:28  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
Let me google that for you 20.01.09 08:09  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>


http://letmegooglethatforyou.com/?q=wireshark
Гугл гулглом, но если кто-то может в двух словах ответить. А то я ещё не на ту доку поподу. А мнение местных старожилов для меня весомо. 20.01.09 08:47  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
wireshark установил и пользуюсь. Спасибо за ссылку. Очень для меня полезная программа. 25.01.09 08:28  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
Если речь идёт о боте к игрушке, то... 18.01.09 16:52  
Автор: Ustin <Ustin> Статус: Elderman
<"чистая" ссылка> <обсуждение закрыто>
...можно сделать прокси-сервер прямо для данной игрухи и сохранить трафик из него.
В настройках игрухи можно указать прокси? Тогда берём имеющийся прокси, который умеет сохранять трафик, или с открытым кодом и приделываем к нему сохранение (блин, не могу сказать, какой именно софт нужен).
Но проще и быстрее - просто слушать трафик с помощью ethereal\packetyzer. Там можно указать фильтр типа "слушать только http", в итоге он покажет пакеты в красивом виде - подсветит заголовки, данные и проч.
[Win32] А ось то какая хоть? 18.01.09 08:31  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
WinXP 18.01.09 09:22  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
Плохо, конечно, но излечимо 18.01.09 09:38  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
Можно перехватывать winpcap-ом и самому собирать пакеты в потоки.
Можно написать TDI-фильтр
Можно написать Layered Service Provider
Можно написать прокси в конце концов

А вообще лучше поставить Vista/Win7 и использовать WFP

По всем ключевым словам вполне можно гуглить.
Я для себя выбрал WinPcap. Почитал вот эту статью: 19.01.09 03:58  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
Отредактировано 19.01.09 04:04  Количество правок: 1
<"чистая" ссылка> <обсуждение закрыто>
Я для себя выбрал WinPcap. Почитал вот эту статью:
http://security.h12.ru/docs/windows/arhitektura_zahvata_paketov_dlya_windows_winpcap_(chast_2).htm

Скачал с сайта библиотеку:
http://www.winpcap.org/install/bin/WinPcap_4_0_2.exe
Но почему-то у меня установилось только два файла: rpcapd.exe и Uninstall.exe. А lib и h файлами там и не пахнет. В каком месте я туплю? Как оцениваешь мой выбор?

PS. Переход на висту конечно хорошо, но хотелось бы чтобы программа работала и под VISTA и под XP
Как ты мог догадаться, winpcap перехватывает пакеты, а собирать из них TCP-поток тебе придется самому 19.01.09 04:02  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
> Скачал с сайта библиотеку:
> http://www.winpcap.org/install/bin/WinPcap_4_0_2.exe
> Но почему-то у меня установилось только два файла:
> rpcapd.exe и Uninstall.exe. А lib и h файлами там и не
> пахнет. В каком месте я туплю?
Я ее собирал очень давно, так что не знаю в чем проблема, но тогда проблем у меня не было.

> Как оцениваешь мой выбор?
Субж. Того же можно добиться и через rawip насколько

> PS. Переход на висту конечно хорошо, но хотелось бы чтобы
> программа работала и под VISTA и под XP
А, так ты не для себя? Ну тогда, да. Надо поддерживать минимальную версию системы.
Вот здесь я нашёл инфу, что нужно скачать WpdPack: 19.01.09 04:10  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
Отредактировано 19.01.09 04:11  Количество правок: 1
<"чистая" ссылка> <обсуждение закрыто>
Вот здесь я нашёл инфу, что нужно скачать WpdPack:
http://forum.ishodniki.ru/index.php?topic=16229.0
Отсюда её скачал:
http://www.winpcap.org/archive/4.0beta2-WpdPack.zip
Так что с этим вопросом разобрался.

> Того же можно добиться и через rawip
А какой из этих двух способов быстрее работает и меньше ресурсов кушает? И где подводных камней меньше?

> а собирать из них TCP-поток тебе придется самому
А разве какой-то из перечисленных тобой способов позволяет обойти ручную сборку TCP?
Ну да, все кроме winpcap-а именно это и делают 19.01.09 04:50  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
Ясно, буду рыть в сторону LSP. 19.01.09 07:52  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
Отредактировано 19.01.09 10:11  Количество правок: 4
<"чистая" ссылка> <обсуждение закрыто>
Правда не совсем понятно, как LSP может собирать из TCP-пакетов готовые HTTP-пакеты. Проконтролируй, правильно ли я представляю себе работу с LSP?

Используя LSP я заменяю процедуры send и recv на свои (в них я сохраняю в лог необходимые мне TCP-пакеты и передаю управление на стандартные send и recv). А необходимые для мея пакеты - это HTTP и HTTPS ответы сервера, с которым общается клиент.

Полученные TCP-пакеты я вручную собираю и получаю полный HTTP-ответ сервера.

В процессе разбора с LSP натолкнулся на статью от майкрософта. И там пример был. Скомпилировать скомпилировался, но что-то не запускается. Может какой-нибудь ссылкой поделишься, где про LSP доходчиво и кратко написано?

PS. amirul, а мжешь что-нибудь сказать про PacketX?

Unraveling the Mysteries of Writing a Winsock 2 Layered Service Provider
Про PacketX сказать ничего не могу - первый раз слышу 19.01.09 19:52  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
> Используя LSP я заменяю процедуры send и recv на свои (в
> них я сохраняю в лог необходимые мне TCP-пакеты и передаю
> управление на стандартные send и recv). А необходимые для
> мея пакеты - это HTTP и HTTPS ответы сервера, с которым
> общается клиент.
Если клиент используют 3rd-party реализацию SSL/TLS (например OpenSSL), то про перехват https средствами LSP можно забыть (вернее можно попробовать позаимстововать идею из ettercap-а, но совсем не факт, что что нибудь получится)

> Полученные TCP-пакеты я вручную собираю и получаю полный
> HTTP-ответ сервера.
Это ж ты о send/recv сейчас? Нет там никаких TCP пакетов.

> В процессе разбора с LSP натолкнулся на статью от
> майкрософта. И там пример был. Скомпилировать
> скомпилировался, но что-то не запускается. Может
> какой-нибудь ссылкой поделишься, где про LSP доходчиво и
> кратко написано?
Нет, вот здесь к сожалению помочь ничем не могу.

> PS. amirul, а мжешь что-нибудь сказать
> про PacketX?
Субж
Тогда буду задавать более конкретные вопросы. 20.01.09 05:48  
Автор: Vedrus <Serokhvostov Anton> Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
Тогда буду задавать более конкретные вопросы.
Я в SDK нашёл сэмплы по LSP, но они не хотят компилиться. требуют вот эти файлы:

#ifndef _PSDK_BLD
#include <nt.h>
#include <ntrtl.h>
#include <nturtl.h>
#endif 

---

В частности они хотят структуру LPFN_TRANSMITPACKETS. Где мне сии блага добыть? Поди DDK поставить надо?
Хедеры вроде бы должны быть в PlatformSDK 20.01.09 06:34  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
> Тогда буду задавать более конкретные вопросы.
> Я в SDK нашёл сэмплы по LSP, но они не хотят компилиться.
> требуют вот эти файлы:
>
>
> #ifndef _PSDK_BLD
> #include <nt.h>
> #include <ntrtl.h>
> #include <nturtl.h>
> #endif 
> 

---
>
> В частности они хотят структуру LPFN_TRANSMITPACKETS. Где
mswsock.h

> мне сии блага добыть? Поди DDK поставить надо?
DDK для этого по любому не надо. Надо PSDK
1  |  2 >>  »  




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach