AI 助教问 AI 助教
东方瑞通 · CISP-PTE

SSRF 漏洞防御

SSRF 防御通过过滤返回信息、限制请求端口、禁用危险协议、黑名单内网 IP 等方式,防止服务器被诱导访问内网或任意地址。

考点精讲

  1. 防御措施:过滤返回信息(展示前校验返回内容是否符合标准)、统一错误信息(避免通过错误差异判断端口状态)、限制请求端口为 HTTP 常用端口(80/443/8080/8090)、黑名单内网 IP(避免被用于获取内网数据)、禁用不需要的协议(仅允许 http/https,防止 file://、gopher://、ftp:// 引起问题)。

记忆技巧

防御四件套:过滤返回、统一报错、限端口、黑名单内网 IP
禁用 file/gopher/ftp,只放行 http/https

常见误区

  • 以为黑名单足够——绕过手法众多,需多措并举
  • 忽略统一错误信息对端口探测的阻断作用
  • 只过滤 http 而忽略 file/gopher/ftp 等协议

真题思路

  • 【示例】 下列 SSRF 防御措施中,能有效阻断「通过协议读本地文件」的是()
    统一错误信息 禁用 file:// 等危险协议,仅允许 http/https 限制请求端口为 80/443 过滤返回信息
    答案:B
    解析:读本地文件主要依赖 file:// 协议,禁用 file:// 等危险协议、只允许 http/https,能有效阻断该利用,B 正确;其余措施针对端口探测、信息回显等,非直接阻断 file 协议读文件。

常见问题

Q:SSRF 如何防御?

A:过滤返回信息、统一错误信息、限制请求端口(80/443/8080/8090)、黑名单内网 IP、禁用不需要的协议(仅允许 http/https)。

Q:为什么要统一错误信息?

A:统一错误信息可避免攻击者通过错误差异判断端口状态,从而阻断端口探测。

Q:为什么要禁用 file/gopher/ftp 协议?

A:这些协议可被用于读文件、探测端口、构造任意请求,带来额外风险;禁用它们、只放行 http/https 可缩小攻击面。

Q:内网地址段有哪些需要拦截?

A:需要拦截内网私有地址段(如 10.0.0.0/8、172.16.0.0/12、192.168.0.0/16 及 127.0.0.0/8 回环地址等),防止被用于访问内网资源。

相关知识

教材出处:第5章 PTE-SSRF SSRF 漏洞防御

AI 助教

让 AI 助教带你深入学习,把你卡住的地方直接问它

随时为您答疑解惑

开始答疑