Buu 攻防世界re新手区

我。。终于考完放假了!!几乎一个月没学逆向了呜呜呜,这两天恶补了一下,但也都是些超级基础的题(新手村,师傅们请自行绕过),因为我太菜了。。。

1、buu BJDCTF2020easy
这道题看起来还是很难的,是偶然看到一个大佬的wp,真的tql !

主函数里面。。。什么都没有。。
在这里插入图片描述
main函数上面那个_ques的函数应该才是关键函数

一看还挺复杂的,但关注到putchar(),意识好一点的就会想到32是空格,42是星号,10是换行,大胆猜测这个是在打印什么。
在这里插入图片描述
但是怎么让它执行这个函数呢,这个函数又不在main里面,那位师傅直接od动调把主函数里的call指令后面加了个_ques,

害,这就是我这种废物想不到的了。。。

下面我动调用的是ida万能插件keypatch
在这里插入图片描述
在这里插入图片描述
flag{HACKIT4FUN}

2、攻防世界 logmein

主函数逻辑很简单,放到VS里改一改就能运出来。
就是一开始不知道BYTE那个地方怎么改,后来查到BYTE在C++中通常定义为unsigned char ,那就好办了~
在这里插入图片描述
还有v8的长度最好改一下,不然再复制的时候会溢出。C++脚本如下:

#include<iostream>
using namespace std;

int main()
{
    
    
    size_t v3; // rsi
    int i; // [rsp+3Ch] [rbp-54h]
    char s[36] = {
    
    }; // [rsp+40h] [rbp-50h]
    int v6; // [rsp+64h] [rbp-2Ch]
    __int64 v7; // [rsp+68h] [rbp-28h]
    char v8[20]; // [rsp+70h] [rbp-20h]
    
    strcpy(v8, ":\"AL_RT^L*.?+6/46");
    v7 = 28537194573619560LL;
    v6 = 7;
    printf("To continue, you must enter the correct password.\n");
    printf("Enter your guess: ");

    char* p = (char*) &v7; 
    v3 = strlen(v8);
    for (i = 0; i < v3; ++i)
    {
    
    
        s[i] = (char)(p [ i % v6] ^ v8[i]);        
    }
    for (i = 0; i < v3; ++i)
    {
    
    
        cout << s[i];
    }
    cout << endl;
}

在这里插入图片描述

3、攻防世界 re1

在这里插入图片描述
这两个字符串取逆,拼一起就完事了
在这里插入图片描述
各种方法都有,据说是随便放进一个编辑器flag就会明文出现。。。我就直接在cmd里strings了一下,果然在一群乱码里找到flag。。。
在这里插入图片描述
4、buu xor

看大佬wp学到了 shift +e ~
在这里插入图片描述

就是简单的每一位跟后一位异或,不多说上脚本
(emm大家都惯用python,我觉得用C++也。。没有太复杂。)

#include<iostream>
using namespace std;

int main()
{
    
    
    int flag[100] = {
    
     };
    flag[0] = 102;
    int v6[200] = {
    
     102, 10, 107, 12, 119, 38, 79, 46, 64, 17, 
        120, 13, 90, 59, 85, 17, 112, 25, 70, 31, 118, 34, 77,
        35, 68, 14, 103, 6, 104, 15, 71, 50, 79,0 };
    for (int i = 1; i < 33; ++i)
        flag[i] = v6[i] ^ v6[i - 1];
    for (int i = 0; i < 33; ++i)
        cout << char(flag[i]);
 
}

在这里插入图片描述
5、攻防世界 simple unpack 和 buu 新年快乐

是两道非常友好的脱壳题
友好就在于脱壳后flag直接明文出现

linux下 upx -d
在这里插入图片描述
在这里插入图片描述
这两天刚装了peid 查壳
在这里插入图片描述
还做了几道攻防世界上超级基础的web,就是查源码,get post请求之类的,网上wp也很多,很方便新手食用嗯。

不过我必须得吐槽一下,最近我的攻防世界创建场景一直在失败!!哭了。。(搞得人不能学pwn,唉pwn真的好难。。)

假期开始啦,拜个早年哈~
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_51357657/article/details/113098318