免费教程_免费网赚教程_破解版软件-寂涯网络学习基地

当前位置: 主页 > 系统综合 > 软件破解 > 对某crackme的写法的分析及注册机编写(3)

对某crackme的写法的分析及注册机编写(3)

时间:2012-02-23 13:17来源:未知 整理:寂涯网络 点击:


//处理 Serial      
00401194 |. 53 push ebx   
00401195 |. 56 push esi   
00401196 |. 8B7424 0C mov esi, dword ptr [esp+C] ',
/ /处理Name      
0040119A |. 57 push edi   
0040119B |. 33FF xor edi, edi  
0040119D |. 2BF1 sub esi, ecx  
0040119F |> 0FBE040E /movsx eax, byte ptr [esi+ecx] I
//取输入Name的首字符     
004011A3 | • 0FAFC0    imul eax,
eax ;//eax=eax*eax    
004011A6 |. 99 |cdq    ;//扩
展,方便做除法      
004011A7 |. BB 19000000 |mov ebx, 19  
004011AC |. F7FB | idiv ebx   I
//eax/ebx. 0 商在 eax中余数在edx中    
004011AE |. 0FBE01 |movsx eax, byte ptr [ecx] I
//取第一个3打1&1字符     
004011B1 |. 83C2 41 | add edx, 41  I
//eax%0xl9+0x41      
004011B4 |. 3BD0 | cmp edx, eax  ii
S&Name[i]*Name[i]%0xl9+0x41 =■■ =8虹1&1[1]?相等则继续循环比较,有一个不等则注册失败。
004011B6 I. 75 0C |jnz short 004011C4
004011B8 I. 47 | inc edi
004011B9 I. 41 | inc ecx
004011BA I. 83FF 05 | cmp edi, 5 ;
//全部6个字符
004011BD I. ^ 7E E0 \jle short 0040119F
004011BF I. E8 9CFFFFFF call 00401160 ;
//再次处理。
004011C4 I> 5F pop edi
004011C5 I. 5E pop esi
004011C6 I. 5B pop ebx
004011C7 V C3 retn 
因为在这次算法处理后又做了一次处理,跟进去后发现是成功的提示.由上面算法我们可以得出类似如下处理:Serial[i] = Name[i]*Name[i]%0x[9+0x4].由此我们将这个Crackme的注册流程以及算法部分彻底弄清楚了。
写出注册码,由上段落分析出的算法:Serial[i] = Name[i]*Name[i]%0x[9+0x4]推算出一组注册码,Name: AAAAAA; Serial: AAAAAA
写出注册机,货为算法分析出来了,所以就比较容易写出注册机了,贴下代码:
#include <string. h> 
#include <stdio. h> 
#define MAX 100 
void pass(char *Name, char *Serial)

i
int a,b, sum; int i=0; 
//for循环内是逆向算法的核心 
for(i=0;i<6;i++)

\
sum = Name[i]*Name[i]; 
a = sum/25; 
b = sum%25;
Serial[i] = b+0x41;
}
printf(^Serial %s\n〃, Serial);

 
main ()
char Name[MAX]="\0"; char Serial[MAX]="\0〃; while(strlen(Name) < 6)
{
printf("At least 6 bytes\n"); printfCName,); scanf("%s' Name);
}
pass(Name, Serial); scanf (〃%s〃,Name); return 0;
注册机写出来了进行一下测试看看是不是可以。
\学习资料\汇振逆向\练习软件\完成逆向+注册机\待写11.5.6\
\t least 6 hytes ^ane:abcdef 3erial:JEBABE
You :are :i great cracker/hacker!
Crackle by bitt
Name: abcdef
Serial: |JEBABE TEST
总结
Crackme逆向之旅就算是完成了,对于陌生的汇编指令一定要多加掌握,做一个cracker是要付出很大的努力的。当看到一个分析清楚地代码时也许觉得很简单,可是在一片迷茫、甚至布满了迷惑人的指令的时候那不断尝试的过程的辛苦,是很难被理解。

本页地址 http://www.jybase.net/ruanjianpojie/20120223782.html

百度搜索更多

谷歌搜索更多

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------

评价:
昵称: 验证码:点击我更换图片
推荐内容
赞助商
赞助商


关于本站免责声明视频更新google百度地图视频地图RRS订阅

如有什么问题请在本站留言,或发邮件到 hxt167#foxmail.com