写一个 shellcode 带有 socket+rc4 加密跑远端加密后的 cs 的 payload 下载下来后执行。然后利用启动项劫持技术,绕过杀软的启动保护。
再高级一点的话,就是把启动项劫持,改成用 masm 编写超迷你型的 shellcode 装载器,然后插入目标的 PE 空隙中,然后修改 OEP 指向我们的空隙然后执行完 shellcode 后再跳转到入口点。
启动项劫持的原理就是,360 虽然禁止对启动项进行增改,但是删和查是可以的,并且对于启动项 / 服务项中的目标程序并没有进行保护。所以我们可以对启动项的程序进行劫持替换修改都是没问题的。或者不对启动项劫持进行替换,而是找到一个运行中的服务,kill 掉它的进程,然后对服务源程序进行劫持也是可以的。原理都差不多。
至于 payload,有两个方案。
一.可以自己写,难度有点高,可以参考 二进制入门 - 打造 Linux shellcode 基础篇
https://www.cnblogs.com/ichunqiu/p/7273935.html
但是这种东西,一般顶天给你整个下载者。和 cs 那种全部功能纯 shellcode 还是不一样的。你下载者最终还是需要下载的你的二进制文件,达不到 “负载无文件”(不是纯无文件,毕竟你的 shellcode 还是需要的),可能会导致你的马子被检测到。
payload 难主要难在,对于 API 地址的定位,不过一般只要找到 LoadLibrary 的地址,其实还算是好说的啦。
实在不行,直接整个 PELOADER,自建一个 RVA 导入,不过传输 EXE 的话可能会被杀软拦截 emmm,但是都能传 shellcode 了,传个加密的 PE 到内存理论上也是没关系的吧,
二.推荐直接使用 CS或者 MSF,简单粗暴。
最后研究出的代码地址在这里,喜欢记得点个star。
https://github.com/9bie/shellcode
带有直接运行和服务启动效果。
怎么用我懒得说了,只能说不添加 启动的话,至少是能无弹窗过 360 + 主防吧。
目前发现还不能过诺顿,过诺顿其实很简单,如果是CS的话,不用自带的证书即可,自己签发生成证书,然后https监听器上线。
诺顿流量免杀可以参考阅读:
密码保护:【史诗级CS免杀操作-免杀360/卡巴斯基/诺盾】配置无敌C2-profile文件
https://www.zzhsec.com/556.html
文章密码是:zzhsec521
|