常见web漏洞总结------CSRF

目录

CSRF 跨站请求伪造

需要满足条件:(举个例子来说)

 CSRF攻击过程:

如何确定存在CSRF漏洞:

CSRF漏洞检测:

常见的CSRF防范措施

Token是如何让防止CSRF的

CSRF和XSS的区别


CSRF 跨站请求伪造

CSRF指攻击者盗用了你的身份,以你的名义发送恶意请求。

Cross-site request forgery简称为"CSRF" 。
在CSRF的攻击场景中攻击者会伪造一个请求 (这个请求一般是一个链接)
然后欺骗目标用户进行点击,用户一旦点击了这个请求,整个攻击也就完成了。
所以CSRF攻击也被称为为' one click”攻击。

因此    CSRF也叫一次性点击攻击     (攻击个能是篡改   删除  新增)

需要满足条件:(举个例子来说)

1. 开发人员对购物网站的个人信息没有进行防CSRF的处理,导致该请求容易被伪造

2. 用户 在登陆了后台的情况下,点击了 黑客 发送的“埋伏“链接

 CSRF攻击过程:

常见web漏洞总结------CSRF_第1张图片

常见web漏洞总结------CSRF_第2张图片

如何确定存在CSRF漏洞:

判断对其关键信息(比如密码等敏感信息)的操作(增删改)是否容易被伪造

1. 对目标网站增删改的地方进行标记,观察逻辑(抓包),判断请求是否可以被伪造

如 修改账号密码是时  需要进行旧密码的验证    就导致请求容易被伪造

(自己注册账号修改)

如 对于敏感信息没有使用安全的token验证  导致请求容易被伪造

(抓包看有没有token(随机的  较长的字符串  每次验证都会变化))

2.确认凭证的有效期(这个问题会提高CSRF被利用的概率)

虽然推出或者了浏览器,但cookie任然有效,或者session没有及时过期,导致CSRF攻击变简单

应为有个条件 用户 需要登录账号

CSRF漏洞检测:

检测CSRF漏洞是一项比较繁琐的工作,最简单的方法就是抓取一个正常请求的数据包,去掉Referer字段后再重新提交,如果该提交还有效,那么基本上可以确定存在CSRF漏洞。

随着对CSRF漏洞研究的不断深入,不断涌现出一些专门针对CSRF漏洞进行检测的工具,如CSRFTester,CSRF Request Builder等。

以CSRFTester工具为例,CSRF漏洞检测工具的测试原理如下:使用CSRFTester进行测试时,首先需要抓取我们在浏览器中访问过的所有链接以及所有的表单等信息,然后通过在CSRFTester中修改相应的表单等信息,重新提交,这相当于一次伪造客户端请求。如果修改后的测试请求成功被网站服务器接受,则说明存在CSRF漏洞,当然此款工具也可以被用来进行CSRF攻击。
 

常见的CSRF防范措施

1. 增加token验证

2. 关于安全的会话管理(破坏登录态)

3. 访问控制安全管理(只能是本域,不能是其他域)

       修改信息 二次验证

       敏感信息 用post传输

       通过http头中referer字段来限制元页面

4. 在 HTTP 头中自定义属性并验证

Token是如何让防止CSRF的

CSRF的主要问题实际上时敏感信息的操作    请求容易被伪造

token长度足够、足够随机,这个码是不容易被伪造的

后台每次都会对这个随机码(token)进行验证

每次请求这个页面的时候(修改个人信息)

都需要验证token

Token使用一次失效  重新生成  很难伪造

CSRF和XSS的区别

CSRF:攻击者借助用户的权限来完成攻击(攻击者并没有拿到用户的权限)

XSS:直通通过获取cookie拿到用户权限

这两个漏洞其实没有可比性(不是一个为维度的问题)

 

 

你可能感兴趣的