CVE-2025-66046CVE-2025-66046是The Biosig Project libbiosig 3.9.1版本中存在的严重安全漏洞。该漏洞位于MFER(Medical File Format for Electrophysiology)文件解析功能中,涉及多个基于栈的缓冲区溢出问题。攻击者可以通过精心构造恶意的MFER文件,当文件中的Tag值被设置为67时,触发栈缓冲区溢出条件,成功利用此漏洞可导致任意代码执行。libbiosig是一个广泛使用的生物信号处理库,常用于医疗设备数据读取和分析,因此该漏洞对医疗系统和相关应用构成重大威胁。由于CVSS评分高达9.8,且攻击复杂度低,无需认证和用户交互即可远程利用,强烈建议受影响用户立即采取修复措施。
该漏洞属于经典的基于栈的缓冲区溢出(Stack-based Buffer Overflow)类型。在libbiosig的MFER文件解析代码中,当处理特定Tag值(Tag=67)的数据时,程序未能正确验证输入数据的长度与目标缓冲区大小之间的关系。攻击者可以通过在MFER文件中注入超长的数据字段,使得在栈上分配的固定大小缓冲区发生溢出,覆盖相邻的栈帧数据,包括返回地址、函数指针等关键控制流数据。成功利用此漏洞需要:1)构造包含特定Tag和超长数据的MFER文件;2)诱导目标系统使用libbiosig解析该恶意文件;3)通过覆盖返回地址将执行流重定向到攻击者注入的shellcode。由于栈保护机制在某些编译配置下可能被绕过,且该库常被医疗设备软件集成,因此危害范围较广。