ctfshow-听说你喜欢爆破

这篇博客详述了一次CTF挑战的过程,从outguess爆破图片中的隐藏信息,到CRC高宽值破解,再到MD5哈希值和加密压缩包的爆破,以及最后的Excel文档四位数字密码的破解,揭示了网络安全挑战中的解密技术应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一层:下载后打开得到一张图片,根据题意和图片名guess.jpg猜测,尝试outguess爆破

python3 outguess爆破脚本

# OGBrute.py
import os
import pandas
from datetime import datetime

beginDate = '18810101'     #密码开始值
endDate = '19001231'       #密码结束值
dic = [datetime.strftime(x, '%Y%m%d') for x in list(pandas.date_range(start =  beginDate, end = endDate))]
dic = dic[::-1]

for p in dic:
    out = './' + p
    cmd = 'outguess -k ' + p + ' -r guess.jpg ' + out
    os.system(cmd)
    o = open(out, 'rb').read()
    if len(o) == 0:
        os.system('rm ' + out)

跑完后,生成很多文件,在kali中可以直观看到文件类型,其中文本类只有三个,分别为18931107、19860818、18971210,在18961210中发现关键内容

如果是脑回路清奇的人,社工联想到炸药之父—诺贝尔的忌日:18961210,直接就能用正常outguess用法语句获得隐写文本

outguess -k '18961210' -r guess.jpg 001.txt

 打开隐写文本,将网址中s更改为i,下载链接内容

 第二层:得到crc.zip压缩包,打开为1X1的png图片,再次根据题意和图片名crc.png猜测,尝试crc高宽爆破

import zlib
import struct

# 同时爆破宽度和高度
filename = "crc.png"
with open(filename, 'rb') as f:
    all_b = f.read()
    data = bytearray(all_b[12:29])
    n = 4095
    for w in range(n):
        width = bytearray(struct.pack('>i', w))
        for h in range(n):
            height = bytearray(struct.pack('>i', h))
            for x in range(4):
                data[x+4] = width[x]
                data[x+8] = height[x]
            crc32result = zlib.crc32(data)
            #此处crc值替换成图片的crc
            if crc32result == 0xD3D5B18:   #听说你喜欢爆破crc值
            
                print("宽为:", end = '')
                print(width, end = ' ')
                print(int.from_bytes(width, byteorder='big'))
                print("高为:", end = '')
                print(height, end = ' ')
                print(int.from_bytes(height, byteorder='big'))

在010 Editor中根据结果更改正确高宽值,得到原图

 第三层:再再次根据题意和图片底部提示猜测,尝试MD5hash值爆破,这里有三个方法

   ①Windows中下载hashcat进行掩码爆破,然后十六进制转ascii字符

hashcat64.exe -a 3 -1 ?l?d -m 5100 fd7e8e47cd47f001 https://www.lanzous.com/i?1?1?1?1?1?1

  ②kali中使用自带hashcat进行爆破,然后十六进制转ascii字符

hashcat -a 3 -m5100 fd7e8e47cd47f001 https://www.lanzous.com/i?1?1?1?1?1?1 -1 ?l?d

$HEX[68747470733a2f2f7777772e6c616e7a6f75732e636f6d2f69613335746d6a]

  ③python3脚本hash值掩码爆破

第四层:将得到的下载链接,s改为i,下载文件Blasting it.zip,为加密压缩包

 全选右边注释,发现透明文字,由点和杠组成,分别替换为0和1,然后二进制转字符为rocky

由rocky联想到kali自带的rocky爆破字典,kali中使用fcrackzip对Blasting it.zip进行字典爆破

darkdumymohamed0351409575

 解压后得到office文档

第五层:打开发现文档为加密文档,再再再再次根据题意和文档名4num.xlsx操作,尝试AOPR进行4位数字爆破,得到密码

最后一步:输入文档密码,打开得到flag

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值