CVE-2018-25268LanSpy 2.0.1.159版本中存在严重的本地缓冲区溢出漏洞。该漏洞的成因是应用程序在处理“扫描”字段接收的输入数据时,缺乏严格的边界检查。攻击者可以通过向该字段提交超长数据,利用该漏洞覆盖指令指针。由于此漏洞属于本地攻击向量且无需用户交互,成功利用可能导致应用程序崩溃,或者在特定条件下允许攻击者执行任意代码,从而对系统的机密性、完整性和可用性造成严重影响。
该漏洞属于典型的基于栈的缓冲区溢出。在LanSpy 2.0.1.159中,当程序读取“扫描”字段的输入时,使用了不安全的内存拷贝操作,未验证输入长度是否超过目标缓冲区的大小。攻击者可以构造特定的恶意Payload,该Payload由688字节的填充数据和随后的4字节控制数据组成。这688字节用于填充缓冲区直到覆盖返回地址之前的栈空间(包括Saved EBP),而紧接着的4字节则用于覆盖返回地址(即EIP寄存器)。一旦EIP被劫持,程序的控制流将被重定向。尽管CVSS向量显示无需权限(PR:N),这暗示可能存在特定的触发机制(如配置文件解析),但在本地环境下,攻击者可利用此劫持行为跳转到Shellcode或ROP链,从而以当前进程权限执行任意指令,实现代码执行或权限提升。