SQL 盲注漏洞(时序攻击)

high Web App Scanning 插件 ID 98118

简介

SQL 盲注漏洞(时序攻击)

描述

由于当今 Web 应用程序对动态内容的要求,许多应用程序使用数据库后端来存储将由 Web 应用程序(或其他程序)调用和处理的数据。Web 应用程序使用结构化查询语言 (SQL) 查询来检索数据库中的数据。

为满足许多开发人员的需求,数据库服务器(如 MSSQL、MySQL、Oracle 等)具有额外的内置功能,允许用户对数据库进行广泛的控制并与主机操作系统本身进行交互。

如果未事先审查客户端请求中的值便将其用于 SQL 查询,就会发生 SQL 注入。网络犯罪分子可借此执行任意 SQL 代码并窃取数据,或使用数据库服务器的其他功能来控制更多服务器组件。

SQL 注入是最常见的一个 Web 应用程序漏洞,一旦攻击成功,会给组织造成灾难性后果。

扫描程序能够注入特定的 SQL 查询,所以我们检测到此注入漏洞。如果攻击此漏洞,可导致服务器延迟发出每个请求的响应,这称为基于时间的 SQL 盲注漏洞。

解决方案

若要在保持完整应用程序功能的同时防止 SQL 注入攻击,唯一可靠的方法是使用参数化查询(也称为“预处理语句”)。利用此数据库查询方法时,客户端提供的任何值都将被视为字符串,而不是 SQL 查询的一部分。
此外,当利用参数化查询时,数据库引擎将自动检查以确保使用的字符串匹配列的字符串。例如,如果数据库列配置为包含整数,则数据库引擎将检查用户提供的输入是否为整数。

另见

http://projects.webappsec.org/w/page/13246963/SQL%20Injection

http://www.w3schools.com/sql/sql_injection.asp

https://www.owasp.org/index.php/Blind_SQL_Injection

插件详情

严重性: High

ID: 98118

类型: remote

系列: Injection

发布时间: 2017/3/31

最近更新时间: 2023/2/8

扫描模板: api, pci, scan

风险信息

VPR

风险因素: Medium

分数: 6.2

CVSS v2

风险因素: High

基本分数: 9

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

CVSS 分数来源: Tenable

CVSS v3

风险因素: High

基本分数: 8.6

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

CVSS 分数来源: Tenable

参考资料信息

CWE: 89

OWASP: 2010-A1, 2013-A1, 2017-A1, 2021-A3

WASC: SQL Injection

CAPEC: 108, 109, 110, 470, 66, 7

DISA STIG: APSC-DV-002540

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

ISO: 27001-A.14.2.5

NIST: sp800_53-SI-10

OWASP API: 2019-API8

OWASP ASVS: 4.0.2-5.3.4

PCI-DSS: 3.2-6.5.1