CVE-2018-25231HeidiSQL 9.5.0.5196 版本存在一个拒绝服务漏洞。该漏洞源于程序在处理日志文件路径时未正确验证输入长度。本地攻击者无需用户交互,即可在“首选项 > 日志记录”界面的 SQL 日志文件路径字段中输入超长字符串(缓冲区溢出载荷),导致应用程序崩溃。此漏洞虽然仅影响可用性,但可被利用造成服务中断。
该漏洞属于典型的本地缓冲区溢出漏洞,其根本原因在于软件对用户输入的信任以及对缓冲区大小的疏忽。具体而言,HeidiSQL 在读取日志路径配置时,直接将用户提供的字符串复制到固定大小的内存缓冲区中,而未进行长度校验。攻击者只需在本地系统上运行 HeidiSQL,进入设置界面,并在日志路径栏填入精心设计的超长数据(例如数千个 'A' 字符),即可覆盖相邻的内存区域。虽然该漏洞主要被归类为拒绝服务(DoS),但在特定情况下,如果内存布局可控,理论上存在进一步利用的可能性,但目前主要表现为应用程序崩溃。CVSS 3.1 评分为 6.2,主要反映了其对可用性的严重影响。