什么是烧鹅?
从原理上来看,主要为模拟电脑的键盘输入,操作电脑,通过BadUsb里面存储的脚本来达到一些奇奇怪怪的功能。
烧鹅基于Teensy++ 2.0 AT90USB1286芯片设计的USB Rubber Ducky类开发板,没有使用USB Rubber Ducky的固件功能,不可以直接使用USB Rubber Ducky的脚本,可以直接使用Arduino IDE来编写自定义代码、也可以使用S.E.T、Kautilya套件生成代码使用。 自带SD卡槽,可外接SD作为扩展,支持BadUSB代码。
安装开发环境
windows下的开发环境很简单直接看官网就好
这里说的是ubuntu下的开发环境配置
1、Arduino的安装
在这里有详细的步骤
https://www.arduino.cc/en/Guide/Linux
大体的步骤为,在该官网下载Arduino对应自己系统的arduino
解压,然后cd到解压到的目录,输入以下命令即可
sudo ./install.sh
注意,不要下载错版本了,下载的时候名字是版本号就是对的
安装完成后,桌面的快捷方式不能运行,显示应用软件错误,不用理会在终端中输入
./arduino
就能直接运行,至此软件安装算是完成
2、Teensyduino安装
官网教程在这里
https://www.pjrc.com/teensy/td_download.html
不过我们在这里总一下,以便以后安装
首先,我们下载Linux Installer,这个网站里就有,下载完成后是一个.linux64文件(我的系统是64位
然后我们要让没有root权限的用户使用Teensy设备,所以我们要做一个文件放到rules.d里面
我们新建一个文件输入以下
# UDEV Rules for Teensy boards, http://www.pjrc.com/teensy/
#
# The latest version of this file may be found at:
# http://www.pjrc.com/teensy/49-teensy.rules
#
# This file must be placed at:
#
# /etc/udev/rules.d/49-teensy.rules (preferred location)
# or
# /lib/udev/rules.d/49-teensy.rules (req'd on some broken systems)
#
# To install, type this command in a terminal:
# sudo cp 49-teensy.rules /etc/udev/rules.d/49-teensy.rules
#
# After this file is installed, physically unplug and reconnect Teensy.
#
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789A]?", ENV{MTP_NO_PROBE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789ABCD]?", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", MODE:="0666"
#
# If you share your linux system with other users, or just don't like the
# idea of write permission for everybody, you can replace MODE:="0666" with
# OWNER:="yourusername" to create the device owned by you, or with
# GROUP:="somegroupname" and mange access using standard unix groups.
#
#
# If using USB Serial you get a new device each time (Ubuntu 9.10)
# eg: /dev/ttyACM0, ttyACM1, ttyACM2, ttyACM3, ttyACM4, etc
# apt-get remove --purge modemmanager (reboot may be necessary)
#
# Older modem proding (eg, Ubuntu 9.04) caused very slow serial device detection.
# To fix, add this near top of /lib/udev/rules.d/77-nm-probe-modem-capabilities.rules
# SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789]?", GOTO="nm_modem_probe_end"
#
然后将生成的这个49-teensy.rules拷贝到rules.d里面
sudo cp 49-teensy.rules /etc/udev/rules.d/
随后由于默认的下载的.linux64文件是没有给执行权限的,所以我们对这个这个文件执行chmod指令
chmod 755 TeensyduinoInstall.linux64
然后在执行就好了
./TeensyduinoInstall.linux64
之后的步骤就和windows下一样了,选择你安装arduino的位置,值得一提的是,程序能自动识别你这个是不是ardunio的安装位置,只有是的时候才能点next
至此,开发环境算是完成,在之后连接板子的时候可能会出现一些其他权限的问题,在Ardunio的安装官方教程里面有提到今天就不再讨论,等开始研究功能之后再做研究。
PS,话外音,这次的学习,主要目的是两个
1、这个板子,也就是Teensy作为日常工作生活用,可以带来多少便利
2、作为一个HID,能不能真正做到在被攻击者没有察觉到的情况,达到渗透的效果
2017/3/19