CTFHub靶场---SSRF攻击

摘要:

什么是SSRF?

SSRF(Server-Side Request Forgery,服务器端请求伪造)是一种由攻击者构造恶意请求,并由服务器端 代为发起此请求的安全漏洞。攻击者能够利用存在缺陷的Web应用作为代理,去攻击服务器所在内网或本地的其他服务。

简单比喻 :A(用户)让B(存在漏洞的服务器)去访问C(目标,通常是内网或本地的资源)。如果B在"不知情"(即未对A的请求目标做严格校验)的情况下执行了请求,就形成了SSRF。

本文围绕 SSRF(服务端请求伪造)攻击实战展开,聚焦四大核心关卡:内网访问、伪协议读取文件、端口扫描、POST 请求伪造。

作者对SSRF漏洞的总结: 网络安全进学习:SSRF(服务器端请求伪造)漏洞全解析-CSDN博客

目录

第一关:内网访问

第二关:伪协议读取文件

第三关:端口扫描

第四关:POST请求


第一关:内网访问

点击内网访问

由题知要我们在URL上修改,那就用http伪协议去访问http://127.0.0.1/flag.php

将得到的信息复制到提交栏,通关。

第二关:伪协议读取文件

访问题目给的文件,发现 ???,没有得到什么信息,检查源代码

得到想要的信息,通关!

第三关:端口扫描

访问127.0.0.1:8000端口,并使用bp抓包,发送intruder

由于只要一个变量,就直接选sniper,标亮端口

由题目知:Payload set选择numbers,范围是8000-9000,step是1

验证匹配结果,并开始攻击(不必要的参数都删掉,影响判断)

端口爆破成功,根据我们要的数据长度和别的数据不一样,找到我们要的数据(就像我这样参数太多了),复制信息,通关!

第四关:POST请求

题目这里说了使用跟踪302跳转,这就要求使用gopher协议来解答,gopher可以理解为古早版本的http请求。

访问目标文件

又没给我们信息,检查代码,复制这个key,后面有用

使用bp抓包,发送到repeater

点击发送,我们可以看到key值和我们刚刚复制的一样

构造一个简单的POST请求:

POST /flag.php HTTP/1.1

Host: 127.0.0.1:80

Content-Type: application/x-www-form-urlencoded

Content-Length: 36

key=c6dd59e90eebad8e3b6bb36df8e12188

对构造的post请求进行url编码

随便找个在线编码工具,对这个请求编码

对第一次编码的换行符进行处理:复制内容,把%0A改成%0D%0A;

再把得到的结果,再进行编码一次

得到的结果加上 gopher://127.0.0.1:80/_

再把URL后面的内容替换成复制的内容,点击发送,response回应我们要的数据,通关!

相关推荐
剑胆凌锋7 小时前
等级保护测评工程师的困境
网络·安全·web安全·网络安全·职场和发展
山东科恩光电8 小时前
安全地毯是什么?它有哪几种主要类型和应用场景?
安全
程序员清风10 小时前
PydanticAI 实战:用类型安全构建可靠的 Python Agent
开发语言·python·安全
林伽一11 小时前
100 万输出词元与窄开放,前沿模型发布范式正在改写|2026年10月02日
人工智能·科技·安全·ai
悟天特斯13 小时前
安防一体化:从“孤岛式监控“到“全域联动“的楼宇安全体系
人工智能·安全
ccstuck14 小时前
AI安全系列:给最小 Agent 做提示注入测试
人工智能·安全·ai安全
赛博守夜人14 小时前
跨境业务与出海合规之三:母公司如何通过 IT 权限与财权 Token 实现穿透式管控?
安全
姜鱼问生16 小时前
uptime-kuma 从 docker run 迁移到 compose:数据卷的坑
安全·架构
Bruce_Liuxiaowei18 小时前
2026年10月第1周网络安全形势周报
安全·web安全
jimmyleeee19 小时前
大模型安全之三十八:AI 中的 DoS 攻击:当“拒绝服务”变成“拒绝钱包”
人工智能·安全