我想在windbg中的內核模式調試器中設置一個內存斷點如何在windbg內核模式下設置內存斷點?
我希望調試器在每次使用內核調試器命中usermode中的特定模塊時中斷。
,但我讀的地方它不可能設置,以使內存斷點我必須寫一個插件,使其
我試圖用SDbgExt插件用!vprotect命令,但它沒有設置內存BP
如果我必須寫一個插件,以便在內核模式內存BP它必須是一個驅動程序嗎?
我已經閱讀了Windows內部書中的一些章節,但它根本沒有幫助我。
我找不到太多的信息如何下手對付它
我想在windbg中的內核模式調試器中設置一個內存斷點如何在windbg內核模式下設置內存斷點?
我希望調試器在每次使用內核調試器命中usermode中的特定模塊時中斷。
,但我讀的地方它不可能設置,以使內存斷點我必須寫一個插件,使其
我試圖用SDbgExt插件用!vprotect命令,但它沒有設置內存BP
如果我必須寫一個插件,以便在內核模式內存BP它必須是一個驅動程序嗎?
我已經閱讀了Windows內部書中的一些章節,但它根本沒有幫助我。
我找不到太多的信息如何下手對付它
您可以從內核模式設置用戶模式地址斷點。你應該注意的唯一一件事就是切換到正確的過程與「.process/I」命令
問題心不是設置斷點本身,問題是從內核模式中的所有區域設置內存斷點存取 心不是命令去做 – d4d
如果這是一個一次性的斷點 - 也就是說,你的內容與過程調試的破壞 - 使用e命令(編輯內存)清零整個模塊。把整個東西都設置爲cc(據我記憶,這是int 3)...零也可以。只要觸摸模塊的任何代碼,就會中斷。
下一步,請記住你在哪裏(相對於模塊)並設置合適的斷點。
希望有所幫助。
(編輯)你有完整的符號嗎?如果你這樣做,你嘗試BM模塊!*
我需要訪問一個內存斷點,INT 3(的0xCC)不會幫助我 ,因爲它以另一種方式工作,我不知道我想從哪裏調用的模塊中打破它的位置,唯一的辦法是在所有區域設置訪問的mem bp,例如I有一個地址 開始在6fd00000和地址結束在6ff00000。 我想在訪問這兩個範圍MEM BP之間設置,所以當它擊中我得到控制的地方,從那裏發生 看到我沒有對應用程序的符號 – d4d
聽起來像是你想設置一個「斷點訪問」,但不是指定的地址,你要指定一個範圍?我從來沒有看到它在windbg中完成。 BA斷點使用硬件調試寄存器,而不是像SW斷點那樣插入INT,所以這肯定是HW平臺特定的。 我一旦使用硬件調試器就已經在ARM芯片組上完成了這項工作。 ARM上的ETM允許您在地址範圍上設置觸發器。
歡迎詢問時回答的話,請更具體一點:你嘗試過什麼,你能指望什麼,等等。參見[如何提問](http://stackoverflow.com/help/how-to-問) – Nehal