CVE-2026-0678Flat Shipping Rate by City for WooCommerce是WordPress平台上一款用于WooCommerce电商系统的城市级别运费计算插件。该插件在1.0.3及以下版本中存在时间型SQL注入漏洞。漏洞源于插件对用户输入的cities参数处理不当,未能对用户提供的参数进行充分的转义处理,同时在构建SQL查询时缺少足够的预编译准备语句。这使得具有商店经理级别权限及以上的认证攻击者能够向现有SQL查询中注入额外的SQL语句,从而窃取数据库中的敏感信息。攻击者无需用户交互即可完成攻击,但需要拥有WordPress后台的Shop Manager或更高权限。由于CVSS评分为4.9且机密性影响为高,该漏洞对系统数据安全构成实质性威胁,建议立即采取修复措施。
该SQL注入漏洞位于插件的shipping-method-class.php文件第154行附近。漏洞的根本原因是双重防御机制的缺失:首先,插件直接使用用户输入的cities参数构建SQL查询语句,未对其进行适当的转义处理;其次,SQL查询语句未使用WordPress的预编译语句机制(如$wpdb->prepare()方法)来安全地处理动态参数。攻击者可以通过在cities参数中注入时间延迟函数(如SLEEP()或BENCHMARK())来验证漏洞的存在。例如,使用'city' OR SLEEP(5)--这样的payload会导致数据库执行时间延长,从而证实漏洞存在。进一步利用时,攻击者可以构造更复杂的UNION SELECT语句来枚举数据库内容,包括用户凭据、配置信息等敏感数据。由于漏洞需要认证才能利用,但其所需权限(Shop Manager)相对容易通过社会工程或其他方式获取,因此实际威胁不容忽视。