易語言3.5很暗的暗樁分析:)
標 題:易語言3.5很暗的暗樁分析:)
發信人:linson
時 間:2003年11月08日 10:36
詳細資訊:
這個程式很多人破解不成功其實是因為它發現你修改了他 :lol:
作者的方法是檢測程式執行後程式碼段校驗和是否為作者預先設定好的,不是就無聲無息的編譯垃圾出來:twisted:這個是他的發現你修改它程式碼的程式碼(有點繞口),可以透過構造資料(CRC)或者爆破掉這個樁子。
同時很佩服作者呀 :wink:
.text:004BDD50 ; 記憶體程式碼段校驗
.text:004BDD50
.text:004BDD50 MemoryCodeCheck proc near ; CODE XREF: .text:00454AA6p
.text:004BDD50 push ebx
.text:004BDD51 push ebp
.text:004BDD52 mov ebp, ecx
.text:004BDD54 push esi
.text:004BDD55 push edi
.text:004BDD56 push 4 ; DataSize = 0x4(DWORD)
.text:004BDD58 mov edi, [ebp+68h] ; ImageBase -> EDI
.text:004BDD5B push edi ; DataAddress = 0x00400000
.text:004BDD5C call ds:IsBadReadPtr ; IsBadReadPtr
.text:004BDD62 test eax, eax
.text:004BDD64 jnz short loc_4BDDC5 ; IsBadReadPtr返回不為0直接返回
.text:004BDD66 mov eax, [edi+3Ch] ; DOS Stub -> EAX
.text:004BDD69 xor ecx, ecx
.text:004BDD6B add eax, edi ; PE Header -> EAX
.text:004BDD6D mov ebx, dword_533C88 ; 預設校驗和 -> EBX
.text:004BDD73 xor esi, esi
.text:004BDD75 mov cx, [eax+14h] ; File Header -> CX
.text:004BDD79 lea edx, [ecx+eax+18h] ; Section Name -> EDX
.text:004BDD7D xor ecx, ecx
.text:004BDD7F mov cx, [eax+6] ; NumberOfSections -> CX
.text:004BDD83 test ecx, ecx
.text:004BDD85 jle short loc_4BDDC5 ; NumberOfSections不大於0直接返回
.text:004BDD87 mov eax, 20000000h ; 0x20000000 -> EAX
.text:004BDD8C
.text:004BDD8C loc_4BDD8C: ; CODE XREF: MemoryCodeCheck+47j
.text:004BDD8C test [edx+24h], eax
.text:004BDD8F jnz short loc_4BDD9E ; Characteristics不為0x20000000則為程式碼段
.text:004BDD8F ; 跳到校驗部分
.text:004BDD91 add edx, 28h
.text:004BDD94 inc esi ; 計數器自加
.text:004BDD95 cmp esi, ecx ; 沒有取完節迴圈
.text:004BDD97 jl short loc_4BDD8C
.text:004BDD99 pop edi ; 沒有找到程式碼段返回
.text:004BDD9A pop esi
.text:004BDD9B pop ebp
.text:004BDD9C pop ebx
.text:004BDD9D retn
.text:004BDD9E ; 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪?
.text:004BDD9E
.text:004BDD9E loc_4BDD9E: ; CODE XREF: MemoryCodeCheck+3Fj
.text:004BDD9E mov ecx, [edx+0Ch]
.text:004BDDA1 mov eax, [edx+8]
.text:004BDDA4 add ecx, edi
.text:004BDDA6 push eax
.text:004BDDA7 push ecx
.text:004BDDA8 call CRC32_hash ; 進行迴圈冗餘校驗
.text:004BDDAD mov edx, [ebp+674h]
.text:004BDDB3 add esp, 8 ; 清理堆疊
.text:004BDDB6 cmp eax, [ebx+edx*4] ; 比較記憶體程式碼校驗和與預設的是否符合
.text:004BDDB9 jz short loc_4BDDC5 ; 勝利
.text:004BDDBB or dword ptr [ebp+77Ch], 938Fh ; 往下就不好玩了:(
.text:004BDDC5
.text:004BDDC5 loc_4BDDC5: ; CODE XREF: MemoryCodeCheck+14j
.text:004BDDC5 ; MemoryCodeCheck+35j ...
.text:004BDDC5 pop edi
.text:004BDDC6 pop esi
.text:004BDDC7 pop ebp
.text:004BDDC8 pop ebx
.text:004BDDC9 retn
.text:004BDDC9 MemoryCodeCheck endp
---
written by linson
相關文章
- 簡易C語言文法分析2020-04-04C語言
- 中文程式語言——易語言,到底是用來幹什麼的?易語言值得學習嗎?易語言的優勢有什麼?2021-01-04
- C語言:一種高效、易學的程式語言2021-02-04C語言
- 易語言進階2017-12-04
- 手動脫殼ASProtect 1.23beta21之Aspack2.12的主程式and暗樁分析2015-11-15
- 易語言-API點選滑鼠2013-12-09API
- VideoSplitter V2.31 脫殼去暗樁+完美爆破2015-11-15IDE
- UltraEdit32 v10找註冊碼+去暗樁2015-11-15
- 易語言執行js的兩種方式2024-04-02JS
- Go語言的前景分析2018-05-26Go
- e/易語言 加執行緒2024-03-29執行緒
- 易語言連結資料庫2024-04-05資料庫
- Go 語言的詞法分析和語法分析(1)2021-03-23Go詞法分析語法分析
- 分析C語言的宣告(2)2018-07-28C語言
- C語言簡易三子棋2018-10-18C語言
- 易語言程式――網神通 V1.892003-09-07
- Go 語言效能分析2019-11-14Go
- Go語言實現的簡易TCP通訊框架2014-10-22GoTCP框架
- Python語言的優劣分析2021-09-11Python
- C++ 語言特性的效能分析2009-05-18C++
- 使用易語言COM物件取檔案版本2020-04-05物件
- 易語言實現一個登入程式2018-10-28
- JSP語言做簡易留言板2017-11-11JS
- 易語言.飛揚官方技術部落格2013-07-02
- 彗星HTTP操作支援庫 - 易語言支援庫2013-06-22HTTP
- 易語言陣列 ,索引從 1 開始。2024-04-03陣列索引
- 易語言------精科電腦算命V3.4版註冊演算法分析2015-11-15演算法
- Go 語言的詞法分析和語法分析(2)—Import宣告的解析2021-03-26Go詞法分析語法分析Import
- Python2 解密易語言DES加密的密文2021-09-09Python解密加密
- C語言實現一個簡易的Hash table(7)2019-02-03C語言
- ASF-AVI-RM-WMV Repair V1.41 脫殼去暗樁+漢化完美爆破2015-11-15AI
- ASProtect 1.23 SDK之 Aspack2.12r 主程式脫殼去暗樁2015-11-15
- 隻言片語分析datapump的工作原理2016-11-03
- 【易語言】編輯框讀取txt檔案2024-09-20
- 安全是一門語言的藝術|威脅調查分析語言概述2021-04-21
- 修理柵欄;及排列木樁分析2013-08-26
- 排列木樁;及模糊距離分析2013-08-19
- R語言-Survival analysis(生存分析)2019-05-31R語言