MXWXZ 发表于 2017-6-21 23:37

【CM】一只炒鸡简单的CM,欢迎新手挑战哦~

本帖最后由 MXWXZ 于 2017-6-22 21:20 编辑

闲得无聊写了个CM,无壳无花无污染,逻辑简单无需追码,欢迎各位新手挑战哦~


注意:提供破解后文件才算数~
小声说:爆破即可别想太多……追码能搞出来的请受在下一拜,以后您说东我绝不向西……{:17_1074:}




static/image/hrline/4.gif
下面公布答案,源码面前了无秘密@byh3025 @wjdxs1 :
UINT Check(LPVOID lpParameter);
BOOL CCrackMeDlg::OnInitDialog()
{
        CDialog::OnInitDialog();

        SetIcon(m_hIcon, TRUE);                        // Set big icon
        SetIcon(m_hIcon, FALSE);                // Set small icon
       
        // TODO: Add extra initialization here
        AfxBeginThread(Check,this);

        return TRUE;// return TRUEunless you set the focus to a control
}

void CCrackMeDlg::OnOK()
{
        // TODO: Add extra validation here
        UpdateData(TRUE);
        MD5 md5;
        md5.update(m_key.GetBuffer(0));
        m_key.ReleaseBuffer();
        CString md5ed=md5.toString().c_str();
        if(md5ed == "d6c508b6bc2c6914811aba4de27e81ad")
                MessageBox("别看了已经破解啦~");
}

UINT Check(LPVOID lpParameter)
{
        while(true){
                byte buf[] = "\x68\xF4\xD0\x42\x00";
                void* addr=(void*)0x4014A7;
                WriteProcessMemory(INVALID_HANDLE_VALUE,addr,buf,5,NULL);
                addr=(void*)0x4014C3;
                byte buf2[] = "\x75\x0E";
                WriteProcessMemory(INVALID_HANDLE_VALUE,addr,buf2,2,NULL);
                Sleep(200);
        }
        return 0;
}

看到了么?这个保护就是动态修改0x4014C3的那个跳转,而且很无耻的重开线程while无限改……{:17_1057:}初学者们需要另找破解思路(改RET等),大佬们就看看吧(直接段首JMP之类均可)
由于是“炒鸡简单”,这次我只是保护了一个跳转和一个md5密文字符串,大家以后可以试试动态生成汇编代码,保护整个函数等等方法……这样让人更摸不着头脑,明明改了为什么不生效@byh3025 :)

注:那个check线程需要前置声明然后放在后面,防止保护的地址发生变化= =

shizp 发表于 2017-6-22 01:00

MD5(name)=d6c508b6bc2c6914811aba4de27e81ad

南有乔木 发表于 2017-7-13 15:51

从textbox访问开始…换过一次保存位址
不过最关键的还是lstrcmp函数
一直追追追…到在关键的 jne 004014D3
没想到还有修改还有做检测…直接改汇编还会被改回来,有点厉害
最后我是用 jne 004014D3的上一行,直接jmp跳过他
才完成的,谢谢分享。

唯美孤独 发表于 2017-6-22 00:01

支持   虽然我不会哈哈哈

chenxiang 发表于 2017-6-22 07:27

shizp 发表于 2017-6-22 01:00
MD5(name)=d6c508b6bc2c6914811aba4de27e81ad

来个教程,谢谢

3683057 发表于 2017-6-22 08:13

支持   虽然我不会

SeriousSnow 发表于 2017-6-22 08:22

本帖最后由 wjdxs1 于 2017-6-22 08:24 编辑

搜索下字符串,,猜是 md5(注册码) = d6c508b6bc2c6914811aba4de27e81ad 具体没看
爆破 关键call mov eax,0 ret就搞定了

并不清楚为什么一定要提供破解文件猜算数,,,并木有啥保护啊好像

byh3025 发表于 2017-6-22 08:30


846530637 发表于 2017-6-22 08:42

你还行,算高手

byh3025 发表于 2017-6-22 09:03

更正下,我上面截图中修改的那个地方保存后还是未破解,要改上面那个CALL的返回值为0,附件是正确的

Railgun 发表于 2017-6-22 11:26

好像很好玩的样子
页: [1] 2 3
查看完整版本: 【CM】一只炒鸡简单的CM,欢迎新手挑战哦~