SSRF-1:SSRF 的原理和成因是什么?常见出现在哪些功能点?
答案:
原理是服务端请求伪造。服务端未对用户输入的 URL 进行过滤和限制,攻击者构造恶意 URL,使服务端发起请求,从而达成欺骗服务器进行恶意操作的目的。
常见功能点:图片加载、文件下载、网页翻译、分享链接(URL预览)、Webhook、在线编辑器导入、API调用。
SSRF-2:SSRF 有哪些危害?(能说5个以上吗?)
答案:
1. 内网信息泄露(探测存活主机和端口)。
2. 文件被读写(利用 file:// 读取本地敏感文件)。
3. 绕过防火墙进行内网渗透。
4. 攻击内网 Redis、MySQL 等服务。
5. 环境泄露(云服务器元数据泄露)。
(“环境泄露”的具体做法:云服务器内部有特殊IP 169.254.169.254,即元数据服务接口,攻击者通过 SSRF 请求该 IP 可获取临时 AK/SK 凭证,从而接管云资源。)
SSRF-3:SSRF 没有回显怎么测试?(盲打思路)
答案:
使用 Burp Collaborator 或 DNSLog 平台进行外带测试。
在 Burp 中开启 Collaborator Client,获取专属域名(如 abc.oastify.com),将 SSRF 的 Payload 改为 http://abc.oastify.com 发送。如果服务器发起了请求,Collaborator Client 点击“Poll now”就会看到 DNS 解析记录,证明 SSRF 盲打成功。
SSRF-4:SSRF 打 Redis 的思路是什么?Gopher 协议的作用是什么?
答案:
SSRF 请求内网 Redis 端口,利用 Redis 未授权访问,通过 Gopher 协议伪造 Redis 通信,写入恶意代码。具体利用方式:
1. 写入 SSH 公钥(/root/.ssh/authorized_keys),实现免密登录。
2. 写入定时任务(/var/spool/cron/root),反弹 Shell。
3. 写入 WebShell(需知道 Web 绝对路径)。
Gopher 协议的作用:支持发送任意 TCP 数据包,是 SSRF 的“万能武器”,不仅能打 Redis,还能打 MySQL、FastCGI、Zabbix 等。
SSRF-5:SSRF 绕过 IP 限制有哪些常见姿势?
答案:
1. 转换进制:127.0.0.1 转为十进制 2130706433、八进制 0177.0.0.1、十六进制 0x7f.0.0.1。
2. @ 绕过:http://expected.com@attacker.com。
3. IPv6 绕过:[::1]、[0000::1]。
4. 短链接:将 127.0.0.1 转为短域名。
5. DNS 重绑定:第一次解析正常 IP,第二次解析内网 IP。
6. URL 解析差异:http://127.0.0.1:80@attacker.com。
SSRF-6:SSRF 和 CSRF 的区别是什么?
答案:
CSRF 是跨站请求伪造,由客户端(受害者浏览器)发起,利用浏览器自动携带 Cookie。
SSRF 是服务端请求伪造,由服务器发起,利用服务器可访问内网的特性。
一句话:CSRF 打的是用户,SSRF 打的是服务器。
SSRF-7:SSRF 防御应该怎么做?为什么只做黑名单不够?
答案:
防御:
1. 白名单限制(限制协议和域名)。
2. 禁用不安全协议(如 Gopher、Dict)。
3. 禁止重定向。
4. 统一错误信息(防止回显差异探测内网)。
5. 黑名单禁不完的原因:IP 表示方式多样(进制、短链接、DNS 重绑定),黑名单无法穷举,容易被绕过。
SSRF-8:file://、dict://、gopher:// 这三个协议在 SSRF 中分别能做什么?
答案:
file://:读取本地文件(如 /etc/passwd)。
dict://:与内网服务交互,探测端口开放情况,或操作 Redis 等。
gopher://:发送任意 TCP 数据包,是打 Redis(是SSRF从探测走向RCE的最经典、最高效的路径。核心原理是:利用SSRF漏洞作为跳板,通过 gopher:// 协议向内网未授权的Redis服务发送任意TCP数据包,操纵Redis将恶意文件写入目标服务器磁盘)、FastCGI 等内网服务的核心协议。
2052



被折叠的 条评论
为什么被折叠?



