Catch Me If You Can靶机实战演练 – 作者:小鸟

0x01 前言

电影《Catch Me If You Can》的中译名是《猫鼠游戏》,《猫鼠游戏》是一部好莱坞罕见的犯罪传记题材影片,其以独特的视角重新演绎了社会工程学诈骗的诸多手段令人称赞。《猫鼠游戏》是由莱昂纳多、汤姆·汉克斯 、 克里斯托弗·沃肯三大演技派主演的犯罪传记类型电影,《猫鼠游戏》在美国上映后,引起了不小的反响和对人物历史的追溯热潮,而克里斯托弗·沃肯更凭借此片一举提名第75届奥斯卡金像奖最佳男配角。

影片具有很高的还原度和较强的创新性,极为罕见的向观众展现了诸多社会工程学诈骗手段,并且鞭辟入里,有所依据。著名黑客米特尼克在《欺骗的艺术》中曾说过,“社工诈骗其实就是一种通过对受害者心理弱点、本能反应、好奇心、信任、贪婪等心理陷阱进行诸如欺骗、伤害等危害手段。”这种欺诈方式相比与技术诈骗而言,更加难以防范,因为人性的弱点和劣根性永远是最易于被击溃的一道命门。

或许在观众看来,影片中的许多诈骗手段老套过时且无法适用于当下,但需要强调的是,在六七十年代的旧社会中,能够找出行政执法的漏洞和体制内诸多的不健全因素而加以利用,同时很好地洞悉人性进行大额诈骗,在当时,可以算作是极为杰出的”诈骗艺术家“。

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

The eight flags are in the form of flag{MD5 Hash} such as flag{1a79a4d60de6718e8e5b326e338ae533

Flag #1 Don’t go Home Frank! There’s a Hex on Your House.

Flag #2 Obscurity or Security?

Flag #3 Be Careful Agent, Frank Has Been Known to Intercept Traffic Our Traffic.

Flag #4 A Good Agent is Hard to Find.

Flag #5 The Devil is in the Details – Or is it Dialogue? Either Way, if it’s Simple, Guessable, or Personal it Goes Against Best Practices

Flag #6 Where in the World is Frank?

Flag #7 Frank Was Caught on Camera Cashing Checks and Yelling – I’m The Fastest Man Alive!

Flag #8 Franks Lost His Mind or Maybe it’s His Memory. He’s Locked Himself Inside the Building. Find the Code to Unlock the Door Before He Gets Himself Killed!

paramount-11729-Full-Image_GalleryBackground-en-US-1483994508346._RI_SX940_.jpg

0x02 环境配置

靶机下载地址:https://www.vulnhub.com/entry/skydog-2016-catch-me-if-you-can,166/

我使用的是VMware,导入ova文件,NAT方式连接后靶机自动获取IP

本次实战:

靶机IP:192.168.128.138

攻击机IP:192.168.128.128

intro_cwz1cz.png

0x03 实战演练

nmap上车,IP发现:

image.png

端口探测:

image.png

发现开放了三个端口,先从web入手:

image.png

查看网站源码,发现一个目录:

image.png

访问文件,发现第一个flag,是十六进制编码:

666c61677b37633031333230373061306566373164353432363633653964633166356465657d

image.png

现在我使用以下xxd命令将十六进制转换为文本。

echo 666c61677b37633031333230373061306566373164353432363633653964633166356465657d | xxd -r -p

image.png

现在拿到了第一个flag:

flag{7c0132070a0ef71d542663e9dc1f5dee}

flag用md5解密:

image.png

所给的线索是nmap,用nmap 对所有65535端口进行更完整的扫描, 确定服务器正在端口22222上运行SSH服务器,这一定是进入服务器的方式

image.png

通过ssh连接,拿到了第二个flag:Flag{53c82eba31f6d416f331de9162ebe997}

image.png

md5解密flag,解密后的线索是:encrypt

image.png

线索是“加密”。到目前为止,截获流量和加密的唯一方法就是用于默认站点的SSL,所以仔细看看SSL证书和BOOM

image.png

拿到第三个flag:flag3{f82366a9ddc064585d54e3f78bde3221}

解密后的线索: personnel

image.png

发现personnel是一个目录,结合flag信息,又看了看之前找到的http://192.168.128.138/oldIE/html5.js

发现如下信息

image.png

image.png

用burp挂上代理,修改如下地方, 修改User-Agent,使用IE4访问:

image.png

image.png

现在我用IE4用户代理刷新页面,我们找到了Agent Hanratty的FBI门户网站

浏览器css做了过滤,但是不影响找到flag,第四个flag:

flag{14e10d570047667f904261e6d08f520f}

image.png

在门户网站的底部,我们发现我们的第四个flag{14e10d570047667f904261e6d08f520f}和一个新线索“Clue = new +flag”。

解密后线索是: evidence

image.png

通过我们刚刚从Flag4得到的信息,猜测/ newevidence是否是一个目录。确实是,但需要用户名/密码,而且要使用IE4用户代理登录

image.png

用户名,密码怎么办,我在上一个页面用cewl生成了一个字典,用hydra口令没跑出来

然后又去搜了电影相关的信息,找了好多信息终于找到正确口令: carl.hanratty/ Grace

登录任然需要代理采用IE4浏览器

image.png

image.png

image.png

找到了第五个flag:

flag{117c240d49f54096413dd64280399ea9}

解密后的线索是: panam

image.png

访问 两个文件image.jpg和Invoice.pdf

image.png

把图片下载下来,打开图片发现第六个flag

flag{d1e5146b171928731385eb7ea38c37b8}

解密后的线索是: ILoveFrance

image.png

这是一个很奇怪的线索,为什么弗兰克大喊“iheartbrenda”? 我搜了这句话,这句话来自超级英雄barry.allen,又名Flash。

于是我做了一堆“barry.allen”和“flash”的不同组合,现在使用我发现的口令的唯一地方就是SSH,所以我尝试使用密码“iheartbrenda”和“barry.allen”,登录失败,于是 我尝试使用“barryallen”和“iheartbrenda”作为口令,登陆成功了

image.png

成功拿到flag,flag{bd2f6a1d5242c962a05619c56fa47ba6}

并且有一个名为“security-system.data”的非常大的文件。

解密flag的线索: theflash

image.png

现在我可以通过SSH访问Barry Allen帐户,我开始仔细查看主目录中的security-system.data文件。

在kali执行如下命令,将文件下载下来

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

image.png

我将文件下载到Kali,查看它是什么类型的文件。该文件命令显示它是一个zip文件,所以我运行如下命令

image.png

security-system.data显示是一些exe数据,在文件上运行字符串我看到很多提及内存的内容,所以我想它可能是一台机器的内存映像。下一步是使用 volatility来查看文件

image.png

确实出现了一些有趣的信息,我继续使用volatility进一步挖掘。

image.png

在桌面上看到一个名为code.txt的文件,它是对我们线索的直接引用,下一步是我想看看是否有任何内容输入到控制台中

image.png

可以看到code.txt是通过在文件中回显hex来在桌面上创建的,解码这个十六进制数据,再次运行xxd命令

echo 66 6c 61 67 7b 38 34 31 64 64 33 64 62 32 39 62 30 66 62 62 64 38 39 63 37 62 35 62 65 37 36 38 63 64 63 38 31 7d | xxd -r -p

image.png

最后一个flag:flag{841dd3db29b0fbbd89c7b5be768cdc81}

解密: Twolittlemice

0x04 总结

渗透思路很常规,靶机整体难度也不大,只是其中有几个坑点,非常适合新手学习。

这个靶机有两个难点,一个是在访问的时候必须要用IE4浏览器,最方便的办法就是在burp中修改,第二个是拿到security-system.data这个数据包不知道该怎么找到flag,不得不说volatility这个工具真的太强大,成功帮我找到了最后的flag。

参考资料:

https://www.vulnhub.com/entry/skydog-2016-catch-me-if-you-can,166/

https://www.jamesbower.com/skydog-con-2016-ctf/

https://www.mrb3n.com/?p=404

* 本文作者:小鸟,转载请注明来自FreeBuf.COM

来源:freebuf.com 2018-06-28 10:00:32 by: 小鸟

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论