ximo 发表于 2010-7-31 17:48

crackme test

本帖最后由 ximo 于 2010-8-2 22:48 编辑

U(V+M),先玩,后发教程。
算法部分没U,算法也很简单,仅仅是示例。

以下方法请忽略:
bp MessageBoxA,断下后看堆栈
0012F790   73D8DE23/CALL 到 MessageBoxA 来自 mfc42.73D8DE1D
0012F794   000F0A2C|hOwner = 000F0A2C ('cm',class='#32770')
0012F798   00403020|Text = "no"
0012F79C   00383F70|Title = "crackme"
0012F7A0   00000000\Style = MB_OK|MB_APPLMODAL

找到0012F798   00403020|Text = "no"
数据窗口转存
004030206E 6F 00 00 79 65 73 00 00 00 00 00 00 00 00 00no..yes.........
0040303001 00 00 00 00 00 00 00 20 22 40 00 01 00 00 00....... "@....
修改
0012F798   00403020|Text = "no"
为00403024
显示yes

其余的,请踊跃讨论。

降低难度,开源,对照源码进行破解练习。

int RegCode(char* szInput)
{
int len=strlen(szInput);
int sum=0;
if (len==0)
{
return 0;
}
for (int i=0;i<len;i++)
{
      sum+=szInput;
}
return sum;
}
void CCmDlg::OnButton1()
{
// TODO: Add your control notification handler code here
char szInput={0};
GetDlgItemText(IDC_EDIT1,szInput,255);
if (RegCode(szInput)==2012)
{
MessageBox("yes");
}
else
{
MessageBox("no");
}
}

monnyabc 发表于 2010-7-31 17:53

Unpackme比较贴切

ximo 发表于 2010-7-31 17:54

回复 2# monnyabc


    非也,根本没加外壳。

monnyabc 发表于 2010-7-31 17:56

本帖最后由 monnyabc 于 2010-7-31 17:57 编辑

回复 3# ximo

可我NOD32杀软提示有 VMPROTECT.AAD

ximo 发表于 2010-7-31 17:59

回复 4# monnyabc

看内容,U(V+M),杀软肯定报的欢。
要发脱壳练习,可以去玩XP,http://www.52pojie.net/thread-51624-1-1.html

server@qq.com 发表于 2010-7-31 18:02

加了VM还没加壳?

ximo 发表于 2010-7-31 18:06

本帖最后由 ximo 于 2010-7-31 18:07 编辑

看来对VMP都不了解。有必要简单的科普下
VMP是个虚拟机代码保护系统,不过他包含2种内容:
1.VMP,有他自己的外壳,这就是VMP壳,不过,只是壳而已。
2.VM,是对代码进行保护,也就是平常说的虚拟机代码保护。

看清楚内容:
U(V+M),先玩,后发教程。

Destiny 发表于 2010-7-31 18:14

本帖最后由 Destiny 于 2010-7-31 18:15 编辑



猥琐的玩了下

yasas 发表于 2010-7-31 18:16

hhh2009 发表于 2010-7-31 18:16

看到V+M不敢下载了。
页: [1] 2 3 4
查看完整版本: crackme test