ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

SSRF 服务端请求伪造漏洞全方位详解

SSRF 服务端请求伪造漏洞全方位详解 SSRF 服务端请求伪造漏洞全方位详解前言在 Web 安全漏洞体系中SSRF服务端请求伪造Server-Side Request Forgery是进阶渗透、内网横向、云服务器提权、高危漏洞挖掘的核心王牌漏洞。不同于 SQL 注入、XSS、文件上传这类面向 Web 应用本身的漏洞SSRF 的攻击维度更高、利用场景更广、危害更隐蔽是从外网打点直接打通内网的关键漏洞。在 CTF Web 比赛、SRC 漏洞挖掘、企业红蓝对抗、高级渗透测试中SSRF 常年稳居高危漏洞榜首。很多新手学习 Web 安全止步于常规 Web 漏洞始终无法突破外网打内网的瓶颈核心原因就是没有吃透 SSRF 漏洞原理、协议利用、绕过技巧、内网攻击链路。简单一句话理解 SSRF原本由用户浏览器发起的请求变成了服务器替用户发起请求攻击者可控请求目标、协议、端口把服务器当成内网代理攻击内网隔离资源。普通漏洞攻击的是网站本身SSRF 攻击的是整个服务器内网环境。本文将从零深度拆解 SSRF 全套知识体系漏洞原理、触发场景、漏洞分类、全协议利用、完整实战流程、经典绕过技巧、内网渗透打法、云服务器攻击、多层防御方案、面试考点、SRC 报告模板全文超详细干货适合零基础入门、进阶渗透、面试背诵、实战挖洞。⚠️ 安全免责声明本文所有技术内容仅用于授权安全测试、网络安全学习、靶场实训、安全研究。严禁在未授权的服务器、内网系统、公网业务平台进行 SSRF 攻击测试违规测试属于违法行为一切后果由操作者自行承担。一、SSRF 漏洞核心原理1.1 什么是 SSRFSSRF服务端请求伪造Web 服务端提供了主动发起网络请求的功能获取远程图片、抓取网页内容、URL 预览、同步远程资源等用户可控请求的目标 URL服务端未对目标地址、协议、端口做严格过滤导致攻击者可以伪造请求让服务器主动访问内网地址、本地地址、高危协议端口窃取内网数据、探测内网服务、攻击内网主机。核心本质利用服务器的网络位置权限以服务器身份发起请求突破外网边界限制访问外网无法触达的内网隔离资源。1.2 SSRF 漏洞成立的必要条件缺一不可存在服务端主动请求功能服务端支持根据用户传入的 URL主动发起 HTTP/HTTPS 请求、抓取资源、下载文件。用户完全可控目标 URLURL 参数无固定白名单用户可以任意修改请求地址、协议、端口。服务端未做安全过滤未拦截内网 IP、未限制高危协议、未禁止本地回环地址、未限制高危端口。1.3 SSRF 与其他漏洞的本质区别XSS/CSRF攻击用户浏览器只能在客户端维度操作SQL 注入 / 文件上传攻击Web 应用本身获取网站权限SSRF攻击服务器内网环境打通外网到内网的通道实现内网横向渗透。1.4 SSRF 漏洞核心优势服务器拥有内网访问权限外网无法直接访问内网但是服务器可以服务器防火墙策略宽松默认允许内网互通、端口访问绝大多数内网服务无鉴权、无 WAF、无防护极易被攻击可利用多协议攻击不局限于 HTTP支持多种高危协议探测读取数据。二、SSRF 高频触发业务场景实战挖洞重点SSRF 不会凭空出现只存在于服务端主动发起网络请求的功能模块以下是实战中 99% 的 SSRF 漏洞来源挖洞优先测试这些点位2.1 资源远程拉取类远程图片加载、头像远程上传、图片预览功能远程文件下载、远程资源同步、导入远程配置URL 内容抓取、网页快照、链接预览、卡片生成功能。2.2 接口回调测试类业务 Webhook 回调地址测试支付回调、消息推送回调、接口连通性检测第三方授权、远程接口校验、域名有效性检测。2.3 后台管理功能类服务器节点探测、内网服务检测、端口连通测试远程日志读取、远程配置读取、跨节点资源同步后台远程更新、远程模板加载。2.4 常见代码危险函数代码审计必记PHP、Python、Java 中触发 SSRF 的高危函数只要参数可控大概率存在漏洞PHPfile_get_contents()、fsockopen()、curl_exec()、fopen()Pythonrequests.get()、requests.post()、urllib.urlopen()JavaHttpClient、URLConnection、RestTemplate只要业务代码使用以上函数读取用户可控 URL基本可以判定存在 SSRF 风险。三、SSRF 漏洞详细分类根据回显状态和利用方式SSRF 分为两大类测试方式和攻击链路完全不同3.1 有回显 SSRF直接 SSRF服务端请求目标地址后将请求响应内容直接返回前端页面。特点直接看到内网返回数据利用简单、成功率 100%攻击直接读取内网文件、查看内网端口服务、读取内网接口数据场景网页预览、资源抓取、URL 内容回显功能。3.2 无回显 SSRF盲 SSRF服务端发起请求但不返回任何响应内容页面无变化、无数据回显。特点无法直接查看结果需要通过 DNS 日志、HTTP 日志、延时判断验证攻击内网存活探测、端口扫描、Redis 未授权写入、反弹 Shell场景后台异步回调、日志检测、后台静默探测功能。四、SSRF 全协议攻击利用详解核心干货很多新手只会用 SSRF 访问内网 HTTP 服务真正的高阶利用是多协议攻击不同协议对应不同高危攻击手法是实战提权核心。4.1 HTTP/HTTPS 协议最基础攻击用途探测内网存活主机扫描内网开放端口访问内网 Web 后台、未授权接口读取内网敏感页面数据。测试 Payloadhttp://127.0.0.1 http://192.168.1.1 http://10.0.0.1 http://172.16.0.14.2 File 协议读取服务器本地任意文件攻击原理利用file://协议让服务器读取本地任意文件读取敏感配置、账号密码、密钥文件。通用 Payloadfile:///etc/passwd file:///etc/shadow file:///var/www/html/config.php file:///C:/windows/system32/drivers/etc/hosts file:///C:/Windows/System32/config/SAM直接读取服务器本地密码文件、数据库配置、网站源码配置文件高危利用方式。4.3 Gopher 协议SSRF 最强协议万能攻击Gopher 是 SSRF 中功能最强、利用最广的协议可以自定义构造任意 TCP 数据包支持攻击 Redis、MySQL、FTP、Memcached 等所有 TCP 服务一键写入 Webshell、写入定时任务反弹 Shell无权限内网服务接管、批量内网渗透。经典利用Gopher 操作 Redis 写入 Webshell构造 Gopher 协议数据包通过 SSRF 让内网 Redis 写入一句话木马直接 GetShell。4.4 Dict 协议端口探测、服务交互用途探测内网端口是否开放、与内网端口服务交互、读取服务版本信息。Payloaddict://127.0.0.1:3306 dict://192.168.1.1:63794.5 FTP 协议读取内网 FTP 服务文件、探测 FTP 服务弱口令、获取内网文件资源。五、SSRF 实战攻击链路完整渗透流程外网拿到 SSRF 漏洞后标准渗透流程如下实战通用步骤 1验证漏洞有效性传入恶意内网 URLhttp://127.0.0.1页面返回本地服务内容证明服务端成功发起内网请求SSRF 漏洞存在。步骤 2探测内网网段常见内网网段192.168.0.0/16、10.0.0.0/8、172.16.0.0/12批量扫描内网存活主机找出内网在线服务器。步骤 3内网端口扫描针对存活主机扫描常见高危端口22 端口SSH 远程登录3306 端口MySQL 数据库6379 端口Redis 未授权访问80/8080 端口内网 Web 后台21 端口FTP 服务步骤 4针对性攻击内网服务内网 Web 端口 → 访问后台、扫描漏洞Redis 6379 → Gopher 写入 Shell、写入公钥远程登录MySQL 3306 → 尝试弱口令、读取数据库本地文件读取 → file 协议读取配置密钥。步骤 5内网横向渗透通过内网薄弱主机进一步渗透拿下内网核心服务器。六、SSRF 经典绕过技巧实战高频现在大部分网站会做基础防护拦截127.0.0.1、localhost、内网 IP掌握绕过方式是挖洞关键。6.1 域名解析绕过DNS 重绑定利用域名解析指向本地地址绕过 IP 黑名单localhost 127.0.0.1.xip.io test.127.0.0.1.nip.io第三方域名自动解析为 127.0.0.1绕过固定 IP 拦截。6.2 IP 进制转换绕过将 127.0.0.1 转换为其他进制绕过字符串匹配拦截十进制2130706433八进制0177.000.000.001十六进制0x7f.0x0.0x0.0x16.3 特殊地址绕过0.0.0.0 127.1 127.0.1 ::1IPv6本地回环6.4 302 跳转绕过搭建恶意跳转服务器访问外网地址 302 跳转内网地址服务端跟随跳转访问内网绕过直接拦截。6.5 协议大小写绕过过滤file://、gopher://使用大小写混淆File:// Gopher:// HTTP://6.6 端口模糊匹配绕过部分防护只拦截默认 80 端口可自定义端口探测内网高危服务。七、云服务器 SSRF 高危利用真实实战超级高危阿里云、腾讯云、华为云等云服务器存在元数据服务地址http://169.254.169.254该地址是云服务器本地专属地址外网无法访问仅服务器本机可访问存储云服务器密钥、Token、账号凭证、实例信息。攻击危害利用 SSRF 访问元数据地址直接获取云服务器临时密钥接管整台云服务器权限最高、危害极大属于 SRC 超高分高危漏洞。八、SSRF 与 CSRF 核心区别面试必背很多面试会混淆两者这里彻底区分CSRF客户端发起请求冒用用户身份攻击用户权限SSRF服务端发起请求冒用服务器身份攻击内网权限。一句话总结CSRF 借用户的手操作网站SSRF 借服务器的手打内网。九、SSRF 全方位防御加固方案报告修复专用SSRF 必须采用白名单 协议限制 IP 拦截 端口限制多层防护单一防护极易被绕过。9.1 禁止高危协议核心防护彻底禁用危险协议只保留安全的 HTTP/HTTPS禁止file://、gopher://、dict://、ftp://、php://9.2 拦截内网与本地地址黑名单强制拦截所有内网网段、本地回环地址127.0.0.0/80.0.0.0/810.0.0.0/8172.16.0.0/12192.168.0.0/16云元数据地址 169.254.169.2549.3 采用域名白名单机制禁止黑名单过滤优先白名单仅允许业务可信域名、固定第三方域名拒绝所有未知地址。9.4 限制请求端口仅允许 80、443 常规 Web 端口禁止 22、3306、6379、21 等高危端口。9.5 关闭服务端跳转跟随禁止服务端自动跟随 301/302 跳转防止跳转绕过防护。9.6 二次校验解析 IP获取域名解析后的真实 IP二次校验 IP 是否为内网 / 本地地址杜绝 DNS 重绑定绕过。9.7 禁用危险函数代码层面禁止file_get_contents、curl任意协议读取限制函数协议能力。9.8 内网防火墙隔离服务器内网端口做好防火墙策略禁止本机内网端口互通访问兜底防护。十、新手常见误区高频踩坑❌ 误区 1SSRF 只能访问 HTTP 网站错SSRF 最强的是 Gopher、File 协议可读文件、控内网服务、拿服务器权限。❌ 误区 2拦截 127.0.0.1 就可以防御 SSRF错进制转换、域名跳转、DNS 重绑定均可轻松绕过。❌ 误区 3SSRF 危害不如上传、注入错普通漏洞拿网站权限SSRF 可以拿下整台服务器和内网权限。❌ 误区 4无回显 SSRF 没有利用价值错盲 SSRF 可以扫描内网、写入定时任务、反弹 Shell。十一、SRC 标准漏洞报告模板漏洞名称服务端请求伪造漏洞SSRF漏洞描述网站远程资源抓取功能用户可控 URL 参数未做内网 IP、高危协议、高危端口过滤存在 SSRF 服务端请求伪造漏洞。攻击者可构造恶意地址让服务器主动访问内网资源、读取本地文件、扫描内网端口、探测内网服务严重威胁服务器及内网安全。复现步骤找到网站远程 URL 抓取功能传入恶意内网地址http://127.0.0.1页面成功返回本地服务数据证明服务端可主动访问内网进一步使用 file 协议读取服务器本地敏感文件漏洞验证成功。漏洞危害攻击者可利用该漏洞探测内网存活主机、扫描内网高危端口、读取服务器本地配置文件、窃取云服务器密钥、对内网服务发起攻击实现内网横向渗透接管服务器权限。修复建议禁用 file、gopher、dict 等高危协议仅放行 HTTP/HTTPS拦截所有内网网段、本地回环地址、云元数据地址采用可信域名白名单机制拒绝任意外网地址限制请求端口仅放行 80/443 常规端口关闭服务端自动跟随 302 跳转功能对域名解析后的真实 IP 做二次校验防止 DNS 绕过。结尾SSRF 是 Web 安全从单点漏洞走向内网渗透的分水岭是高阶安全选手必备的核心能力。相比于 XSS、CSRF 这类前端漏洞SSRF 攻击层级更高、利用场景更广、实战价值更大也是各大 SRC 高分漏洞、红蓝对抗核心突破口。掌握 SSRF 的核心不是死记 Payload而是理解服务器替用户发起请求、突破边界、穿透内网的核心逻辑熟练掌握协议利用、绕过思路、内网攻击链路就能打通外网渗透内网的完整通道。Web 安全全套漏洞系列持续更新中后续继续更新代码执行、命令注入、逻辑漏洞、反序列化等全套高阶漏洞。喜欢本文可以点赞、收藏、关注持续跟进全网最细 Web 安全实战教程如何系统学习网络安全网络安全作为数字时代的核心技术基石已成为保障各行业安全稳定运行的坚实屏障。筑牢网络安全的防线掌握先进的防护策略和技能正上升为国家与企业发展的战略优先级。构建稳固的网络安全能力是一个体系的工程需要从夯实基础理论出发持续深化到攻防对抗与应急响应的实战层面。如果你是准备学习网络安全黑客或者正在学习我可以把我自用的360独家内部资料分享给你包含以下内容你应该能用得上①网络安全学习路线②20份渗透测试电子书③安全攻防357页笔记④50份安全攻防面试指南⑤安全红队渗透工具包⑥网络安全必备书籍⑦100个漏洞实战案例⑧安全大厂内部视频资源⑨历年CTF夺旗赛题解析一、网络安全黑客学习路线网络安全黑客学习路线形成网络安全领域所有的知识点汇总它的用处就在于你可以按照上面的知识点去找对应的学习资源保证自己学得较为全面。二、网络安全教程视频我们在看视频学习的时候不能光动眼动脑不动手比较科学的学习方法是在理解之后运用它们这时候练手项目就很适合了。三、网络安全CTF实战案例光学理论是没用的要学会跟着一起敲要动手实操才能将自己的所学运用到实际当中去这里带来的是CTFSRC资料HW资料毕竟实战是检验真理的唯一标准嘛~四、网络安全面试题最后我们所有的作为都是为就业服务的所以关键的临门一脚就是咱们的面试题内容所以面试题板块是咱们不可或缺的部分这里我给大家准备的就是我在面试期间准备的资料。网安其实不难难的是坚持和相信自己我的经验是既然已经选定网安你就要相信它相信它能成为你日后进阶的高效渠道这样自己才会更有信念去学习才能在碰到困难的时候坚持下去。机会属于有准备的人这是一个实力的时代。人和人之间的差距不在于智商而在于如何利用业余时间只要你想学习什么时候开始都不晚不要担心这担心那你只需努力剩下的交给时间这份完整版的网络安全学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
返回列表