0%

[长城杯 2021 院校组]Just_cmp-re super123的WriteUp

2023-09-23 17:01By
super123
逆向

长城杯-2021-院校组-Just_cmp-re

拿到这道题,其实是很迷糊的,因为按理说,直接进行比较这种,见过的都是将strcmp在init那里进行重写,但是很奇怪的是这道题没有,我去init去寻找之后,并没有找到进行处理的函数。很奇怪的。

函数不多,找到了一个疑似是加密的函数

image-20230923233927442

但是,也很奇怪,按了交叉应用之后,发现没有函数调用它????(因为其他函数都不像加密,所以很大概率就认定这个是加密函数)

image-20230923234221950

不排除我IDA出差。。。。

后来去看了wp才发现,果然,就是这里是加密

解密很简单,这道题就直接猜是将flag{*...},里面的 *进行操作,将这里面的数据提取出来加即可

image-20230923235213549

#include <stdio.h>


int main()
{
    unsigned char arr[38] = {
        0x00, 0x00, 0x00, 0x00, 0x00, 0x37, 0x07, 0x0A, 0x37, 0x0A, 0x08, 0x0A, 0x06, 0x06, 0x0B, 0x38,
        0x07, 0x0A, 0x3B, 0x08, 0x38, 0x0E, 0x0F, 0x3B, 0x3A, 0x0A, 0x0B, 0x06, 0x09, 0x07, 0x3B, 0x37,
        0x0D, 0x0F, 0x07, 0x38, 0x0F, 0x00};
        for (int  i = 0; i < 38; i++)
        {
            printf("%c", arr[i] + 0x2a);
        }
        
    return 0;
}

最后解出 flag{a14a424005b14e2b89ed45031ea791b9}

至于为什么没有用到

image-20230923235559230

看到这里,想必,懂的都懂。显然没有hook成功.

还没有人赞赏,快来当第一个赞赏的人吧!
  
© 著作权归作者所有

加载中...

加载失败
广告
×
评论区
添加新评论