红队攻防,没有一件趁手的武器怎么行。经过若干天的开发,
EDR
绕过,AV
免杀。
本项目通过Early Bird
注入和父进程ID欺骗
实现Edge浏览器进程上线。
一般的木马运行后,如果本身有外联行为, 容易被EDR
检测到异常的网络连接,结束进程shell就掉了,如果我们将进程注入到notepad.exe,则notepad每60秒开始发送一次https数据包,这也将非常可疑。但是如果发送数据包的是Edge
浏览器,这再正常不过了,EDR
可能直接放行。
运行效果
这里使用了直接系统调用
SysWhispers3
,为什么不一步到位使用间接系统调用地狱厅HellHall
?这个等我后面改进。
对申请内存、写入内存、内存保护进行了函数替换。为什么改这个函数,360可能会报可疑远程进程注入
,使用直接系统调用免杀360。
Early Bird
本质上是一种APC
注入与线程劫持的变体,它在目标进程的早期启动阶段进行代码注入。通过这种方法,可以在目标进程加载其所有模块之前注入代码,从而增加了检测和防御的难度,配合PPID欺骗
技术绝配。Early Bird流程通常如下:
由SpawnProcess、InjectToRemoteProcess、QueueUserAPC、ResumeThread
完成。
其中采用了执行非关键计算操作,以替代等待执行操作。
从注册表中检索Edge
,父进程从explorer.exe
修改为sihost.exe
,这可以在代码修改,但不建议动。
使用了DownloadShellcode
函数从远程下载shellcode,从而降低熵值至6
以下规避杀软,你可以自定义你的shellcode地址。
另外这里用了Post_Multipart
,至于为什么用这个而不是正常火狐useragnet,360云查杀也用这个,先用着。
如果url硬编码这样写会被二进制检测字符串的问题,从而暴露shellcode下载地址,采用了拼接字符串
或字符串数组的方式规避。
//#define SHELLCODE_URL "http://192.168.136.1/payload_x64.bin"
DIE中未检测出
直接使用visual studio
默认配置编译,链接器中清单文件否
,调试信息否
,其余默认配置生成即可。直接丢进360虚拟机双击运行,无需加图标,无需加属性,无需签名,运行后程序可删除。
不要使用360右键查杀,右键查杀会上传文件,几小时后即被查杀,请直接运行。一般第二天才会被查杀,这是由360非白即黑机制决定的。
如果你还没有CS生产环境,还不赶紧按照我的步骤一套高级匿名环境。
没做反沙箱,请不要往微步上丢。
免杀火绒或者defender吗?必须的,那都是基本要求。
仅用于红蓝对抗和学习研究,如非法使用,本人概不负责。
有任何疑问请直接留言,关注我以免丢失。