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 Team]ez_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_RETURNTRANSFERtrue,使 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 2022]easyssrf

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

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

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

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

复制代码
file:///fl4g

注意这里为什么是3个/

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

又得到提示

然后一访问,得到代码

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

[HNCTF 2022 WEEK2]ez_ssrf

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

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

访问后又得到一串代码

相关推荐
CYRUS_STUDIO2 小时前
FART 脱壳某大厂 App + CodeItem 修复 dex + 反编译还原源码
android·安全·逆向
网硕互联的小客服4 小时前
如何利用Elastic Stack(ELK)进行安全日志分析
linux·服务器·网络·安全
浩浩测试一下4 小时前
Authpf(OpenBSD)认证防火墙到ssh连接到SSH端口转发技术栈 与渗透网络安全的关联 (RED Team Technique )
网络·网络协议·tcp/ip·安全·网络安全·php
网安INF4 小时前
CVE-2020-17518源码分析与漏洞复现(Flink 路径遍历)
java·web安全·网络安全·flink·漏洞
四川合睿达自动化控制工程有限公司5 小时前
大中型水闸安全监测管理系统建设方案
安全
赛卡5 小时前
汽车安全:功能安全FuSa、预期功能安全SOTIF与网络安全Cybersecurity 解析
人工智能·安全·网络安全·车载系统·自动驾驶·汽车
CatalyzeSec6 小时前
一些实用的chrome扩展0x01
安全·web安全·网络安全
leagsoft_10036 小时前
筑牢企业网管域安全防线,守护数字核心——联软网管域安全建设解决方案
网络·安全·网络安全
黑客笔记7 小时前
攻防世界-XCTF-Web安全最佳刷题路线
大数据·安全·web安全
独行soc11 小时前
2025年渗透测试面试题总结-腾讯[实习]玄武实验室-安全工程师(题目+回答)
linux·安全·web安全·面试·职场和发展·渗透测试·区块链