Hook 系統服務隱藏埠

2021-03-31 08:57:00 字數 1424 閱讀 4617

主頁:

有時候寫程式,除錯程式真是一件非常有趣的事,就比如這次,蹦蹦跳跳,笑嘻嘻,意猶未盡的就把這個程式搞好了。

***stat 或者其他各種列舉埠的工具,比如fport,或者 sysinternals 的 tcpview,都是呼叫 iphlpapi.dll 中的 api 來完成埠的列舉。而 iphlpapi.dll 中的 api 最終是使用 zwdeviceiocontrolfile ,向裝置物件 device/tcp 發 ioctl_tcp_query_information_ex 來得到各種資訊的。於是我們只要hook相應的system service ,然後對得到的結果做一些處理,弄掉不希望出現的埠資訊就可以了。不過真正的問題在於,ioctl_tcp_query_information_ex 和埠相關的各種結構定義,引數含義目前都(大部分)是未公開,沒人知道的,也就是undocumented的。undocumented?? ring3除錯,我熟啊。ring0除錯,我熟啊。windows驅動,我熟啊。windows系統,我熟啊。我怕誰啊我。undocumented?? 爽,要的就是undocumented。

通過ring3除錯,分析iphlpapi.dll是如何使用 ioctl_tcp_query_information_ex 相關的各種引數,結合msdn中的一些資訊,於是很輕鬆的搞清了需要了解的結構。用我自己寫的awx建乙個vc的驅動專案,寫好了hook部分。

關於本例中使用的解決hook在各種windows版本下執行的方法,在很多地方很多地方都出現了,我不清楚最早是誰想出來的,我是在《undocumented windows nt》一書的原始碼中第一次看到這種方法的。

下面是實現原始碼,很簡單,我就不多說什麼了。

Hook 系統服務隱藏埠

主頁 http jiurl.yeah.日期 2004 03 30 有時候寫程式,除錯程式真是一件非常有趣的事,就比如這次,蹦蹦跳跳,笑嘻嘻,意猶未盡的就把這個程式搞好了。stat 或者其他各種列舉埠的工具,比如fport,或者 sysinternals 的 tcpview,都是呼叫 iphlpapi...

系統服務掛鉤 HOOK 2

下面主要以 為主 未經嚴格測試,僅供學習參考 實現了 1 保護檔案 目錄不被刪除 2 隱藏檔案 目錄 3 隱藏程序 4 保護程序不被結束 5 保護登錄檔鍵不被開啟 6 保護登錄檔鍵不被刪除 網上有幾篇文章介紹了部分功能,並提供的原始碼。所以我主要把對原始碼的理解寫下來,並對原始碼做簡化,更利於理解。...

系統服務掛鉤 HOOK 1

不僅win32 api可以掛鉤,系統服務也可以掛鉤。開發者為了捕獲各種事件,可以掛鉤檔案建立函式createfile,登錄檔訪問函式regcreatekey。使用掛鉤可以改變作業系統的行為,只要適當地改變掛鉤的資料結構和上下文,足夠引起新的行為。例如,通過掛鉤ntcreatefile系統服務,可以保...