吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4771|回复: 11
收起左侧

[CrackMe] 希望大神破解后能给个思路

[复制链接]
窗雨树雪 发表于 2018-1-7 12:37
CM是什么?Crackme是什么?这是什么东西?楼主发的什么?
他们都是一些公开给别人尝试破解的小程序,制作 Crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 Cracker,想挑战一下其它 Cracker 的破解实力,也可能是一些正在学习破解的人,自己编一些小程序给自己破解,KeyGenMe是要求别人做出它的 keygen (序号产生器), ReverseMe 要求别人把它的算法做出逆向分析, UnpackMe 是要求别人把它成功脱壳,本版块禁止回复非技术无关水贴。

非原创,从网上发现的一个CrackMe,新手尝试破解后失败,在论坛里搜了一圈也没搜到此CM的相关文章,望大神成功破解后给个小小的思路。
不要爆破,谢谢~

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册[Register]

x

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

zbnysjwsnd8 发表于 2018-1-7 17:11
1143580011
byh3025 发表于 2018-1-8 11:41
小白功力太浅,不懂算法,这样子是成功吗?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册[Register]

x
ZiPP 发表于 2018-1-7 15:22
我不太会汇编语言,所以只会爆破。

重点在 004012D7 ~ 004012E7
当 eax = 1 = 注册成功
若 eax = 0 = 注册失败

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册[Register]

x
既草日月又日天 发表于 2018-1-7 16:00
可惜 我不会  看个热闹
 楼主| 窗雨树雪 发表于 2018-1-7 16:30
ZiPP 发表于 2018-1-7 15:22
我不太会汇编语言,所以只会爆破。

重点在 004012D7 ~ 004012E7

都说了不要爆破了啊。。。。
内心xi 发表于 2018-1-7 17:04
c++写的吗
 楼主| 窗雨树雪 发表于 2018-1-7 18:22

能给点提示吗~~~
 楼主| 窗雨树雪 发表于 2018-1-7 18:23

exeinfo里查出来是Microsoft Visual C++ ver 5.0/6.0的
pk8900 发表于 2018-1-7 18:30
关键代码位置及断点:
[Asm] 纯文本查看 复制代码
00401050 | 81 7C 24 08 11 01 00 00   | cmp dword ptr ss:[esp+0x8], 0x111              |
00401058 | 75 42                     | jne 破解我.40109C                                 |
0040105A | 66 81 7C 24 0C EA 03      | cmp word ptr ss:[esp+0xC], 0x3EA               |
00401061 | 75 39                     | jne 破解我.40109C                                 |
00401063 | E8 98 01 00 00            | call <破解我.sub_401200>                          | 关键call
00401068 | 83 F8 01                  | cmp eax, 0x1                                   |
0040106B | 6A 00                     | push 0x0                                       |
0040106D | 68 8C 50 40 00            | push 破解我.40508C                                | 40508C:"crackme"
00401072 | 75 16                     | jne 破解我.40108A                                 |
00401074 | A1 B8 56 40 00            | mov eax, dword ptr ds:[0x4056B8]               |
00401079 | 68 44 50 40 00            | push 破解我.405044                                | 405044:"Registration Successful!\nGood Job!\nPlease contact:xufeng0325@gmail.com"

IDA中反编译中显示,两层循环,算法得跟一会。
[C++] 纯文本查看 复制代码
signed int sub_401200()
{
  int v0; // ebx
  unsigned int v1; // ebp
  signed int v2; // esi
  unsigned int v3; // edi
  int v4; // eax
  unsigned __int64 v5; // rax
  bool v6; // zf
  unsigned int v7; // esi
  unsigned __int64 v8; // kr00_8
  signed int result; // eax
  char *v10; // [esp+10h] [ebp-28h]
  int v11; // [esp+14h] [ebp-24h]
  int v12; // [esp+18h] [ebp-20h]
  unsigned int v13; // [esp+20h] [ebp-18h]
  CHAR String; // [esp+24h] [ebp-14h]

  v0 = 0;
  v1 = 0;
  v13 = 0;
  v2 = 1;
  v3 = 0;
  LOBYTE(v4) = GetDlgItemTextA(hDlg, 1000, &String, 20);
  if ( !(_BYTE)v4 )
    goto LABEL_13;
  v4 = (char)v4;
  v12 = (char)v4;
  if ( (char)v4 > 0 )
  {
    v10 = (char *)&v13 + v4 + 3;
    do
    {
      if ( v0 > 0 )
      {
        v11 = v0;
        do
        {
          v5 = 10 * __PAIR__(v3, v2);
          v2 *= 10;
          v6 = v11 == 1;
          v3 = HIDWORD(v5);
          --v11;
        }
        while ( !v6 );
      }
      v8 = (*v10 - 48) * __PAIR__(v3, v2) + __PAIR__(v13, v1);
      v7 = v8 >> 32;
      v1 = v8;
      v3 = 0;
      ++v0;
      v13 = v7;
      v2 = 1;
      --v10;
    }
    while ( v0 < v12 );
  }
  if ( (v1 & 0xFF23301)
     + (unsigned __int64)((signed __int64)(3123612579u * __PAIR__(v13, v1)) / 0x800000000i64)
     + ~v1 * v1 == 0x86FFB5B8 )
    result = 1;
  else
LABEL_13:
    result = 0;
  return result;
}
wddtt 发表于 2018-1-7 19:15
看不懂帮不了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 16:49

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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