SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

栏目: 编程工具 · 发布时间: 7年前

内容简介:电影《Catch MeIf You Can》的中译名是《猫鼠游戏》,《猫鼠游戏》是一部好莱坞罕见的犯罪传记题材影片,其以独特的视角重新演绎了社会工程学诈骗的诸多手段令人称赞。本次靶机的主题也是来源于此,作者在靶机中以{MD5 Hash}的形式放置了8个flag,我们的目标就是拿到这八个flag,下面是作者给出的八个flag的提示信息:

前言

电影《Catch MeIf You Can》的中译名是《猫鼠游戏》,《猫鼠游戏》是一部好莱坞罕见的犯罪传记题材影片,其以独特的视角重新演绎了社会工程学诈骗的诸多手段令人称赞。

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

本次靶机的主题也是来源于此,作者在靶机中以{MD5 Hash}的形式放置了8个flag,我们的目标就是拿到这八个flag,下面是作者给出的八个flag的提示信息:

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

描述

难度:初级&中级

下载地址: https://download.vulnhub.com/skydog/SkyDogConCTF2016VBoxV10.ova

安装说明:我使用的是VMware,导入ova文件,因为靶机已经配置了DHCP,所以NAT方式连接后靶机自动获取IP。

信息收集

话不多说,开始搞它!

靶机IP:192.168.23.129

攻击机IP:192.168.23.128

存活主机探测

用nmap探测本网段存活主机 nmap -r 192.168.23.0/24

探测到192.168.23.129(靶机)存活

端口探测

nmap -u 192.168.23.129

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

可以看到开放了80和443端口

Flag#1

尝试访问该web站点:

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

右键查看页面源代码:

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

在源码注释中找到隐藏路径 http://192.168.23.129/oldIE/html5.js

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

在js文件的注释中找到奇怪的字符串:666c61677b37633031333230373061306566373164353432363633653964633166356465657d。该字符串中存在数字、字母,并且字母范围在“a-f”之间,并且题设提示:

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

将字符串进行转码果然得到第一个flag。

Flag#1{7c0132070a0ef71d542663e9dc1f5dee}

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

Flag#2

对flag#1内容进行MD5解密,所给的线索是nmap:

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

nmap -p-192.168.23.129 对所有端口进行更完整的扫描。

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

根据nmap扫描端口的结果,我们发现在22端口的ssh服务关闭,但是在22222端口上开放了OpenSSH的服务,通过 ssh 192.168.23.129 -p 22222 尝试连接,在回显信息中拿到第二个flag。 Flag#2{53c82eba31f6d416f331de9162ebe997}

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

Flag#3

对flag#2内容进行MD5解密,获取线索“加密”

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

根据题设,Flag#3的关键字是“拦截”

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

再联想http采用80端口与Web服务器通信,无加密措施易被拦截、值入非法内容;https采用443端口同第三方安全公司发生的SSL证书加密与Web服务器通信,有效防止拦截、信自安全加密传输。用https协议对网站进行访问:

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

查看该站点的证书信息:

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

得到第三个flag。 Flag#3{f82366a9ddc064585d54e3f78bde3221}

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

Flag#4

对flag#3内容进行MD5解密,获取线索“personnel”

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

完全与题设不搭,感觉应该是目录,尝试访问该路径 http://192.168.23.129/personnel ,得到回显信息

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

根据题设,Flag#4的关键字是“代理”

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

结合之前找到的html5.js文件,搜索关键字“FBI”,发现如下信息

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

还有一个[email protected]像是一个邮箱,感觉应该有用,先放在这里猜测题目要求是通过burp修改用户代理User Agent使用IE4访问

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

点击forward放过数据包,成功伪造,得到第四个flag。 Flag#4{14e10d570047667f904261e6d08f520f}

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

并且在页面下方获取新线索:“clue=new+flag”

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

Flag#5

对flag#4内容进行MD5解密,获取线索“evidence”

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 通过提供的两个线索,猜测newevidence是一个目录,尝试访问 http://192.168.23.129/newevidence 确实是个目录。

需要FBI才能登陆(此处与上一关有异曲同工之妙,还是需要修改用户代理),除此之外,我们需要知道用户名和密码。

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 而在第一关的html5.js文件中发现了一个邮箱:[email protected]即用户名的构成是:名字.姓氏(并且都是小写)。

而我们在上一关登陆 http://192.168.23.129/personnel/ 页面显示:

Welcome Agent Hanratty。

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 感觉这个 Agent Hanratty 应该是一个人,于是问一下度娘

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 得到这个FBI探员的名字是:Carl Hanratty

所以用户名应该是:carl.hanratty

密码没有提示,只能用burp进行爆破

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 抓包后发现用户名密码是base64加密,解密查看提交的格式

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 一共分为三个部分:用户名:密码

根据给出的格式构造payload(此处爆破介绍较为详细,大佬请略过)

Payload type选择Custom iterator自定义迭代器

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 我们一个一个来设置,我们先设置自定义迭代器的第一组payload,设置为账号:

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

第二组payload只有一个值,就是冒号(注意中英文格式)

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

第三组为密码,导入爆破字典

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

现在三组payload都设置好了,还有最后最重要的一步:base64加密。

在Payload Processing中点击add添加相应的加密就可以

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

根据实际情况调整线程,最后点击Start Attack开始攻击即可。

爆破了一会,出现状态码301

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 解密得到密码:Grace

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 登录成功界面:

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 点击“Evidence Summary File”,得到第五个flag。 Flag#5{117c240d49f54096413dd64280399ea9}

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 同时我们还在登陆后的页面下载到了两个文件

一个是PDF:Invoice.pdf;一个是JPG:image.jpg

Flag#6

对flag#5内容进行MD5解密,获取线索“panam”

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 推测可能是目录,或者登录用户名或者密码,尝试访问目录:

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 发现不是目录,再看一下题设

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 似乎没有什么灵感,现在我们唯一可以利用的就是上个flag获得的newevidence.jpg跟Invoice.pdf。先看一下这个PDF,首先看了看PDF的属性,并没有发现什么特别的,就打开这个文件,想看看内容有没有什么线索。

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 我认为比较有用的都已经标出来了,最后度娘告诉我文档中Stefan Hetzl是一个Steghide的作者,而Steghide是一个可以在图像,音频中隐藏数据的小工具,正好可以联系到我们的图片上

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 我们利用Steghide工具来剖析这张图片 steghide extract -sf image.jpg

(Steghide使用详解: https://blog.csdn.net/Jeanphorn/article/details/45034859

还需要密码,这个时候我想到了上一关解出的线索“panam”

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 找到了隐藏了flag.txt

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 打开txt找到第六个flag。 Flag#6{d1e5146b171928731385eb7ea38c37b8}

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 Flag#7

MD5解密flag#6,获取线索“ILoveFrance”(其实文件中已给出明文)

同时这个文本里面还给了我们新的线索:iheartbrenda

常规套路推测可能是目录,或者登录用户名或者密码,尝试访问目录:

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 发现不是目录,再看一下题设

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 翻译:弗兰克被摄像机拍到,大喊大叫,我是活着的最快的人!

弗兰克为什么大喊大叫这句话,果然度娘还是强大的,发现弗兰克大叫的这句“I’m The Fastest Man Alive!”来自于闪电侠

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 这句话完整的是:My name is Barry Allen and I am the fastest man alive when I was achild , I saw my mother killed by …

现在使用发现的口令的唯一地方就是SSH,所以尝试登陆去连接SSH,而用户名正好可以用那句话里的name:barryallen

ssh [email protected] 22222

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 密码的话根据现有的线索,不是IloveFrance,就是iheartbrenda,试一下就好了(悄悄告诉你密码是iheartbrenda)。

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 好不容易登录成功,先看一下有哪些文件呗。

很顺利的拿到了第七个flag。 Flag#7{bd2f6a1d5242c962a05619c56fa47ba6}

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 Flag#8

对flag#7内容进行MD5解密,获取线索“theflash”

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 还有在上一关我们flag的目录下有一个security-system.data的文件,推测最后一关应该是和这个文件有关了。

执行如下命令,将文件下载到本地文件夹

scp -P [email protected]:/home/barryallen/security-system.data ~/文档

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 我们先用kali linux自带的binwalk工具分析一下这个文件,发现是个zip文件

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 想要解压压缩文件,必须要把这个文件转成zip文件

mv security-system.datasecurity-system.zip

然后使用unzip命令来解压这个zip文件

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 解压出来看一下文件名security-system.data 翻译为安全系统数据

再看一下首页给的题设关键字应该是memory(内存)

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 所以猜测这个文件可能是一台机器的内存映像,接下来可以使用Volatility来进行电子取证。

(Volatility介绍及用法:

https://www.anquanke.com/post/id/86036

https://blog.csdn.net/kevinhanser/article/details/80013033

https://tools.kali.org/forensics/volatility )

首先查看一下文件信息:

volatility -fsecurity-system.data imageinfo

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 发现了一些有用的数据,继续用volatility进行挖掘

查看历史命令 volatility-f security-system.data –profile=WinXPSP2x86 cmdscan

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 发现写入了code.txt一些字符串,对这些字符串进行解码

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 获得第八个flag。 Flag#8{841dd3db29b0fbbd89c7b5be768cdc81}

都拿到flag了,解密一下吧

SkyDog: 2016 – Catch Me If You Can 靶机渗透测试 两只小老鼠???好吧 至此分享结束。

总结

这个靶机难度的定位虽然是中低级,但是对于我这种小菜鸟来说还是有一定难度的,在渗透过程中会遇到很多坑,例如在猜解密码的时候用到了好多社工,还有必须在burp中修改为IE4的代理,还有burp的加密爆破,还有volatility工具的应用等等。渗透路漫漫,道阻且艰,加油啊!!!


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Mathematica Cookbook

Mathematica Cookbook

Sal Mangano / O'Reilly Media / 2009 / GBP 51.99

As the leading software application for symbolic mathematics, Mathematica is standard in many environments that rely on math, such as science, engineering, financial analysis, software development, an......一起来看看 《Mathematica Cookbook》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具