文章总结: 本文介绍了CSRF跨站请求伪造漏洞的原理与成因,重点解析了利用浏览器自动携带Cookie及缺乏来源验证的攻击机制。通过PortSwigger靶场实例,演示了无防御环境及Token验证绕过的具体利用过程,建议开发者重视CSRFToken防护,提升应用安全性。 综合评分: 79 文章分类: WEB安全,漏洞分析,渗透测试
你知道CSRF漏洞吗?
原创
Caigensec
菜根网络安全杂谈
2025年1月14日 13:35 安徽
点击标题下「蓝色微信名」可快速关注
免责声明:本文仅用于合法范围的学习交流,若使用者将本文用于非法目的或违反相关法律法规的行为,一切责任由使用者自行承担。请遵守相关法律法规,勿做违法行为!本公众号尊重知识产权,如有侵权请联系我们删除。
01
CSRF漏洞介绍
1、CSRF简介
CSRF(Cross-Site Request Forgery),跨站请求伪造。它是一种网络安全漏洞,攻击者通过诱导用户访问恶意网站,利用用户当前已登录的身份在被攻击的网站(目标网站)执行非用户本意的操作。
2、CSRF漏洞利用流程
3、CSRF漏洞产生原因
(1)信任用户的浏览器行为
浏览器自动发送认证凭据:当用户登录一个网站后,浏览器会保存该网站的认证信息,如 Cookie。在后续访问同一网站的其他页面或者相关接口时,浏览器会自动将这些认证信息包含在请求中发送给服务器。而 CSRF 攻击正是利用了这一点。
缺乏对请求来源的有效验证:浏览器本身不会区分请求是来自合法的用户操作还是来自恶意网站的诱导。它只是按照规则发送请求,而服务器如果没有采取措施来验证请求的真正来源,就容易受到 CSRF 攻击。
(2)网站应用程序设计缺陷
可预测的请求参数:如果网站的请求参数是可预测的,攻击者就更容易构造恶意请求。攻击者可以通过猜测或者分析,了解到这个接口的参数格式,然后在恶意网站中构造类似的请求来修改用户密码。而且,如果这个接口没有其他防护措施,就很容易被利用进行 CSRF 攻击。
对重要操作缺乏保护机制:对于一些重要的操作,如修改用户账户信息、执行财务交易等,如果没有这些措施,并且没有防范 CSRF 攻击的机制,如 CSRF 令牌,攻击者就可以轻易地利用用户的登录状态进行恶意操作。
同源策略的不恰当应用或绕过:虽然浏览器有同源策略来限制不同源的脚本交互,但 CSRF 攻击可以在一定程度上绕过这个策略。
02
CSRF漏洞练习
本次练习使用的靶场是portswigger,需要注册登录才能使用。篇幅有限,这里只演示两个关卡。
靶场链接:https://portswigger.net/web-security/csrf
每个关卡都有参考的解题步骤(Solution)
1、Lab: CSRF vulnerability with no defenses
链接:https://portswigger.net/web-security/csrf/lab-no-defenses
(1)点击ACESS THE LAB进入实验,看一下本关用到的账号密码
(2)使用靶场提供的账号密码登录,发现这一关是构造恶意链接更改用户的邮箱
(3)填入要更形的邮箱地址,抓包,在Burp右键选择Engagement Tools-Generate CSRF PoC
(4)如果要更改邮箱地址,点击Regenerate,然后点击Copy HTML,在Burp把抓到的包丢弃掉
(5)回到靶场,点击Go to exploit server,在新页面打开
(6)把生成的CSRF PoC复制到body中,点击Store,View exploit,刷新邮箱页面,发现邮箱已经更新了
2、Lab: CSRF where token validation depends on request method
链接:https://portswigger.net/web-security/csrf/bypassing-token-validation/lab-token-validation-depends-on-request-method
从这个token validation depends on request method标题就可以看出这一关是通过改变请求方式构造CSRF POC
(1)还是和上一关一样登录账号和抓包,可以看到这里用的是POST请求方法
(2)右键选择Change request method
(3)在右键选择Engagement Tools-Generate CSRF PoC,之后和上一关的步骤一致,不多赘述,把PoC内容复制,点击Deliver exploit to victim
(4)页面提示实验已经被解决
(5)点击View exploit更改邮箱,如果提示”That email is not available”,更改一下邮箱后缀
(6)邮箱已成功更改
THE END
亲爱的朋友,若你觉得文章不错,请点击关注。你的关注是笔者创作的最大动力,感谢有你!
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:菜根网络安全杂谈 Caigensec《你知道CSRF漏洞吗?》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论