API重放攻击(Replay Attacks)又称重播攻击、回放攻击,这种攻击会不断恶意或欺诈性地重复一个有效的API请求。攻击者利用网络监听或者其他方式盗取API请求,进行一定的处理后,再把它重新发给认证服务器,是黑客常用的攻击方式之一。
HTTPS数据加密是否可以防止重放攻击?

否,加密可以有效防止明文数据被监听,但是却防止不了重放攻击。
使用签名防止重放攻击

使用签名之后,可以对请求的身份进行验证。但不同阻止重放攻击,即攻击者截获请求后,不对请求进行任何调整。直接使用截获的内容重新高频率发送请求。

API网关提供了一套有效防止重放攻击的方法。开启API网关的放重放,需要您使用“阿里云APP”的认证方式。通过这种签名认证方式,每个请求只能被使用一次,从而防止重放。

阿里云APP:是基于请求内容计算的数字签名,用于API网关识别用户身份。客户端调用API时,需要在请求中添加计算的签名。API网关在收到请求后会使用同样的方法计算签名,同用户计算的签名进行比较,相同则验证通过,不同则认证失败。这种认证的签名方式请参照:请求签名

在API网关的签名中,提供X-Ca-Timestamp、X-Ca-Nonce两个可选HEADER,客户端调用API时一起使用这两个参数,可以达到防止重放攻击的目的。
原理

请求所有的内容都被加入签名计算,所以请求的任何修改,都会造成签名失败。

不修改内容

X-Ca-Timestamp:发起请求的时间,可以取自机器的本地实现。当API网关收到请求时,会校验这个参数的有效性,误差不超过15分钟。

X-Ca-Nonce:这个是请求的唯一标识,一般使用UUID来标识。API网关收到这个参数后会校验这个参数的有效性,同样的值,15分钟智能被使用一次。

最新文章

  1. Console app 里的依赖注入及其实例生命周期
  2. [JS]Ext最新GPL版
  3. asp.net mvc4 使用 System.Web.Optimization 对javascript和style的引入、代码合并和压缩的优化(ScriptBundle,StyleBundle,Bundling and Minification )
  4. Nginx 简介
  5. 【JavaScript】常用方法
  6. 如何使用SAE的Storage
  7. Perl 中 Pod 的基本用法。
  8. Docker 使用指南 (一)—— 基本操作
  9. DevExpress控件使用系列--ASPxUploadControl(图片上传及预览)
  10. 安全接口 interface --显示实现接口
  11. JavaScript对象应用-字符串和图片对象
  12. Objective-C MRC多个对象相互引用的内存管理
  13. js中return、return true、return false的区别
  14. js 模板引擎 - 超级强大
  15. strcpy_s
  16. Java课设-购物车系统
  17. DOM操作基本用法
  18. ETC(电子不停车收费系统)的发展演变
  19. Python socketserver ftp功能简单讲解
  20. 在vue中使用后台提供 的token验证方式总结及使用方法

热门文章

  1. mAP(mean Average Precision)应用(转)
  2. 20190430-screen、client、offset、scroll等JS中各种宽度距离
  3. 转 JSON在PHP中的基本应用
  4. openerp学习笔记 日期时间相关操作
  5. bug缺陷级别定义
  6. VMware Workstation pro14 虚拟机下安装CentOS6.5图文教程
  7. 【随笔】win7下安装Apache服务器
  8. java多线程开发之CyclicBarrier,CountDownLatch
  9. uwsgi错误invalid request block size
  10. iostat命令——监控系统设备的IO负载情况