SSRF漏洞

1、SSRF的概念

SSRF(服务器端请求伪造英文缩写)主要指攻击者利用服务端构造恶意请求,利用服务器作为代理访问内网或其他受限资源。

2、SSRF漏洞的成因

SSRF漏洞形成的原因:主要是因为服务端提供了从其他服务器应用获取数据的功能,然后服务端又未对用户输入的URL进行严格的过滤和验证,导致攻击者可以控制服务器发起任意HTTP请求。(能对外网发起网络请求就有可能存在SSRF漏洞)

典型的场景有:

网页内容抓取(如RSS订阅、URL预览)

文件下载功能(如通过URL下载图片或文档或源代码)

代理服务(如转发表单数据到第三方)

3、SSRF漏洞的危害

内网渗透:可以通过SSRF访问内网敏感服务(如数据库)

云环境风险:攻击者可以访问云服务 元数据接口(如AWS/azure)

文件读取:可以利用 file:// 协议 协议读取服务器本地文件(如 /etc/passwd)

4、SSRF漏洞的攻击方式

1、对外网、服务器所在内网、本地 进行端口扫描(获取一些服务的banner信息)

2、攻击运行在内网或本地的应用程序(如溢出)

3、攻击内外网的web应用,主要使用get参数就可以实现攻击(如sqli、struts2)

4、对内网web应用进行指纹识别,通过访问默认文件实现(就是通过访问一些常见的默认文件或路径来确定内网 Web 应用的类型和版本)

5、利用file:// 协议读取本地文件

攻击手法

绕过内网IP限制

利用URl解析歧义(如PHP的 parse_url() 函数会解析 host=jd.com ,但实际请求的是127.0.0.1)

特殊IP格式:八进制IP(0177.0.0.1)或十六进制IP(0x7f000001)

访问元数据服务

攻击者可以获取云服务器的 IAM 角色、临时密钥等

结合Redis反弹shell

通过 SSRF 访问内网 Redis 服务,写入恶意命令实现反弹 Shell

5、实操

今日靶场:

NSSCTF

NSSRound#28 Teamez_ssrf

$host = parse_url($url, PHP_URL_HOST);

使用 parse_url 函数解析 url 并提取主机部分,赋值给变量 host ;

gethostbyname()函数将主机名解析为ip地址,赋值给变量 $ip;

禁止访问的ip地址列表包含 127.0.0.1 和 ::1(IPv6的本地回环地址),如果包含就报错;

初始化一个 cURL 会话,并设置目标 URL 为 $url;

设置 CURLOPT_RETURNTRANSFER 为 true,使 cURL 将返回的数据作为字符串返回,而不是直接输出;

执行 cURL 会话,将结果存储在 $response 中;

if (curl_errno($ch)) {

echo json_encode("error" =\> curl_error($ch));

} else {

echo $response;

}

剩下就是检查cURL是否发生错误,没有就输出请求响应内容

所以需要用url作为参数,以 http:// 开头构造请求,让服务器访问本地的 /flag 路由就能拿到flag。

那本地的ip无疑就是 127.0.0.1 但其为黑名单,无法直接用

那么可以利用域名解析的一些特性,例如使用 0.0.0.0 来代替 127.0.0.1,在某些网络配置中,0.0.0.0 可能被解析为 127.0.0.1 即可能被解析为服务器的本地网络接口,从而允许访问内网资源

然后接上 /flag 即可得到想要的信息

NISACTF 2022easyssrf

我上来就输了个 flag 结果得到了提示

直接 fl4g 是不行的,都害羞上了

回去看到题目知识点提示php伪协议

那就用伪协议读取一下 /fl4g

复制代码
file:///fl4g

注意这里为什么是3个/

(因为 file:// 是一个协议前缀,用于告诉PHP你想要访问的是本地文件系统。而 file:// 之后,路径的解析规则与URL类似,在URL中,路径通常以 / 开头,表示根目录。)

又得到提示

然后一访问,得到代码

看出来是文件包含了,直接用 file 读取flag即可

HNCTF 2022 WEEK2ez_ssrf

进来就是Apache服务器的貌似是配置信息页面还是什么

注意到提示让我们访问 index.php

访问后又得到一串代码

相关推荐
布莱克6054 小时前
Swift 可选类型(Optionals)详解:从原理到实战
开发语言·安全·ssh·swift·optional·可选类型
陈工大模型5 小时前
解压工具的三个技术分水岭:编码、分卷、容器格式
人工智能·windows·安全·解压工具·免费国内办公软件
QXWZ_IA6 小时前
具身智能巡检和无人机巡检怎么选?
人工智能·安全·无人机
时间售卖铺7 小时前
Chrony与SSH实战:精准时间同步与安全远程登录
运维·安全·云原生·ssh
QXWZ_IA7 小时前
管道GIS测绘如何实现自动化成图:三种成图方式怎么选
运维·人工智能·安全·自动化
Yuzhiyuxia1 天前
【AI Agent面试系列】AI Agent可观测、评测、安全相关的知识点
人工智能·安全·面试
QXWZ_IA1 天前
测绘单位采购RTK:设备价格、账号年费、售后,用时间轴分权重
网络·人工智能·安全
IT大白鼠1 天前
GitLab 未认证 RCE 应急实战CVE-2026-97229(CVSS 10.0)
网络·安全·gitlab
进击的荆棘1 天前
Linux系统——线程同步与互斥之线程池和安全
linux·运维·服务器·安全·单例模式·线程
KCENN1 天前
安全地毯压敏传感防护在工业流水线与机器人作业区的耐腐蚀材质及紧急停机机制
安全