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首先当我们作为攻击者时可以在网站上进行测试

1.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

 2.CSRF(post型)

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

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

 2.抓取数据包

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

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

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

查看数据改变了

3.CSRF修改密码

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

 

 4.CSRF骗取金钱

首先登录到转账页面

抓取数据包

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

 

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

 

七、CSRF漏洞的防护

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

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

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

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

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

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

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

访问控制安全管理:

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

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

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

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一句话木马

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值