【攻防世界】Crypto系列之你猜猜

【攻防世界】Crypto系列之你猜猜

打开txt文件是一段十六进制数字,推测可能是将flag转换为十六进制或者是flag文件的程序字节码,直接将十六进制转换为字符串是行不通的,所以只能猜测是文件的程序字节码,那么是什么类型的文件的呢?

1
504B03040A0001080000626D0A49F4B5091F1E0000001200000008000000666C61672E7478746C9F170D35D0A45826A03E161FB96870EDDFC7C89A11862F9199B4CD78E7504B01023F000A0001080000626D0A49F4B5091F1E00000012000000080024000000000000002000000000000000666C61672E7478740A0020000000000001001800AF150210CAF2D1015CAEAA05CAF2D1015CAEAA05CAF2D101504B050600000000010001005A000000440000000000

网上搜索一下,zip就从504B0304开始识别,从504B0506结束。把文件命名成什么文件类型,计算机就从什么特征头来进行识别,text不存在任何文件头;526172211a0701开头代表rar数据,377abcaf271c开头代表7z数据。

将十六进制保存为zip文件

1
2
3
4
from Crypto.Util.number import long_to_bytes
hex_num = 0x504B03040A0001080000626D0A49F4B5091F1E0000001200000008000000666C61672E7478746C9F170D35D0A45826A03E161FB96870EDDFC7C89A11862F9199B4CD78E7504B01023F000A0001080000626D0A49F4B5091F1E00000012000000080024000000000000002000000000000000666C61672E7478740A0020000000000001001800AF150210CAF2D1015CAEAA05CAF2D1015CAEAA05CAF2D101504B050600000000010001005A000000440000000000
with open("nicaicai.zip","wb") as f:
f.write(long_to_bytes(hex_num))

打开zip压缩包,可以看到flag.txt是加密了的

使用压缩包解密软件对其进行破解,其实就是一个暴力破解的过程

这里使用首先对zip文件获取信息

然后使用fcrackzip工具破解密码:

1
fcrackzip nicaicai,zip

得到密码123456

对压缩包输入密码获取flag.txt里的字符

flag为daczcasdqwdcsdzasd

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2021-2024 John Doe
  • 访问人数: | 浏览次数:

让我给大家分享喜悦吧!

微信