对于接口的安全性测试,这几点你掌握了吗?

 

接口防刷

1.为什么会有人要刷接口?
  • 牟利:黄牛在 12306 网上抢票再倒卖。

  • 恶意攻击竞争对手:如短信接口被请求一次,会触发几分钱的运营商费用,当量级大了也很可观。

  • 压测:用apache bench 做压力测试。

2.什么行为判定为刷接口?
  • 次数多

  • 频率频繁,可能 1 秒上千次

  • 用户身份难以识别:可能会在刷的过程中随时换浏览器或者 ip

3.如何判断用户粒度

根据当前网页

  • 缺点:没有任何意义,一刷新页面用户的身份就变了

根据session

  • 缺点:当用户手动清除 cookie 的时候即失效

根据ip

  • 优点:伪造成本高

  • 缺点:要考虑一个公司、一个小区的人一般会共享一个 ip,所以适当的要放宽对单一 ip 的请求限制

ip 信息是存在请求头里的,而 https 对请求本身做了加密,可以防止 ip 信息被伪造或篡改。所以推荐服务器采用https传输。

如何处理恶意请求

1. 业务逻辑上拒绝该用户参与
  • 例如限制用户登录,用户必须达到一定条件才可以(任务限制,金额限制,参与次数限制)

2.奖励发放的限制
  • 奖励每天发放次数限制,奖励每天发放总量限制,用户每天参与次数限制,用户每天获取总量限制

3.IP频率限制

通过 memcached 和 redis 都有成熟的方案。

Memcached教程:

https://www.runoob.com/memcached/memcached-tutorial.html

4. 验证码&短信限制

可以通过要求用户输入验证码or短信验证码验证用户真实性,但是也要保证短信接口不会被刷。

  • 优点:可以精准识别请求是真人还是机器发出的,二次筛选出真正的用户

  • 缺点:不够人性化,用户操作时间长、体验差

5.用户权限判断

基础的用户行为分析,就是结合业务逻辑,在代码实现层面对进行完善的用户权限判断。

从代码层次限制用户

6.防范XSS、CSRF、SQL注入攻击

这是常见的WEB接口安全防范手段,XSS、CSRF、SQL注入,对参数过滤转义,表单验证等等。

7.人工干预

以上方法需要结合使用才能提高安全和破解的难度,单独使用都有很容易破解的方法,除此之外,人工干预也是很重要的,一定要在后台观察数据,及时发现异常的数据并排查隐患。

 

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/12996.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

管仲故乡是颍川,何分颍上或颍下

第一仲父管仲,故乡在哪里?依然像许多名人故里一样存在争议,但是这个争议却很不一般,引出了一个大话题。 管子是安徽颍上县人,《史记》记载: “管仲,颍上人也。”颍上县有管鲍祠,是安徽省重点文物…

亚阈值电流镜

相同电流情况下,由于亚阈值区的gm较大,造成由于阈值电压Vth的失配造成的失配会更大,所以要规避过大的gm,选取较大的过驱动电压。 相同电流情况下,W/L的尺寸选的较小一点,或者说L一定时,W不要取得过大。 Q:Vgs一定的情况下,特别小,几乎小于Vth,一定是亚阈值电流镜吗。…

单位内部防泄密策略与技术实践

在信息时代,企业内部数据安全至关重要,尤其是涉及核心竞争力的重要文件,员工的不当操作或恶意泄露都可能给企业带来重大损失。本文将从制度建设、技术防护、以及日常管理三个方面入手,探讨如何构建一套行之有效的内部防泄密体系&a…

yolov8使用与训练步骤

第一:安装miniconda 网址:Index of /anaconda/miniconda/ 登录网址后 在网页按ctrF 输入:搜py38 Miniconda3-py38_22.11.1-1-Windows-x86_64.exe 52.5 MiB 2022-12-23 07:57 下载进行安装 安装过程中记得加环境变量这个项。 第二…

独家|暴雨推出基于国产X86芯片的四路服务器

伴随着智慧计算时代的到来和企业数字化转型的深入,人工智能、大数据、虚拟化等创新技术在应用普及的过程中,也在不断地细分和深化,使得企业的业务系统日趋复杂,数据量、数据类型更加庞大,对计算平台的性能要求“水涨船…

【强化学习】DQN类算法的一些理解

一、DQN算法为什么要使用两个网络? DQN算法通常包含两个网络:一个是评估网络training_network,另一个是目标网络target_network。这两个网络的结构和初始权重是相同的,但它们的权重是不同步更新的。使用两个网络的原因是为了稳定…

十款开源数据集成工具

在大数据作业开发中,数据集成工具是非常重要的一个环节,一个好的数据集成系统从可用性、架构扩展性、底层引擎选型、数据源支持能力等方面都需要一定的考量,在本文中汇总了十款开源的数据集成系统,作者本人在过往的开发过程中&…

Cache基本原理--以TC3xx为例(2)

目录 1.概述 2. Cache映射模式 3.DCache的数据一致性 4.小结 1.概述 上一篇Cache基本原理--以TC3xx为例(1)-CSDN博客,我们聊了Cache基本概念,接下来我们将继续聊Cache映射模式,DCache的数据一致性问题。 2. Cache映射模式 常见的Cache地…

粒子系统技术在AI去衣应用中的创新探索

引言: 随着计算机视觉和人工智能技术的飞速发展,AI去衣技术逐渐走进公众视野。这一技术以其独特的应用前景和技术挑战引起了广泛的关注。在实现衣物去除的同时保持图像质量的关键技术之一,便是粒子系统技术。本文将深入探讨粒子系统技术在AI去…

(C语言)队列实现与用队列实现栈

目录 1.队列 1.1队列的概念及结构 1.2 队列的实际应用联想 1.3队列的实现 2. 队列应用——队列实现栈 主要思路 1.队列 1.1队列的概念及结构 队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进…

2022 年高教社杯全国大学生数学建模竞赛-C 题 古代玻璃制品的成分分析与鉴别详解+聚类模型Python代码源码

前言 简单介绍一下我自己:博主专注建模四年,参与过大大小小数十来次数学建模,理解各类模型原理以及每种模型的建模流程和各类题目分析方法。参与过十余次数学建模大赛,三次美赛获得过二次M奖一次H奖,国赛二等奖。**提…

全网最全的Postman接口自动化测试!

该篇文章针对已经掌握 Postman 基本用法的读者,即对接口相关概念有一定了解、已经会使用 Postman 进行模拟请求的操作。 当前环境: Window 7 - 64 Postman 版本(免费版):Chrome App v5.5.3 不同版本页面 UI 和部分…

dbeaver 链接 Oceanbase 数据库,dbeaver安装数据库驱动

新增驱动 提前到Oceanbase官网下载好驱动 1、点击数据库 -> 驱动管理器 -> 新建 2、添加驱动文件 联接数据库 1、选择你添加的驱动 2、测试

Latex问题1

问题 添加bib文件的引用后 \bibliographystyle{IEEEtran} \bibliography{IEEEabrv}之后,出现莫名其妙的错误,如下 IEEEabrv.bib是我的参考文献的bib文件,CCS_1.tex是我的tex文件,bib文件中的内容为 ARTICLE{1,author{Capponi,…

Redis数据结构-RedisObject

1.7 Redis数据结构-RedisObject Redis中的任意数据类型的键和值都会被封装为一个RedisObject,也叫做Redis对象,源码如下: 1、什么是redisObject: 从Redis的使用者的角度来看,⼀个Redis节点包含多个database&#xff…

OpenHarmony 实战开发——使用分布式菜单创建点餐神器

随着社会的进步与发展,科技手段的推陈出新,餐饮行业也在寻求新的突破与变革,手机扫描二维码点餐系统已经成为餐饮行业的未来趋势,发展空间巨大;扫码点餐,是“互联网餐饮”潮流的产物,可以有效地…

学前端网络安全这块还不懂?细说CSRF

什么是CSRF? 举个栗子,比如我们需要在某个博客上删除一个文章,攻击者首先在自己的域构造一个页面,使用了一个img标签,其地址指向了删除博客的链接。攻击者诱使目标用户,也就是博客主访问这个页面&#xff…

SOP for Oracle 23ai:Python 连接 Oracle 的两种方法

前情回顾 前文介绍了如何使用 python-oracledb 连接 Oracle 23ai 数据库,并演示了如何使用独立连接方式。 其中提到了支持两种连接池: DRCP 和 PRCP。 本文将对这两种连接池做具体演示。 DRCP 和 PRCP 连接池 连接池技术的优点不言而喻: 缩短…

稚晖君独家撰文:具身智能即将为通用机器人补全最后一块拼图

具身智能新纪元。 *本文为稚晖君独家供稿,「甲子光年」经智元机器人授权发布。稚晖君本名彭志辉,先后任职OPPO、华为,现为智元机器人CTO、首席架构师。 在ChatGPT之后,又一个大模型概念火了——具身智能(Embodied AI)。 在学术界,图灵奖得主、上海期智研究院院长姚期…

吞吐量 和 延时的关系

关于吞吐量/吞吐率、延时,你可以通过 Jmeter中的”聚合报告“和”用表格查看报告“来获取。 Throughput 越大,Latency 越差:因为请求过多,系统繁忙导致响应速度降低。Latency 的值越小说明能支持的 Throughput 越高:L…