我有一個Windows EXE應用程序,用於發送數據包到服務器清除。這個應用程序(讓它稱爲客戶端應用程序)肯定是密切的來源,但一些聰明的黑客十六進制編輯二進制文件,並使它發送數據包加擾。如何在Windows應用程序中反向工程加密的數據包?
顯然,這些數據包是以可破譯的方式加密的(否則服務器將無法理解它),但我想要做的是編寫一個仿真器來模擬這個二進制應用程序,相同的數據包到服務器,並能夠解讀響應(如果它是擾碼)。
十六進制的客戶端需要一個額外的dll才能運行,而舊客戶端則不需要。我假設不知何故十六進制客戶端設法加載該DLL(讓我們稱之爲client.dll)和該DLL的功能是實現加擾/解擾,通過掛接到一些窗口API重新路由所有數據包發送client.exe進程。
如果有人能指導我如何開始研究這一切如何工作,以及如何對逆向工程進行逆向工程,那將是非常值得讚賞的。
我不知道要提供什麼樣的信息,但如果有任何缺失,只需回覆,我會發布更多的細節,如果有人想要二進制文件,我很樂意提供它。
任何利害關係方二進制下載:
http://dl.getdropbox.com/u/46623/client.dll
http://dl.getdropbox.com/u/46623/newClient.exe
http://dl.getdropbox.com/u/46623/originalClient.exe
這些慣於因爲資源文件都需要運行 - 他們是約3演出,所以任何地方都不能上傳。名稱已更改爲保護有罪=),但這可能不會保護dll的名稱...
謝謝提供的幫助 - 我可以肯定的上傳二進制文件和dll,如果你喜歡,但是如果沒有支持的資源文件,它就會出現在一個龐大的3gigs上(畢竟它是一個遊戲客戶端) )。不,我沒有試圖欺騙,只是想模仿客戶。 – Chii 2009-02-13 09:37:45