CVE-2024-36058Koha Library 23.05.10之前版本中的Send Basket功能存在严重的安全漏洞。该漏洞源于程序未对POST参数`bib_list`进行严格的输入过滤,导致基于时间的SQL注入。未经身份验证的远程攻击者可利用此漏洞构造恶意SQL语句,从数据库中窃取敏感数据,包括用户凭据和内部信息,对系统安全性构成严重威胁。
该漏洞的具体成因位于Koha Library系统的`/cgi-bin/koha/opac-sendbasket.pl`脚本中。应用程序在处理用户提交的POST参数`bib_list`时,直接将其拼接到后端的SQL查询语句中,未能实施有效的输入过滤、转义或参数化查询机制,从而引入了SQL注入风险。攻击者无需任何用户身份认证即可发送特制的HTTP POST请求发起攻击。利用基于时间的盲注技术,攻击者可以通过构造包含数据库特定函数(如MySQL的`SLEEP()`)的恶意SQL语句,根据服务器响应时间的差异来判断SQL查询条件的真伪。通过这种逐位推测的方式,攻击者能够成功提取数据库中的表结构、字段名及敏感数据内容,如管理员密码哈希等。鉴于CVSS评分高达9.8,该漏洞利用难度低且无需用户交互,属于严重级别的安全威胁。