渗透测试信息安全网络与信息安全

CTFToolKit密码获取

2017-03-20  本文已影响320人  Hell0_C

在网上发现一个CTF工具包,下载链接:https://pan.baidu.com/s/1boPl1vx ,密码:tntt。当我兴致冲冲的下载完之后,发现还要解压,醉了。
原来是需要做CTF题目来得到密码。

打开题目网址

http://123.207.114.37:10000/
提示:
1、HTML中input标签的placeholder属性
2、CRC穷举碰撞
3、文本隐写
访问之发现是一个类似于知乎的登录界面
根据题目提示:HTML中input标签的placeholder属性,于是就先查找HTML中的placeholder的属性。


发现placeholder属性后面SnowIsWhiteAndFunny,第一反应就是HTML隐写,因为以前CTF比赛也遇见过类似的隐写题。
将源代码保存到本地,然后选择全部选择,突然发现确实存在隐写区域。


可以使用在线解密,或者使用snow工具进行解密,工具下载。使用snow解密的时候需要密码,而密码就是在我们刚才看到的地方。
把页面保存到本地,使用命令snow -C -p "SnowIsWhiteAndFunny" index.php

发现存在Password_is_here.7z文件,访问之下载下来,我在想可不可以使用目录扫描来发现这个文件呢?

下载下来发现是个加密的压缩包,想着暴力破解一波,可是没有成功。于是就用winrar打开,发现了CRC32的信息。这才想起可以使用CRC32碰撞啊,以前也接触过这样的题目,直接上代码:


#!/usr/bin/env python
# -*- coding:utf-8 -*-

import datetime
import binascii

def showTime():
    print datetime.datetime.now().strftime("%H:%M:%S")

def crack():
    crcs = set([0xA359AFC1, 0xCF5F72B9, 0xDF7BF1C9,0x6E38B65E])

    r = xrange(32, 127)
    for a in r:
        for b in r:
            for c in r:
                for d in r:
                    txt = chr(a)+chr(b)+chr(c)+chr(d)
                    crc = binascii.crc32(txt)
                    if (crc & 0xFFFFFFFF) in crcs:
                        print txt



if __name__ == "__main__":
    showTime()
    crack()
    showTime()

很快就得到了压缩包的解压密码:CRC32_IS_EASY!!!

解压后就可得到Secret.txt的内容,即为工具包的解压密码。


上一篇下一篇

猜你喜欢

热点阅读