2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))

vulstack红队评估(三)
        
        
一、环境搭建:
①根据作者公开的靶机信息整理
没有虚拟机密码,纯黑盒测试...一共是5台机器,目标是拿下域控获取flag文件
 
②虚拟机网卡设置
centos双网卡模拟内外网:
外网:192.168.1.110
内网:192.168.93.100
 
其他主机都是内网,仅主机模式:
内网:192.168.93.0/24
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第1张图片
所有虚拟机默认挂起状态,开启就已经登陆了,配置好网卡后,互相ping测试一下,网络环境没问题就可以进行下一步了。
 
 
二、web层渗透:
0x01 前期信息收集:
①端口、服务探测
nmap 192.168.1.110 -T4 -A -sV
开启了80、22、3306端口,入手点就挺多了(ssh爆破、mysql爆破、http服务的web漏洞挖掘getshell等等...)
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第2张图片

 

访问了一下80端口的http服务,是joomlaCMS搭建的
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第3张图片

 

②站点扫描:
1.直接使用joomscan扫描一下
joomscan -u http://192.168.1.110/
 
 
发现版本为3.9.12,比较高,不太好搞...
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第4张图片

 

2.发现两个比较重要的目录
后台登陆页面:
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第5张图片

 

 

配置文件泄露: testuser / cvcvgjASD!@
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第6张图片

 

 
0x02 漏洞利用getshell:
①尝试远程连接mysql,获取后台管理员密码
根据nmap的信息,扫描出3306是开放的,利用navicat连接一下,很顺利地连接上了
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第7张图片
 
 
找到管理员user表,发现密码是加密的,具体怎么加密的不清楚,尝试解密,失败...

 

 

②添加后台管理员
因为joomlaCMS可以直接后台模板getshell,所以得想办法进入后台,但是默认的管理员用户密码又是未知的,那么我是不是可以直接往user表里面添加一个管理员?然后登陆不就好了吗,开始吧...
 
通过百度、谷歌大法,发现了官方的说明文档:
https://docs.joomla.org/How_do_you_recover_or_reset_your_admin_password%3F/zh-cn
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第8张图片

 

 

根据官方文档,添加一个admin2 / secret 的管理员,注意修改表前缀

 

可以看到已经添加成功了

 

 

利用新添加的管理员进行登陆,登陆成功
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第9张图片

 

③模板getshell
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第10张图片
 
 
点击New File,新建文件:
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第11张图片

 

输入文件名:
 
写入一句话木马:
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第12张图片

 

利用蚁剑连接webshell:
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第13张图片

 

 
0x03 提权与本机信息收集
①bypass disable_functions
尝试执行命令,返回ret=127,毫无疑问就是disable_functions的限制了
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第14张图片
 
通过phpinfo发现禁用了如下函数,目标是linux,并且没有禁用putenv函数,所以可以利用LD_PRELOAD绕过

 

把bypass_diablefunc.php和bypass_diablefunc_x64.so一并上传到同一目录,.so文件需要根据目标系统架构选择,然后访问bypass_diablefunc.php,poutpath必须是可写目录,构造如下payload:
http://192.168.1.110/templates/beez3/bypass_disablefunc.php?cmd=whoami&outpath=/tmp/panda&sopath=/var/www/html/templates/beez3/bypass_disablefunc_x64.so
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第15张图片

 

查看ip信息,发现ip并不是centos的,看了下应该是ubuntu的,说明真正的web服务后端是在ubuntu上,通过centos做了个nginx反向代理解析到Ubuntu上了(百度了解了一下)
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第16张图片
 
分析:当前ubuntu的权限太低...并且内核很高,不好提权,想执行socks代理的程序,都成问题,并且ubuntu是不出网的,那么我有没有办法拿到centos的权限呢?既然做了反代,那么我能否看一下bash历史记录,找到一些遗漏的信息呢?(结果不行..),然后就各种配置文件找、有权限看的文件都看一下,想找到有泄露的信息

 

 

②敏感文件泄露
最终在tmp目录下找到了个test.txt文件直接给出了一个用户和密码:
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第17张图片

 

 

直接登陆centos,成功....
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第18张图片

 

 

③脏牛提权
想要继续横向移动,最好就是能利用跳板机搭建socks代理,所以权限得够,查看centos的内核,发现在脏牛影响的范围内:

 

wget下载exp,并赋予执行权限
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第19张图片

 

编译并执行exp
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第20张图片

 

提权成功
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第21张图片
 
 
 
0x04 横向移动
①msf上线
我这里使用web_delivery模块上线
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第22张图片
 
 
目标主机上执行msf给出的命令即可上线
 
 
②添加路由
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第23张图片

 

③存活主机探测

 

发现3台windows,并且存在TEST域环境

 

④直接继续爆破smb
注意密码字典的格式为:用户名 密码
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第24张图片

 

⑤使用psexec登陆win2008
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第25张图片
 
注意payload为bind直连:
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第26张图片

 

然后将mterpreter会话迁移到一个64位进程中,加载mimikatz,然后抓取到域管的明文密码: zxcASDqw123!!
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第27张图片

 

ntlm hash拿来备用
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第28张图片

 

⑥拿下域控:
1.通过ipconfig定位到dns服务器为192.168.93.10,域名为test.org,一般dns服务器就是域控
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第29张图片

 

2.开启socks5代理:
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第30张图片

 

3.proxifier开启代理
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第31张图片

 

4.将psexec.exe添加代理规则

 

5.利用psexec拿到域控shell
2021-10-17红日靶场3学习转发自pan墨森大佬(下错了虚拟机,joomla,ew代理,navicat,mysql远程登录渗透思路,dirtycow,bypass_disfunction))_第32张图片
 
 
6.查找那份重要的文件,猜测为flag.txt

 

成功获取flag

 

 

0x05 总结
①joomscan的使用,joomlaCMS后台模板getshell
②利用LD来bypass disable_functions
③拿到shell后的本机敏感文件收集
④脏牛提权+msf web_delivery上线
⑤使用msf进行横向移动,smb_version主机探测+smb爆破
⑥msf中psexec获取目标shell,mimikatz抓取域管明文密码
⑦msf搭建socks5代理+proxifier代理psexec进目标内网
⑧使用impacket下的psexec获取到域控的shell
 
分类: 内网渗透
好文要顶 关注我 收藏该文
PANDA墨森
关注 - 3
粉丝 - 9
+加关注
0
0

你可能感兴趣的:(各种靶场,mysql,ssh)