前言

在微服务架构与内网隔离机制下,传统外网漏洞(XSS、SQL注入)的攻击门槛持续提高,而SSRF(服务端请求伪造)成为目前黑盒渗透、内网横向移动、边界突破的核心高危漏洞。

不同于常规Web漏洞,SSRF属于架构信任缺陷漏洞,利用服务端对外请求的能力,以服务器自身可信身份对内网、本机服务发起未授权访问。本文结合靶场真实报错回显,标准化拆解SSRF漏洞原理、触发条件、两种核心利用场景与探测特征。

一、SSRF漏洞核心原理与成因

SSRF全称为 Server-Side Request Forgery(服务端请求伪造),核心定义:业务服务未对用户可控的URL参数做严格校验,攻击者可伪造服务端发起任意HTTP请求,访问外网、本机回环地址、内网私有网段资源。

漏洞根源来自企业架构的内网隐式信任机制

1. 外网流量会被WAF、网关、鉴权体系严格拦截;

2. 服务器本机、内网网段流量被默认授信,大量后台管理接口、微服务接口仅做外网访问拦截,无内网鉴权

简单来说:外网禁止访问的资源,服务端内网身份可以直接放行,这是SSRF能够越权、横向移动的核心底层逻辑。

二、业务漏洞场景复现

本次漏洞出现在远程接口调用类业务,典型为库存查询功能,服务端支持接收用户传入的 stockApi URL参数,并主动请求该地址获取数据。

正常业务请求如下:

POST /product/stock HTTP/1.1 Host: vulnerable-website.com Content-Type: application/x-www-form-urlencoded stockApi=http://stock.internal.net:8080/product/stock/check?productId=6&storeId=1

服务端原生逻辑:接收用户可控URL → 后端主动发起HTTP请求 → 返回接口响应内容。

由于未配置域名白名单、内网地址拦截、协议限制,攻击者可篡改参数指向任意内网、本机资源,触发SSRF漏洞。

三、SSRF核心利用场景一:本机服务未授权访问

多数业务后台管理接口会配置外网IP拦截策略,公网用户直接访问 /admin 会被拒绝,但本机回环请求默认放行。

攻击者篡改参数,将请求目标指向本机管理接口:

stockApi=http://localhost/admin/delete?username=carlos

完整攻击链路

1. 前端可控参数传入恶意内网URL;

2. 服务端以本机身份发起请求;

3. 后台服务校验请求源为本地回环地址,绕过所有鉴权、拦截策略;

4. 成功执行高权限删除用户操作,实现垂直越权。

四、SSRF核心利用场景二:内网网段扫描与横向移动

SSRF最重要的实战价值是内网资产探测。绝大多数内网服务、微服务、老旧后台无公网暴露,无任何外网访问入口,但可通过服务端内网IP段批量扫描发现存活资产。

攻击者构造内网网段探测载荷,批量遍历内网主机端口:

stockApi=http://192.168.0.§num§:8080/admin

通过Burp Intruder遍历1-255网段,根据服务端回显差异判断主机存活与端口开放状态。

五、基于真实报错的探测结果分析(本次实战回显)

本次学习实战中,所有回显均为靶场原生解析报错,可精准对应SSRF探测特征,无伪造、无虚构,贴合真实渗透判断逻辑:

1. 内网正常接口探测回显

请求 http://stock.internal.net:8080/product/stock/check?productId=6&storeId=1https://vulnerable-website.com/adminhttp://192.168.0 时,返回:网页解析失败,可能是不支持的网页类型

该报错属于正常业务响应,代表:IP/域名存活、端口通畅、服务正常响应,只是返回内容非标准网页,是SSRF探测有效的核心特征。

2. 非法URL格式报错

请求完整恶意接口http://192.168.0.68:8080/admin/delete?username=carlos 时,返回:URL拼写可能存在错误,请检查

该报错代表服务端存在URL校验逻辑,对特殊路径、参数结构做了基础拦截,但并未彻底修复SSRF漏洞,仅属于浅层防护,可通过协议绕过、编码绕过、DNS重绑定等方式突破。

六、架构层面漏洞成因深度总结

1. 信任边界混乱:架构默认信任内网与本机流量,未做零信任二次鉴权;

2. 参数校验缺失:用户可控URL未配置白名单、未拦截内网私有网段、未限制协议;

3. 高危功能暴露:开放任意远程请求能力,直接将服务端作为开放式代理;

4. 防护策略单一:仅拦截外网访问敏感接口,未对内网请求做权限约束。

七、标准化修复与防御方案

1. 严格白名单机制

禁止黑名单过滤,仅允许业务可信域名、IP、接口地址,彻底杜绝任意请求跳转。

2. 强制拦截内网私有地址

代码层拦截回环地址、内网网段、保留地址,禁止服务端向内网发起请求。

3. 协议强制校验

仅允许 HTTPS/HTTP 合规协议,禁止 file、gopher、dict 等高危协议,杜绝协议级SSRF绕过。

4. 零信任架构落地

取消内网隐式信任,所有服务间调用必须携带签名、Token或双向TLS认证,不依赖网络边界做安全防护。

结语

SSRF漏洞的核心危害不在于单点页面访问,而在于突破网络边界、打破内网隔离、实现横向移动。在红蓝对抗与漏洞挖掘中,SSRF始终是内网渗透最高频、最高危的入口漏洞。防护核心永远不是前端拦截,而是服务端严格的请求校验与零信任架构设计。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐