[MRCTF2020]Hello_ misc

解压得一个png图片和一个flag.rar

图片拖入010editor

选择带zip头的这段蓝色全部复制,file-new-new Hex File,黏贴到新文件,另存为为1.zip

要密码,线索中断(当然try to restore it.png,隐藏了zip压缩包,可以用binwalk 、foremost分离。)

再去看图片是否隐写

方法一使用StegSolve查看隐写

Release StegSolve 1.4 · Giotino/stegsolve · GitHub

上面是stegslove 1.4版本下载地址,支持图片拖放

方法二使用Zsteg查看隐写

使用zsteg it.png命令看到有zip和lsb隐写

分别使用

zsteg -e "extradata:0" > 2.zip

zsteg it.png -E "b1,r,lsb,xy" > at.png

提取zip和png

图片转文字 - 图片转Excel表格 - PDF转Word - 白描网页版

!@#$%67*()-+

用这个密码解压flag.rar提示密码错误

去解压之前用010edittor从图片手工提取的zip分卷压缩文件成功,得到一个out.txt

这是啥,使用TTl解密,哪下面的博客用过的脚本解密

[SWPU2019]Network-CSDN博客

import binascii

binary_dict = {

'63': '00',

'127': '01',

'191': '10',

'255': '11'

}

with open('out.txt', 'r') as f:

binary_str = ''.join(binary_dict.get(num.rstrip(), '') for num in f)

number = ''.join(chr(int(binary_str[i:i+8], 2)) for i in range(0, len(binary_str), 8))

print("Binary String:", binary_str)

print("Decoded Number:", number)

下面是要输出的文件的,没有用注释掉

#data = binascii.unhexlify(number)

#with open('pass1.txt', 'wb') as f2:

f2.write(data)

拿0ac1fe6b77be5dbe作为密码去解压flag.zip

解压发现是word,改为docx后缀,打开

改色看到内容

import base64

要解码的字符串

encoded_str = '''MTEwMTEwMTExMTExMTEwMDExMTEwMTExMTExMTExMTExMTExMTExMTExMTExMTExMTAxMTEwMDAwMDAxMTExMTExMTExMDAxMTAx

MTEwMTEwMTEwMDAxMTAxMDExMTEwMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTAxMTExMTExMTExMTExMTEwMTEwMDEx

MTEwMDAwMTAxMTEwMTExMDExMTEwMTExMTExMTAwMDExMTExMTExMTExMDAxMDAxMTAxMTEwMDAwMDExMTExMDAwMDExMTExMTEx

MTEwMTEwMTAwMDAxMTExMDExMTEwMTExMTExMDExMTAxMTExMTExMTEwMTEwMTEwMTAxMTExMTExMTAwMTEwMTExMTExMTExMTEx

MTEwMTEwMTAxMTExMTExMDExMTEwMTExMTAxMDExMTAxMTExMTExMTEwMTEwMTEwMTAxMTAxMTExMTAwMTEwMTExMTExMTExMTEx

MTEwMTEwMTAwMDAxMTAwMDAwMTEwMDAwMDAxMTAwMDExMTAwMDAwMTEwMTEwMTEwMTAxMTEwMDAwMDAxMTExMDAwMDExMTExMTEx'''

按行分割字符串

lines = encoded_str.split('\n')

逐行解码并打印

for line in lines:

decoded_str = base64.b64decode(line).decode()

decoded_str = decoded_str.replace('1', ' ')

print(decoded_str)

或者把word里那几行base64拷贝出另存为3.txt,使用下面脚本

mport base64

with open('3.txt', 'r', encoding='utf-8') as file:

for line in file:

line = line.encode('utf-8').decode('unicode_escape')

line = base64.b64decode(line).decode('utf-8')

#print(line)

decoded_line = line.replace('1',' ').replace('0','o')

print( decoded_line)

He1Lo_mi5c~

flag{He1Lo_mi5c~}

相关推荐
啥都想学点6 小时前
Windows基础概略——第一阶段
网络安全
star010-18 小时前
PeiQi网络安全知识文库PeiQi-WIKI-Book保姆式搭建部署教程
安全·web安全·网络安全
Whoami!1 天前
2-1〔O҉S҉C҉P҉ ◈ 研记〕❘ 漏洞扫描▸理论基础与NSE脚本
网络安全·信息安全·漏洞扫描·oscp
周某人姓周1 天前
防火墙双机热备部署
网络安全
七月花nancy2 天前
SQL注入攻击基础
网络安全
Bruce_Liuxiaowei3 天前
绕过文件上传漏洞并利用文件包含漏洞获取系统信息的技术分析
运维·网络安全·php·apache
hrrrrb3 天前
【密码学】6. 消息认证和哈希函数
算法·密码学·哈希算法
hrrrrb3 天前
【密码学】8. 密码协议
密码学
Johny_Zhao4 天前
Rsync + Sersync 实时数据同步方案
linux·网络安全·信息安全·云计算·rsync·系统运维·sersync
Bruce_Liuxiaowei4 天前
.htaccess 文件上传漏洞绕过总结
windows·安全·网络安全·php·apache