【BUUCTF - PWN】ciscn_2019_c_1

本文探讨了BUUCTF中的一道PWN题,该题目涉及Ubuntu18环境下的栈溢出漏洞。通过检查加密函数内部,发现可以利用字符绕过加密过程。由于缺少后门和system函数,作者选择了ret2libc作为攻击策略,并详细说明了如何通过填充ret来确保栈对齐以成功执行系统调用。
摘要由CSDN通过智能技术生成

checksec一下

IDA打开看看,encrypt函数内存在栈溢出漏洞
由于程序会将输入的内容加密,这会破坏我们的payload,所以注意到strlen函数,通过在payload开头放上 \0 来绕过加密
由于程序内没有后门函数,也没有system函数,所以考虑ret2libc

特别注意到题目是部署在Ubuntu18上的,因此调用system需要栈对齐,这里填充ret来对齐

from pwn import *
from LibcSearcher import *

context.os='linux'
context.arch='amd64'
context.log_level='debug'

ru=lambda x:io.recvuntil(x)
rl=lambda :io.recvline(
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值