![]() |
|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
![]() ![]() |
|
主題工具 | 顯示模式 |
|
![]() |
#1 (permalink) |
管理版主
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() 可看出 ntdll與卡巴相沖
一般來說會選擇重開機再試一次 再不行換個卡巴版本 要追蹤程式狀況的話 windbg 不能分析 dll 所以這裡建議用功能比較強的 OllyDbg 打開 ntdll.dll 後可發現其啟始地址就是 7c920000 既然 ExceptionAddress 是 7c930de3 哪請 goto那一個地址 可看到 機械碼是 CMP DX,WORD PTR DS:[EAX] 此時不知當時的 EAX暫存器 的內容 所以 ... 至於 ExceptionCode: c0000005 (Access violation) 的 c0000005 是什麼意思呢 ? 後面的刮號就告知了 Access violation 那什麼是Access violation錯誤 (違法存取)? 這裡從 google 得知 : 當你運行程式得到了一個AV(Access Violation)錯誤的時候,這意味著你的程式正在試圖訪問一塊不再有效的內存(記憶體),請注意我所提到的「不再」有效。大多數的情況下,出現這個錯誤要麼是因為你試圖訪問一塊已經被釋放的內存,要麼是想使用一個還未創建對象的指針(指標)。 所以 CMP DX,WORD PTR DS:[EAX] 為何出錯就明了一半了 因為 DS:[EAX] 這個位址已屬於 不可存取區域了 那可發現到一行 READ_ADDRESS: 02990580 (翻成十六進位是 2DA1F4) 原來就是指 EAX 也就是 資料節區 0x2DA1F4 是不可存取的(不存在的) 大概就是這樣... (要繼續下去的話 還要分析 prloader.dll) ※DS 是資料節區暫存器,程式中較有意義的資料都放在此,比如字串、數值... 不可存取 有可能是 保護位址 或 EAX提供錯誤的位址 說真的 這種東西是給系統分析員用的 看你程式哪裡怎麼樣 什麼的... 當然也有人是拿來做破解 什麼的... 先申明一下 以上都是臨時自己揣測,是否正確 ... |
![]() |
送花文章: 2055,
![]() |