群里一些朋友比较喜欢BadUSB但苦于不知道从哪里开始做,于是我这个做群主的就自己动手买了个ProMicro的板子(花费我16元),结合Arduino和CMD模拟一下简易的过程

关于BadUSB

BadUSB是利用伪造HID设备执行攻击载荷的一种攻击方式。HID设备通常指的就是键盘鼠标等与人交互的设备,用户插入BadUSB,就会自动执行预置在固件中的恶意代码。
​ Bad-Usb插入后,会模拟键盘鼠标对电脑进行操作,通过这些操作打开电脑的命令终端,并执行一条命令,这条命令将从指定网址下载其他代码并于后台静默运行。这些代码功能包括:窃取信息、反弹shell、发送邮件等,从而实现控制目标机或者窃取信息的目的。

关于ProMicro

ProMicro使用的处理器核心ATmega32U4(兼容Arduino Leonardo)可用于模拟HID设备,可以配合其它传感器模块做键鼠输入。

它长这样:

步骤

一.打开Arduino配置

Arduino的COM端口配置,连接完后我们就要写代码了。

二.Arduino写代码

#include<Keyboard.h> //包含键盘库头文件
void setup(){ //初始化
Keyboard.begin();//开始键盘通信
delay(1000);//延时1000毫秒,
Keyboard.press(KEY_LEFT_GUI);//按下win键
Keyboard.press('r');//按下r键 打开CMD
delay(500);// 延时500毫秒
Keyboard.release(KEY_LEFT_GUI);//松掉win键
Keyboard.release('r');//松掉r键
delay(500); //8.延时500毫秒
Keyboard.println("cmd ");//输入cmd
Keyboard.press(KEY_RETURN);  //按下回车键
Keyboard.release(KEY_RETURN); //释放回车键
delay(500);//12.延迟
Keyboard.println("dir");
Keyboard.press(KEY_RIGHT_SHIFT);  //按下shift
Keyboard.release(KEY_RIGHT_SHIFT);
Keyboard.println(" /w/s "); //一个酷炫的代码雨
Keyboard.press(KEY_RIGHT_SHIFT);  //按下shift
Keyboard.release(KEY_RIGHT_SHIFT);
delay(2000);//延迟
Keyboard.press(KEY_RETURN);//按下回车键
Keyboard.release(KEY_RETURN);//释放enter键
delay(3000); //延迟
Keyboard.end();//结束键盘通讯
}
void loop()//循环,这里的代码
{
//循环体如果想要一直运行就吧代码写这
}

问:为什么不把dir /w/s写成一行,还要拆分?

答:英文要考虑到别人电脑开了输入法。


代码理解起来比较简单,模拟键盘输入打开CMD并隐藏窗口,并查看了一遍自己电脑的东西。 接下来就要编译了。



这样就上传好了

我们可以看到,自己就运行了。

三.代码运用

我们完成后只是简单的功能还是不够,我们可以用FTP搭建一个文件服务器,放一个木马文件,我们插入后去下载木马然后打开,就完成了一次攻击,好了这期教程说完了,大家下次再见。

BadUSB+ProMicro+Arduino做一个插入U盘自动攻击相关推荐

  1. 【360图书馆】插入U盘自动攻击:BadUSB原理与实现

    插入U盘自动攻击:BadUSB原理与实现 漏洞背景 "BadUSB"是今年计算机安全领域的热门话题之一,该漏洞由Karsten Nohl和Jakob Lell共同发现,并在今年的B ...

  2. 用RC522与arduino做一个简单的门禁系统

    用RC522与arduino做一个简单的门禁系统 插本成功要去新学校了,结果发现新学校宿舍没有电梯没有电子门(虽然海景房很香).这对于住惯养老院的我属实难受所所以打算自己也整一个IC卡的门禁系统.然后 ...

  3. linux arm上实现插入U盘自动运行的设计

    前言 之前写过在ubuntu上实现插入U盘自动运行的程序,即autorun,但是在arm 上并不能实现.即仅仅是修改U盘上的文件或者权限,无法提供插入u盘时自动运行这个效果.在嵌入式编程的一个思路是, ...

  4. arduino实战 1——利用arduino做一个简易开门装置

    目录 前言 二.步骤 1.代码部分 2.自己制作一个简易的app 3.连线 4.一些小事情 总结 前言 网上简易宿舍开门装置吸引了我,于是我试着做了一个,材料也不多,基于arduino的一个蓝牙,nf ...

  5. 用Arduino做一个“空心时钟”(只有表针,没有表盘)

    这周我们来一起看看如何用Arduino自制一个只有表针,没有表盘的"空心时钟". 看起来还是挺炫酷的,再放几张网友们参照教程做的图欣赏一下: ▲ 视频演示 第0步:材料准备 步进电 ...

  6. 硬核项目 | 用Arduino做一个神奇的悬浮灯!

    要学嵌入式,关注@我要学嵌入式,嵌入式猛男的加油站. 01  前言 今天给大家介绍的项目,是一个国外初级设计师用Arduino做的一个神奇的悬浮灯! 这是一个适合初学者的3D打印项目. 02  材料准 ...

  7. 电脑装两个硬盘在计算机只显示一个,插入U盘出现两个盘符怎么解决?一个U盘显示两个盘符解决方法...

    自从电脑换成了Windows 10 操作系统后,每次插入U盘.移动硬盘,明明只是一个盘,它却要显示2个相同的盘符,不过对使用也没什么大碍,就一直未理.前几天同时插入了U盘和移动硬盘,准备拷几张照片,这 ...

  8. 用arduino做一个光控灯

          实验器件: 带有arduino ide的电脑一台: Arduino板一个: 光敏开关一个: 导线若干: led灯一个: 电阻2个:    光敏传感器的工作原理: 光传感器是利用光敏元件将光 ...

  9. 插入U盘自动运行指定程序

    目标 插入U盘,自动运行指定程序或打开指定文件. 实现 1.安装AutoFlash,下载地址为:https://download.csdn.net/download/HHT0506/15110427( ...

最新文章

  1. 危机边缘第一季/全集Fringe迅雷下载
  2. LeetCode Sum Root to Leaf Numbers (dfs)
  3. mysql -- 学习记录
  4. PHP中遍历stdclass object 及 json 总结[中国航天神舟十号以json形式向地面返回数据]...
  5. Spring Cloud原理
  6. mysql 获取每天的日期_mysql中获取一天、一周、一月时间数据的各种sql语句写法...
  7. 试题4 基础练习 闰年判断
  8. 基于MongoDB与NodeJS构建物联网系统
  9. 一个程序员的书法学习之路-法帖篇
  10. 微分方程的数值解法—四阶龙格库塔(Runge-Kutta)的推导以及C代码实现
  11. DeBUG|实例化servlet类xxxx异常
  12. 一张让android死机图片,导致安卓手机死机的照片拍摄者表示这张照片是无意之举...
  13. python excel openpy_python处理excel文件
  14. 正向查找区域和反向查找区域的操作教程(内提供系统镜像下载)
  15. MySQL-7 DDL约束 标识列 TCL事务控制语言 视图view
  16. RK3288 android添加HAL 层导致无法进入主界面原因分析,重复打印 camsys_marvin(deaa1510) is closed
  17. 8B10B编解码的Verilog实现
  18. 微软键鼠外设八款齐发 创新蓝色LED光源
  19. linux centos 最新版本,Linux 发行版
  20. 『 论文阅读』LightGBM原理-LightGBM: A Highly Efficient Gradient Boosting Decision Tree

热门文章

  1. VBA+ADO查询ACCESS数据库
  2. 论文阅读:LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation
  3. 记录apache和tomcat整合(windows—x64)
  4. 信号与系统(13)- 傅里叶变换的性质
  5. flutter图片上传
  6. 7-85 根据输入的空气污染指数,输出相应的信息。7-86 分支结构——大小写字母判断7-87 A±B
  7. 视频按照bbox切割算法
  8. request.get乱码解决
  9. 识别最优的数据驱动特征选择方法以提高分类任务的可重复性
  10. 微众银行马智涛:从0到10,000构建中国最大区块链联盟