OpenAPI 宽松输入验证

medium Web App Scanning 插件 ID 113258

简介

OpenAPI 宽松输入验证

描述

OpenAPI 规范是 REST API 的 API 描述格式。OpenAPI 文件会以 YAML 或 JSON 编写,并会描述所有 API 属性,例如具有相关操作或身份验证方法的可用端点。

`Schema` 对象允许定义输入和输出数据类型,这些数据类型可以是对象、基元和数组。当定义文件中指定的对象缺少某些数据类型属性时,API 实现可能允许恶意输入格式,从而使其保持打开状况,容易遭受拒绝服务 (DoS) 或远程代码执行 (RCE) 等多种漏洞影响。

扫描程序分析了 OpenAPI 定义文件,并检测到某些数据类型缺少属性。

解决方案

确保根据文件规范在 OpenAPI 定义文件中声明缺少的属性,并确保 API 后端在输入时强制执行这些属性的验证。

另见

https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject

插件详情

严重性: Medium

ID: 113258

类型: remote

发布时间: 2022/6/28

最近更新时间: 2023/10/5

扫描模板: api, basic, full, pci, scan

风险信息

VPR

风险因素: Medium

分数: 4.9

CVSS v2

风险因素: Medium

基本分数: 6.8

矢量: CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P

CVSS 分数来源: Tenable

CVSS v3

风险因素: Medium

基本分数: 5.6

矢量: CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L

CVSS 分数来源: Tenable

参考资料信息

CWE: 20

OWASP: 2010-A4, 2013-A4, 2017-A5, 2021-A3

WASC: Improper Input Handling

CAPEC: 10, 101, 104, 108, 109, 110, 120, 13, 135, 136, 14, 153, 182, 209, 22, 23, 230, 231, 24, 250, 261, 267, 28, 3, 31, 42, 43, 45, 46, 47, 473, 52, 53, 588, 63, 64, 67, 7, 71, 72, 73, 78, 79, 8, 80, 81, 83, 85, 88, 9

DISA STIG: APSC-DV-002560

HIPAA: 164.306(a)(1), 164.306(a)(2)

ISO: 27001-A.14.2.5

NIST: sp800_53-SI-10

OWASP API: 2019-API7, 2023-API8

OWASP ASVS: 4.0.2-5.1.3

PCI-DSS: 3.2-6.5