接口文档下的渗透测试

   之前渗透遇到过好几次,当时没怎么注意该如何使用,正好看到了一篇不错的文章。学习记录汇总如下:

  1. 如何查找   
  2. 如何使用 
  3. 遇到问题小技巧

1:如何查找
  把以下目录直接增加到字典中,

1

2

3

4

5

6

7

8

9

10

11

12

13

/swagger/

/api/swagger/

/swagger/ui/

/api/swagger/ui/

/swagger-ui.html

/api/swagger-ui.html

/user/swagger-ui.html

/swagger/ui/

/api/swagger/ui/

/libs/swaggerui/

/api/swaggerui/

/swagger-resources/configuration/ui/

/swagger-resources/configuration/security/

  1-1:根据返回状态码判断是否存在

  1-2:通过js查找在网站的config等关键词js文件中查找

2:如何利用

找到SwaggerUI页面后,应快速浏览所展示的接口功能,根据功能点由高风险到低风险依次进行安全测试。
常见的接口安全测试点如下:

1

2

3

4

5

6

7

8

9

接口越权(若接口文档对应的Web应用提供注册功能,可以用低权限用户token尝试水平越权查询修改其他用户信息,或者垂直越权尝试进行管理员操作)

接口SQL注入(针对所有查询接口)

接口未授权访问(重点针对管理员模块,如对用户的增删改查)

任意文件上传(针对上传接口进行测试)

测试信息泄露(重点针对用户、订单等信息查询接口,以及一些测试数据等)

  

3:遇到问题小技巧

1

2

3-1:测试接口地址请求的API路径,如果swagger页面地址不是直接拼接在域名之后,一般需要添加swagger-ui.html之前的URI地址


3-2:swagger-ui.html页面添加了登录认证。除了进行弱口令尝试,还可以直接在swagger-ui.html前一层路径后添加/v1/api-docs即可访问接口(v1代表接口迭代版本,可以尝试v2、v3等可能会有惊喜等着你~)或者请求/swagger/v1/swagger.json

2023最新Jmeter接口测试从入门到精通(全套项目实战教程)

你可能感兴趣的:(软件测试,测试工具)