前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Monomorph:一款功能强大的MD5单态Shellcode封装工具

Monomorph:一款功能强大的MD5单态Shellcode封装工具

作者头像
FB客服
发布2023-03-29 16:06:52
2560
发布2023-03-29 16:06:52
举报
文章被收录于专栏:FreeBuf

 关于Monomorph 

Monomorph是一款功能强大的MD5单态Shellcode封装工具,在该工具的帮助下,广大研究人员可以轻松将所有的Payload都修改为相同的MD5哈希。

在很多情况下,研究人员通常使用“碰撞”的形式来判断目标代码的“好”与“坏”,但Monomorph的出现就是为了证明之前的这种方法已经不再可行。因为如果仍然坚持使用MD5来引用文件样本的话,一旦使用了Monomorph,那么最终的分析结果将会毫无意义。因为所有的Payload或代码文件都将拥有相同的MD5哈希。

 工具运行机制 

针对每一个需要编码的比特,我们都会使用FastColl来预先计算一个MD5冲突块。每一次冲突都会给我们返回一个冲突块对,这样我们就可以在不改变整个MD5哈希的情况下来交换这些冲突块。

如需对4KB数据进行编码,我们将需要生成4*1024*8个冲突块(这需要几个小时),并在最终文件中占用4MB的空间。

为了加快速度,我们对FastColl进行了一些小的调整,使其在实践中更快,使其能够并行运行。

由于本工具已经完成了预计算,因此我们可以立即对Payload进行重新配置,而交换预先计算的块状态是使用Ange Albertini实现的技术来完成的。

 工具下载 

由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好Python 3环境。接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:

代码语言:javascript
复制
git clone https://github.com/DavidBuchanan314/monomorph.git(向右滑动,查看更多)

 工具使用 

我们可以将高达4KB的压缩Shellcode封装成可执行的二进制文件,速度会非常快,而且输出文件将始终具有相同的MD5哈希:

代码语言:javascript
复制
3cebbe60d91ce760409bbe513593e401

当前版本的Monomorph仅支持在Linux x86-64设备上运行,下面给出的是该工具的一个简单使用样例:

代码语言:javascript
复制
$ python3 monomorph.py bin/monomorph.linux.x86-64.benign bin/monomorph.linux.x86-64.meterpreter sample_payloads/bin/linux.x64.meterpreter.bind_tcp.bin

(向右滑动,查看更多)

 工具运行截图 

 是否可检测?

可能很多研究人员会想问,这种方式处理的Payload以及MD5哈希是否可以被检测到?

没错,它确实可以被检测到,我们可以使用detectcoll工具来检测碰撞块。

 许可证协议 

本项目的开发与发布遵循MIT开源许可证协议。

 项目地址 

Monomorph

【https://github.com/DavidBuchanan314/monomorph】

参考资料:

https://www.mscs.dal.ca/~selinger/md5collision/ https://justine.lol/ape.html https://github.com/cr-marcstevens/hashclash/tree/collisiondetection/src/collisiondetection https://github.com/cr-marcstevens/hashclash/tree/master/src/md5fastcoll https://github.com/corkami/collisions/tree/master/hashquines#read-an-encoded-value https://github.com/corkami/collisions/blob/master/hashquines/scripts/collisions.py

精彩推荐

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-03-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  •  关于Monomorph 
  •  工具运行机制 
  •  工具下载 
  •  工具使用 
  • (向右滑动,查看更多)
  •  工具运行截图 
  •  是否可检测?
  •  许可证协议 
  •  项目地址 
  • 参考资料:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档