WEB安全-CSRF攻击原理

一、什么是CSRF漏洞的

跨站请求伪造(Cross-site request forgery),通常简称为CSRF或者XSRF。是一种通过借用用户的权限在网站上执行并非自己本意的操作。

二、CSRF漏洞具体可以干什么

以你的名义(发邮件;发消息;修改密码;转账;购买商品等)

三、CSRF成立的必要条件

1.受害者没有退出当前页面,也就是说cookie值没有过期。

2.受害者点击了攻击者所发送的恶意连接。

四、CSRF漏洞的原理

首先当用户登录并浏览一个可信网站时,攻击者发送一个恶意链接,用户在没有退出当前网站时 点击了恶意链接,恶意链接将数据以用户的名义提价到可信网站,达成攻击。

五、如何确定一个网站是否含有CSRF漏洞

1.对目标网站增删改的地方做标记,

例如修改密码需不需要旧密码,对敏感信息的修改有没有做token验证

2.确认凭证的有效期

六、CSRF漏洞的利用

1.CSRF(get)型

1.1首先当我们作为攻击者时可以在网站上进行测试

WEB安全-CSRF攻击原理_第1张图片

1.2当用户填好数据准备提交时,我们可以通过抓抱=包获取请求包的信息

WEB安全-CSRF攻击原理_第2张图片

1.3此时作为攻击者我们可以伪造url连接

payload:http://localhost/pikachu/vul/csrf/csrfget/csrf_get_edit.php?sex=curry&phonenum=88888888&add=pengyang&email=kobe%40pikachu.com&submit=submit HTTP/1.1

WEB安全-CSRF攻击原理_第3张图片

 2.CSRF(post型)

        由于有些参数通过post提交,所以参数不是在url连接中,这是我们可以伪造一个和用户浏览的一样的表单页面,让用户点击时参数自动提交。

1.当用户输入修改信息。

WEB安全-CSRF攻击原理_第4张图片

 2.抓取数据包

WEB安全-CSRF攻击原理_第5张图片

3.我们需要伪造一个表单

WEB安全-CSRF攻击原理_第6张图片

4.在用户没有退出页面时发送一个连接

payload:http://192.168.xx.1/post.html

查看数据改变了

WEB安全-CSRF攻击原理_第7张图片

3.CSRF修改密码

这个页面为修改密码的页面。存在CSRF漏洞,此时我们只需要伪造一个表单,在用户没有输入密码时点击CSRF恶意连接,即可自动更改密码

WEB安全-CSRF攻击原理_第8张图片 WEB安全-CSRF攻击原理_第9张图片

WEB安全-CSRF攻击原理_第10张图片

 4.CSRF骗取金钱

首先登录到转账页面

WEB安全-CSRF攻击原理_第11张图片

抓取数据包

WEB安全-CSRF攻击原理_第12张图片

发现为post型请求包,所以我们需要伪造一个表单。

WEB安全-CSRF攻击原理_第13张图片

 

让类型变为hidden,不让用户看到,其

WEB安全-CSRF攻击原理_第14张图片

WEB安全-CSRF攻击原理_第15张图片 

七、CSRF漏洞的防护

增加token验证(常用的做法):

1、对关键操作增加token参数,token值必须随机,每次都不一样;

操作原理:每次请求,都增加一个随机码(需要够随机,不容易伪造),后台每次对这个随机码进行验证!

关于安全的会话管理(避免会话被利用):

1、不要在客户端端保存敏感信息(比如身份认证信息);

2、测试直接关闭,退出时,会话过期机制;

3、设置会话过期机制,比如15分钟内无操作,则自动登录超时;

访问控制安全管理:

1、敏感信息的修改时需要对身份进行二次认证,比如修改账号时,需要判断旧密码;

2、敏感信息的修改使用post,而不是get;

3、通过http 头部中的referer来限制原页面,增加验证码:一般用在登录(防暴力破解),也可以用在其他重要信息操作的表单中(需要考虑可用性)

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(web安全,csrf,安全)