渗透实战靶机2wp

0x00 简介

1、测试环境

目标IP:10.xxxx

测试IP:192.168.139.128

测试环境:win10、kali等

测试时间:2021.7.22-2021.7.22

测试人员:ruanruan

2、测试过程

本次实战主要通过对收集到的端口、目录等信息进行持续整合分析,再对目标系统进行tomcat弱口令、ghostcat文件读取、struts2RCE、SMB无认证访问等尝试,获取到jan账号,再利用.ssh私钥爆破获取较高权限的kay账号,直接sudo提权就能获得root权限。

0x01 信息收集

扫描端口
渗透实战靶机2wp_第1张图片

0x01 初次尝试

对以下端口进行的尝试及判断:

  • 22:高版本ssh,弱口令爆破较难
  • 80:web,访问一下好像没什么功能,只有个dev提示
  • 139、445:版本号4.3.11,复现RCE漏洞失败。
  • 8009:幽灵猫漏洞,只能读取/WEB-INF/目录下的文件,意义不大
  • 8080:Tomcat,尝试弱口令,失败。

到这里就只剩下80和445还能再继续探索一下。==

0x02 继续收集信息

访问web首页,网站正在维护中
渗透实战靶机2wp_第2张图片

back,查看源码
渗透实战靶机2wp_第3张图片

提示dev,试了下/dev/,404,扫一下目录,得到/development/路径

渗透实战靶机2wp_第4张图片

访问该路径,下面有两个txt文件

内容如下:

渗透实战靶机2wp_第5张图片

渗透实战靶机2wp_第6张图片

根据两个文件的内容,目前可以得到以下三个信息:

  • 使用了struts2,版本为2.5.12,关键字rest。=>基本确定S2-052 REST插件 XStream远程代码执行漏洞。
  • smb已配置,samba服务已测试过RCE,失败。根据对话整体能猜到应该是文件共享问题,但是尝试的方法有点偏了,应该直接连接IP/用户名
  • /etc/shadow,J的账号是弱口令

0x03 再次尝试

1、S2-052

首先试着复现S2-052,但是在复现S2-052时路径不对导致复现失败,通用路径为/struts2-rest-showcase/,这台靶机的路径为/struts2-rest-showcase-2.5.12/。==

渗透实战靶机2wp_第7张图片

2、SMB文件共享

先是参考了一篇文章,得到了Anonymous用户,然后就跟着挂载文件。。失败

正确的利用smb文件共享服务的漏洞应该是直接连接查看,而不是什么挂载乱七八糟的。

这里获取到用户名为Anonymous,无密码认证直接回车

smbclient -N -L IP
smbclient //IP/用户名

渗透实战靶机2wp_第8张图片

查看staff.txt文件,得到两个用户名

渗透实战靶机2wp_第9张图片

0x04 思路一:把爆破jan账号作为入口

1、获得jan账号

利用/usr/share/wordlists/rocky.txt爆破jan的密码

hydra -l jan -P password.txt -vV -o ssh.log -e ns ip ssh

在这里插入图片描述

得到密码:armando

在这里插入图片描述

登录jan账号,进入kay目录可以看到.ssh文件

渗透实战靶机2wp_第10张图片

对比两个公钥,相同

渗透实战靶机2wp_第11张图片

查看私钥,已加密

渗透实战靶机2wp_第12张图片

这里利用ssh2john来爆破ssh私钥,默认在/usr/share/john/ssh2john.py

渗透实战靶机2wp_第13张图片

得到密码:beeswax

2、成功登录kay账号

直接登录ssh

渗透实战靶机2wp_第14张图片

登陆成功,查看pass.bak,得到一串字符。。其实是密码,利用它使用sudo命令。

3、利用sudo提权获取root权限

sudo -l ,这里all表示所有命令都以root权限执行

渗透实战靶机2wp_第15张图片

直接sudo su

渗透实战靶机2wp_第16张图片

0x05 思路二:利用struts2漏洞反弹shell

如果利用struts2漏洞,可以先上传一个.sh文件,再chmod加权限,最后利用bash命令执行。

这里直接创建一个shell.sh,写入反弹shell命令

在这里插入图片描述

再在struts2的poc中修改执行

渗透实战靶机2wp_第17张图片

物理机就能获取shell,得到tomcat9账号的权限,然后继续通过kay目录下的.ssh目录进行利用。

渗透实战靶机2wp_第18张图片

后面的步骤和前面一样,这里只是提供另一种思路。

0x06 总结

1、踩坑
  • struts2的漏洞路径为/struts2-rest-showcase-2.5.12/
  • 知道存在smb文件共享认证问题,但是登录命令有误
  • 在kay账号下读取的密码太长,以为需要再次解密/找密码
2、知识点
  • S2-052漏洞复现,获取shell思路
  • goastcat文件读取漏洞,限制:只能读取/WEB-INF/路径下的文件
  • smb文件共享认证问题,以及登录命令
    • smbclient -N -L IP
      smbclient //IP/用户名
  • .ssh私钥爆破,利用ssh2john文件
3、反思
  • 做得较好的地方
    • 相对于上一次实战测试,在做本次实战过程时思路会更加清晰、收集的信息有整合分析,存在漏洞的地方也基本能猜测出。
  • 需要继续努力的地方
    • 但是在漏洞利用和信息利用过程以及不是特别顺利,主要原因是对服务、漏洞原理不够熟悉,之后会多总结复现常见的服务漏洞和组件漏洞。次要原因是靶机的很多地方需要猜测,脑洞型,思维比较跳跃。
    • 之后的测试中,在开始时先尽量收集更多信息再尝试寻找突破点。

你可能感兴趣的:(安全)