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. UVa 1347 旅行

    https://vjudge.net/problem/UVA-1347 思路:用d(i,j)表示第一个人走到i,第二个人走到j,还需要走多长的距离.在这里强制定义i>j,并且每次只能走到i+1. ...

  2. redis教程(The little redis book中文版)

    许可证 <The Little Redis Book>是经由Attribution-NonCommercial 3.0 Unported license许可的,你不需要为此书付钱. 你可以 ...

  3. 用java代码将数组元素顺序颠倒

    package test; public class Recover { public int[] reverse(int[] a) { int[] b = new int[a.length]; in ...

  4. 【转】Qt在pro中设置运行时库MT、MTd、MD、MDd,只适合VS版本的Qt

    http://blog.csdn.net/caoshangpa/article/details/51416077 一.在pro中设置运行时库 最近在用Qt5.6.0(VS2013版本)调用一份用Vis ...

  5. 《剑指offer》第十四题(剪绳子)

    // 面试题:剪绳子 // 题目:给你一根长度为n绳子,请把绳子剪成m段(m.n都是整数,n>1并且m≥1). // 每段的绳子的长度记为k[0].k[1].…….k[m].k[0]*k[1]* ...

  6. /etc/fstab 文件解析

    首先介绍一下fstab :这个文件描述系统中各种文件系统的信息.一般而言,应用程序仅读取这个文件,而不对它进行写操作.对它的维护是系统管理员的工作.在这个文件中,每个文件系统用一行来描述,在每一行中, ...

  7. memcached哈希表操作主要逻辑笔记

    以下注释的源代码都在memcached项目的assoc.c文件中 /* how many powers of 2's worth of buckets we use */ unsigned int h ...

  8. Confluence 6 使用 LDAP 授权连接一个内部目录 - 用户 Schema 设置

    请注意:这部分仅在拷贝用户登录(Copy User on Login)功能被启用后可见. 其他用户 DN(Additional User DN) 这个值被用在进行用户查找和载入的时候来针对 base ...

  9. 字符串 dfs

    1222: FJ的字符串 [水题] 时间限制: 1 Sec 内存限制: 128 MB 提交: 52 解决: 9 状态 题目描述 FJ在沙盘上写了这样一些字符串: A1  =  “A” A2  =  “ ...

  10. RedHat Linux 5下不能使用fdisk的问题

    最近在用RedHat Linux5的时候,使用fdisk命令,遇到了下面的错误: bash:fdisk:command not found 在网上找了找,解决方案如下: 首先,这个错误的原因是因为fd ...