CVE-2020-36951CVE-2020-36951是Phpscript-sgh 0.1.0版本中存在的一个高危安全漏洞。该漏洞属于时间盲注SQL注入类型,存在于管理后台界面的'id'参数中。由于应用程序在处理用户输入时未对'id'参数进行充分的输入验证和过滤,攻击者可以通过构造恶意的SQL语句片段,利用条件判断结合时间延迟函数(如SLEEP()或BENCHMARK())来触发数据库执行时间延迟,从而在无需直接获取查询结果的情况下推断数据库信息。时间盲注相比普通SQL注入更难检测,因为服务器返回的响应内容差异很小,攻击者需要通过响应时间的差异来判断注入语句是否执行成功。攻击者可利用此漏洞在未经身份验证的情况下(该漏洞无需认证即可利用)获取数据库中的敏感信息,包括用户凭据、配置数据、业务数据等,对系统机密性造成严重影响。
该漏洞位于Phpscript-sgh 0.1.0的管理员界面中,具体在处理'id'参数的SQL查询语句中。攻击者可通过在'id'参数中注入类似' AND (SELECT CASE WHEN (条件) THEN SLEEP(5) ELSE 0 END) 的payload来触发时间延迟。攻击原理如下:首先,攻击者构造一个条件判断语句,当条件为真时执行SLEEP()函数导致数据库查询延迟;当条件为假时则立即返回。通过观察服务器响应时间的长短,攻击者可以逐位推断数据库中的敏感信息,如管理员密码哈希值、数据库版本、表名等。例如,攻击者可通过构造多个条件查询,逐步提取数据库中存储的密码字符,根据响应时间判断每个字符是否匹配预期值。由于该漏洞无需认证即可利用,且CVSS评分达到8.2,属于高危漏洞,建议立即采取修复措施。