1. 程式人生 > >win10 64位SSDT函數索引動態查找

win10 64位SSDT函數索引動態查找

acc 反匯編 ecb fun 動態 ESS shadow set exports

在win10 64位下SSDT是不導出的。同時如果你要hook某個函數時你要知道他的索引,以前都是調試或者網上找然後硬編碼進去。這裏動態找。
原理是上層調用的所有函數都經過ntdll 然後進入0環,進入0時ntdll模塊裏面很定有索引啊,因此去ntdll找到對應函數的代碼,就能找到對應的索引。
第1步先把ntdll 讀入內存。
技術分享圖片
查看內存
技術分享圖片
開始動態查找 進入GetFunctionAddress
技術分享圖片
先找到ssdt
技術分享圖片
進入GetExportSsdtIndex
技術分享圖片
進入GetExportOffset找到函數對應在ntdll中的偏移。(函數代碼起始地址)
找到函數名
技術分享圖片
找到函數偏移
技術分享圖片
查看反匯編
技術分享圖片
通過匯編特征算出index
技術分享圖片
就可以找到索引了
技術分享圖片
算出地址
技術分享圖片
後面可以寫個遍歷ssdt !!!!!
源碼:
https://github.com/haidragon/DriverInjectDll

win10 64位SSDT函數索引動態查找