01 环境搭建
- 靶机环境下载:https://www.vulnhub.com/entry/ha-infinity-stones,366/
- 题目信息如下,需要找到6个宝石对应的flag
Thanos thinks that if he kills half of all life in the universe, he’ll restore balance. To do so, he needs all six Infinity Stones to power his Infinity Gauntlet, which in turn will give him the ability to bend time, space, energy, and the laws of physics and reality. But the Avengers are one step ahead of Thanos this time. Avengers have hidden all the Infinity Stones all over this CTF. Help Thanos to get all the Infinity Stones and restore the balance of the universe.
This machine contains 6 Infinity Stones with Six different flags to test your skills.
Space Stone
Mind Stone
Reality Stone
Time Stone
Power Stone
Soul Stone
Each stone can be found in a different way.
ENUMERATION IS THE KEY!!!!!
Visit our website http://hackingarticles.in
02 信息收集
将靶机环境恢复到virtualbox
之后,开始第一步信息收集工作。
发现靶机
查看攻击机的ip为192.168.56.1
(环境恢复时采用Host-Only Adapter)
使用nmap
扫描网段内的ip地址
nmap -sP 192.168.56.0/24
扫描发现的192.168.56.12
就是目标靶机的ip地址。
端口扫描
使用nmap
对目标靶机开放的端口进行扫描
nmap -Pn -n -sV 192.168.56.12
发现目标靶机开放了4个tcp端口,22,80,443,8080。
遍历目录
访问80端口,是一个blog页面。
点击Aether
有个问答页面
访问8080
端口,是个Jenkins
的登录页面。
使用dirb
命令,对靶机的目录进行遍历。存在一个image
目录。
dirb http://192.168.56.12
存在img image wifi
目录。
03 获取flag
Mind Stone
采用https访问网站,查看其ssl证书,获取flag。
这个不看hint完全想不到-_-||
Space Stone
访问img
目录,发现一个space.jpg
。下载后查看图片信息发现flagSPACESTONE:{74E57403424607145B9B77809DEB49D0}
exiftool space.jpg
Reality Stone
访问wifi
目录,有个pwd.txt
文件和一个cap抓包。查看pwd.txt
是个密码生成规则。
根据这个规则,使用crunch
生成密码本。
crunch 12 12 -t gam,%%@@2012 -o wordlists
% 代表数字
^ 代表特殊符号
@ 代表小写字母
, 代表大写字符
使用aircrack-ng
爆破密码。
aircrack-ng -w wordlists reality.cap
访问gamA00fe2012
目录,有realitystone.txt
文件,查看即可获得flagREALITYSTONE:{4542E4C233F26B4FAF6B5F3FED24280C}
Time Stone
进入aether.php
,回答题目,结果为F T T F T F F T
。转为二进制为01101001
,69
,ascii码i
。尝试用这几个作为路径访问,最终发现01101001
目录存在。在目录下有个hint文件。
查看发现是个brainfuck
编码,在线解码http://ctf.ssleye.com/brain.html
获得admin:avengers
使用该账户登录Jenkins
。发现版本为2.176.3。
尝试用CVE-2019-10392
来进行命令注入,获得反弹shell。但是命令执行失败
在metasploit中搜索jenkins的poc,最后发现13年的exploit/multi/http/jenkins_script_console
可以攻击成功。
在设置参数时,注意更改目标系统为Linux
攻击成功获取到shell,再利用python获取一个tty
python3 -c "import pty;pty.spawn('/bin/bash');"
搜索suid
尝试提权。
find / -user root -perm -4000 -print 2>/dev/null
发现一个/opt/script
,尝试执行获得flag
Power Stone
查看/opt
目录,还存在一个morag.kdbx
文件。下载后打开发现需要一个密码。
使用john来爆破,获得密码为princesa
keepass2john morag.kdbx > hash
john hash
进入后有个flag项目,点击查看发现flag
Soul Stone
在morag.kdbx
文件中还有个creds
,打开后在备注处有个base64编码字符。
解码后获得账户密码
登录ssh,搜索sudo配置,发现可以执行ftp
命令
在ftp中执行/bin/sh
获得root权限,最终获得flag