EmbedPayloadInPng:一款图片文件Payload嵌入工具

admin 2024年11月26日00:04:13评论42 views字数 1152阅读3分50秒阅读模式

EmbedPayloadInPng:一款图片文件Payload嵌入工具

关于EmbedPayloadInPng
EmbedPayloadInPng是一款功能强大的Payload嵌入工具,该工具能够将Payload拆分为多个IDAT部分,并将Payload数据嵌入到PNG图片文件中。
EmbedPayloadInPng:一款图片文件Payload嵌入工具
值得一提的是,EmbedPayloadInPng拆分的IDAT的每一段数据都会使用自己的 16 字节密钥和 RC4 加密算法单独加密。
工具组成
当前版本的EmbedPayloadInPng由两个组件组成:
EmbedPayloadInPng.py- Python脚本负责将输入的Payload嵌入到指定的 PNG 文件中。
FetchPayloadFromPngEmbedPayloadInPng.py- 负责从输出的 PNG 文件中提取Payload,并使用ExtractDecryptedPayload函数对其进行解密。
嵌入式PNG文件结构
如前所述,EmbedPayloadInPng.py负责将Payload嵌入 PNG 文件。下面是嵌入Payload的 PNG 文件的结构:
EmbedPayloadInPng:一款图片文件Payload嵌入工具
由于一个IDAT部分的最大大小为 8192 字节,因此我们的Payload被分成多个IDAT部分。每个部分的大小相当于(8192 - 16 [RC4 密钥长度])。此外,最后一个IDAT部分将包含Payload的剩余字节。
下面给出的是EmbedPayloadInPng.py的输出并将其与创建的 PNG 文件的结构进行了比较。输出 PNG 文件部分:
EmbedPayloadInPng:一款图片文件Payload嵌入工具
随机 IDAT 部分,用于标记Payload的开始位置。此部分的 CRC 哈希值在该项目的 C 代码中用于标识PNG 文件中Payload的开始位置:
EmbedPayloadInPng:一款图片文件Payload嵌入工具
第一个Payload的IDAT部分,紧随随机部分之后(蓝色部分)。此图还展示了 CRC 哈希的位置以及之前随机化 IDAT 部分的大小(黄色部分):
EmbedPayloadInPng:一款图片文件Payload嵌入工具
第一个Payload的IDAT 部分的 CRC 哈希值,位于Payload加密的第一个块后面的部分末尾:
EmbedPayloadInPng:一款图片文件Payload嵌入工具
第二个Payload的IDAT 部分的起始位置:
EmbedPayloadInPng:一款图片文件Payload嵌入工具
工具安装
由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好最新版本的Python 3环境。
接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:
git clone https://github.com/Maldev-Academy/EmbedPayloadInPng.git

工具使用
使用EmbedPayloadInPng.py创建嵌入Payload的PNG文件:

EmbedPayloadInPng:一款图片文件Payload嵌入工具

嵌入Payload的PNG文件名为Output.png跟源文件对比是相同的。
许可证协议
本项目的开发与发布遵循MIT开源许可协议。
项目地址
EmbedPayloadInPng:【GitHub传送门】

原文始发于微信公众号(FreeBuf):EmbedPayloadInPng:一款图片文件Payload嵌入工具

 

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年11月26日00:04:13
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   EmbedPayloadInPng:一款图片文件Payload嵌入工具https://cn-sec.com/archives/3436782.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息