На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Соблюдайте общие правила форума
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
Указывайте точные версии Delphi и используемых сетевых библиотек.

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

Внимание:
попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
Повторная попытка - 60 дней. Последующие попытки бан.
Мат в разделе - бан на три месяца...

Полезные ссылки:
user posted image MSDN Library user posted image FAQ раздела user posted image Поиск по разделу user posted image Как правильно задавать вопросы


Выразить свое отношение к модераторам раздела можно здесь: user posted image Krid, user posted image Rouse_

Модераторы: Krid, Rouse_
  
> Параллельное чтение сокета
    Добрый день. Возник вопрос, связанный с перехватом сообщений между клиентом и сервером. А точнее, надо просто получать те же самые сообщения, без модификации. Пробовал:
    a) перехват recv и send, всё вроде бы работало, но постоянно возникала проблема с подгрузкой библиотеки в процесс.
    б) IOCTLsocket и иже с ним... Но на разных машинах эта технология, почему-то работает по-разному. Где-то перехватывает только входящий трафик, где-то только исходящий

    Ни у кого нет каких-нибудь примеров для решения подобного рода задач? Например создания чего-нибудь типа прокси. Или примеров использования Winpcap. Или какая-нибудь другая технология которая позволит осуществить параллельное чтение сокета
      Цитата quloya @
      Например создания чего-нибудь типа прокси

      Цитата quloya @
      Или примеров использования Winpcap

      Совсем разные вещи. Второго наверняка полно в сети, первое - вообще делается элементарно в любой библиотеке сетевых компонент.
        [QUOTE]Второго наверняка полно в сети[/QUOTE]
        Не нашел ни одного реально работающего примера, поэтому и написал[QUOTE]
        [QUOTE]первое - вообще делается элементарно в любой библиотеке сетевых компонент[/QUOTE]
        Можете указать страничку, где можно прочитать, как применить эту технологию для моей задачи? При условии, что прокси нужен прозрачный
          Цитата quloya @
          Не нашел ни одного реально работающего примера, поэтому и написал

          Плохо искал. http://www.winpcap.org/docs/docs_412/html/main.html, а также гугли "winpcap delphi".
          Цитата quloya @
          Можете указать страничку, где можно прочитать, как применить эту технологию для моей задачи? При условии, что прокси нужен прозрачный

          Так бы сразу и сказал, что прозрачный нужен. Такого нету.

          Тут недавно кто-то делал перехват функций сокета, можешь пробежаться по темам. Также есть демки от Розыча
            Перехват функций сокета (recv и send) я сделал, он работает, но не нашел нормальный инжектор для систем x64, а инжектить хуком, не всегда удобно. По демкам Rouse_ и по его статьям я как раз этот перехват и писал, что же касается его снифферов, то на разных машинах работают по разному (как я уже писал выше) иногда ловит только входящие, иногда только исходящие "пакеты"
              Цитата quloya @
              на разных машинах работают по разному (как я уже писал выше) иногда ловит только входящие, иногда только исходящие "пакеты"

              Это виндовый прибамбас, к сожалению. В семерке поломали нормальный перехват.
                Тогда всё-таки придётся делать перехват API. Тогда другой вопрос, встречал ли кто-нибудь инжектор под x64 системы? А то, все, что я пробовал писать или скачивать, так и не заработало. CreateRemoteThread стабильно возвращает NULL на x64 системах.
                  Цитата quloya @
                  CreateRemoteThread стабильно возвращает NULL на x64 системах.

                  Что значит "стабильно"? Для каких процессов - 1) одной разрядности или разной, 2) системных\не_системных?
                    1) разрядность целевого процесса, как ни странно, не имеет значения
                    2) процесс не системный, выполняется под пользовательской учётной записью. У инжектора есть права админа и привилегии отладчика.
                    1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                    0 пользователей:


                    Рейтинг@Mail.ru
                    [ Script execution time: 0.0770 ]   [ 15 queries used ]   [ Generated: 22.09.26, 13:06 GMT ]