Вниз
Скачать: CL | DM;

Нумерация открытых хэндлов чужого процесса   Найти похожие ветки 

← →
FireHack ©   (2003-10-27 18:36) [0]

Всем привет!!!
Проблема следующая - было необходимо вывести список:
ip | port | Id процесса

с первыми 2-мя все просто (можно использовать GetTcpTable), но как определить id процесса, инициирующего соединение. Кто-то посоветовал пройтись по всем открытым хэндлам процессов, но, как это сделать, не сказал.

Вопрос: как это сделать

Всем спасибо.


← →
Digitman ©   (2003-10-28 11:04) [1]

я бы поступил проще

- устанавливаем любой глоб.хук
- в ходе иниц-ции хук-DLL перехватываем WinsockAPI-вызовы socket(), CloseSocket(), bind(), connect() - эти ф-ции дают инф-цию о хэндлах создаваемых гнезд и ассоциированных с ними интерфейсами/номерами портов
- в ходе той же инициализации вызываем GetCurrentProcessId для получения Id тек.процесса, в контексте которого возможно будут впоследствии вызываться вышеупомянутые ф-ции

т.о., ставится однозначное соответствие между Id процесса и Winsock-ресурсами, им занимаемыми/освобождаемыми в ходе работы

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

сама хук-ф-ция в теле хук-DLL может ничего полезного и не делать, просто вызывать в своем теле CallNextHookEx()


← →
FireHack ©   (2003-10-28 13:10) [2]

>> Digitman
Тогда для корректной работы тебе нужно запускать свою прогу ДО запуска всех приложений ака открытия сокетов, а мне необходимо иметь ТЕКУЩУЮ инфу об открытых сокетах.


← →
Digitman ©   (2003-10-28 16:27) [3]

копай в msdn в сторону интерфейса транспортного устройства (кл.слово "TDI")



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
1-86366
-=GaLaN=-
2003-12-15 15:19
2003.12.26
Регистрация, ловля и оправка сообщения


6-86470
Virus.exe
2003-10-28 12:25
2003.12.26
А чем они отличаются?


1-86412
Makhanev A.S.
2003-12-14 01:48
2003.12.26
Как принято


14-86519
NeyroSpace
2003-12-03 11:54
2003.12.26
Проапгрейтился... до коматоза


14-86508
noj
2003-12-04 12:40
2003.12.26
Возможно ли отключение винчестеров без RAID




   Наверх