飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 6350|回复: 20

[原创] Easy-Crackme 0.3 by wuhanqi【强势出击,^_^】

[复制链接]

该用户从未签到

发表于 2007-8-14 16:28:21 | 显示全部楼层 |阅读模式
本版本采用重启验证。。。加了UPX壳。。。。代码重新编译
希望大家测试啊~!/:017
一点小错误,已经修正!

[ 本帖最后由 wuhanqi 于 2007-8-14 16:59 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入我们

x
PYG19周年生日快乐!

该用户从未签到

发表于 2007-8-14 16:37:52 | 显示全部楼层
解压出来就已经是“已注册”了/:017
PYG19周年生日快乐!

该用户从未签到

 楼主| 发表于 2007-8-14 16:55:40 | 显示全部楼层
哦,一个小错误
PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-12-31 12:59
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    发表于 2007-8-14 18:29:36 | 显示全部楼层
    不知道是不是程序有错还是怎么..不会弄了

    看起来正确的一组:

    jsblong

    1147811042

    [ 本帖最后由 极速暴龙 于 2007-8-14 18:32 编辑 ]
    PYG19周年生日快乐!

    该用户从未签到

     楼主| 发表于 2007-8-14 19:54:12 | 显示全部楼层
    ls来篇算法!

    [ 本帖最后由 wuhanqi 于 2007-8-14 20:07 编辑 ]
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-8-15 14:28:15 | 显示全部楼层
    看下这两段代码,好像逻辑上有点问题.

    1. 00412C44   /75 37           jnz     short 00412C7D
    2. 00412C46   |8B02            mov     eax, dword ptr [edx]
    3. 00412C48   |3A01            cmp     al, byte ptr [ecx]
    4. 00412C4A   |75 2B           jnz     short 00412C77
    5. 00412C4C   |0AC0            or      al, al
    6. 00412C4E   |74 24           je      short 00412C74
    7. 00412C50   |3A61 01         cmp     ah, byte ptr [ecx+1]
    8. 00412C53   |75 22           jnz     short 00412C77
    9. 00412C55   |0AE4            or      ah, ah
    10. 00412C57   |74 1B           je      short 00412C74
    11. 00412C59   |C1E8 10         shr     eax, 10
    12. 00412C5C   |3A41 02         cmp     al, byte ptr [ecx+2]
    13. 00412C5F   |75 16           jnz     short 00412C77
    14. 00412C61   |0AC0            or      al, al
    15. 00412C63   |74 0F           je      short 00412C74
    16. 00412C65   |3A61 03         cmp     ah, byte ptr [ecx+3]
    17. 00412C68   |75 0D           jnz     short 00412C77
    18. 00412C6A   |83C1 04         add     ecx, 4
    19. 00412C6D   |83C2 04         add     edx, 4
    20. 00412C70   |0AE4            or      ah, ah
    21. 00412C72  ^|75 D2           jnz     short 00412C46
    22. 00412C74   |33C0            xor     eax, eax
    复制代码


    1. 00412F17   /74 02           je      short 00412F1B
    2. 00412F19   |D9E0            fchs
    3. 00412F1B   \DC1D 1AC14000   fcomp   qword ptr [40C11A]
    4. 00412F21    DFE0            fstsw   ax
    5. 00412F23    F6C4 41         test    ah, 41
    6. 00412F26    0F84 22000000   je      00412F4E
    7. 00412F2C    6A 00           push    0
    8. 00412F2E    68 22C14000     push    0040C122                         ; 已注册
    9. 00412F33    6A FF           push    -1
    10. 00412F35    6A 08           push    8
    11. 00412F37    68 6F000116     push    1601006F
    12. 00412F3C    68 01000152     push    52010001
    13. 00412F41    E8 3C030000     call    00413282
    14. 00412F46    83C4 18         add     esp, 18
    15. 00412F49    E9 1D000000     jmp     00412F6B
    16. 00412F4E    6A 00           push    0
    17. 00412F50    68 29C14000     push    0040C129                         ; 未注册
    18. 00412F55    6A FF           push    -1
    19. 00412F57    6A 08           push    8
    20. 00412F59    68 6F000116     push    1601006F
    21. 00412F5E    68 01000152     push    52010001
    22. 00412F63    E8 1A030000     call    00413282
    23. 00412F68    83C4 18         add     esp, 18
    24. 00412F6B    6A 00           push    0
    25. 00412F6D    68 29C14000     push    0040C129                         ; 未注册
    26. 00412F72    6A FF           push    -1
    27. 00412F74    6A 08           push    8
    28. 00412F76    68 6F000116     push    1601006F
    29. 00412F7B    68 01000152     push    52010001
    30. 00412F80    E8 FD020000     call    00413282
    复制代码


    这个图是使用了点暴力弄出来的.

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?加入我们

    x
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-8-15 17:01:42 | 显示全部楼层
    找到此处的方法是:
    重启验证方式的分析主要有以下3种可能:
    1、把注册码保存到注册表,利用注册表读取注册码,然后经过计算验证其正确性。
    2、建立一个文件,把注册信息保存到文件里,然后通过读取来验证。
    3、也可能把先验证注册信息,如果正确,那么就保存到注册表或某个文件中,下次启动读取验证,如果为空则失败。
    这个Easy-Crackme 在提示错误后,暂停,返回用户代码时,附件可以看见是在往注册表中放置name和sn,在整体内存中搜索同样的语句,可以很快定位在412CDC,直接可以进行分析了!
        在爆破中,和上面说的一样,00412F49    E9 1D000000     jmp     00412F6B会又跳回“未注册”!
    时间和水平不行!算法还没时间好好去看懂!
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-8-16 20:54:12 | 显示全部楼层
    怎么都那么难的 。。。
    PYG19周年生日快乐!

    该用户从未签到

     楼主| 发表于 2007-8-16 21:37:38 | 显示全部楼层
    恩,是程序上有些问题哈,我把源码贴出来,高手看一下!
    .版本 2

    .程序集 窗口程序集1

    .子程序 _按钮3_被单击

    结束 ()

    .子程序 _按钮2_被单击



    .子程序 _按钮1_被单击
    .局部变量 name, 文本型
    .局部变量 sn, 文本型
    .局部变量 ljbl, 逻辑型

    .如果 (编辑框1.内容 = “”)
        信息框 (“请输入用户名”, 0, “提示”)
    .否则
        .如果 (编辑框2.内容 = “”)
            信息框 (“请输入注册码”, 0, “提示”)
        .否则
            name = 编辑框1.内容
            sn = 编辑框2.内容
            ljbl = 写注册项 (3, “Software\Microsoft\Notepad\name”, name)
            ljbl = 写注册项 (3, “Software\Microsoft\Notepad\sn”, sn)
            信息框 (“请重启软件已验证注册码是否正确”, 0, “提示”)
        .如果结束

    .如果结束


    .子程序 _标签3_反馈事件, 整数型
    .参数 参数一, 整数型
    .参数 参数二, 整数型



    .子程序 __启动窗口_创建完毕
    .局部变量 name, 文本型
    .局部变量 sn, 文本型
    .局部变量 len, 整数型
    .局部变量 i, 整数型
    .局部变量 c, 整数型
    .局部变量 gdzh, 整数型
    .局部变量 sum, 整数型
    .局部变量 real, 逻辑型

    name = 取文本注册项 (3, “Software\Microsoft\Notepad\name”, )
    sn = 取文本注册项 (3, “Software\Microsoft\Notepad\sn”, )
    .如果真 (name = “”)
        .如果真 (sn = “”)
            len = 取文本长度 (name)
            gdzh = 1383838438
            .计次循环首 (len, i)
                c = 位异或 (取代码 (name, i), gdzh)
                sum = c × 96 + 459478830
                sum = sum × len
            .计次循环尾 ()
            .如果 (sn = 到文本 (sum))
                标签4.标题 = “未注册”
            .否则
                标签4.标题 = “已注册”
            .如果结束

        .如果真结束


    .如果真结束
    标签4.标题 = “未注册”
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-12-31 12:59
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    发表于 2007-8-16 22:36:44 | 显示全部楼层
    .如果真 (name = “”)
        .如果真 (sn = “”)

    .如果真结束
    标签4.标题 = “未注册”

    /:L
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表