红绡枫叶 发表于 2015-4-12 20:23

OO crackme 挑战:) 奖励提升至500CB

本帖最后由 红绡枫叶 于 2015-5-8 21:51 编辑

Qt5.4 GUI的crackme,所以体积很大.
此crackme大量使用类和模版,所以对逆向分析将是不小的挑战.
算法本身不难,但是要分析出注册机还是有难度的.无任何反调试.


放出keygen了我就把源码放出来.
给出可用基本key+1吾爱币,给出特殊key+1CB,+1热心值:)....
放出keygen奖励500吾爱币哦!
have fun!:)

OOcrackme.7z 已更新2015-4-14 00:10.
没有进过测试,结果发现一严重bug....已修复.2015-04-14 00:19:47                                                                        
消息拦截可对QMessagesbox下断点.                                                   

蚯蚓翔龙 发表于 2015-4-13 14:12

获取数据之后主要就是sub_406470,sub_406360这两个
CALL才会出现great job,correct keyQT的看不懂。。。何况是伪代码算法
QMessageBox::setWindowTitle(&v38, v13);
LOBYTE(v52) = 8;
QString::_QString(&v48, v34);
if ( (unsigned __int8)sub_406360(v5) )**长度似乎要>0X10
{
    if ( sub_406470(v5) <= 1 )
    {
      v17 = (int *)sub_401D80(&v44, 11);
      v33 = -1;
      v32 = 0;
      v31 = *v17;
      LOBYTE(v52) = 12;
      v18 = sub_402DE0(&v48, v31, 0, -1);
      LOBYTE(v52) = 13;
      QMessageBox::setText(&v38, v18);
      LOBYTE(v52) = 12;
      QString::_QString(&v48, v34);
      v16 = v45;
    }
    else
    {
      v14 = (int *)sub_401D80(&v44, 8);
      v33 = -1;
      v32 = 0;
      v31 = *v14;
      LOBYTE(v52) = 10;
      v15 = sub_402DE0(&v48, v31, 0, -1);
      LOBYTE(v52) = 11;
      QMessageBox::setText(&v38, v15);
      LOBYTE(v52) = 10;
      QString::_QString(&v48, v34);
      v16 = v45;
    }
}
else
{
    v19 = (int *)sub_401D80(&v46, 9);
    v33 = -1;
    v32 = 0;
    v31 = *v19;
    LOBYTE(v52) = 14;
    v20 = sub_402DE0(&v51, v31, 0, -1);
    LOBYTE(v52) = 15;
    QMessageBox::setText(&v38, v20);      失败
    LOBYTE(v52) = 14;
    QString::_QString(&v51, v34);
    v16 = v47;
}
//爆破有参与分的木


ly269935419 发表于 2015-4-14 18:46

楼上大神已分析出主要的部分,我稍微补充下

00D76A51|.50            push    eax
00D76A52|.8D4F 48       lea   ecx, dword ptr
00D76A55|.E8 46D4FFFF   call    00D73EA0                           ;=================
00D76A5A|.8378 10 01    cmp   dword ptr , 0x1
00D76A5E|.0F93C3      setnb   bl                                 ;==============


bool = ( >= 0x1)== 真
00D76B61|.50            push    eax
00D76B62|.8D4F 48       lea   ecx, dword ptr
00D76B65|.E8 36D3FFFF   call    00D73EA0                           ;------------------
00D76B6A|.837D EC 10    cmp   dword ptr , 0x10
00D76B6E|.8B78 10       mov   edi, dword ptr

> 0x1

============================
主要条件 > 0x1

未来明星 发表于 2015-4-12 20:27

qiuer0508 发表于 2015-4-12 20:32

没有其他暗桩吧,突然格盘就不好

yysniper 发表于 2015-4-12 20:33

吾爱中用Qt的也就几个人吧,难得碰到。Qt用的是自己的库,不太好破吧

红绡枫叶 发表于 2015-4-12 21:04

qiuer0508 发表于 2015-4-12 20:32
没有其他暗桩吧,突然格盘就不好

降低了一下难度,要重新下载一下

红绡枫叶 发表于 2015-4-13 21:47

提供一组正确的key:

name: mg43pojie
key:hongxiad

红绡枫叶 发表于 2015-4-15 00:01

josong 发表于 2015-4-14 22:25
请问这是干嘛用的?

mg11111


{:1_927:}josong老兄,厉害厉害啊!:)
验证的算法不用说了,是很简单的.
但是分析的过程很重要.老兄可否把分析的过程弄篇文章分享分享啊?
放出keygen了我就把100吾爱币给你!:)

再提供一组特殊的name/key:
name: fnglovecodereversepediB
key:b5c0b187fe309af0f4d35982fd96fnge

ollydebug 发表于 2015-4-16 18:17

没法打开
页: [1] 2
查看完整版本: OO crackme 挑战:) 奖励提升至500CB