webcheck是什么程序 webcheck可疑项目处理方法
目录:一、CSRF介绍CSRF(Cross-site request forgery)
一、CSRF介绍
二、CSRF攻击的危害
三、CSRF攻击原理及过程
四、CSRF漏洞检测
五、CSRF漏洞预防
六、最后聊聊xss
跨站请求伪造,也被称为“OneClick Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用 。

文章插图

文章插图

文章插图

文章插图

文章插图

文章插图

文章插图

文章插图
这样就可以解决了,有人会问为什么要加多一层iframe,因为不嵌iframe页面会重定向,这样就降低了攻击的隐蔽性 。另外我们test页面不使用XMLHTTPRequest发送POST请求,是因为有跨域的问题,而form可以跨域post数据 。
进阶版:
假如博客园还是有个加关注的接口,已经限制POST,但博文内容是直接贴进HTML(未过滤),那就遭受XSS攻击 。那么就可以直接把上面代码嵌入博文,那么只要有人打开我这篇博文,还是会自动关注我,这组合攻击方式称为XSRF 。
四、CSRF漏洞检测检测CSRF漏洞是一项比较繁琐的工作,最简单的方法就是抓取一个正常请求的数据包,去掉Referer字段后再重新提交,如果该提交还有效,那么基本上可以确定存在CSRF漏洞 。
随着对CSRF漏洞研究的不断深入,不断涌现出一些专门针对CSRF漏洞进行检测的工具,如CSRFTester,CSRF Request Builder 。
以CSRFTester工具为例,CSRF漏洞检测工具的测试原理如下:
使用CSRFTester进行测试时,首先需要抓取我们在浏览器中访问过的所有链接以及所有的表单等信息,然后通过在CSRFTester中修改相应的表单等信息,重新提交,这相当于一次伪造客户端请求 。如果修改后的测试请求成功被网站服务器接受,则说明存在CSRF漏洞,当然此款工具也可以被用来进行CSRF攻击 。
五、CSRF漏洞防御目前防御 CSRF 攻击主要有三种策略:验证 HTTP Referer 字段;在请求地址中添加 token 并验证;在 HTTP 头中自定义属性并验证 。
1、尽量使用POST,限制GET
GET接口太容易被拿来做CSRF攻击,看第一个示例就知道,只要构造一个img标签,而img标签又是不能过滤的数据 。
接口最好限制为POST使用,GET则无效,降低攻击风险 。
当然POST并不是万无一失,攻击者只要构造一个form就可以,但需要在第三方页面做,这样就增加暴露的可能性 。
2、浏览器Cookie策略
IE6、7、8、Safari会默认拦截第三方本地Cookie(Third-party Cookie)的发送 。
但是Firefox2、3、Opera、Chrome、Android等不会拦截,所以通过浏览器Cookie策略来防御CSRF攻击不靠谱,只能说是降低了风险 。
PS:Cookie分为两种
Session Cookie(在浏览器关闭后,就会失效,保存到内存里),
Third-party Cookie(即只有到了Exprie时间后才会失效的Cookie,这种Cookie会保存到本地) 。
PS:另外如果网站返回HTTP头包含P3P Header,那么将允许浏览器发送第三方Cookie 。
3、加验证码
验证码,强制用户必须与应用进行交互,才能完成最终请求 。在通常情况下,验证码能很好遏制CSRF攻击 。
但是出于用户体验考虑,网站不能给所有的操作都加上验证码 。
因此验证码只能作为一种辅助手段,不能作为主要解决方案 。
4、Referer Check
Referer Check在Web最常见的应用就是“防止图片盗链” 。
同理,Referer Check也可以被用于检查请求是否来自合法的“源”(Referer值是否是指定页面,或者网站的域),如果都不是,那么就极可能是CSRF攻击 。
但是因为服务器并不是什么时候都能取到Referer,所以也无法作为CSRF防御的主要手段 。
但是用Referer Check来监控CSRF攻击的发生,倒是一种可行的方法 。
5 、Anti CSRF Token
现在业界对CSRF的防御,一致的做法是使用一个Token(Anti CSRF Token) 。
例子:
1、用户访问某个表单页面 。
2、 服务端生成一个Token,放在用户的Session中,或者浏览器的Cookie中 。
- 12mis含义是什么
- 10h是什么意思
- 核数是什么意思
- 12个月花歌谣是什么
- 14点30分是什么时辰
- x和xs外观区别是什么
- 12349服务平台是什么
- nimh是什么电池
- iphone11pro max用的是什么基带
- 暮然回首上一句是什么
