记badusb制作
很早之前就听说过这个很牛批的小神器,配合社会工程学渗透简直无敌..
参考的文章是 GCOW团队 j0 师傅的,文章写的非常详细 ,一步步来就行
https://blog.csdn.net/qq_26091745/article/details/98092211
FreeBuf的文章
https://www.freebuf.com/articles/system/92519.html
其中记录下遇到的不少问题:
2.Badusb内部结构
从这张图便可以了解到–Badusb和普通的U盘并没有什么两样,因此迷惑性极高,很容易攻击成功(一般都再外面套上个U盘的外壳)
3.Badusb Hid攻击原理
HID是Human
Interface
Device的缩写,由其名称可以了解HID设备是直接与人交互的设备,。一般来讲针对HID的攻击主要集中在键盘鼠标上,因为只要控制了用户键盘,基本上就等于控制了用户的电脑。攻击者会把攻击隐藏在一个正常的鼠标键盘中,当用户将含有攻击向量的鼠标或键盘,插入电脑时,恶意代码会被加载并执行。简而言之,今天要介绍的Badusb利用的是虚拟键盘来实现恶意代码的执行。
4.Badusb攻击优势
攻击者将恶意代码存放于Badusb的固件中,PC上的杀毒软件无法访问到U盘存放固件的区域,因此也就意味着杀毒软件无法应对BadUSB的攻击。
5.Teensy
攻击者在定制攻击设备时,会向USB设备中置入一个攻击芯片,此攻击芯片是一个非常小而且功能完整的单片机开发系统,它的名字叫TEENSY。通过TEENSY你可以模拟出一个键盘和鼠标,当你插入这个定制的USB设备时,电脑会识别为一个键盘,利用设备中的微处理器与存储空间和编程进去的攻击代码,就可以向主机发送控制命令,从而完全控制主机,无论自动播放是否开启,都可以成功。从原理来看。USB主控就是一个带原生usb接口的单片机。
一切做的都比较顺利,唯一没成功的就是烧录了一段代码进去打算弹窗,没成功,具体情况以后再测试吧。制作badusb大体流程就是,先下载好烧录代码的工具Arundio 和 打算利用的代码(比如说控制电脑开关机,反弹shell , 将电脑中所有的文本文档下载下来 ....等等,可以自己修改,自己开发),这里需要注意的是,badusb支持反复烧录,据说烧录次数可达10万次,所以可以反反复复的利用。如果感觉单个购买比较贵,打算批量购买,可以用立创EDA自己画电路图,立创EDA开源社区也有两个badusb开源代码,从立创EDA画好直接下单就行,这里我参考的 ANGEL大佬的文章, https://mp.weixin.qq.com/s/bVQTJpZuyToAzW4CuwHaLg
哦,对了,这里强烈推荐K8大佬的badusb代码一键生成工具,github上有下载链接,直接搜索就行

这里简单记录下怎么想要自己开发功能并且烧录进硬件中,怎么做。 烧录进去的代码是C/C++格式的,简单学过C的应该都能看懂,里面用的最多的以及必不可少的就是 keyboard库函数。我是先在本地用 命令提示框 (也就是 win + R 弹出来的那个框框) 测试好了,再找一段别人写好的badusb代码,再原有的别人写好的基础上,删除原有的功能,添加进去我想要的功能。烧录的话,在Arundio中需要先点左上角的验证,验证成功之后才能上传。如果不小心烧录了错误的代码,可以擦除的,擦除方法就是烧录一个空的代码进去就行。
哦,对了,如果需要免费域名的话,可以从这里找,
http://free.3v.do/index.html 10块钱 100mb空间,速度挺快,比较稳定
用dos命令搜索指定类型文件,在复制到指定的路径中。
https://zhidao.baidu.com/question/1445520882333952540.html
这个就可以改一改,然后烧录到badusb中,比如说 获取电脑上所有的 .doc 文档类型的文本。
可玩的方法还有很多,日后我会研究研究如何防御这种硬件攻击。
badusb利用代码 参考的文章链接:
https://www.dakaliu.com/1719.html
https://blog.csdn.net/ns2250225/article/details/79781043?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param
记badusb制作的更多相关文章
- 使用digispark制作一个BadUSB
0X00.工具准备 digispark开发板. 淘宝连接:https://m.tb.cn/h.VK7vwjy?sm=d85844 0X01.安装Arduino IDE环境 1.安装 arduino 的 ...
- 基于ArduinoLeonardo板子的BadUSB攻击实战
0X00 前言 在Freebuf上许多同学已经对HID攻击谈了自己的看法,如维克斯同学的<利用Arduino快速制作Teensy BadUSB>无论从科普还是实践都给我们详尽的描述了Bad ...
- BadUsb配合Cobalt-Strike免杀上线
BadUsb配合Cobalt-Strike免杀上线 前言: 原理简介:Badusb的原理是将恶意代码预置在固件之中,当受害人插入USB时,就会执行恶意代码进行恶意操作.Badusb将恶意代码预存在U盘 ...
- badusb
badusb介绍 BadUSB是利用伪造HID设备执行攻击载荷的一种攻击方式.HID(Human InterfaceDevice)设备通常指的就是键盘鼠标等与人交互的设备,用户插入BadUSB,就会 ...
- 转载---SuperMap GIS 9D SP1学习视频播单
转自:http://blog.csdn.net/supermapsupport/article/details/79219102 SuperMap GIS 9D SP1学习视频播单 我们一直在思考什么 ...
- 利用Arduino快速制作Teensy BadUSB
0×00 介绍 本文想以较简单的方式,叙述Arduino版BadUSB的制作过程.我知道在这之前已经有很多前辈都写过相关的文章,但小白可能还有点迷糊,所以这篇文章是快速带大家入门了解,我也是菜B大神不 ...
- 利用Arduino快速制作Teensy BadUSB, 攻击计算机
BadUsb介绍 BadUSB是计算机安全领域的热门话题之一,该漏洞由Karsten Nohl和Jakob Lell共同发现,并在2014年的BlackHat安全大会上公布. 虽然已隔一两年,但还是有 ...
- 【原创】Arduino制作Badusb实践
1.U盘构造 U盘由芯片控制器和闪存两部分组成. 芯片控制器负责与PC的通讯和识别,闪存用来做数据存储: 闪存中有一部分区域用来存放U盘的固件,它的作用类似于操作系统,控制软硬件交互:固件无 ...
- Arduino+Avr libc制作Badusb原理及示例讲解
一. 前言 2014年美国黑帽大会上研究人员JakobLell和Karsten Nohl展示了badusb的攻击方法后,国内与badusb相关的文章虽然有了一些,但是大部分人把相关文章都阅读后还是会有 ...
随机推荐
- vim进入粘贴模式
最近使用linux的vim编辑器编写程序时,遇到一些繁琐的模板想要复制粘贴进去,直接进入插入模式点复制,复制出来的格式不对没办法运行 解决办法: 这是因为 Vim 自动缩进了,按照如下设置可以解决该问 ...
- SpringBoot整合Elasticsearch7
SpringBoot连接ElasticSearch有以下种方式, TransportClient,9300端口,在 7.x 中已经被弃用,据说在8.x 中将完全删除 restClient,9200端口 ...
- Java基础教程——String类
String类 Java程序中的所有字符串字面值(如 "abc" )都是String的实例 字符串是常量(因为 String 对象是不可变的,所以可以共享) 字符串的本质是字符数组 ...
- LinuxKernel(一)
首先,回顾一下基础的宏操作: C语言宏 #与## #的作用是字符串化:在一个宏中的参数前面使用一个#,预处理器会把这个参数转换为一个字符数组 #define ERROR_LOG(info) fprin ...
- linux查看内存及磁盘使用情况
1.查看当前目录 命令: df -h (统一每个目录下磁盘的整体情况) 2.查看指定目录 在命令后直接放目录名,比如查看"usr"目录使用情况: 命令: df ...
- Kubernetes 使用 Kubevirt 运行管理 Windows 10 操作系统
原文链接:https://fuckcloudnative.io/posts/use-kubevirt-to-manage-windows-on-kubernetes/ 最近我发现我的 Kubernet ...
- Spring Boot系列 八、集成Kafka
一.引入依赖 <dependency> <groupId>org.springframework.kafka</groupId> <artifactId> ...
- 注意当cin.getline、和cin 合用的时候
1. getline有两种,一个是string的(getline(cin,s)),一个是istream的(cin.getline(s,maxsize,delim)). 2. 当用cin输入了数据后,在 ...
- 第4章 基础知识进阶 第4.1节 Python基础概念之迭代、可迭代对象、迭代器
第四章 基础知识进阶第十七节 迭代.可迭代对象.迭代器 一. 引言 本来计划讲完元组和字典后就讲列表解析和字典解析,但要理解列表解析和字典解析,就需要掌握Python的高级的类型迭代器,因此本节 ...
- PyQt学习随笔:ListView控件获取当前选择项的方法
通过currentIndex()可以获取listView控件的当前选择元素,如果选择了多个,则可以通过selectedIndexes()来获取选择的元素,不过这两个函数返回的是元素数据,而不是索引编号 ...

