Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как перехватить API функции (Connect, Bind) и изменить их парамет [D7, WinXP]


Страницы:   1 2 3

MALAN ©   (2009-02-25 14:25:00) 

Некий процесс в системе хочет соединиться с XXX.XXX.XXX.XXX:YYYYY (IP:PORT), а для этого вызывает команду Connect с IP адресом и номером порта. Необходимо чтобы программа перехватчик изменила параметры команды Connect так чтобы если YYYYY = 25, то соединение перенаправлялось на локальный порт который слушает программа перехватчик, а отттуда уже изменённые данные отправлялись бы куда надо.

Перерыл много инфы, и хотя задача вроде бы не сложная, но в силу своей тупости и малого опыта ничего конкретного сделать не смог.
Насколько я понял есть несколько вариантов (изменение  Winsock.dll, сплайсинг), наиболее вменяемый это внедрение специальной DLL во все создаваемые процессы ( http://www.rsdn.ru/article/baseserv/InjectDll.xml).
Но как должна выглядеть эта DLL, чтобы она могла модифицировать комманду Connect, а оригинальную отправлять программе перехватчику?


Сергей М.   (2009-02-26 08:31:00) [41]


> не пакеты, а саму информацию


Информацию эту несут как раз те самые пакеты.

http://www.wasm.ru/article.php?article=netfilter


MALAN   (2009-02-25 21:14:00) [42]

Сергей М. ©   (25.02.09 20:53) [9]

>Ты действительно тупой или прикидываешься ?)

>Одно дело - совершенно штатным и легальным образом задействовать SMTP/>POP3/IMAP-фильтр на хосте-шлюзе в своей ЛВС

>И если тебе нужно просто подслушать трафик на лок.машине, то что-то >куда-то внедрять нет никакой необходимости - есть готовая легальная >проверенная WinPCap, она чудесно справляется со шпионскими делами

А я где-то написал что мне нужно просто "подслушать траффик"? Я же русским по белому пишу, нужно модифицировать информацию (заметьте, не пакеты, а саму информацию, в частности текст письма, добавлять заголовки) причём, прозрачно для почтовых программ, а для этого перехват лучше осуществлять на сеансовом уровне просто перенаправляя соединение, и программа эта должна находится не на шлюзе, а на локальной машине


Сергей М.   (2009-02-25 20:53:00) [43]


> MALAN ©   (25.02.09 20:35) [8]


> какая собственно разница?


Ты действительно тупой или прикидываешься ?)

Одно дело - совершенно штатным и легальнымобразом задействовать SMTP/POP3/IMAP-фильтр на хосте-шлюзе в своей ЛВС, мимо которого не пройдет ни один байт внешнего трафика, и совсем другое дело - заниматься ректальным внедрением всякого рода "шпионских" DLL во вс е подряд процессы, не имея при этом никакой гарантии успешности начатой кампании !

И если тебе нужно просто подслушать трафик на лок.машине, то что-то куда-то внедрять нет никакой необходимости - есть готовая легальная проверенная WinPCap, она чудесно справляется со шпионскими делами


MALAN   (2009-02-25 20:35:00) [44]

>Сергей М. ©   (25.02.09 20:20) [7]

А какая собственно разница? Перехват-то должен происходить на сеансовом уровне модели OSI и на той же самой локальной машине, структура сети не должна влиять на работу программы... работа программы-перехватчика должна быть похожа на реализацию атаки "человек-посередине" (ну т.е. посередине будет не человек, а программа, но принцип вообщем-то тот же)


Сергей М.   (2009-02-25 20:20:00) [45]

Вот я и спрашиваю - идет ли этот трафик непосредственночерез интерфейс провайдера или на пути к интерфейсу провайдера в сети имеется подконтрольный тебе шлюз и/или прокси ?


MALAN   (2009-02-25 20:12:00) [46]

>Сергей М. ©   (25.02.09 19:55) [5]

меня интересует только трафик идущий от/к программам запущенным на локальной машине, если ещё точнее, то почта


Сергей М.   (2009-02-25 19:55:00) [47]


> топология сети значения не имеет
>


Да ты что ?
А мужики-то и не знали ..

Как же не имеет, если, например, есть возможность доступа к интересующему трафику на подконтрольном шлюзе или прокси-серверу сети ?


MALAN   (2009-02-25 18:20:00) [48]

>Сергей М. ©   (25.02.09 15:41) [2]

>Клиент где находится, в корп. лок.сети или подключен непосредственно к >сети провайдера ?

всё находится на локальной машине, топология сети значения не имеет

>Anatoly Podgoretsky ©   (25.02.09 15:04) [1]

>Это называется файрвол.
>Говоришь не сложная задача, ну-ну.

Скорее уж прокси-сервер


Rouse_   (2009-02-25 17:33:00) [49]

Тут пример перехвата recv, wsarecv и wsarecvex через правку таблицы импорта, переделай на сплайсинг и на connect

http://forum.sources.ru/index.php?showtopic=86903


Сергей М.   (2009-02-25 15:41:00) [50]


> MALAN ©   (25.02.09 14:25)  


Клиент где находится, в корп. лок.сети или подключен непосредственно к сети провайдера ?


Anatoly Podgoretsky   (2009-02-25 15:04:00) [51]

> MALAN  (25.02.2009 14:25:00)  [0]

Это называется файрвол.
Говоришь не сложная задача, ну-ну.


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо