一、CSRF漏洞原理* *
CSRF(Cross-Site Request Forgery,跨站点伪造请求)是一种网络攻击方式,该攻击可以在受害者毫不知情的情况下以受害者名义伪造请求发送给受攻击站点,从而在未授权的情况下执行在权限保护之下的操作,具有很大的危害性。
具体来讲,可以这样理解CSRF攻击:攻击者盗用了你的身份,以你的名义发送恶意请求,对服务器来说这个请求是完全合法的,但是却完成了攻击者所期望的一个操作,比如以你的名义发送邮件、发消息,盗取你的账号,添加系统管理员,甚至于购买商品、虚拟货币转账等。
二、CSRF场景
修改个人数据(横向越权)
添加用户(纵向越权)等
三、CSRF常出现业务
CSRF一般用于操作用户的资源,或者使用用户的权限进行操作,或者窃取用户的相关信息。
可以这么理解CSRF攻击:攻击者盗用了你的身份,以你的名义发送恶意请求。
四、CSRF比XSS更具危险性?
CSRF不一定比XSS更有危险性。CSRF能完成的事,XSS更能够完成;XSS能完成的事,CSRF不一定能做到。
五、CSRF的最佳利用方式
CSRF给电商用户新增默认收货地址、发微博、添加管理员等到,所有的敏感操作都可以是CSRF的攻击目标,也就是说,所有敏感操作都需要进行CSRF的防护
六、CSRF的防护方案
CSRF的防护,主要是referer限制,token、或验证码。甚至非常敏感的操作更应该要使用短信验证这种方式,另外,防护手段可以加上一条:多使用post方式获取参数,进行敏感功能。如果你的请求仅仅是ajax请求,那么还有些别的防护手段。比如校验X-Requested-With头。跨域的form表单提交是伪造不了这个ajax请求头。甚至你可以在ajax中
安全需要打组合拳,各个部分都需要兼顾到,比如严格的日志系统,这个在企业防护CSRF中,算是事后防护了,能甄别一定的CSRF攻击。
七、CSRF漏洞自动化探测
1、手动探测原理
手动探测原理在于探测web应用程序具有防止CSRF的措施。
如果Web应用程序的HTTP请求中没有对应的预防措施,那么很大程度上就确定存在CSRF漏洞。
2、自动化探测工具介绍
CSRFTester是一款CSRF漏洞的测试工具。
CSRFTester工具的测试原理大概是这样的,使用代理抓取我们在浏览器中访问过的所有的连接以及所有的表单等信息,通过在CSRFTester中修改相应的表单等信息,重新提交,相当于一次伪造客户端请求,如果修测试的请求成功被网站服务器接受,则说明存在CSRF漏洞,当然此款工具也可以被用来进行CSRF攻击。
- 设置浏览器代理:127.0.0.1:8008
- 登录Web应用程序,提交表单,在CSRF工具中修改表单内容,查看是否更改,如果更改表面存在CSRF漏洞。
- 生产POC代码。
学习计划安排
我一共划分了六个阶段,但并不是说你得学完全部才能上手工作,对于一些初级岗位,学到第三四个阶段就足矣~
这里我整合并且整理成了一份【282G】的网络安全从零基础入门到进阶资料包,需要的小伙伴可以扫描下方CSDN官方合作二维码免费领取哦,无偿分享!!!
如果你对网络安全入门感兴趣,
那么你需要的话可以点击这里网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!
①网络安全学习路线
②上百份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥HW护网行动经验总结
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析