2011-04-29 87 views

回答

1

區域設置存儲在TEB,那麼你就必須能夠與PROCESS_VM_READ權利和THREAD_QUERY_INFORMATION線程打開過程,然後調用的OpenThread()+ NtQueryInformationThreadThreadBasicInformation),然後獲得THREAD_BASIC_INFORMATION的TEB地址並用ReadProcessMemory()讀取它。

所有這一切都是無證,並可能隨時更改,您還需要處理WOW64等等

+0

當然,除非線程被掛起,否則在調用ReadProcessMemory之後,語言環境可能會發生變化! – Anders 2011-04-29 11:19:12

+0

優秀信息,謝謝你! – huseyint 2011-04-29 19:58:09

0

這裏沒有API調用。假設您無法修改目標應用程序以按需提供信息,那麼我能看到的唯一解決方案就是全局掛鉤。這使您可以將代碼注入有問題的線程。

+0

是的,我沒有任何機會修改目標應用程序。 – huseyint 2011-04-29 19:58:50

相關問題