Параллельное чтение сокета
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.217.9] |
|
|
Соблюдайте общие правила форума
MSDN Library
FAQ раздела
Поиск по разделу
Как правильно задавать вопросы
Параллельное чтение сокета
|
Сообщ.
#1
,
|
|
|
|
Добрый день. Возник вопрос, связанный с перехватом сообщений между клиентом и сервером. А точнее, надо просто получать те же самые сообщения, без модификации. Пробовал:
a) перехват recv и send, всё вроде бы работало, но постоянно возникала проблема с подгрузкой библиотеки в процесс. б) IOCTLsocket и иже с ним... Но на разных машинах эта технология, почему-то работает по-разному. Где-то перехватывает только входящий трафик, где-то только исходящий Ни у кого нет каких-нибудь примеров для решения подобного рода задач? Например создания чего-нибудь типа прокси. Или примеров использования Winpcap. Или какая-нибудь другая технология которая позволит осуществить параллельное чтение сокета |
|
Сообщ.
#2
,
|
|
|
|
Цитата quloya @ Например создания чего-нибудь типа прокси Цитата quloya @ Или примеров использования Winpcap Совсем разные вещи. Второго наверняка полно в сети, первое - вообще делается элементарно в любой библиотеке сетевых компонент. |
|
Сообщ.
#3
,
|
|
|
|
[QUOTE]Второго наверняка полно в сети[/QUOTE]
Не нашел ни одного реально работающего примера, поэтому и написал[QUOTE] [QUOTE]первое - вообще делается элементарно в любой библиотеке сетевых компонент[/QUOTE] Можете указать страничку, где можно прочитать, как применить эту технологию для моей задачи? При условии, что прокси нужен прозрачный |
|
Сообщ.
#4
,
|
|
|
|
Цитата quloya @ Не нашел ни одного реально работающего примера, поэтому и написал Плохо искал. http://www.winpcap.org/docs/docs_412/html/main.html, а также гугли "winpcap delphi". Цитата quloya @ Можете указать страничку, где можно прочитать, как применить эту технологию для моей задачи? При условии, что прокси нужен прозрачный Так бы сразу и сказал, что прозрачный нужен. Такого нету. Тут недавно кто-то делал перехват функций сокета, можешь пробежаться по темам. Также есть демки от Розыча |
|
Сообщ.
#5
,
|
|
|
|
Перехват функций сокета (recv и send) я сделал, он работает, но не нашел нормальный инжектор для систем x64, а инжектить хуком, не всегда удобно. По демкам Rouse_ и по его статьям я как раз этот перехват и писал, что же касается его снифферов, то на разных машинах работают по разному (как я уже писал выше) иногда ловит только входящие, иногда только исходящие "пакеты"
|
|
Сообщ.
#6
,
|
|
|
|
Цитата quloya @ на разных машинах работают по разному (как я уже писал выше) иногда ловит только входящие, иногда только исходящие "пакеты" Это виндовый прибамбас, к сожалению. В семерке поломали нормальный перехват. |
|
Сообщ.
#7
,
|
|
|
|
Тогда всё-таки придётся делать перехват API. Тогда другой вопрос, встречал ли кто-нибудь инжектор под x64 системы? А то, все, что я пробовал писать или скачивать, так и не заработало. CreateRemoteThread стабильно возвращает NULL на x64 системах.
|
|
Сообщ.
#8
,
|
|
|
|
Цитата quloya @ CreateRemoteThread стабильно возвращает NULL на x64 системах. Что значит "стабильно"? Для каких процессов - 1) одной разрядности или разной, 2) системных\не_системных? |
|
Сообщ.
#9
,
|
|
|
|
1) разрядность целевого процесса, как ни странно, не имеет значения
2) процесс не системный, выполняется под пользовательской учётной записью. У инжектора есть права админа и привилегии отладчика. |