CVE-2025-60693CVE-2025-60693是存在于Linksys E1200 v2路由器固件(E1200_v2.0.11.001_us.tar.gz)httpd二进制文件中的一个中等严重性安全漏洞。该漏洞位于get_merge_mac函数中,由于该函数在处理用户输入的CGI参数时存在栈缓冲区溢出问题,远程攻击者可以在无需任何认证的情况下利用此漏洞。攻击者通过构造包含多个特定格式参数(<parameter>_0到<parameter>_5)的恶意HTTP请求,可以触发栈缓冲区溢出,从而实现任意代码执行或导致设备拒绝服务。此漏洞影响路由器的机密性(低影响)和可用性(低影响),但不影响完整性。由于该漏洞可被远程利用且无需认证,因此对暴露在网络中的Linksys E1200 v2设备构成较大安全风险。攻击者可以利用此漏洞完全控制受影响的路由器设备。
该漏洞的根本原因在于Linksys E1200 v2路由器httpd二进制文件中的get_merge_mac函数存在不安全的缓冲区操作。具体分析如下:
1. 漏洞位置:get_merge_mac函数
2. 漏洞类型:基于栈的缓冲区溢出(Stack-based Buffer Overflow)
3. 根本原因:函数将最多6个用户提供的CGI参数(格式为<parameter>_0、<parameter>_1...<parameter>_5)连接到一个固定大小的栈缓冲区(参数a2)中,在连接过程中使用冒号作为分隔符。
4. 安全缺陷:函数在执行字符串连接操作时未进行边界检查(缺乏长度验证),当用户输入的总长度超过缓冲区大小时,就会发生栈缓冲区溢出。
5. 利用方式:攻击者构造包含超长参数值的HTTP请求,例如:GET /cgi-bin/merge_mac?mac_0=AAAA...AAA&mac_1=BBBB...BBB&...&mac_5=CCCC...CCC,其中参数值长度精心构造以覆盖栈上的返回地址或关键数据。
6. 影响后果:成功利用可导致任意代码执行(通过覆盖返回地址跳转到恶意shellcode)或拒绝服务(导致程序崩溃)。由于是栈溢出,攻击者可以控制程序执行流程。