首页
社区
课程
招聘
[求助]菜鸟学Crack,请问我该从那里开始?
发表于: 2005-4-28 09:00 4339

[求助]菜鸟学Crack,请问我该从那里开始?

2005-4-28 09:00
4339
我买了《加密与解密》,但我还是不了解怎样学习,请问经验丰富的大侠们,我应该从那里开始?是先学习静态的还是动态的?先从什么工具入手?

我听人说OD怎么怎么强大,IDA怎么怎么好,可是我真把他们下载下来却对着它们乱糟糟的一大堆窗口和汇编代码茫茫然不知所措。有没有人愿意教教我呀?

我自己用delphi写了一个简单的小CrackMe,可是却不会Crack,有没有人愿意给我简单的讲一下怎样crack这个crackme?万分感谢!

CrackMe的下载地址:
1feK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6i4N6Z5M7$3S2W2L8Y4y4Z5K9g2)9J5k6h3y4G2L8g2)9J5c8U0V1&6x3o6y4Q4x3V1k6U0M7X3q4U0K9%4c8W2M7%4c8Q4x3X3g2J5j5i4t1`.

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 229
活跃值: (70)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
2
静态反汇编就行了,然后查找出错信息。
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00463105(U)
|
:00463122 8D55F0                  lea edx, dword ptr [ebp-10]
:00463125 8B83FC020000            mov eax, dword ptr [ebx+000002FC]
:0046312B E88403FDFF              call 004334B4
:00463130 8B45F0                  mov eax, dword ptr [ebp-10]
:00463133 8D55F4                  lea edx, dword ptr [ebp-0C]
:00463136 E801FFFFFF              call 0046303C                〈--------------算法CALL,进去看看
:0046313B 8B45F4                  mov eax, dword ptr [ebp-0C]

* Possible StringData Ref from Code Obj ->"124439"        <-----------------和它比较,相等就注册成功啦
                                  |
:0046313E BAF8314600              mov edx, 004631F8
:00463143 E8A411FAFF              call 004042EC                <------------------比较CALL
:00463148 751C                    jne 00463166                <------------------NOP
:0046314A 8B8308030000            mov eax, dword ptr [ebx+00000308]
:00463150 B201                    mov dl, 01
:00463152 E87D02FDFF              call 004333D4
:00463157 8B8310030000            mov eax, dword ptr [ebx+00000310]
:0046315D B201                    mov dl, 01
:0046315F E87002FDFF              call 004333D4
:00463164 EB24                    jmp 0046318A

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00463148(C)
|

* Possible StringData Ref from Code Obj ->"PassWord invalid!"        <--------出错信息
                                  |
:00463166 B808324600              mov eax, 00463208
:0046316B E8644CFCFF              call 00427DD4
:00463170 8B8308030000            mov eax, dword ptr [ebx+00000308]
:00463176 33D2                    xor edx, edx
:00463178 E85702FDFF              call 004333D4
:0046317D 8B8310030000            mov eax, dword ptr [ebx+00000310]
:00463183 33D2                    xor edx, edx
:00463185 E84A02FDFF              call 004333D4

**********************算法CALL***************************

* Referenced by a CALL at Addresses:
|:00463136   , :004632BB   
|
:0046303C 55                      push ebp
:0046303D 8BEC                    mov ebp, esp
:0046303F 51                      push ecx
:00463040 53                      push ebx
:00463041 8BDA                    mov ebx, edx
:00463043 8945FC                  mov dword ptr [ebp-04], eax
:00463046 8B45FC                  mov eax, dword ptr [ebp-04]
:00463049 E84213FAFF              call 00404390
:0046304E 33C0                    xor eax, eax
:00463050 55                      push ebp
:00463051 6886304600              push 00463086
:00463056 64FF30                  push dword ptr fs:[eax]
:00463059 648920                  mov dword ptr fs:[eax], esp
:0046305C 8B45FC                  mov eax, dword ptr [ebp-04]
:0046305F E8F84EFAFF              call 00407F5C                <-------把输入的10进制数值转换成16进制数,记为A
:00463064 3557040000              xor eax, 00000457        <-------A 然后和457H 异或,得 B
:00463069 8BD3                    mov edx, ebx
:0046306B E8B04DFAFF              call 00407E20                <-------把B 再转换为10进制数
:00463070 33C0                    xor eax, eax
:00463072 5A                      pop edx

总结:        把你输入的数值转换为16进制数,记为A;
        和457H进行异或,得 B;
        把B 再转换为10进制数,得 C;
        C 和10进制数124439 比较,是否相等。
2005-4-28 12:08
0
雪    币: 442
活跃值: (1246)
能力值: ( LV12,RANK:1130 )
在线值:
发帖
回帖
粉丝
3
自己写的CarckMe调试应该很得心应手得吧?
2005-4-28 12:15
0
雪    币: 232
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
反汇编,修改跳转
2005-4-28 15:02
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
那么拿过一个程序来,我怎么能知道应该用静态反汇编还是动态反汇编呢?
2005-4-28 15:47
0
雪    币: 442
活跃值: (1246)
能力值: ( LV12,RANK:1130 )
在线值:
发帖
回帖
粉丝
6
简单的静态(汇编功底要强哦),复杂的需要动态调试,其实没什么区分标准的啦。
2005-4-28 16:41
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
我看了2楼的破解教程,我知道是用静态反汇编然后查找错误提示信息,然后分析错误信息附近的汇编代码找到破解的方法,但是如果错误信息不是一个字符串怎么办?比如说事先做好一个图片存在程序中,当密码验证错误的时候就显示这个图片,再或者错误信息是动态创建的,那我应该怎么办??
2005-4-28 17:26
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
大家帮帮我,谢谢了
2005-4-30 08:10
0
游客
登录 | 注册 方可回帖
返回