CVE-2019-25612Admin Express 1.2.5.485 版本中存在严重的本地结构化异常处理(SEH)缓冲区溢出漏洞。该漏洞的根源在于应用程序在处理用户提供的“Folder Path”输入时,未能实施充分的边界检查机制。本地攻击者可利用软件中的“System Compare”功能,将精心设计的字母数字编码字符串粘贴至左侧的“Folder Path”字段中,随后点击缩放图标即可触发异常。成功利用该漏洞将允许攻击者绕过安全限制,以应用程序的运行权限执行任意恶意代码,进而完全控制受害主机,对系统机密性、完整性和可用性造成严重影响。
该漏洞利用了Windows结构化异常处理(SEH)机制的缺陷。在Admin Express的System Compare功能中,程序未对Folder Path输入的长度进行校验,直接将其拷贝至栈缓冲区。攻击者通过构造特定的Payload,依次由填充数据、覆盖Next SEH的指针(通常为\xEB\x06\x90\x90以跳转)、覆盖SE Handler的指针(指向pop pop ret指令的地址)以及字母数字编码的Shellcode组成。当缓冲区溢出触发异常时,系统调用SEH处理程序,由于SE Handler被劫持,程序流程被重定向至Shellcode。由于Shellcode经过字母数字编码(如Alpha2编码),它能有效绕过部分输入过滤,最终在本地上下文中执行任意指令。