记一次PowerShell免杀实战

最近在玩免杀,发现了一些免杀思路,今天来给大家做个分享,希望可以帮到大家。

0x01 powershell 加载 shellcode 介绍

UNIX 系统一直有着功能强大的壳程序(shell),Windows PowerShell的诞生就是要提供功能相当于UNIX系统的命令行壳程序(例如: sh、bash或csh),同时也内置脚本语言以及辅助脚本程序的工具,使命令行用户和脚本编写者可以利用.NET Framework的强大功能。

powershell具有在硬盘中易绕过,内存中难查杀的特点。一般在后渗透中,攻击者可以在计算机上执行代码时,会下载powershell脚本来执行,ps1脚本文件无需写入到硬盘中,直接可以在内存中执行。

0x02 前戏

常见的 powershell 攻击工具有 powersploit、nishang、empire、powercat,试了试这些免杀脚本,发现都不太理想,大部分都被检测到了,想着要不自己尝试尝试?

cs,上号!

图片

首先生成一个自带的 powershell 脚本

图片

看一下自带的,是把shellcode加载到内存中的代码放到字符串中然后字符串然后IEX执行代码:

图片

查杀效果:

图片

 

并不是很理想,毕竟大家都在用,很多杀软都有了特征和指纹

0x03 开始尝试混淆

图片

图片

既然是把字符串进行加载,不如整个编一个base64?然后在解码后加载,开始尝试:

首先把字符串全部给 base64,我这里先用 burp base64

图片

然后扔进去在加载之前 base64 还原

 

 

解密后变量=[System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String(加密后变量))

把编码后的代码解码后加载,顺便搞一个 UTF-8

图片

执行执行一下看看是否可以上线:

Powershell -ExecutionPolicy Bypass -File .\payload.ps1

图片

查看 cs 是否上线:

图片

发现 cs 成功上线,去查看一下免杀效果:

https://www.virustotal.com

图片

图片

...这就把杀软干懵逼了 ?

尝试修改变量的名称来绕过

发现没什么太大的用处,还剩两个

尝试把base64编码后的字符串拆开看看:

图片

把上面的 base64 的字符串猜开来在 base64 的时候组合一下

图片

查看 cs 是否上线:

图片

查看免杀效果:

图片

这就完事了,不过只是静态免杀

0x04 实战

这一次测试一下,某绒,某 60,(这两个杀软一装,我虚拟机都有点扛不住)

图片


全部更新到最新,先静态扫描试试 
图片

激动人心的时候到了,试试运行 

图片

发现他们一点反应都没有

查看 cs 是否上线:

图片

成功上线

没想到这么顺利

图片

0x05 结语

在测试过程中的一些发现:

如果是没有改证书的话貌似hi被某绒给检测到

改证书参考:

Cobalt Strike绕过流量审计

https://paper.seebug.org/1349/

根据base64加密的方法还可以推断出使用其他加密比如ascii码加密也有同样的效果

大家可以根据我的方法变形,比如可以拆成很多段,在配合其他的加密和解密手段进行免杀,制作属于自己的免杀

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值