CSRF 与 SSRF 实战区分,附挖掘思路与防御方案

发布时间:2026/9/30 0:11:21
CSRF 与 SSRF 实战区分,附挖掘思路与防御方案 CSRF 与 SSRF 实战区分附挖掘思路与防御方案前言很多刚入行做 Web 渗透、漏洞挖掘的朋友很容易把 CSRF 和 SSRF 搞混两个名字都带 “请求伪造”但攻击主体、攻击链路、危害场景完全不同。CSRF跨站请求伪造是用户浏览器帮攻击者发起请求利用用户已登录的身份SSRF服务端请求伪造是目标服务器帮攻击者发起请求利用服务器在内网中的网络位置。在 SRC 漏洞挖掘、渗透测试过程中经常会遇到这两类漏洞但是测试方法、Payload、修复方案完全不一样。本文从原理、实战案例、快速区分技巧、挖掘思路、常见绕过到生产环境防御方案一次性讲清楚适合渗透测试、代码审计、安全开发学习。免责声明本文技术内容仅用于已获得书面授权的安全测试、网络安全学习。严禁在未授权业务系统上进行漏洞探测与攻击未经授权的测试行为违反网络安全相关法律法规。0x01 CSRF 跨站请求伪造原理全称 Cross-Site Request Forgery跨站请求伪造。核心本质利用浏览器自动携带 Cookie 的特性诱导已登录用户在不知情的情况下发起非预期请求。攻击完整流程用户登录目标网站 A浏览器保存网站 A 的 Session Cookie用户没有关闭浏览器访问攻击者搭建的恶意网站 B恶意页面中的图片、表单、JS 自动发起请求访问网站 A 的接口浏览器自动带上网站 A 的 Cookie网站 A 收到请求认为是用户本人操作执行请求。关键点攻击者拿不到用户 Cookie只是利用浏览器自动携带 Cookie 的机制。典型业务场景修改个人邮箱、修改密码、绑定手机号提交表单、发布文章后台添加管理员、转账操作GET 型接口shturl.cc/SUBOh0NK1EsQUtwrXiSxwRT95yh0vAjdbtOk1FBi放在 img 标签中用户访问页面自动触发。简单恶意 POC 页面示例img srchttp://test.com/user/setemail?emailattackerhack.com用户打开这个 HTML 页面浏览器自动请求该地址携带 Cookie直接修改邮箱。POST 型 CSRF 表单 POCform actionhttp://test.com/user/changePwd methodPOST input typehidden namepassword value123456 /form scriptdocument.forms[0].submit()/scriptCSRF 利用前提缺一不可用户已经登录目标站点Cookie 有效接口仅依靠 Cookie 做身份认证没有 CSRF Token、验证码、二次密码校验攻击者可以诱导用户访问恶意页面。0x02 SSRF 服务端请求伪造原理全称 Server-Side Request Forgery服务端请求伪造。核心本质业务服务存在远程请求功能用户可控 URL 传入后端服务器主动去访问这个 URL。攻击者借服务器作为跳板访问外网无法直达的内网资源。攻击完整流程业务接口接收用户传入的 URL 参数服务端发起网络请求拉取内容图片预览、网页摘要、webhook、图片代理攻击者传入内网地址、本地回环地址、云元数据地址服务器在内网环境中访问目标地址拿到内网服务数据服务器将返回内容回显给攻击者有回显 SSRF或者通过时间、状态判断内网端口存活盲 SSRF。典型业务场景网页预览、URL 截图、RSS 订阅Webhook 回调地址自定义图片远程抓取、头像远程下载PDF 生成输入 URL 渲染页面。Payload 示例# 访问本机后台管理面板 ?urlhttp://127.0.0.1:8080/admin # 读取本地文件 ?urlfile:///etc/passwd # 云服务器元数据窃取AWS ?urlhttp://169.254.169.254/latest/meta-data/ # 内网端口扫描 ?urlhttp://192.168.1.100:3306SSRF 利用前提接口支持传入用户可控 URL后端使用 curl、file_get_contents 等函数发起请求没有对目标 IP、协议做严格过滤。0x03 CSRF 和 SSRF 快速对比实战区分表格对比项CSRF 跨站请求伪造SSRF 服务端请求伪造请求是谁发起受害者用户浏览器目标业务服务器信任对象网站信任用户 Cookie服务器信任外部传入的 URL攻击目标以用户身份执行业务操作改密码、新增管理员内网主机、本地文件、云元数据、内网端口是否需要用户登录必须用户登录不需要用户登录只需要接口存在攻击者能否直接访问目标攻击者不能直接执行用户操作需要欺骗用户访问页面攻击者直接提交请求不需要诱导其他人危害冒用用户身份执行业务操作篡改账号数据内网探测、读取本地文件、接管云服务器、内网服务攻击核心检测点请求是否携带随机 Token、Origin/Referer 校验URL 参数是否可控后端是否发起网络请求防御重心Token、SameSite Cookie、请求源校验IP 黑名单 / 白名单、协议限制、DNS 重绑定防护一句话区分记忆CSRF骗人浏览器代发包SSRF骗服务器服务器代发包。0x04 漏洞挖掘实战思路4.1 CSRF 挖掘思路重点寻找会修改业务状态的接口增删改操作查询类接口一般无危害。抓包观察修改密码、修改邮箱、新增用户、表单提交这类接口检查请求参数中是否存在 CSRF TokenToken 固定不变、可预测 → 存在漏洞完全没有 Token 字段仅依靠 Cookie 认证 → 大概率存在 CSRF检查请求源校验是否校验 Referer、Origin 请求头构造 POC 页面脱离目标站点在本地打开页面看操作是否成功执行优先级管理员接口 普通用户账号修改接口。CSRF 常见绕过场景Referer 校验缺陷仅判断 Referer 包含域名没有完全匹配允许 Referer 为空攻击者直接删除 Referer 头绕过Token 只在前端隐藏后端不校验只是前端展示。注意如果接口使用 Token 放在请求头JWT、Authorization且不是自动由浏览器 Cookie 携带通常可以抵御 CSRF。4.2 SSRF 挖掘思路寻找业务中输入 URL服务器去拉取资源的功能点。寻找参数名url、link、preview、webhook、imgurl、fetch基础测试传入http://127.0.0.1观察返回内容、响应时间、状态码变化协议测试file://读取本地文件gopher://、dict://拓展攻击IP 绕过测试域名 DNS 重绑定IP 进制转换127.0.0.1 转为十进制、八进制0.0.0.0、::1 等特殊回环地址区分有回显 SSRF、盲 SSRF盲 SSRF 无返回内容依靠请求延时判断端口是否开放云环境额外测试云元数据地址是高危 SSRF 常见收益点。SSRF 常见绕过场景黑名单过滤127.0.0.1但是不过滤域名解析到内网 IPDNS 重绑定只过滤 http 协议没有禁用 file、gopher 协议只在前端做 URL 过滤后端没有校验过滤localhost但是没有过滤0.0.0.0、IP 简写。0x05 实战中容易踩的误区❌误区 1名字都叫请求伪造原理一样完全不同。CSRF 攻击依赖受害者浏览器必须社工诱导用户SSRF 攻击者直接发包不需要任何人参与。❌误区 2GET 请求才有 CSRFPOST 不存在POST 表单同样存在 CSRF只是构造 POC 稍微复杂很多后台 POST 接口经常出现。❌误区 3SSRF 只能访问 http 协议如果后端没有限制协议file 读取本地文件gopher 可以对内网 Redis、Mysql 发送指令危害极大。❌误区 4SSRF 只需要过滤 127.0.0.1 就安全黑名单不可靠攻击者可以使用域名解析、IP 编码绕过推荐白名单域名。❌误区 5加了 Cookie 就一定存在 CSRF如果 Cookie 设置SameSiteStrict或者接口使用自定义请求头 TokenCSRF 很难利用。0x06 安全防御方案CSRF 防御方案开发落地CSRF Token推荐首选用户会话生成随机唯一 Token放入表单或者请求头后端每次提交必须校验 Token 和会话绑定。要点每次会话刷新 Token不能固定 Token。Cookie SameSite 属性设置 CookieSameSiteStrict或者 Lax跨站场景浏览器不会自动携带 Cookie现代浏览器原生防护 CSRF。校验 Origin / Referer 请求头校验请求来源域名拒绝非可信域名的跨站请求。注意不能只做黑名单同时兼容 Referer 为空的风险。高危操作增加二次验证修改密码、转账、新增管理员增加短信验证码、旧密码二次确认。高危操作禁止使用 GET 方法GET 请求容易被图片、链接触发 CSRF。SSRF 防御方案开发落地优先使用域名白名单拒绝 IP 字面量只允许业务可信的外部域名不允许用户直接输入 IP 地址。协议白名单限制只开放 http/https禁用file://、gopher://、dict://等危险协议。禁止访问内网网段、回环地址解析域名之后拿到真实 IP解析完成再做 IP 校验抵御 DNS 重绑定不能只对输入字符串做黑名单。限制请求超时、重定向次数限制最大重定向次数比如最多 1 次防止跳转绕 IP 过滤设置短超时防止内网端口扫描。网络层面隔离服务器出站防火墙禁止业务服务器访问内网、元数据网段业务优化能让前端直接拉取图片就不要后端中转代理从根源消除 SSRF 风险。0x07 总结CSRF 和 SSRF 虽然名字相似但攻击链路完全相反CSRF 是借用户浏览器身份执行操作攻击的是用户会话信任SSRF 是借服务器的内网网络位置攻击服务器对外部 URL 的信任。在漏洞挖掘时快速判断需要骗用户打开页面的优先考虑 CSRF输入 URL、服务器去访问资源的优先考虑 SSRF。防御上CSRF 核心是增加请求合法性校验区分是否用户真实操作SSRF 核心是严格限制服务器出站访问目标使用白名单代替黑名单。一句话记住CSRF 骗浏览器代用户操作SSRF 骗服务器去访问内网。最后关于网络安全技术储备学好网络安全不论是就业还是做副业赚钱都不错但要学会网络安全还是要有一个学习规划。最后大家分享一份全套的网络安全学习资料给那些想学习网络安全的小伙伴们一点帮助对于0基础小白入门如果你是零基础小白想快速入门网络安全是可以考虑的。一方面是学习时间相对较短学习内容更全面更集中。二方面是可以找到适合自己的学习方案包括网安成长学习路线图、SRC黑客文档、护网行动、黑客必读书单、面试题、学习视频等教程。带你从零基础系统性的学好网络安全需要的可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】1.成长路线图学习规划要学习一门新的技术作为新手一定要先学习成长路线图方向不对努力白费。对于从来没有接触过网络安全的同学我们帮你准备了详细的学习成长路线图学习规划。可以说是最科学最系统的学习路线大家跟着这个大的方向学习准没问题。2.网安入门到进阶视频教程很多朋友都不喜欢晦涩的文字我也为大家准备了视频教程其中一共有21个章节每个章节都是当前板块的精华浓缩。全套教程文末领取哈3.SRC黑客文档大家最喜欢也是最关心的SRC技术文籍黑客技术也有收录SRC技术文籍黑客资料由于是敏感资源这里不能直接展示哦全套教程文末领取哈4.护网行动资料其中关于HW护网行动也准备了对应的资料这些内容可相当于比赛的金手指5.黑客必读书单随着互联网技术的飞速发展网络安全已经成为了当今科技领域的一大热点。这些SQL注入、CCNA、Web渗透、Linux服务器等以其强大的语言理解和防御能力正在守护着我们网络世界。 那以下这些PDF籍就是非常不错的学习资源。6.网络安全岗面试题合集当你自学到这里你就要开始思考找工作的事情了而工作绕不开的就是真题和面试题。这份完整版的网络安全学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】