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

Vulnhub实战-prime1

前言

VulnHub 是一个面向信息安全爱好者和专业人士的虚拟机(VM)漏洞测试平台。它提供了一系列特制的漏洞测试虚拟机镜像,供用户通过攻击和漏洞利用的练习来提升自己的安全技能。本次,我们本次测试的是prime1。

一、主机发现和端口扫描

  1. 查看Vmware中靶机的MAC地址,方便与之后nmap扫描出来的主机的MAC地址进行对比,选择nmap与靶机MAC地址相符的主机,其IP地址即为靶机的IP地址。

    1692975164_64e8c03c4842949ad21ef.png!small

    这里我已知目标使用了NAT模式。

  2. 使用nmap进行网络扫描

    nmap -sP 192.168.1.0/24

    1692974915_64e8bf43423bd394fcfa4.png!small?1692974914458

    -p(ping)

    -O(operation)

    除了使用Nmap的命令之外,还可以使用命令对目标的IP地址进行扫描。

    arp-scan -l                       //IP地址和MAC地址的映射

    netdiscover -i eth0 -r 192.168.1.0/24      //扫描这个网段下当前还存在的网络

  3. 使用nmap进行端口扫描

    nmap -p 1-65535 -A 192.168.1.129

    1692975228_64e8c07cd6c306e8349c7.png!small?1692975228075

    由上图可知,nmap扫描出来22和80两个端口,并且把其他的一些指纹信息例如操作系统类型、Apache版本等都扫描出来了。
  4. 访问目标

    1692975330_64e8c0e2957b917ae57ad.png!small?1692975329983

二、目录扫描

  1. 进行网页目录扫描

    dirb http://192.168.1.129

    1692975427_64e8c143924f7456b31f4.png!small?1692975426783

    也可以使用参数-X指定扫描的文件

    1692975469_64e8c16dde7ec4cd29517.png!small?1692975469101

  2. 然后访问一下目标目录下的secret.txt文件,结果如下图

  3. 1692975509_64e8c1952090d19c6e102.png!small?1692975508286

    有提示,看来location.txt是一个特殊文件,但直接访问之后没有什么特殊的,这个文件可能是某个参数的值

三、FUZZ和LFI

  1. 使用wfuzz工具测试一下,找url中可能存在的参数

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

    1692975676_64e8c23c12d8dc380a99a.png!small

    FUZZ模糊测试,功能:

    • 找参数

    • 目录扫描

    • 密码暴力破解

    • 找出被过滤的关键字

    • 压力测试

  2. 大多数都一样,使用hw命令过滤一下不一样的条目

    1692975752_64e8c288d31a42a2faa6d.png!small

  3. 可以看出这一条和其他的不一样,可以试着加上payload去访问一下,结果如下图所示

    1692975818_64e8c2ca4f3b216e72949.png!small?1692975817680

    给出了错误提示,但却也告诉了我们一些信息,那就是file是网页中中存在的一个文件参数,接下来我们就可以利用这一点了。

  4. 结合之前我们看到的提示,将location.txt作为file的参数值,然后再访问

    1692975859_64e8c2f394b787397295f.png!small?1692975859960

  5. 有效果了,让我们试一下secrettier360参数,我试了一下没什么反应,后来我是把index.php改为image.php才有反应,image.php之前有扫描出来,但是没留意,不知道有什么用处,因为它和index.php的界面没什么区别

    1692976394_64e8c50a48880e33cf381.png!small?1692976394756

  6. 因为这是一个Linux操作系统,其中的敏感文件有/etc/passwd,我们可以试着将其作为参数参给secrettier360,结果如下图

    1692976419_64e8c52359505f4b370d0.png!small?1692976419271

    找到要登录Linux的提示了。

在Linux中,/etc/passwd中的密码使用x代替,不显示出来,而在/etc/shadow中则是通过MD5加salt加密,是显示出来的。

  1. 按照提示在url中输入相关参数

    1692976443_64e8c53b9e55d19c2cf5b.png!small?1692976442770

  2. 得到一个密码follow_the_ippsec,不知道是不是登录Linux操作系统的密码,我尝试了一下,结果不是,看来还得从其他方面入手,我之前对目标目录进行了扫描,扫到了一个wordpress的目录

四、WordPress漏洞扫描

  1. 目标网站使用wordpress搭建的,这是一个CMS,曾经存在文件上传漏洞,我访问了它的wordpress目录,其中有一个用户名和一个登录链接。

    1693225723_64ec92fb01aea16e93ad2.png!small?1693225722693

  2. 已知一个用户名,尝试使用之前从password.txt中获得的密码follow_the_ippsec尝试一下是否能够进行登录。

    1693225766_64ec93261f5c57d138269.png!small?1693225765860

  3. 结果成功进入后台界面,如下图所示。

    1693225795_64ec93432139eb65a797f.png!small?1693225794935

  4. 现在可以尝试上传webshell了,先寻找上传点,我在Appearance的Theme Editor选项里面的secret.php中找到了上传点。

    1693225834_64ec936ac8dfb2c2c63b6.png!small?1693225834750

  5. 使用MSF来反弹shell,方便快捷,在MSF生成一个shell.php,建立监听。

    1693226011_64ec941baa1008856ebc6.png!small?1693226011483

  6. 将最前面的注释去掉,复制到secret.php中,然后上传。

    1693226062_64ec944ea0c283c5d82a8.png!small?1693226062658

  7. 使用MSF建立监听,然后访问secret.php。

    1693226088_64ec94685dca9539c51aa.png!small

在wordpress中,secret.php其实是位于wordpress/wp-content/themes/twentynineteen目录下的,因此我们通过访问该目录下的secret.php即可反弹shell,即访问http://192.168.1.129/wordpress/wp-content/themes/twentynineteen/secret.php。

  1. 成功拿到shell,此时我们可以尝试一些命令获取目标更多的信息。

    1693226153_64ec94a949b6f2d9f405f.png!small?1693226152977

五、Linux内核漏洞提权

  1. 我们已经拿到目标的shell了,但我们还没达到root权限,要拿到root权限就得在目标的操作系统上提权。我在meterpreter中使用了sysinfo命令查看了目标的相关信息。

    1693226184_64ec94c8da112dd5cd1d4.png!small?1693226184449

  2. 接下来搜索该Linux系统或系统内核是否存在过漏洞。

    1693226211_64ec94e34b8c0b8aed9e6.png!small?1693226211097

    看来存在,Linux内核在4.13.9之前的版本存在漏洞,我们找到45010.c的路径并将其编译为可执行程序。

    1693226264_64ec9518de6ea0a03508a.png!small?1693226264490

如果在目标系统中编译的话可能出问题,因为目标操作系统可能没有gcc编译器,不具备C语言程序的编译环境。

  1. 将编译好的45010.exe上传至目标的/tmp/目录下。

    1693226288_64ec9530f39ba6747568a.png!small?1693226288568

上传到其他文件中可能没有权限,可以上传到目标的/tmp目录。

  1. 上传成功之后,我查看了一下,/tmp/目录下存在45010的程序,但是没有可执行权限。

    1693226341_64ec956553ad357a50846.png!small?1693226341082

  2. 执行一个shell脚本使其获得可执行权限。

    shell
    cd /tmp
    ls
    chmod +x 45010
    ./45010
    whoami

    1693226391_64ec95970c6d1d36d7d22.png!small?1693226390683

    在shell中执行./45010时出现了一个错误:

    ./45010: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by ./45010)

    换一个旧版本的Kali,例如Kali2021.4也行,安装好之后在重复上述一些列不走之后再执行whoami命令,结果显示root,说明提权成功。

相关文章:

Vulnhub实战-prime1

前言 VulnHub 是一个面向信息安全爱好者和专业人士的虚拟机(VM)漏洞测试平台。它提供了一系列特制的漏洞测试虚拟机镜像,供用户通过攻击和漏洞利用的练习来提升自己的安全技能。本次,我们本次测试的是prime1。 一、主机发现和端…...

Scala学习笔记

Scala学习笔记 Scala笔记一、学习Scala的目的二、Scala的基本概念2.1 JDK1.8版本的新特性2.2 Scala的运行机制 三、Scala的基本语法3.1 Scala中输出语句、键盘输入、注释语法3.1.1 Scala注释三种,和Java一模一样的3.1.2 Scala键盘输入3.1.3 Scala输出 3.2 Scala变量…...

虹科分享 | 软件供应链攻击如何工作?如何评估软件供应链安全?

说到应用程序和软件,关键词是“更多”。在数字经济需求的推动下,从简化业务运营到创造创新的新收入机会,企业越来越依赖应用程序。云本地应用程序开发更是火上浇油。然而,情况是双向的:这些应用程序通常更复杂&#xf…...

gRpc入门和springboot整合

gRpc入门和springboot整合 一、简介 1、gprc概念 gRpc是有google开源的一个高性能的pc框架,Stubby google内部的rpc,2015年正式开源,云原生时代一个RPC标准。 tips:异构系统,就是不同编程语言的系统。 2、grpc核心设计思路 grpc核心设计…...

基于FPGA点阵显示屏设计-毕设

本设计是一1616点阵LED电子显示屏的设计。整机以EP2C5T144C8N为主控芯片,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。通过该芯片控制一个行驱动器74HC154和两个列驱动器74HC595来驱动显示屏显示。该电子显示屏可以显示各种文字或单色图像,采用4块8 x 8点…...

Rocky9.2基于http方式搭建局域网yum源

当前负责的项目有几十台Linux服务器,在安装各类软件的时候需要大量依赖包,而项目部署的环境属于内网环境,与Internet网完全隔离,无法采用配置网络yum源的方式安装rpm包,直接在每台linux服务器上配置本地yum源也比较麻烦,而采用直接下载rpm包用rpm命令安装更是费时费力。所…...

Android 串口通讯

Serial Port Android 串口通讯 arm64-v8a、armeabi-v7a、x86、x86_64 AAR 名称操作serial.jar下载arm64-v8a下载armeabi-v7a下载x86下载x86_64下载arm-zip下载x86-zip下载 Maven 1.build.grade | setting.grade repositories {...maven { url https://jitpack.io } }2./a…...

论如何在Android中还原设计稿中的阴影

每当设计稿上注明需要添加阴影时,Android上总是显得比较棘手,因为Android的阴影实现方式与Web和iOS有所区别。 一般来说阴影通常格式是有: X: 在X轴的偏移度 Y: 在Y轴偏移度 Blur: 阴影的模糊半径 Color: 阴影的颜色 何为阴影 但是在A…...

Hadoop生态圈中的Flume数据日志采集工具

Hadoop生态圈中的Flume数据日志采集工具 一、数据采集的问题二、数据采集一般使用的技术三、扩展:通过爬虫技术采集第三方网站数据四、Flume日志采集工具概述五、Flume采集数据的时候,核心是编写Flume的采集脚本xxx.conf六、Flume案例实操1、采集一个网络…...

FFmpeg获取媒体文件的视频信息

视频包标志位 代码 printf("index:%d\n", in_stream->index);结果 index:0视频帧率 // avg_frame_rate: 视频帧率,单位为fps,表示每秒出现多少帧 printf("fps:%lffps\n", av_q2d(in_stream->avg_frame_rate));结果 fps:29.970070fps…...

io概述及其分类

一、IO概念 • I/O 即输入Input/ 输出Output的缩写,其实就是计算机调度把各个存储中(包括内存和外部存储)的数据写入写出的过程; I : Input O : Output 通过IO可以完成硬盘文件的读和写。 • java中用“流(stream&am…...

前端面试话术集锦第 14 篇:高频考点(React常考基础知识点)

这是记录前端面试的话术集锦第十四篇博文——高频考点(React常考基础知识点),我会不断更新该博文。❗❗❗ 1. 生命周期 在V16版本中引入了Fiber机制。这个机制一定程度上的影响了部分生命周期的调用,并且也引入了新的2个API来解决问题。 在之前的版本中,如果你拥有一个很…...

UI/UX+前端架构:设计和开发高质量的用户界面和用户体验

引言 随着数字化和互联网的普及,越来越多的企业和组织需要高质量的用户界面和用户体验,以及可靠、高效的前端架构。UI/UX设计师和前端架构师可以为这些企业和组织提供所需的技术和创意支持。本文将介绍UI/UX前端架构这个方向,包括设计原则、…...

长尾关键词挖掘软件-免费的百度搜索关键词挖掘

嗨,大家好!今天,我想和大家聊一聊长尾关键词挖掘工具。作为一个在网络世界里摸爬滚打多年的人,我对这个话题有着一些个人的感悟和见解,希望能与大家分享。 首先,让我坦白一点,长尾关键词挖掘工具…...

React Native 环境配置(mac)

React Native 环境配置(mac) 1.Homebrew2.Node.js、WatchMan3.Yarn4.Android环境配置1.安装JDK2.下载AndroidStudio1.国内配置 Http Proxy2.安装SDK1.首先配置sdk的路径2.SDK 下载 3.创建模拟器4.配置 ANDROID_HOME 环境变量 5.IOS环境1.升级ruby&#x…...

CAD for JS:VectorDraw web library 10.1004.1 Crack

VectorDraw web library经过几年的研究,通过互联网展示或工作的可能性并拒绝了各种项目,我们最终得出的结论是,在 javascript 的帮助下,我们将能够在 Microsoft IE 以外的互联网浏览器中通过网络演示矢量图形(支持 ocx…...

代码管理工具git1

ctrl 加滚轮 放大字体 在计算机任意位置单击右键,选择::Git Bash Here git version git清屏命令:ctrl L查看用户名和邮箱地址: $ git config user.name$ git config user.email修改用户名和邮箱地址:$ git…...

层次聚类分析

1、python语言 from scipy.cluster import hierarchy # 导入层次聚类算法 import matplotlib.pylab as plt import numpy as np# 生成示例数据 np.random.seed(0) data np.random.random((20,1))# 使用树状图找到最佳聚类数 Z hierarchy.linkage(data,methodweighted,metric…...

Jmeter性能实战之分布式压测

分布式执行原理 1、JMeter分布式测试时,选择其中一台作为调度机(master),其它机器作为执行机(slave)。 2、执行时,master会把脚本发送到每台slave上,slave 拿到脚本后就开始执行,slave执行时不需要启动GUI&#xff0…...

学信息系统项目管理师第4版系列08_管理科学基础

1. 科学管理的实质 1.1. 反对凭经验、直觉、主观判断进行管理 1.2. 主张用最好的方法、最少的时间和支出,达到最高的工作效率和最大的效果 2. 资金的时间价值与等值计算 2.1. 资金的时间价值是指不同时间发生的等额资金在价值上的差别 2.2. 把资金存入银行&…...

从2023蓝帽杯0解题heapSpary入门堆喷

关于堆喷 堆喷射(Heap Spraying)是一种计算机安全攻击技术,它旨在在进程的堆中创建多个包含恶意负载的内存块。这种技术允许攻击者避免需要知道负载确切的内存地址,因为通过广泛地“喷射”堆,攻击者可以提高恶意负载被…...

基于SSM的学生宿舍管理系统设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…...

jvm 内存模型介绍

一、类加载子系统 1、类加载的过程:装载、链接、初始化,其中,链接又分为验证、准备和解析 装载:加载class文件 验证:确保字节流中包含信息符合当前虚拟机要求 准备:分配内存,设置初始值 解析&a…...

用Jmeter进行压测详解

简介: 1.概述 一款工具,功能往往是很多的,细枝末节的地方也很多,实际的测试工作中,绝大多数场景会用到的也就是一些核心功能,根本不需要我们事无巨细的去掌握工具的所有功能。所以本文将用带价最小的方式讲…...

Mysql001:(库和表)操作SQL语句

目录: 》SQL通用规则说明 SQL分类: 》DDL(数据定义:用于操作数据库、表、字段) 》DML(数据编辑:用于对表中的数据进行增删改) 》DQL(数据查询:用于对表中的数…...

甲骨文全区登录地址

日本东部 东京 https://console.ap-tokyo-1.oraclecloud.com https://console.ap-tokyo-1.oraclecloud.com 日本中部 大阪 https://console.ap-osaka-1.oraclecloud.com https://console.ap-osaka-1.oraclecloud.com 韩国中部 首尔 https://console.ap-seoul-1.oraclecloud.c…...

Java面试题第八天

一、Java面试题第八天 1.如何实现对象克隆? 浅克隆 浅克隆就是我们可以通过实现Cloneable接口,重写clone,这种方式就叫浅克隆,浅克隆 引用类型的属性,是指向同一个内存地址,但是如果引用类型的属性也进行浅克隆就是深…...

什么是同步容器和并发容器的实现?

同步容器和并发容器都是用于在多线程环境中管理数据的容器,但它们在实现和用法上有很大的区别。 同步容器: 同步容器是使用传统的同步机制(如synchronized关键字或锁)来保护容器内部数据结构的线程安全容器。同步容器通常是单线…...

学Python的漫画漫步进阶 -- 第十六步

学Python的漫画漫步进阶 -- 第十六步 十六、多线程16.1 线程相关的知识16.1.1 进程16.1.2 线程16.1.3 主线程 16.2 线程模块——threading16.3 创建子线程16.3.1 自定义函数实现线程体16.3.2 自定义线程类实现线程体 16.4 线程管理16.4.1 等待线程结束16.4.2 线程停止 16.5 动动…...

MySQL 8.0 OCP (1Z0-908) 考点精析-架构考点5:数据字典(Data Dictionary)

文章目录 MySQL 8.0 OCP (1Z0-908) 考点精析-架构考点5:数据字典(Data Dictionary)File-based Metadata Storage (基于文件的元数据存储)Transactional Data Dictionary (事务数据字典)Serialized Dictionary Informat…...

商务网站规划与建设课设的项目需求/网络广告推广公司

前言 本文涉及的内容均不是原创,是记录自己在学习IO、执行计划的过程中学习其他大牛的博客和心得并记录下来,之所以想写下来是为了记录自己在追溯的过程遇到的几个问题,并把这些问题弄清楚。 本章最后已贴出原文地址。 1、SQL Server的数据存…...

快手刷赞网站推广软件/优质的seo快速排名优化

我使用了很多C,我对Java的工作方式感到很困惑:如果我有课的话public class MyClass{private int[] myVariable;...public int[] getVar(){return myVariable;}}然后我想在其他地方使用我的变量:public static void main(String[] args){MyCla…...

客服外包在哪个平台接业务/苏州seo报价

算法流程 优化算法 优化1:Center-Symmetric Census Transform (CSCT) CSCT并行 MC并行 优化2:代价聚合并行 实验结果 除了在集成了 8 个 ARM 内核和 2 个 Maxwell SM 且 TDP 为 10W 的 NVIDIA Tegra X1 上执行之外,为了进行比较&#xff…...

公司网站制作步骤/同城推广

2019独角兽企业重金招聘Python工程师标准>>> ‍本来没准备换编辑器,但是dede自带的编辑器实在是太难用了。所以准备自己动手整合一下百度的ueditor编辑器。 1,首先得自己下一个ueditor的源码包,传送门-》http://ueditor.baidu.co…...

新闻网站哪个做的好/学网络与新媒体后悔死了

vim编辑模式下 没有ctrla 的 全选方式 然后del 切换到 命令模式 :%d 既可...

旅游网站开发需求文档模板/专业搜索引擎seo技术公司

本文接着每日文献:2018-02-27,上文探讨方法,本文是具体代码 为了解基因组存在T-DNA插入时,即基因组构成为AC而样本基因组为ABC的情况得到的测序结果在序列比对的时候的可能情况,因此需要先要使用模拟数据进行探索。 第…...