首页
社区
课程
招聘
[原创]记一次有趣的木马样本恢复之旅_使用已知明文攻击恢复样本文件
发表于: 1天前 225

[原创]记一次有趣的木马样本恢复之旅_使用已知明文攻击恢复样本文件

1天前
225

文章概要

在整理历史攻击事件的时候偶然翻到以前收藏的木马样本“乌克兰BlackEnergy.zip”,尝试infected、threatbook等常见密码,均解压失败。也就是说,我把解压密码忘记了。不过压缩包里能看到样本的目录结构和文件名,其中文件名直接是哈希值,这让我想到可以通过文件哈希找到样本文件,进而使用已知明文攻击的方法恢复木马样本。在尝试这个思路的过程中有些磕绊,但最终成功恢复。最后的感慨就是,虽然现在CTF比赛环境不太行,但CTF技巧有时候确实有用。

需要恢复的木马样本

乌克兰BlackEnergy.zip,有密码,解不开。
图片描述
图片描述

根据文件哈希找木马样本(找已知明文)

在万能的海鲜市场,找大佬帮忙下个样本。
图片描述

使用已知明文攻击恢复加密的zip包

尝试1:失败,压缩包里有中文路径会导致编码问题

解决方法:直接使用7zip打开压缩包,把中文换掉即可。
图片描述

尝试2:失败,报错“ciphertext is smaller than plaintext”

解决方法:直接使用7zip用用相同的压缩算法把“已知明文”打包,然后用-P指定即可。这里我将木马文件052ebc9a518e5ae02bbd1bd3a5a86c3560aefc9313c18d81f6670c3430f1d4d4打包为了plain.zip,用的是标准压缩。
图片描述
图片描述

尝试3:成功,使用已知明文攻击,先找Keys,然后用自己指定的密码生成一个新压缩包,最后解压获得原始文件。

1
2
3
bkcrack.exe -C vir.zip -c "Ukraine BlackEnergy/XLS with Macro/052ebc9a518e5ae02bbd1bd3a5a86c3560aefc9313c18d81f6670c3430f1d4d4" -P plain.zip -p 052ebc9a518e5ae02bbd1bd3a5a86c3560aefc9313c18d81f6670c3430f1d4d4
 
bkcrack -C vir.zip -k 3b39e30c a7a794f5 2d96c0f8 -U vir2.zip "newpass"

图片描述

参数解释

1
2
3
4
5
6
7
8
9
10
11
12
13
14
-C vir.zip (大写C):
    指定目标压缩包(Ciphertext archive)。即那个有密码的 vir.zip
-c "Ukraine BlackEnergy/.../052ebc..." (小写c):
    指定目标压缩包内部的文件路径(Ciphertext entry)。即要拿哪个加密了的文件来做比对。
-P plain.zip (大写P):
    指定明文压缩包(Plaintext archive)。
-p 052ebc... (小写p):
    指定明文压缩包(plain.zip)内部的文件名(Plaintext entry)。告诉工具,plain.zip 里的哪个文件对应加密包里的那个文件。
 
 
-k 3b39e30c a7a794f5 2d96c0f8
    输入第一步计算出来的 3 个内部密钥。
-U vir2.zip "newpass"
    Unlock 解锁并重设密码,执行完后,可以直接用 newpass 这个密码打开 vir2.zip

相关功能

1.列出压缩包的详细索引信息(List)

1
bkcrack -L vir.zip

使用这个命令,可以大致知道“已知明文”对应的密文用的是什么压缩算法。
图片描述

参考

  1. bccK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6C8K9h3#2U0K9e0R3$3i4K6u0r3j5X3E0U0M7X3q4U0K9H3`.`.

传播安全知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回