渗透实战靶机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 信息收集

扫描端口
在这里插入图片描述

0x01 初次尝试

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

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

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

0x02 继续收集信息

访问web首页,网站正在维护中
在这里插入图片描述

back,查看源码
在这里插入图片描述

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

在这里插入图片描述

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

内容如下:

在这里插入图片描述

在这里插入图片描述

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

  • 使用了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/。==

在这里插入图片描述

2、SMB文件共享

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

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

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

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

在这里插入图片描述

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

在这里插入图片描述

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文件

在这里插入图片描述

对比两个公钥,相同

在这里插入图片描述

查看私钥,已加密

在这里插入图片描述

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

在这里插入图片描述

得到密码:beeswax

2、成功登录kay账号

直接登录ssh

在这里插入图片描述

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

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

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

在这里插入图片描述

直接sudo su

在这里插入图片描述

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

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

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

在这里插入图片描述

再在struts2的poc中修改执行

在这里插入图片描述

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

在这里插入图片描述

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

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、反思
  • 做得较好的地方
    • 相对于上一次实战测试,在做本次实战过程时思路会更加清晰、收集的信息有整合分析,存在漏洞的地方也基本能猜测出。
  • 需要继续努力的地方
    • 但是在漏洞利用和信息利用过程以及不是特别顺利,主要原因是对服务、漏洞原理不够熟悉,之后会多总结复现常见的服务漏洞和组件漏洞。次要原因是靶机的很多地方需要猜测,脑洞型,思维比较跳跃。
    • 之后的测试中,在开始时先尽量收集更多信息再尝试寻找突破点。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/119426.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Web服务器的搭建

网站需求: 1.基于域名www.openlab.com可以访问网站内容为 welcome to openlab!!! 2.给该公司创建三个网站目录分别显示学生信息,教学资料和缴费网站,基于www.openlab.com/student 网站访问学生信息,www.openlab.com/data网站访问教…

ZYNQ_project:led

本次实验完成:led流水间隔0.5s 闪烁间隔0.25s。 名词解释: analysis分析:对源文件进行全面的语法检查。 synthesis综合:综合的过程是由 FPGA 综合工具箱 HDL 原理图或其他形式源文件进行分析,进而推演出由 FPGA 芯…

企业数字化转型与供应链效率-基准回归复刻(2007-2022年)

参照张树山(2023)的做法,本团队对来自统计与决策《企业数字化转型与供应链效率》一文中的基准回归部分进行复刻。文章实证检验企业数字化转型对供应链效率的影响。用年报词频衡量上市公司数字化转型程度,以库存周转天数来衡量供应…

Tomcat运行日志乱码问题/项目用tomcat启动时窗口日志乱码

文章目录 一、问题描述:二、产生原因三、解决方法四、遗留问题/后续问题 一、问题描述: 项目在idea中运行时日志是正常的,用Tomcat启动时发现一大堆看不懂的文字,如 二、产生原因 产生乱码的根本原因就是编码和解码不一致&…

044_第三代软件开发-保存PDF

第三代软件开发-保存PDF 文章目录 第三代软件开发-保存PDF项目介绍保存PDF头文件源文件使用 关键字: Qt、 Qml、 pdf、 painter、 打印 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QML(Qt Meta-Object Language&#xff…

汽车电子中的深力科推荐一款汽车用功率MOSFET NVTFS6H888NLTAG N沟道

NVTFS6H888NLTAG MOSFET是符合AEC-Q101标准的汽车用功率MOSFET,采用WDFN-8封装,实现紧凑设计。具有低QG和电容(最大限度地降低驱动器损耗)和低 RDS(on)(降低传导损耗)。还提供可湿性侧翼选项,用…

安卓系统手机便签app使用哪一款?

在现代快节奏的生活中,我们经常会遇到各种繁忙的事务和容易遗忘的备忘事项。为避免大家遗忘重要的事情,大家可以在常用的手机上安装记录备忘事项的工具,为了帮助安卓用户高效地记录和管理这些信息,今天我将向大家推荐一款功能强大…

宠物领养系统jsp+servlet+mysql

设计不同用户的操作权限、注册和登录方法。 管理员可以在管理员管理、用户管理、宠物管理、评论管理、团队活动管理、志愿者的申请等等模块中进行查询、添加、删除、修改。 管理员可以在领养管理中通过领养时间查询所有宠物被领养的信息,修改是否同意领养宠物&#…

alpha融合详解(alpha compositing)

alpha融合简介 alpha融合(alpha compositing)是图像处理中常用技术,常见的公式如下: C O α C A ( 1 − α ) C B (1) C_O \alpha C_A (1-\alpha)C_B \tag{1} CO​αCA​(1−α)CB​(1) 其中 C A C_A CA​, C B C…

Android打造一个高性能无限层级显示的树形控件(Android树形控件)

Android使用ListView实现一个高性能无限层级显示的树形控件: 最近公司的Android项目里有一个地方需要选择某公司的所有部门,因为手机屏幕有限所以并不能像网页那样显示树状结构,但是如果只是用列表依次显示所有的部门又会让用户很难找到想要…

Centos7部署Python3环境

一、安装Python3 ###查看是否安装Python3 Centos 7 默认安装了python 2.7.5. 因为一些命令要用它比如yum 它使用的是python2.7.5 使用 python -V 命令查看一下是否安装Python 然后使用命令 which python 查看一下Python可执行文件的位置 Python指向的是Python2.7 安装依赖 y…

Eolink Apikit 版本更新:「数据字典」功能上线、支持 MongoDB 数据库操作、金融行业私有化协议、GitLab 生成 API 文档...

🎉 新增 搭建自定义接口协议架构,支持快速适配金融行业各类型私有协议的导入、编辑和展示。 数据字典功能上线,支持以数据字典的形式管理参数枚举值; 数据库连接支持 MongoDB 数据库操作; 基于 Apikit 类型导入 API…

微服务之Eureka

文章目录 一、Eureka介绍1.Eureka的作用2.总结 二.搭建Eureka服务端步骤1.导入maven依赖2.编写启动类,添加EnableEurekaServer注解3.添加application.yml文件,编写下面的配置: 三.注册Eureka客户端服务提供者(user-service&#x…

Modelsim 使用教程(5)——Analyzing Waveforms

一、概述 Wave窗口允许我们以HDL波形和数据的形式查看仿真结果。Wave窗口被划分为多个窗格。通过单击并在任意两个窗格之间拖动该条,可以调整路径名窗格、值窗格和波形窗格的大小。 二、加载一个设计(Loading a Design) 1、打开modelsim 2、…

前端之Bootstrap框架

目录 【一】Bootstrap介绍 【二】Bootstrap引入 【1】CDN加速链接 【2】注意 【三】布局容器 【四】栅格系统 【五】栅格参数 【六】列偏移 【七】排版 标题 内联文本元素 对齐 改变大小写 引用 列表 【八】表格 基本实例 条纹状表格 带边框的表格 鼠标悬停…

[量化投资-学习笔记006]Python+TDengine从零开始搭建量化分析平台-MACD

在上一章节介绍了 EMA 均线的计算,本节主要介绍均线的进化形态之一:MACD MACD (Moving Average Convergence / Divergence) 指数平滑移动平均线。MACD 是通过计算不同时间的 EMA 的差值俩判断价格趋势。 MACD 包括 3 个值: 长短期 EMA 差值…

Ubuntu 22.04.3 LTS中安装singularity

文章目录 概要背景知识什么是singularity ? 安装流程1. 安装Go2. 下载Singularity3. 编译Singularity源代码 4. 验证安装是否成功singularity的使用安装open structure 小结 概要 这里主要记录singularity的安装和使用,安装过程中会出现相关的错误,所以…

[C/C++]数据结构 链表OJ题: 链表分割

题目描述: 现有一链表的头指针 ListNode* pHead,给一定值x,编写一段代码将所有小于x的结点排在其余结点之前,且不能改变原来的数据顺序,返回重新排列后的链表的头指针。 解题思路: 创建两个新链表,head1,head2, 遍历原链表,把小于…

RISC-V与RISC Zero zkVM的关系

1. 引言 本文基本结构为: 编程语言背景介绍RISC-V虚拟机作为zkVM电路为何选择RISC-V? 2. 编程语言背景介绍 高级编程语言不专门针对某个架构,其便于人类编写。高级编程语言代码,经编译器编译后,会生成针对专门某架…

JAR 文件规范详解

介绍 JAR文件是基于ZIP文件格式的一种文件格式,用来将许多文件整合成一个文件。一个JAR文件本质上是包含可选目录META-INF的zip文件,可以通过命令行jar工具或者在Java平台上使用java.util.jar中的API来创建。JAR文件的命名没有严格的要求,可…