✎ 阅读须知
乌鸦安全的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。
乌鸦安全拥有对此文章的修改、删除和解释权限,如转载或传播此文章,需保证文章的完整性,未经允许,禁止转载!
本文所提供的工具仅用于学习,禁止用于其他,请在24小时内删除工具文件!!!
本文作者:zedxx10,本文为zedxx10大佬投稿文章。
此文章为对闲谈免杀1
的一些补充样例和一些学习思路。
针对为二开的cs
马,以及对抗过杀软。
首先先上一张图片这里自研小马的bypass log
:
再加上公司同事提供的的真实环境的测试反馈 ,目前存活时间4
个月左右(环境:麦咖啡
、赛门
、以及猎鹰
)。之前我提到的为什么我自研的c2
小马没被杀软识别,主要原因就在于其样本少, 另外其中还有些未公开对抗手法,目前正在对整个小马项目进行堆栈的混淆升级。
回归主题,之前讲的杀软对抗分为流量对抗
和行为对抗
,这里补充一个新的东西内存对抗。未来杀软的查杀趋势可能会更多的重心放在内存的上面了,当然行为对抗依旧是主流对抗之一。
在这里大概分享一些内存对抗的东西,其实就是内存扫描
和栈回溯技术
,其它的需要根据杀软的不同,会有自己的一些独特技术,如edr
的日志记录等;
如何对抗内存扫描,这里推荐一篇文章不做详解,原因是需要有对系统运行
和windows
开发的基础:
https://www.blackhillsinfosec.com/avoiding-memory-scanners/
当然,这里所有的内容都是针对国外的杀软,不会针对360
、火绒
、电脑管家
等。
以下是我以白+黑
的形式在卡巴的环境上进行的测试(这里不会公开代码):
提示一下各位目前cs
对抗国外大型杀软的效果是非常糟糕的,bypass
edr
基本上不用考虑了,基本上被秒杀(还是提一嘴非二开的cs
,二开cs
可能会有起效,但是在未抹除所有特征的情况下,依旧是稳定被查杀的)。
这里是我的三个文件:白程序
+黑dll
+加密的shellcode
上线测试:
成功上线,对比进程pid
:
我所使用的技术这里可以大概讲解一下:
首先是dll镂空技术
+syscall
以及disabled cfg
+ 壳保护
,这里使用壳保护的目的是混淆一些内部的关键函数和字符串;
我上文提到过内存查杀的随机性,根据同事的测试反馈来看,当前免杀相对稳定(测试环境中存在诺顿
、赛门铁克
、麦咖啡
、卡巴
、Windows Defender
);但这依旧不能保证不会被内存查杀(内存查杀存在一定的随机性),我未执行cmd
和powershell
的操作,但是我通过模块化的形式,一样的获取了我所需要的信息。
模块化地址:
https://github.com/trustedsec/CS-Situational-Awareness-BOF
讲一下模块化的意义,目前主要的手法是绕过一些敏感操作获取信息,比如起cmd
线程等;
通过api
进行同样的信息获取,这样有效的避免了行为查杀,起一个线程和一个进程都可能是一个危险行为。
下图为全量扫描结果针对该cs
马的log
(查杀为webroot
)
最后一次讲,按照本人的学习思路,无需花钱。
c/c++
;c/c++
学到继承就可以了,数据结构和指针是重点,最低的要求能看得懂代码就行(b
站、51hook
或者榴莲的极安御信,对入门很有帮助,全是免费的,不是打广告!);windows
编程以及核心编程,了解windows
机制、apc
、cfg
、etw
、进程
、内存
、dll
等;动态调用
、aes
、rc4加密
、syscall
、unhook
、代码混淆
、堆栈欺骗
(过国内的可能不需要);ida
、windbg
、x64dbg
、cff
等工具的使用,学习汇编、看懂汇编(汇编很重要
)。
杀软的静态比较容易bypass
(赛门除外),edr
的一些特点在于对危险行为的记录累计,或许你一开始上线是成功的,但过不了多久就被查杀了,这里存在内存和危险操作两种可能,具体的还要看某些特别的分析;github
上优秀的coding
和一些前沿技术的文章(亲测有效);python
不能作为免杀c2
不要接触(但是个人感觉看懂ghost
并分析非常重要)Windows Defender
,github
上:https://github.com/ionuttbara/windows-defender-remover
vt
,自己搭建av-box
进行测试即可。