摘要: 在應用層,枚舉進程及其通信端口一般可以用iphlpapi.dll中提供的函數(shù)來獲取。如獲取Tcp連接,則調用GetTcpTable或者AllocateAndGetTcpTableFromStack來查詢。這些API都是通過調用NtDeviceIoControlFile這個NativeAPI來進入內核查詢信息的,如果在內核用SSDT Hook來掛鉤此函數(shù),從而隱藏特定的IP、端口信息的話,那么在應用層,常規(guī)的查詢方法就查不到隱藏的端口了。
本文通過直接向設備對象\Device\Tcp發(fā)送IOCTL Code=IOCTL_TCP_QUERY_INFORMATION_EX的命令,直接獲取進程,端口信息。本文也同時實現(xiàn)了UDP端口的查詢。
具體請參考下面的代碼,使用WinDDK 6001.18001編譯。
閱讀全文
posted @
2010-07-09 18:28 水 閱讀(6030) |
評論 (3) |
編輯 收藏