CTFshow-Misc(部分wp)

因为太菜了,所以更新比较慢,会慢慢边复现边写wp,flag打码是想让看我博客的小伙伴们能够自己独立复现一遍而不是照抄flag,有错误的地方还请师傅们不吝指教

杂项签到

用ZipCenOp.jar可以解zip压缩包伪加密

┌──(root💀kali)-[~/tools/misc]
└─# java -jar ZipCenOp.jar r download.zip 

再次解压压缩包就不提示要输入密码了,打开flag.txt即可获得flag
在这里插入图片描述
用010将图中09改为00也可以达到同样效果

misc2

新建一个虚拟机,然后添加一个软盘,设置成如图所示

然后开启虚拟机即可看到flag

miscx

打开压缩包发现注释的提示,和没加密的misc1.zip

打开misc1.zip,解压出没加密的misc.png

打开misc.png,没发现什么,难道压缩包密码就是2020

试一下果然是,太良心了(不像牛年大吉藏在图片文件头那么狗)
打开word,发现一串音乐符号加密

♭‖♭‖‖♯♭♭♬‖♩♫‖♬∮♭♭¶♭‖♯‖¶♭♭‖∮‖‖♭‖§♭‖♬♪♭♯§‖‖♯‖‖♬‖‖♪‖‖♪‖¶§‖‖♬♭♯‖♭♯♪‖‖∮‖♬§♭‖‖‖♩♪‖‖♬♭♭♬‖♩♪‖♩¶‖♩♪‖♩♬‖¶§‖‖♩‖¶♫♭♭♩‖♬♯‖♬§♭‖♭‖♩¶‖‖∮♭♭♬‖‖♭‖♫§‖¶♫‖♩∮♭♭§‖♭§‖♭§§=

音乐符号解密

Rabbit解密,密钥为2020,解出misc2的压缩包密码

解出hint.txt

连续进行base64解码

welcome_to_2020%0Aflag%20is%20coming...%0Athe%20key%20is%20hello%202020%217

url解码会好看一些

压缩包密码时hello 2020!

解压得到flag.txt

misc50

将图片foremost分离出压缩包和另一张图片
用zsteg一把梭得到base64编码字符串

┌──(root💀kali)-[~/test/output/png]
└─# zsteg 00000000.png 
meta Software       .. text: "gnome-screenshot"
meta Comment        .. text: "Sk5DVlM2Mk1NRjVIU1gyTk1GWEgyQ1E9Cg=="

┌──(root💀kali)-[~/test/output/png]
└─# echo Sk5DVlM2Mk1NRjVIU1gyTk1GWEgyQ1E9Cg== | base64 -d                                                      1 ⨯
JNCVS62MMF5HSX2NMFXH2CQ=
                                                                                                                   
┌──(root💀kali)-[~/test/output/png]
└─# echo JNCVS62MMF5HSX2NMFXH2CQ= | base32 -d             
KEY{Lazy_Man}

解码得KEY{Lazy_Man},提交不对,可能是后面需要用到得密钥

解压分离出来的压缩包,再打开fbi.rar得到flag.zip和注释中的提示
在这里插入图片描述

GEZDGNBVGYFA====

base32解密得到flag.zip压缩包密码为123456

得到thienc.txt,将其转换成16进制文本
附上大佬脚本:
https://blog.csdn.net/weixin_45940434/article/details/104292369

import re

def read_file(filepath):
    with open(filepath) as fp:
        content=fp.read();
    return content

number = read_file('thienc.txt')
result = []
result.append(re.findall(r'.{2}', number))
result = result[0]

strings =''
for i in result:
    y = bytearray.fromhex(i)
    z = str(y)
    z= re.findall("b'(.*?)'",z)[0]
    strings += z

b= strings.split('0x')

strings=''
for i in b:
    if len(i) ==1:
        i= '0' + i
    strings +=i

with open('result.txt', 'w') as f:
    f.write(strings)
    print("complete!")

将得到的16进制文本填充的文件,后缀名改为.7z

解压密码是刚刚的KEY{Lazy_Man},得到secenc.txt

文本是base64和base32循环加密
附上Cheyenne大佬的代码,我自己改了一丢丢

# @Author:Cheyenne
import base64
import re

f = open('secenc.txt').read().encode('utf-8')

while True:
    if re.match('^[2-7A-Z=]+$', f.decode('utf-8')):
        f = base64.b32decode(f)
    elif re.match('^[0-9a-zA-Z+/=]+$', f.decode('utf-8')):
        f = base64.b64decode(f)
    else:
        print(f.decode('utf-8'))
        break

with open('result.txt', 'w', encoding='utf-8') as file:
    file.write(str(f,encoding='utf-8'))
print("Decryption complete!")

解出后进行Brainfuck解密

一步步解就好



得到flag

misc30

解压出一张图片,在备注中发现小星星

再次解压,密码为little stars,解压出一个doc文档
此地无银三百两,全选后将文字颜色设置为黑,发现另一个压缩包密码Hello friend!

解压出一张二维码,扫描得flag

stega1

使用JPHS工具打开,点Seek,密码为空。

保存为flag.txt,打开即为flag

misc3


看自己下面可还行
按照提示依次连接键盘字母数字即可

misc40

有三个文件未加密,依次查看

首先打开txt文件

根据提示将字符串由二进制依次转到10进制,这里我们直接转,得到202013

用010打开图片,发现一段brainfuck,复制出来

brainfuck解密

解出来一段核心价值观编码,解码得123456

使用MP3Stego解密

得到svega.mp3.txt,打开得到hint

得到压缩包密码abc123,解压得svega.wav

根据提示静默之眼,就是使用SilentEye解密,Sound quality为high,type为AES128,Key为202013
点decode得到flag

misc30

使用zipcenop解开zip伪加密

┌──(root💀kali)-[~/tools/misc]
└─# java -jar zipcenop.jar r aihe.zip 

解压得aihe.mp3
使用foremost分离出一张图片

很明显劫脚下肯定还隐藏着东西,需要恢复正确得宽高
查看图片属性,看到高度为371,宽度为895,分别将其由10进制转为16进制:0173、037f

用010打开图片,ctrl+f搜索0173

将高度数值调高,例如和宽一样大

保存后打开图片,得到隐藏的猪圈密码

猪圈密码解密

解出来well done(有空格)

红包题第一弹

  • 12
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值