一直在secpulse这个平台学习,总要贡献些什么,最近装B太多了,肚子里没有货,翻译篇CTF writeup,静静心。

原文在http://www.projectmentor.net/2014/12/shmoocon-ticket-contest-writeup.html,翻译也只是一个做题流程翻译,不会和原文那么一个词一个词的对应。

header

通过下载回来的evil.exe,我们先使用strings查看下

strings –n10 evil.exe

ShmooCon_1

通过返回的信息可以看到有用户名,域名,IP地址,还有一串可疑的字符串“IT IS BETWEEN THE NULL BYTES”

Administrator
EXPLOITS.LOCAL
<<<<<<<<< IT IS BETWEEN THE NULL BYTES!!+2
Administrator
EXPLOITS.LOCAL
<<<<<<<<< IT IS BETWEEN THE NULL BYTES!!c?
YT1CTy*=tS
104.236.163.121

再使用xxd看一下evil.exe的十六进制找更多的线索 (或者hexeditor evil.exe)

xxd evil.exe > evil_hexdump

ShmooCon_2

NULL字符的十六进制就是00,根据刚才strings看到的,可以得到下面这串hash

5f69 6258 dce9 ff60 6bf3 fb3d 1a3b 86f9

通过使用hashid或者Hash-Identifier这种工具来识别哈希类型

工具下载地址:

git clone https://github.com/psypanda/hashid.git

git clone https://github.com/Miserlou/Hash-Identifier.git

 

分析出哈希类型是“Domain Cached Credentials”,根据刚才strings出的字符串线索,有用户名,域名,也能进一步确定是域缓存哈希,可以使用join或者hashcat来破解出明文

ShmooCon_4

4

当然可以直接去快上线的 安全脉搏md5 查询:分分钟就识别了是

得到明文密码是welcome1,这个evil.exe没有输入的地方,访问strings里出来的http://104.236.163.121/

查看网页源码,访问http://104.236.163.121/shmoo_opensteg.png

 

ShmooCon_5

 

 

xxd查看png文件,没有发现异常,估计是隐写,下载openstego分析:

git clone https://github.com/seglo/openstego.git

shmoo_opensteg

是使用的常见的LSB算法隐写,用openstego释放出README.TXT文件

ShmooCon_6

通过阅读README.TXT发现是pyftpd的说明文档,端口扫描下104.236.163.121

ShmooCon_7

得知2121端口正是pyftpd监听的FTP服务端口。上网搜索pyftpd历史漏洞,找到http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-2073,漏洞描述里说auth_db_config.py里存在硬编码后的账户

ShmooCon_8

 

passwd = [('test', 'test', 'CY9rzUYh03PK3k6DJie09g=='),
('user', 'users', '7hHLsZBS5AsHqsDKBgwj7g=='),
('roxon', 'users', 'ItZ2pB7rPmzFV6hrtdnZ7A==')]

但是账号是加密的,通过auth_db_module.py查看md5hash函数

def md5hash(s):
    m = md5.new()
    m.update(s)
    return string.strip(binascii.b2a_base64(m.digest()))
ItZ2pB7rPmzFV6hrtdnZ7A==

转换,解密:

binascii.b2a_hex(binascii.a2b_base64('ItZ2pB7rPmzFV6hrtdnZ7A=='))

9

3个弱口令

test : test
user : user
roxon : noxor

 

使用roxon:noxor登录104.236.163.121的2121,下载

Acrobatics Earthliest Subinfeudatorys Enchanted Creative Broad.data

文件回来(这里它的FTP只允许同时2个用户登录,我一直没下载回来,就用writeup里的图吧)

ShmooCon_11

根据文件名提示,AESECB,知道是AES算法,ECB模式,但是有没有填充,多少位加密的,不知道,手工使用openssl遍历解密下,反正也就大概最多试6次左右。

测试到:

Openssl aes-128-ecb –d –in Acrobatics Earthliest Subinfeudatorys Enchanted Creative Broad.data –d nopad –k

ShmooCon_10

十六进制编码的welcome1 解密成功。

 

【原文:shmoocon-ticket-contest-writeup 翻译:Mickey  SP小编编辑整理发布】

源链接

Hacking more

...