2023春秋杯_Misc

2023春秋杯_Misc

MADISUN Lv2

谁偷了我的外卖

题目描述

  • 小凯最近入职了大厂,但是在工作途中出现了一些麻烦事,怎么办呢

解题过程

  • 拿到手是一张jpg
小凯
  • binwalk分析一下,发现里面有个压缩包,binwalk -e 不管用,foremost提取一下

image-20240304160239092

  • 010里还有个提示:I can give you a hint: - = / But there was a takeaway that was partially eaten.
  • 拿到压缩包,是加密的,里面是一个flag文件夹和很多“外卖”文件

image-20240304160712556

观察发现有序的且“_”后面的4个字符很像base64,再加上前面有序号,以及提示信息,很容易猜测是要把这些按顺序组合成一段base64

  • 我先随便提取一下,形成一个文件夹,这样虽然文件是空的,但是文件名都在,再利用批量处理文件夹名称,再利用python

能发现第一个少了四个字母

处理文件夹文件名称

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#coding =gbk
from natsort import ns, natsorted
import os,re
folder = r"/Users/madison/Desktop/wmx"
files = os.listdir(folder)
flag = ''
files_1 = natsorted(files,alg=ns.PATH)
for i in files_1:
flag+=i
lst = re.findall('_([\w|+|=|-]{4})',flag)
str = ''
for i in lst:
str+=i
print(str.replace('-','/'))

先把第2个文件开始的提取出来

  • base64解码,可以在末尾发现应该是压缩包

image-20240304161819149

  • 补上文件头504b03的base64:UEsD

image-20240304162516972

image-20240304162720172

成功拿到download.zip

image-20240304162046748

这两个文件就是之前加密压缩包flag文件夹里的两个文件,还差一个txt.galf,这个明显就是flag.txt反过来

image-20240304162147928

  • 查看这两个文件
    • md文件里有一半的flagflag{W1sh_y0u_AaaAaaaa,钥匙.png是一张用bandizip压缩文件的图,使用的算法是ZipCrypto,猜测要使用明文爆破bkcrack了

image-20240304162805829

image-20240304163109001

  • 用bandizip压缩提取出来的md或png,记住要选用zipcrypto算法,算法需要一致,这里以压缩png为例,压缩成crack.zip

  • 用bkcrack明文爆破出密钥

-C 对应待解密的压缩包,-c为待解密压缩包里的某个加密文件,-P为明文压缩包,-p为已知的明文文件或明文信息

1
bkcrack -C wmx.zip -c 外卖箱/flag/小凯的奋斗故事.md -P crack.zip -p 小凯的奋斗故事.md

image-20240304164507564

拿到密钥:48ff002a 56e00484 380c5c49

  • 利用密钥破解
1
bkcrack -C wmx.zip -k 48ff002a 56e00484 380c5c49 -U new.zip 1234 

-k为密钥,-U为你设置的新的zip,和新zip的密码(会把原来的zip里的东西复制到new.zip中,并且new.zip的密码被覆盖为1234)

image-20240304164738068

  • 成功提取并打开txt.galf

image-20240304164841781

  • 结合文件名以及上半部分的flag,可知,文本内容需要倒置过来
1
flag{W1sh_y0u_AaaAaaaaaaaaaaa_w0nderfu1_CTF_journe9}

明文混淆(复现)

题目描述

  • 小明新买了一台windows电脑,给了小文一个经过两层混淆的webshell,,但压缩包密码搞忘了。听说webshell密码是一个叫flag的东西。。。

解题过程

  • 压缩包是加密的,一一排除伪加密,暴力破解,剩下明文爆破

image-20240304203835579

  • bkcrack先查看一下压缩包的加密算法:bkcrack -L

image-20240304203726863

果然是ZipCrypto,明晃晃的明文爆破了

  • 从LICENSE.txt 入手,所有的LICENSE.txt,都有换行,把明文设置为12个以上的空格
  • bkcrack爆破

image-20240304211905788

image-20240304211926934

  • 提取出shell2.php,解混淆

image-20240304212121097

php解混淆知识有待加强:sob:

  • Title: 2023春秋杯_Misc
  • Author: MADISUN
  • Created at : 2024-03-04 15:57:40
  • Updated at : 2024-05-13 23:22:25
  • Link: https://redefine.ohevan.com/2024/03/04/2023春秋杯-Misc/
  • License: This work is licensed under CC BY-NC-SA 4.0.