CVE-2025-60692CVE-2025-60692是存在于Cisco Linksys E1200 v2路由器固件中的一个高危安全漏洞。该漏洞位于libshared.so共享库中,由于get_mac_from_ip和get_ip_from_mac函数使用sscanf配合过度宽松的"%100s"格式说明符从/proc/net/arp文件解析数据,而目标缓冲区大小仅为50字节,攻击者可通过精心构造/proc/net/arp的内容触发栈缓冲区溢出。此漏洞需要本地访问权限,但无需认证和用户交互即可利用,成功利用可导致内存损坏、路由器拒绝服务甚至在设备上执行任意代码。由于Linksys E1200 v2是一款已停产的物联网设备,官方固件更新支持可能有限,用户需采取临时防护措施。
该栈缓冲区溢出漏洞根源于libshared.so库中两个关键函数的输入验证不足。get_mac_from_ip和get_ip_from_mac函数负责解析/proc/net/arp文件中的网络邻居条目,代码使用sscanf函数配合"%100s"格式说明符读取数据。然而,目标栈缓冲区(v6数组50字节,v7子数组50字节)远小于格式说明符允许的最大输入长度。当/proc/net/arp文件被恶意修改或通过某些方式注入超长字符串时,sscanf会持续写入超出缓冲区边界的内存区域,导致栈数据被覆盖。攻击者可通过控制溢出数据来操纵返回地址、函数指针或关键变量,实现代码执行或造成程序崩溃。在嵌入式设备的有限资源环境中,这种漏洞尤其危险,因为攻击者可能直接控制硬件执行流程。