dajinzhu 发表于 2020-3-30 21:23

我写的第一个crackme(没什么难度)

注册吾爱第一个帖子。
也是我写的第一个crackme

快来破解看看吧!

小菜鸟一枚 发表于 2020-3-31 10:32

1.搜索字符串,回车进去来到了
013525C1   /75 1E         jnz short 52pojie_.013525E1
013525C3   |817D E8 6540351>cmp dword ptr ss:,0x1B354065
013525CA   |75 15         jnz short 52pojie_.013525E1
013525CC   |68 409B3501   push 52pojie_.01359B40                     ; 破解成功,吾爱万岁!\n
013525D1   |A1 D0D03501   mov eax,dword ptr ds:[<&MSVCP140D.std::cou>
013525D6   |50            push eax                                 ; msvcp140.std::cin
013525D7   |E8 31ECFFFF   call 52pojie_.0135120D
013525DC   |83C4 08         add esp,0x8
013525DF   |EB 13         jmp short 52pojie_.013525F4
013525E1   \68 589B3501   push 52pojie_.01359B58                     ; 破解失败,加油!\n



2.013525CA这一行直接改为jnz short 013525CC,爆破成功

小菜鸟一枚 发表于 2020-3-31 10:41

isurreal 发表于 2020-3-31 10:21
确实挺简单的

大佬,厉害了,我找到关键跳后,直接用IDA分析41127B那个call去了,然后发现里面直接返回了,一脸懵逼,看了你的之后才想起来......{:1_893:}

字符串搜索进去后,直接找到段首
01352530    55            push ebp
01352531    8BEC            mov ebp,esp
01352533    81EC DC000000   sub esp,0xDC



然后IDA搜索2530这个call,得到
int sub_412530()
{
int v0; // edx
int v2; //
int v3; //
int savedregs; //

sub_411271(&unk_41E025);
sub_41120D(std::cout, "输入1:");
std::basic_istream<char,std::char_traits<char>>::operator>>(std::cin, &v3);
sub_41127B();
sub_41120D(std::cout, "输入2:");
std::basic_istream<char,std::char_traits<char>>::operator>>(std::cin, &v2);
sub_41127B();
if ( v3 != 56256568 || v2 != 456474725 )
    sub_41120D(std::cout, "破解失败,加油!\n");
else
    sub_41120D(std::cout, "破解成功,吾爱万岁!\n");
system("pause");
sub_41127B();
sub_41129E(&savedregs, &dword_41263C, 0, v0);
return sub_41127B();
}

3.输入的数据1存在v3中,输入2存在v2中,那两个call是幌子,没干啥,然后直接比较等不等于两个常数。

Pammer 发表于 2020-3-31 08:44

破解完了,确实没有难度。
本来想跟出来注册码的,没跟出来。。。

weikun444 发表于 2020-3-31 09:27

isurreal 发表于 2020-3-31 10:21

确实挺简单的

ycy0536 发表于 2020-3-31 12:51

厉害,再努力学习中

GJH588 发表于 2020-3-31 17:48

不知道为啥是这样{:301_983:}我哭

dajinzhu 发表于 2020-3-31 21:26

GJH588 发表于 2020-3-31 17:48
不知道为啥是这样我哭

你应该是32位的操作系统吧,可能不支持

dajinzhu 发表于 2020-3-31 21:30

本人正读初一,网课下课时写了这个软件,还请各位多多指教
页: [1] 2
查看完整版本: 我写的第一个crackme(没什么难度)