HID攻击进阶——WHID injector

前言

  HID是Human Interface Device的缩写,意思是人机接口设备。它是对鼠标、键盘、游戏手柄这一类可以操控电脑设备的统称。延伸出的WHID代表基于Wi-Fi的HID注射器,即对HID攻击进行无线化攻击时的一种注入工具。
本次实验采用的攻击原理如下图:
  攻击者使用ESP8266作为AP,在自己的电脑创建客户端连接AP。在客户端键入命令发送到ESP8266,它再转发给Arduino Leonardo。利用Arduino中的Keyboard库就可以使用传输的命令控制目标主机的键盘。

 

一、 前期准备

1) 硬件设备:

1. Arduino Leonardo

2. ESP8266 Wi-Fi模块

  1. 稳压器

    2) 软件环境:

  2. sockettool(在工具集中):
    用于连接ESP8266:在电脑上运行软件创建客户端,与ESP8266创建的AP之间进行通讯。
  3. Arduino IDE:
    编写程序烧录进Arduino Leonardo。实验用版本为1.8.3.
  4. 串口调试助手(在工具集中):
    调试程序所需。

 

二、 实验步骤

1) ESP8266设置

使用串口连接ESP8266,依次键入命令:

  1. AT+CWMODE=3 //设置模式为AP兼Station模式
  2. AT+RST //模式改变需重启后生效
  3. AT+CWSAP=”name”,”password”,11,2 //创建一个名为name,密码为password的AP节点
  4. AT+UART=9600,8,1,0,0 //设置波特率为9600,Arduino和ESP8266波特率需相同

    2) 代码烧录

      在接线之前需要将代码烧录进Arduino Leonardo,直接将代码复制进工程,连接Arduino在IDE界面点击“上传”。详细代码见附录,这里分析关键部分。

    • 初始化ESP8266:

      上述代码在setup中执行,在每次Arduino连接电源后对ESP8266进行设置。
      代码中“AT+RST”为重启,“AT+CIPMUX=1”设置为多路连接,“AT+CIPSERVER=1,8089”创建服务器并设置端口。
    • 读取显示数据:

      在loop中循环读取ESP8266向串口发送的数据并打印在Arduino接入的电脑上。需要注意的是Serial1.readStringUntil(‘:’)这句话,因为使用ESP8266传输的数据格式为:“+IPD,0,3:123”,其中123为你输入的字符,所以使用这句话可以过滤“:”及其之前的字符。
      很重要的一点是:如果不使用Until,当第一个字节为符号时Arduino不能输出,这时第一个字节是加号,所以在电脑上看不到任何输出。

 

3) 硬件接线

设置好ESP8266和Arduino之后就可以进行硬件接线了,接线原理图如下:

其中Arduino和ESP8266务必共地,否则容易出现乱码的现象,这可以使用稳压器实现。实际接线图如下:

 

4) 客户端操作

1.  连接到之前创建的网络name。
2.  打开sockettool.exe,点击左侧“TCP Client”后点击“创建”来创建客户端:

  1. 输入IP:“192.168.4.1”,端口号:“8089”:

  1. 点击“连接”,如果连接成功可以看到“已连接”字样:

 

三、 实验演示

确保在已连接状态下,发送两次“123”:
 

 
可以在目标主机看到键入的结果:
 

原文地址:http://blog.51cto.com/13620939/2078008

时间: 2024-08-29 16:20:06

HID攻击进阶——WHID injector的相关文章

WHID Injector:将HID攻击带入新境界

HID Attack是最近几年流行的一类攻击方式.HID是Human Interface Device的缩写,意思是人机接口设备.它是对鼠标.键盘.游戏手柄这一类可以操控电脑设备的统称. 由于电脑对这类设备缺少严格的检测措施,只是简单的识别设备类型,就允许设备对电脑进行各项操作.所以,通过修改篡改设备反馈信息,就可以很轻松的让电脑将其他设备误认为HID设备,从而获取控制权限.尤其是USB和蓝牙这类即插即用接口出现,导致HID Attack成为重要方式.例如,Bad USB就是USB类攻击的典型代

Teensy HID攻击科普文

0x00 前言: 在2014年美国黑帽大会上,柏林SRLabs的安全研究人员JakobLell和独立安全研究人员Karsten Nohl展示了他们称为"BadUSB"(按照BadBIOS命名)的攻击方法.在认识BadUSB之前我们来先了解一种类似的攻击手法,使用Teensy芯片进行HID攻击,这种手法要古老的多,2010年左右,通过U盘伪装成为USB键盘输入恶意代码的攻击方式就已经相当成熟,并将这种攻击方式称为"Teensy HID攻击",Kautilya也是在20

制作Wi-Fi Ducky远程HID攻击设备

1.介绍WIFI DUCKY 它是一个Wi-Fi控制的BadUSB设备来远程执行Ducky Scripts. 使用充当键盘的USB设备来注入攻击,Hak5 的 USB Rubber Ducky 是这种攻击的黑客小工具.它引入了一个简单的脚本语言,称为Ducky Script,这个项目也是这样使用的. 该设备使用 ESP8266 + ATMEGA32U4 创建WIFI信号,进行远程上传.保存和运行脚本进行攻击 但是为什么要添加Wi-Fi,你可能会问. 使用Wi-Fi,您可以远程上传并运行Ducky

WiFi攻击进阶版——Deauth攻击

一.背景介绍: 在之前我们做过Wi-Fi定位劫持实验,其实有关Wi-Fi的攻击方式还有很多,而且其中的大多数需要的设备和操作都很简单.今天就再介绍一种破坏性更强.隐蔽性更高的攻击方式--取消验证洪水攻击.首先了解一下什么是取消验证洪水攻击:国际上称之为De-authentication Flood Attack,全称为取消身份验证洪水攻击或验证阻断洪水攻击,通常被简称为Deauth攻击,是无线网络拒绝服务攻击的一种形式.它旨在通过欺骗从AP到客户端单播地址的取消身份验证帧来将客户端转为未关联/未

基于Wi-Fi的HID注射器,利用WHID攻击实验

WHID代表基于 Wi-Fi 的 HID 注射器,即对 HID 攻击进行无线化攻击的一种注入工具. 实验攻击原理如下图: 攻击者使用ESP8266作为AP,在自己的电脑创建客户端连接AP.在客户端键入命令发送到ESP8266,它再利用串口转发给Arduino Leonardo.利用Arduino中的Keyboard库就可以使用传输的命令控制目标主机的键盘. 前期准备 1. 硬件设备 Arduino Leonardo ESP8266 Wi-Fi模块 FT282串口调试模块 2. 软件环境 sock

利用WHID为隔离主机建立隐秘通道

0 引言 从2014年BADUSB出现以后,USB-HID攻击就这一直被关注,且具争议.争议的焦点是USB-HID的实战效果过于"鸡肋",无论从早期的BADUSB,还是到后来的各种USB-HID设备,对于目标机来说,都要通过弹出"运行框"来实现payload的植入,由于弹框过于明显,所以实战中效果就大打折扣.于是,围绕着如何提升实战效果,很多人提出了不同的想法,我也做过多次尝试,比如通过改善payload的存储位置,通过加入BLE模块等方法,目的只有两个,一是尽可能

《白帽子讲WEB安全》学习笔记之第3章 跨站脚本攻击(xss)

第3章 跨站脚本攻击(xss) 3.1 xss简介 恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的. XSS攻击:跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆.故将跨站脚本攻击缩写为XSS. XSS本质就是HTML注入 XSS的分类: (1)     反射型XSS: 一个恶意构造了Web的URL (2)    

基于ArduinoLeonardo板子的BadUSB攻击实战

0X00 前言 在Freebuf上许多同学已经对HID攻击谈了自己的看法,如维克斯同学的<利用Arduino快速制作Teensy BadUSB>无论从科普还是实践都给我们详尽的描述了BadUSB制作的相关过程,lpcdma同学的<使用arduino进行渗透测试>则通过SET与Arduino的结合进行渗透,mrzcpo同学的 <HID高级攻击姿势:利用PowerShell脚本进行文件窃取>则介绍了获取文件的详细步骤,我在学习领悟之后想到了一些改进方案,比如绕过360主动防

针对Mac的DuckHunter攻击演示

0x00 HID 攻击 HID是Human Interface Device的缩写,也就是人机交互设备,说通俗一点,HID设备一般指的是键盘.鼠标等等这一类用于为计算机提供数据输入的设备. DuckHunter Attack DuckHunter Attacks是从USB Rubber Ducky (USB橡皮鸭)发展过来的HID攻击方式.USB Rubber Ducky是从2010年就开始流行的Hack专用设备.该设备外观就是一个普通U盘大小的USB设备.渗透测试人员可以在其中编写自己的脚本.