CVE-2016-20024CVE-2016-20024是ZKTeco公司开发的ZKTime.Net时间管理考勤系统3.0.1.6版本中存在的一个高危安全漏洞。该漏洞属于不安全文件权限(Insecure File Permissions)类型,攻击者可利用系统中ZKTimeNet3.0目录及其内容存在的世界可写(world-writable)权限配置缺陷,实现本地权限提升攻击。具体而言,系统中关键目录和可执行文件被配置为允许任何用户(包括非特权用户)进行写入操作,攻击者可以通过替换合法的可执行文件为恶意二进制程序,当系统管理员或高权限用户运行这些被篡改的程序时,攻击者即可获得系统高级权限。由于该漏洞的CVSS评分高达9.8分,属于严重级别,且攻击向量为网络形式,无需认证即可利用,对企业内网安全构成严重威胁。建议受影响的用户尽快采取修复措施,更新系统到最新版本或应用官方发布的安全补丁。
该漏洞的根本原因在于ZKTeco ZKTime.Net 3.0.1.6在安装过程中对ZKTimeNet3.0目录及其子目录和文件设置了过于宽松的文件权限。具体表现为目录和可执行文件具有世界可写(777或类似)权限,这意味着系统上的任何用户,无论其权限级别如何,都可以对这些文件进行读取、写入和执行操作。攻击者利用此漏洞的攻击流程如下:首先,攻击者通过低权限账户登录目标系统,识别出ZKTime.Net的安装目录位置,通常位于C:\Program Files\ZKTimeNet3.0或类似路径;其次,攻击者检查该目录下的可执行文件权限,确认是否存在世界可写权限;接着,攻击者创建或下载一个恶意可执行文件,该文件可能是后门程序、命令 shell 或其他恶意代码;然后,攻击者利用文件替换或覆盖的方式,用恶意文件替换原有的合法可执行文件;最后,当具有管理员权限的用户或系统服务启动被篡改的可执行文件时,恶意代码将以高权限上下文执行,从而实现权限提升。攻击者获得高权限后,可以进一步进行数据窃取、横向移动或部署持久化后门等恶意活动。