生活随笔
收集整理的這篇文章主要介紹了
CrackMe 破解能力测试等级2的注册代码定位及爆破
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
以下同樣是辛大神所述:
?我還是很懶的,能爆破的就爆破
CrackMe 2 的難度在于沒有的敏感字符串以及敏感函數(shù)的檢測,提示字符串徹徹底底沒了,可是敏感函數(shù)我就呵呵了,那就是常用的一個函數(shù)UpdateData,MSDN給的解釋就是把輸入的內(nèi)容更新到變量里去,還有某些字符串函數(shù)。
算了,要是撇開這個不談,就是要上調(diào)試器下段了
OllyDbg很強(qiáng)大,Message breakpoint on classproc 就可以給按鈕下段,事先查殼也沒有,再給.text就是代碼段下段就好,來回單步步入反復(fù)幾次不難找到注冊代碼。。
既然都上調(diào)試器了,就懶得去分析,直接爆破算了,輸入了用戶名密碼
NAME:DANTENGJUN
SERIAL:22222222
注冊算法處已經(jīng)被我下段
單步跟進(jìn)唄
.text:00401581 push 1
.text:00401583 mov ecx, ebx
.text:00401585 stosb
.text:00401586 call ?UpdateData@CWnd@@QAEHH@Z ; CWnd::UpdateData(int)
.text:0040158B lea ecx, [ebx+74h]
.text:0040158E call ds:??B?$CSimpleStringT@D$00@ATL@@QBEPBDXZ ; ATL::CSimpleStringT<char,1>::operator char const *(void)
.text:00401594 lea edx, [esp+10h]
.text:00401598
.text:00401598 loc_401598: ; CODE XREF: .text:004015A0j
.text:00401598 mov cl, [eax]
.text:0040159A inc eax
.text:0040159B mov [edx], cl
.text:0040159D inc edx
.text:0040159E test cl, cl
.text:004015A0 jnz short loc_401598 ; 這里不符合算法是個死循環(huán)。。果斷改掉
.text:004015A2 mov al, [esp+16h]
.text:004015A6 test al, al
.text:004015A8 jnz short loc_4015FA
.text:004015AA mov dl, [esp+15h]
.text:004015AE test dl, dl
.text:004015B0 jz short loc_4015FA ; 很明顯跳到下面會over,改掉。。
.text:004015B2 mov eax, [ebx+78h]
.text:004015B5 cmp eax, 186A0h
.text:004015BA jl short loc_4015FA
.text:004015BC movsx esi, byte ptr [esp+12h]
.text:004015C1 movsx ecx, byte ptr [esp+11h]
.text:004015C6 movsx edi, byte ptr [esp+14h]
.text:004015CB add ecx, esi
.text:004015CD movsx esi, byte ptr [esp+10h]
.text:004015D2 add ecx, esi
.text:004015D4 movsx esi, byte ptr [esp+13h]
.text:004015D9 movsx edx, dl
.text:004015DC add esi, edi
.text:004015DE add esi, edx
.text:004015E0 cdq
.text:004015E1 mov edi, 3E8h
.text:004015E6 idiv edi
.text:004015E8 cmp ecx, eax
.text:004015EA jnz short loc_4015FA ; 改掉
.text:004015EC cmp esi, edx
.text:004015EE jnz short loc_4015FA ; 接著改
.text:004015F0 mov eax, [ebx]
.text:004015F2 mov ecx, ebx
.text:004015F4 call dword ptr [eax+154h]
.text:004015FA
.text:004015FA loc_4015FA: ; CODE XREF: .text:004015A8j
.text:004015FA ; .text:004015B0j ...
.text:004015FA mov ecx, [esp+94h]
.text:00401601 call sub_401A49
.text:00401606 pop edi
.text:00401607 pop esi
.text:00401608 pop ebx
.text:00401609 mov esp, ebp
.text:0040160B pop ebp
.text:0040160C retn
?于是結(jié)果很明顯
總結(jié)
以上是生活随笔為你收集整理的CrackMe 破解能力测试等级2的注册代码定位及爆破的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。