接口安全性测试技术(7):CRSF及接口防刷技术

在这里插入图片描述

什么是CRSF
CSRF(Cross-site request forgery)即跨站请求攻击。简单的说,是攻击者通过一些技术手段欺骗用户的浏览器去访问一个自己以前认证过的站点并运行一些操作(如发邮件,发消息,甚至财产操作(如转账和购买商品))。因为浏览器之前认证过,所以被访问的站点会觉得是这是真正的用户操作而去运行。

这就利用了web中用户身份认证验证的一个漏洞:简单的身份验证仅仅能保证请求发自某个用户的浏览器,却不能保证请求本身是用户自愿发
出的。
其实可以这么理解CSRF攻击:攻击者盗用了你的身份,以你的名义发送恶意请求。CSRF能够做的事情包含:以你的名义发送邮件;发消息;盗
取你的账号;甚至于购买商品、虚拟货币转账…造成的问题包含个人隐私泄露以及财产安全。
CRSF防御
检查HTTP Referer首部是否同域
限制Session Cookie的生命周期
使用验证码
使用一次性token
接口防刷技术解析

  1. 网关控制流量洪峰,对在一个时间段内出现流量异常,可以拒绝请求;

  2. 源ip 请求个数限制。对请求来源的ip 请求个数做限制;

对单个用户/ip限制每分钟最多提交的次数。实现方式有多种,常用的方式是记录单次提交成功的单个用户/ip放到mc/redis里面,然后给mc设定2分钟的缓存时间。下次该用户/ip提交数据的时候先查mc是否已过期,没过期,则不给提交。

  1. http 请求首部字段进行校验;

例如Host , User-Agent , Referer 等

  1. 对用户唯一身份uid进行限制和校验。例如基本的长度,组合方式,甚至有效性进行判断。或者uid具有一定的时效性;

  2. 前后端协议采用二进制方式进行交互或者协议采用签名机制;

  3. 人机验证

各种验证码(短信验证码、语音验证码、问题类验证码、读取式验证码、字符/图片类验证码、点触式验证码、视频验证码、行为式验证码、拖动式验证码等)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值