52lxw 发表于 2017-4-10 12:12

一个凯撒加密的CrakeMe

快来破解吧,应该有一点点难度,无壳无花指令.

dlweixiu 发表于 2017-4-10 16:35

本帖最后由 dlweixiu 于 2017-4-10 16:37 编辑

直接关键字搜索直接来到 Sorry,Try again!


然后向上找 关键跳

004019CA   . /74 20         je short ks.004019EC                  【这里直接NOP掉就行了吧】
004019CC   . |68 9B104000   push ks.0040109B
004019D1   . |68 30C04600   push ks.0046C030                         ;Nice,you got it
004019D6   . |68 D0794700   push ks.004779D0
004019DB   . |E8 50F8FFFF   call ks.00401230
004019E0   . |83C4 08       add esp,0x8
004019E3   . |8BC8          mov ecx,eax
004019E5   . |E8 B0F7FFFF   call ks.0040119A
004019EA   . |EB 1E         jmp short ks.00401A0A
004019EC   > \68 9B104000   push ks.0040109B
004019F1   .68 1CC04600   push ks.0046C01C                         ;Sorry,Try again!
004019F6   .68 D0794700   push ks.004779D0

海盗小K 发表于 2017-4-11 15:36

无壳无花就没啥难度了。

伪代码:

scanf("%s",&name);

while(1)
{
        if(IsAllCaps(name) == true)
                break;
        else
                scanf("%s",&name);
}

scanf("%s",&pswd);

CaesarTransform(&name_modified,&name,8);        //凯撒变换,key为8,存储到name_modified变量

if(name_modified == pswd)                                        //伪代码,就不用strcmp了
        printf("Nice, you got it!");
else
        printf("Sorry, Try again!");

重点在于Key为8的凯撒变换。。。不过这也太没难度了啊,可以多加点其他的算法。比如摩斯电码啥的。

c0d1 发表于 2017-4-10 12:29

凯撒加密,偏移位数:8

Pressend 发表于 2017-4-10 12:34

小白路过,不知道是不是成功了

lvcha128 发表于 2017-4-10 12:42

晕了以为已经爆头成功了

Poner 发表于 2017-4-10 13:30

这个难度有点太新手了

神龙马 发表于 2017-4-10 13:41

楼主好样的。楼主好样的。楼主好样的。楼主好样的。楼主好样的。

温柔你的兔子哥 发表于 2017-4-10 14:16

http://www.h0u5er.com/Classical-cryptography安利一个文章科学扫盲

tomemouse 发表于 2017-4-10 14:52

试试看,哈哈

ihuihui 发表于 2017-4-10 18:04

页: [1] 2
查看完整版本: 一个凯撒加密的CrakeMe