Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
MorphAES — IDPS & SandBox & AntiVirus 隐形杀手。MorphAES 是世界上首个多态 shellcode 引擎,具有变形特性,并具备绕过沙箱的能力,这使得它对于 IDPS 而言无法被检测;它同时也是跨平台的,且不依赖任何库。 | Kitploit
工具/GitHubGitHub/cryptolok/morphaes
漏洞利用IDS/IPS规避Shellcode渗透测试Shellcode 生成Payload 开发二进制利用
GitHubcryptolok/morphaes

MorphAES

IDPS & SandBox & AntiVirus 隐形杀手。MorphAES 是世界上首个多态 shellcode 引擎,具有变形特性,并具备绕过沙箱的能力,这使得它对于 IDPS 而言无法被检测;它同时也是跨平台的,且不依赖任何库。

查看仓库
32410354年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

MorphAES

IDPS 与沙盒与反病毒 隐形杀手。

MorphAES 是世界上第一款多态 shellcode 引擎,具有变形特性并能绕过沙盒,使其对 IDPS 无法检测。它同样跨平台且不依赖库。

特性:

  • 多态性(AES 加密)
  • 变形性(逻辑和常量变化)
  • 平台无关(Linux/BSD/Windows)
  • IDPS 隐形(对于一段给定代码,可能的签名总数超过宇宙中的原子数量)
  • 沙盒规避(特殊汇编指令)
  • 避免坏字符(\x00, \x04, \x05, \x09, \x0a, \x20)
  • 可生成可执行文件并远程利用
  • 输入代码长度任意
  • 可添加 NOP sled

变形器的依赖:

  • Python 2.7 - 主引擎

代码执行的依赖:

  • 64位 Intel AES-NI - 用于解密

尽管如此,仍有一些限制(即白帽方面):

  • 变形性不够健壮,可通过正则表达式检测(但可以很容易改进)
  • Unicode 空字节可能仍会生效(但谁在乎?)
  • 仅支持支持 AES-NI 的 64 位 Intel 处理器,但由于所有用户 PC(如 Pentium、Celeron、i3、i5、i7)和行业服务器(如 Xeon)都具备该特性,这更像是规格而非限制,因此 32 位实现不实用。
  • 几乎任何 shellcode 都能保证工作,但任意代码不行(以防恶意软件滥用)
  • Windows/BSD 的 PoC 和可执行文件以及 ARM 版本正在开发中

工作原理

  1. 用 NOP 填充 shellcode(因为 AES 是分组密码)并添加可选的 NOP sled
  2. 使用随机密钥对 shellcode 进行自定义 AES-128-ECB 加密(不是最好但最简单)—— 多态性
  3. 常量随机化、逻辑更改、指令修改和重写 —— 变形性

用法

你需要使用 Intel x64 CPU 汇编我自定义的 AESNI-128-ECB 实现,并将其放在与 Python 脚本相同的文件夹中。

对于 Linux:

root@kitploit:~
sudo apt-get install python
as --64 AES.s -o AES.o
ld AES.o -o AES

执行 Python 脚本,输入你的 shellcode 或留空以使用默认的 Linux shell。你也可以指定自己的执行地址。

也可以在 Windows/BSD/Mac 上构建并执行,但我仍在测试中。

你可以用汇编测试 Linux PoC:

root@kitploit:~
as --64 shellcodePoC.s -o shellcodePoC.o
ld shellcodePoC.o -o shellcodePoC
./shellcodePoC

或者用 C:

root@kitploit:~
gcc -m64 -fno-stack-protector -z execstack shellcode.c -o shellcode
./shellcode

每个文件都有注释和说明

测试

此时,哈希值每次都会不同应该是显而易见的,但我们比较一下同一 shellcode 的两个 Linux 可执行文件的 SSDEEP:

  • 96:GztTHyKGQh3lo6Olv4W4zS/2WnDf74i4a4B7UEoB46keWJl09:Gzty6VOlvqSTDflmNroh,
  • 96:GQtT23yKmFUh3lo6OlOnIrFS4rkoPPf74i4a4B7UEoB46keWJ5:GQtCGWVOlOWFSsPflmNroh,

嗯,有些共同点,但总体上是两个不同的签名。那么 shellcode 本身呢:

  • 6:Cq8bnJYn4Xkm3qECaADATyEnT8snTiETiTCfhUaAP6mYGexCKdKZzX+rqVCKdKTc:xuJ0Zp2xRZof79G/KVyk/KTbA,
  • 6:vrg+T1RfLEQD/zD1DZzDJ3zDBfjDcDRJDULUwzWq0Cgk3g4zE/Yq0Cgk3gy12Ots:vLjjEszWCp3w/YCp3Nts,

对于相同的变形 shellcode,签名几乎完全不同!

在发布之日,该可执行文件在 virustotal 上仅被 53 个杀毒软件中的 2 个(AVG 和 Ikarus)检测为 shellcode,但现在它甚至无法分析。

malwr 和 cuckoo2 未发现任何可疑内容。

从逆向工程师的角度看,IDA 也不会看到任何内容。

Radare2 只有在汇编器自身汇编时才会显示真实指令,但不会检测到该可执行文件的任何加密或可疑活动。

虽然我没有亲自测试过,但我认为 FortiSandbox、Sophos Sandstorm、Blue Coat、GateWatcher 及其衍生品可能会严重失效……

简而言之

基本上,它可以将脚本小子的代码(或 已知代码)转化为零日漏洞。

IDPS 将会失效,因为几乎不可能制作签名,且难以进行正则表达式或启发式分析。

大多数沙盒不直接使用 Intel 的 AES-NI 指令,因此它们不会执行代码,所以“一切正常”,而实际上并非如此。

击败此类 shellcode 的唯一方法是使用适当的沙盒技术和/或人工智能。

当然,DEP/NX/CANARY/ASLR 也应该有效。

请注意,整个执行过程由纯汇编完成,shellcode 的执行不需要 Python(或 OpenSSL),因为我只使用内置汇编指令,因此它是系统无关的(当然,你需要为每个系统调整指令/操作码进行汇编,但它们仍然是相同的)。

备注

这仍是一项进行中的工作,我将尽快实现 Windows 和 BSD/Mac 引擎及 PoC。

IDPS 和沙盒已成为过去。

“传统成为我们的安全,当心智安全时,它就在衰败。”

吉杜·克里希那穆提

下载工具