Web安全-CSRF

前言

Cross-site request forgery 简称为“CSRF”,中文名为跨站请求伪造。在CSRF的攻击场景中攻击者会伪造一个请求(这个请求一般是一个链接,用来触发目标网站的服务),然后欺骗目标用户进行点击,用户一旦点击了这个请求,整个攻击就完成了。

满足攻击的条件

  1. 用户已登录目标网站。如果有没有登录,调用的时候可能会提示先登录
  2. 有调用目标网站的服务

攻击方式

拿到目标网站服务调用的地址,写好参数,欺骗目标用户点击,触发服务调用。
如:
http://localhost/pikachu/vul/csrf/csrfget/csrf_get_edit.php?phonenum=132367738&submit=submit
上面这个是用GET方式修改用户手机号码的地址,然后我们伪造一个链接:
<a href='http://localhost/pikachu/vul/csrf/csrfget/csrf_get_edit.php?phonenum=18567886521&submit=submit'>登录</a>
欺骗用户点击,一旦点击了,资料就会改成我们链接里的手机号码。这个例子举得比较简单,正常修改号码都会要提供验证码

防御

修改功能要增加

  1. 增加验证码,调用时验证。但是会增加用户的成本,每次都要填写
  2. 在HTTP Header 增加csrf-token。推荐
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值