- 漏洞说明
XAMPP是一个把Apache网页服务器与PHP、Perl及MariaDB集合在一起的安裝包,允许用戶可以在自己的电脑上轻易的建立网页服务器。该软件与phpstudy类似。在windows下,XAMPP允许非管理员账号访问和修改其编辑器和浏览器的配置,编辑器的默认配置为notepad.exe,一旦修改配置后,则对应的每个可以访问XAMPP控制面板的用户都更改了配置。当攻击者将编辑器的值设置为恶意的.exe文件或.bat文件,与此同时如果有管理员账号通过XAMPP控制面板查看apache的日志文件,便会执行恶意的.exe文件或.bat文件,以此达到任意命令执行。
- 漏洞影响范围
Apache Friends XAMPP <7.2.29
Apache Friends XAMPP 7.3.*,<7.3.16
Apache Friends XAMPP 7.4.*,<7.4.4
- 环境搭建
在虚拟机上装上windows系统,本次复现以windows10为例。
下载XAMPP,本次复现以7.4.3为例,下载地址:https://sourceforge.net/projects/xampp/files/
环境安装和配置:
第一部分:首先以管理员的身份登录到windows10
运行cmd查看当前用户,这里的xw即登录的有管理员权限的账户
使用管理员权限安装XAMPP,根据提示不要安装在C盘。
运行cmd,输入如下命令:powershell start-process cmd -verb runas(用powershell启动管理员权限的cmd进程),在管理员权限的cmd上,输入:net user lowuser /add,创建一个普通用户lowuser,通过net user lowuser可知为普通权限用户:
输入命令net user lowuser*为lowuser设置密码:
关闭cmd命令窗口,注销管理员权限的xw用户。
漏洞利用:
以普通用户lowuser登录到windows10
输入上面设置的密码,登录lowuser用户:
设置显示文件扩展名和隐藏项目
创建command.bat文件,输入命令如下,其作用是将lowuser账号加入管理员权限:
@echo off
Net localgroup administrators lowuser /add
运行xampp,并在控制面板上找到config配置。
修改编辑器的默认配置,更改为刚才创建的command.bat文件,添加并应用,如下图所示:
查看lowuser的用户组,还是普通权限,注销lowuser账户。
再次以管理员(xw)登录到windows10:
打开XAMPP控制面板,点击查看logs文件:
切换到lowuser账户
运行cmd,查看lowuser用户组,发现已经提升为administators组
- 漏洞复盘
以上,即漏洞复现全过程,实现了lowuser从普通账号到管理账号的权限提升,真实环境中该漏洞大概率用于后渗透阶段的提权提升。
对漏洞的基本面进行复盘:
条件1:windows系统。
条件2:装有XAMPP。
条件3:拥有系统普通账户。
条件4:管理员账户通过XAMPP面板查看logs文件。
- 修复方式
厂商已发布了新版本,可以从
http://www.apachefriends.org/download.html下载这些新的安装程序。