51Testing软件测试论坛

标题: 致我们曾经遇到过的接口问题 [打印本页]

作者: lsekfe    时间: 2022-6-30 10:57
标题: 致我们曾经遇到过的接口问题
我们日常的接口测试工作主要是验证接口的功能性(入参、出参、边界值等),沐沐在接口测试过程中遇到的一些接口安全性的问题,整理成了通用的测试点,不一定适用于全部的产品,仅做参考。
  一、登录接口校验
  验证登录接口中密码是否密文传输
  这个测试点听起来很荒唐,应该大家都知道密码应该加密,但是在很多时候,研发人员为了赶工就会忽略这个点,所以建议大家测试登录功能的时候,一定要F12查看一下登录接口中密码是否是密文。
  验证登录接口是否可以爆破登录
  对于一些安全性较高的系统,测试的时候有必要验证一下是否可以爆破登录,可以使用Burpsuit进行爆破登录测试。当然现在很多系统都是用手机号码进行动态登录,如果还是常规的账户和密码登录,就一定要对安全性提出质疑了,密码强度符合等保要求么?验证码要不要加上去?
  二、接口规则校验
  验证接口类型是否合理
  理论上来说,除了查询接口使用GET,其余的接口都应该使用POST,这样接口的安全性更高。沐沐以往的接口测试过程中确实遇到了不少业务接口使用get,参数拼接在url上及其不安全。此外,还有一个特殊情况,即不需要用户登录的系统,查询类的接口也不建议使用GET,在安全扫描中会出现跨站点请求伪造的问题。
  验证新增和修改接口是否是独立的接口
  这个测试点有点离谱了,沐沐在测试过程中发现新增和修改接口共用同一个,这样似乎是没有什么问题,但是后期遇到了一些复杂的业务逻辑,新增和修改接口融合在一起,导致了生产数据被篡改。所以接口设计还是要严谨一点,新增和修改接口尽量是独立的接口。
  验证POST接口中是否将参数拼接成URL
  沐沐曾经还遇到过将post接口的参数拼接到了url上,如果数据量较大的时候,url字符长度太大接口就会报错,可能此类情况并不常见,但是遇到过就记录下来了。
  三、接口越权校验
  接口的越权分为水平越权和垂直越权,我们可以通过Burpsuit、Appcan等工具进行越权测试,测试过程中也遇到了以下问题:
  验证接口url上是否区域编码、身份证号等参数;
  验证接口url上存在true或false时,进行篡改,功能、数据是否越权;
  验证接口url上存在type=1或2时,进行篡改,功能、数据是否越权;
  接口参数中存在pagesize或者size时,进行篡改,是否进行最大值限制;
  接口body参数中存在身份证号码时,篡改参数值,接口是否返回正确提示。






欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2