0x00 前言

不是很新的东西,其他作者已对此做过研究测试,本文仅用来记录操作过程,保存日志,说明细节。

0x01参考资料

https://github.com/adamcaudill/Psychson
https://github.com/hak5darren/USB-Rubber-Ducky/wiki/Payloads
http://zone.wooyun.org/content/22819

0x02环境搭建

1、硬件

U盘 :东芝(TOSHIBA) 速闪系列 U盘 16GB (黑色) USB3.
主控版本:Phison -

2、软件

Windows x64主机

(1)Java Runtime Environment :Java环境,用于支持Duckencoder

(2)SDCC :刷写U盘的环境,用于支持Psychson

(3)Visual Studio 2012 :编译Psychson的开发环境

(4)Psychson :BasUSB写入工具 (https://github.com/adamcaudill/Psychson)

(5)Burner File :BN03V104M.BIN,必要的burner

(6)USB-Rubber-Ducky Payload :编写Payload的参考代码 (https://github.com/hak5darren/USB-Rubber-Ducky/wiki/Payloads)

(7)Duckencoder :用于编译Payload

(8)chipgenius 芯片检测工具 :用于确定U盘型号

0x03操作流程

1、配置Payload

进入DuckEncoder文件夹

执行:

java -jar encoder.jar -i payload.txt -o inject.bin

说明:

encoder.jar:文件夹自带
payload.txt:可参考USB-Rubber-Ducky Payload
inject.bin:执行代码后生成的文件

2、生成固件

执行:

Psychson-master\firmware\build.bat

生成fw.bin文件

3、将Payload写入fw.bin文件

执行:

EmbedPayload.exe inject.bin fw.bin

说明:

EmbedPayload.exe:编译EmbedPayload工程得来
inject.bin:操作1生成
fw.bin:操作2生成

4、将生成的固件写入U盘

(1)执行

DriveCom.exe /drive=E /action=SetBootMode

设置U盘模式

(2)执行

DriveCom.exe /drive=E /action=SendExecutable /burner=BN03V104M.BIN

操作burner

(3)执行

DriveCom.exe /drive=E /action=SendFirmware /burner=BN03V104M.BIN /firmware=fw.bin

将fw.bin刷入U盘

0x04 小结

刷入成功后,下次插入U盘会模拟键盘操作,自动执行Payload

0x05 补充

如果刷坏或者想更改Payload,需要短接29和30针,再用官方刷写工具刷新

BadUSB测试记录的更多相关文章

  1. linux .net mono方案测试记录与报告(一)

    第一阶段 linux .net 方案测试 硬件为4核8线程的笔记本i7-4710mq 分配了4个线程 情况下 1.方案一 nginx+fastcgi-mono-server4方式 性能为每秒处理140 ...

  2. Yii 增删改查 测试记录

    亲们, 我是yii小白 不要笑话我奥.今天白天写一个管理模块涉及到 yii ar 下的  curd 操作,做 update 操作时纠结了好久,今天晚上花点时间学习, 下面写下我的测试记录 代码如下: ...

  3. Office隐藏17年的漏洞CVE_2017_11882测试记录

    Office隐藏17年的漏洞CVE_2017_11882测试记录 创建时间: 2017/11/25 0:18 作者: CN_Simo 标签: Office漏洞 参考文章1:https://www.cn ...

  4. HDFS部署测试记录(2019/05)

    目录 HDFS部署测试记录 0.HDFS基础知识 1.基本组成结构与文件访问过程 2.NameNode启动时如何维护元数据 3.HDFS文件上传流程 1.系统环境 1.安装大致记录: 2.磁盘分区 3 ...

  5. [转]Rapid Reporter——轻量级ET测试记录工具

    下载地址:http://testing.gershon.info/reporter/ 特别感谢:邰晓梅老师 在一次ET的在线培训课程,邰晓梅老师使用的是这个工具. Rapid Reproter,是一款 ...

  6. linux下开发板网络速度测试记录

        由于做的项目对于网络和USB的读写速度有很高的要求,因此新拿回来的板子要测试网络和usb的最佳传输速度.要考虑不少因素,先把我能想到的记录下来.     测试的环境是开发板和ubuntu虚拟机 ...

  7. 堡垒机jumpserver测试记录--使用

    快速入门 截图就不放了,官网都有,这里只是就遇到的一些问题做下记录 必备条件 一台安装好 Jumpserver 系统的可用主机(堡垒机) 一台或多台可用的 Linux.Windows资产设备(被管理的 ...

  8. 堡垒机jumpserver测试记录--安装

    一步一步安装(CentOS) 基本都是官网的东西,只是有些坑做了记录. http://docs.jumpserver.org/zh/docs/step_by_step.html 环境 系统: Cent ...

  9. ELK的高级篇(测试记录各种日志)

    一.elk架构已经完成情况情况下  访问限制: 加个x-pack插件  1)一个脚本收集多个日志,if 判断写入es的索引 [root@k8s6 conf.d]# cat file.conf inpu ...

随机推荐

  1. YOLOv1-darknet 内容解析

    目录 YOLOv1-darknet 内容解析 1. 核心思想 2. 特点 3. 缺点 4. 算法流程 5. 详细内容 6. 主要参考 YOLOv1-darknet 内容解析 1. 核心思想 目标检测分 ...

  2. 【咖啡の设备】便携式冰滴壶——Dripo 使用体验

    --------------------------------------------2016.12.22 更新------------------------------------------- ...

  3. C#高级编程第10版 note

    泛型接口的抗变和协变 https://www.cnblogs.com/yanfang/p/6635302.html ①泛型接口,如果泛型类型前没有关键字out或者in来标注,则该泛型接口不支持抗变和协 ...

  4. ASCII 、UTF-8、Unicode都是个啥啊,为啥会乱码啊?

    因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制1111 ...

  5. python 集合的比较

    setx = set(["apple", "mango"]) sety = set(["mango", "orange" ...

  6. ssh 连接不同无线网且IP以及用户名都相同

    问题现场及解析 用OpenSSH的人都知ssh会把你每个你访问过计算机的公钥(public key)都记录在~/.ssh/known_hosts. 当下次访问相同计算机时,OpenSSH会核对公钥. ...

  7. testNG 学习笔记 Day 3 常用的断言

    TestNG中最常用的一个断言类是Assert.java,里面有多个静态方法,这个类我们习惯叫硬断言.对应的还有一个软断言的类,叫SoftAssert.java,这个类是需要创建实例对象,才能调用相关 ...

  8. Jmeter 之 ServerAgent 在性能测试的时候通过插件监听数据库状态

    https://jmeter-plugins.org/downloads/old/ 下载几个jar包,导入到Jmeter对应到目录下/lib/ext文件夹下,注意只支持Jmeter3.2(不含)以下版 ...

  9. java入门书籍很少介绍的java知识

    1.java中数组的长度可以用.length来确定 2.java中的Arrays类可以对数组进行轻松的操作 (1).包名:import java.util.Arrays (2).Arrays.sort ...

  10. SVN使用流程