2024_SACC_安全组招新

2024_SACC_安全组招新题wp

题目链接:https://github.com/tsglz/tsglz.github.io/releases/download/2024-SACC/2024-SACC.rar

密码:2024-SACC

1_just_click

1_open

直接 IDA 打开,打开 omg(0) 即为 flag

1_main

1_flag

如果你对 xyz(p) 感到好奇点开看了下,你就会发现进行了一个 异或0x55 的操作,但实际上它并没有实质性的影响

2_another_three_click

打开看一眼,看不懂,拖 IDA

2_open

看到 3 个 test_func 函数,合理推断 flag 是 三段式,点击进去看看

2_main

进入汇编界面,很容易看到三段 flag,一、三两段是明文,第二段需要转换一下

2_thr_sec

按a即可,将 flag 拼好即可提交

2_to_str

3_MaybeXorAndRot13

打开文件,输出的是数字

3_open

然后打开 IDA 进行查看,同样是一串数字,可以看到进行了 异或0x55 的操作,在刚进入 IDA 的时候,其实能直接看到异或之前的内容,如果不确定,可以写个脚本验证一下

3_main

python:

1
2
3
4
5
6
7
a="54 102 57 32 49 29 33 34 55 56 19 51 52 19 108 47 24 2 19 45 13 102 57 59 51 4 104 104"
b=a.split()
c=list(map(int,b))

for i in range(len(c)):
d = chr(c[i]^0x55)
print(d,end="")

c:

1
2
3
4
5
6
7
8
9
10
#include <stdio.h>
int main()
{
    int a[28]= {54,102,57,32,49,29,33,34,55,56,19,51,52,19,108,47,24,2,19,45,13,102,57,59,51,4,104,104};
    for (int i = 0; i < 28; i++)
    {
        printf("%c", a[i]^0x55);
    }
    return 0;
}

解出来是一样的,熟练的一眼 base64

1
c3ludHtwbmFfaF9zMWFxX3lnfQ==

得到如下内容,很明显这还不是最终的 flag,根据提示,还用到了 Rot13

1
synt{pna_h_s1aq_yg}

解密可得

1
flag{can_u_f1nd_lt}

4_in_string

这道题特别 ez,一打开就能看到一个半成品的 flag,提示中给的 in_string 只是提供一个快速查找有用信息的方法

string位置:View >> Open subviews >> string

1
flag{RighT t0 g3t f1Ag}

如果直接提交 flag,会发现 flag 是错误的,

打开 main 函数,刚才看到的 flag 就在 text_57 里面

4_main

接着在 change 函数中会看到替换的步骤,32 >> 95,熟练的知道是 ‘_‘替换了 ‘ ‘

4_replace

如果不清楚可以查 ascii 码表,在汇编中也能应证

4_rep

给半成品 flag 补上下划线即可

5_oh_upx

不了解的可能会有点难受,upx 壳是常用压缩壳,这里使用的是未经魔改的版本,只需要去网上下一个就好

如果不脱壳,IDA 看到的代码就是乱七八糟的一坨,但其实不影响运行

首先进行脱壳 upx -d 即可,不清楚使用方法可以浏览器查一下,非常清楚

5_unpack

然后使用 IDA 打开,在下方直接能看到两段 flag ,根据提示,flag 一共有三段

5_open

在 main 函数中直接能找到中间缺失的一段,拼起来即可

5_main

6_inline_assembly

这道题用到了内联汇编,这会一定程度上阻碍静态分析,但这里我并没有做过多的处理,所以可以直接在 String 里找到

如果对 Windows 比较熟悉会知道,这段程序是 32 位的,不知道也没关系,DIE 可以进行分析

6_die

用 32位 DIE 打开

打开 String,直接能看到 flag flag{May23_th1s_1s_the_flag}


2024_SACC_安全组招新
http://example.com/2024/10/17/2024-SACC-安全组招新/
作者
Tsglz
发布于
2024年10月17日
许可协议