模拟usb设备的python库
facedancer的Python项目详细描述
#facedancer 2.2
此存储库包含下一代facedancer软件。从最初的基于goodfet的facedancer派生而来,这个存储库提供了一个python模块
,它提供了扩展的facedancer支持,包括对多个板的支持
和一些非常重要的新功能。
facedancer板是充当"远程控制"USB控制器的简单硬件设备。有了合适的软件,您可以使用这些板快速而轻松地模拟USB设备,并模糊USB主机控制器!
这个特定的软件存储库目前允许您在python中轻松创建usb设备的模拟。控件足够细粒度,可以导致所有类型的USB错误行为。:)
有关更多信息,请参阅:
*[特拉维斯·古德斯佩德在Facedancer上的博客文章](http://travis goodspeed.blogspot.com/2012/07/用python.html模拟USB设备)
*[Facedancer 21,原始支持的板](http://goodfet.sourceforge.net/hardware/Facedancer21/)
##usbproxy'nouveau'和协议分析
较新的facedancer代码库的一个主要新特性是能够在
中间usb连接中进行操作——替换作者原来的[usbproxy]项目(https://github.com/dominicgs/usbproxy)
。这开辟了一个全新的应用领域,包括协议分析和USB数据包的实时操作,当您不控制目标设备(如嵌入式系统或游戏机)上运行的软件时尤其有用。+-------------------------------------------------------+
+——————————————————————————————————————————————————————————————————————————————————————————————————————————————————/>|代理的主机FaceDancer设备目标USB
设备<;--->;运行FaceDancer软件<;--->;充当USB控制的<;--->;主机
|||||| USB控制器||
MITM设置(主机+Facedancer)
+??——re是完整的,但是可以使用更多的文档。欢迎拉取请求。:)
首先,您可能需要设置``backend``环境变量,让软件知道您要使用哪种类型的facedancer板。如果未设置此变量
,软件将尝试根据连接的内容为您进行猜测。它不会总是做出最好的猜测,所以您最好自己设置。
接下来,您可以运行任何预先制作的脚本,例如``facedancer serial.py``.
例如:
``sh
export backend=goodfet
./facedancer serial.py
```
目前支持T板?
*所有基于Goodfet的Facedancer,包括Common Facedancer21(`` backend=Goodfet````)
*The[Greatfet One](http://greatscottagets.com/greatfet/)(`` backend=Greatfet```)
*NXP LPC4330 Xplorer Board(`` backend=Greatfet```)
*带Grea的CCCamp 2015 Rad1o徽章tfet l0adable(`` backend=greatfet```)
*rpi+max3241 raspdancer板(`` backend=raspDancer```)
请注意,硬件限制使max3420/max3421板无法模拟更复杂的设备——可以设置的端点的数量/类型有限制。像greatfet这样的lpc430板不受这些限制。
出于类似的原因,max3420/max3421板(backend=goodfet或backend=raspdancer)目前不能用作usbproxy nv mitm设备。所有现代电路板(`backend=greatfet`)
都应该功能齐全。
*任何支持gadgetfs的linux计算机(例如pi zero或beaglebone black)
路线图是模糊的,但除了多板支持之外,这个存储库最终还将包含一些很酷的新功能,例如:
*在具有usb 2.0物理的设备上进行高速("usb2.0")设备模拟
有很多人应该为这次回购的惊人行为负责,
包括:
*特拉维斯·古德斯佩德(@travis goodspeed)
*谢尔盖·布拉图斯(@sergey bratus)
*ktemkin(@ktemkin)
*dominic spill(@dominicgs)
*michael ossmann(@michaelossmann)
*任何人谁的名字出现在git历史记录中:)
\
…总是受欢迎的。给我们一个公关!
此存储库包含下一代facedancer软件。从最初的基于goodfet的facedancer派生而来,这个存储库提供了一个python模块
,它提供了扩展的facedancer支持,包括对多个板的支持
和一些非常重要的新功能。
facedancer板是充当"远程控制"USB控制器的简单硬件设备。有了合适的软件,您可以使用这些板快速而轻松地模拟USB设备,并模糊USB主机控制器!
这个特定的软件存储库目前允许您在python中轻松创建usb设备的模拟。控件足够细粒度,可以导致所有类型的USB错误行为。:)
有关更多信息,请参阅:
*[特拉维斯·古德斯佩德在Facedancer上的博客文章](http://travis goodspeed.blogspot.com/2012/07/用python.html模拟USB设备)
*[Facedancer 21,原始支持的板](http://goodfet.sourceforge.net/hardware/Facedancer21/)
##usbproxy'nouveau'和协议分析
较新的facedancer代码库的一个主要新特性是能够在
中间usb连接中进行操作——替换作者原来的[usbproxy]项目(https://github.com/dominicgs/usbproxy)
。这开辟了一个全新的应用领域,包括协议分析和USB数据包的实时操作,当您不控制目标设备(如嵌入式系统或游戏机)上运行的软件时尤其有用。+-------------------------------------------------------+
+——————————————————————————————————————————————————————————————————————————————————————————————————————————————————/>|代理的主机FaceDancer设备目标USB
设备<;--->;运行FaceDancer软件<;--->;充当USB控制的<;--->;主机
|||||| USB控制器||
MITM设置(主机+Facedancer)
+??——re是完整的,但是可以使用更多的文档。欢迎拉取请求。:)
首先,您可能需要设置``backend``环境变量,让软件知道您要使用哪种类型的facedancer板。如果未设置此变量
,软件将尝试根据连接的内容为您进行猜测。它不会总是做出最好的猜测,所以您最好自己设置。
接下来,您可以运行任何预先制作的脚本,例如``facedancer serial.py``.
例如:
``sh
export backend=goodfet
./facedancer serial.py
```
目前支持T板?
*所有基于Goodfet的Facedancer,包括Common Facedancer21(`` backend=Goodfet````)
*The[Greatfet One](http://greatscottagets.com/greatfet/)(`` backend=Greatfet```)
*NXP LPC4330 Xplorer Board(`` backend=Greatfet```)
*带Grea的CCCamp 2015 Rad1o徽章tfet l0adable(`` backend=greatfet```)
*rpi+max3241 raspdancer板(`` backend=raspDancer```)
请注意,硬件限制使max3420/max3421板无法模拟更复杂的设备——可以设置的端点的数量/类型有限制。像greatfet这样的lpc430板不受这些限制。
出于类似的原因,max3420/max3421板(backend=goodfet或backend=raspdancer)目前不能用作usbproxy nv mitm设备。所有现代电路板(`backend=greatfet`)
都应该功能齐全。
*任何支持gadgetfs的linux计算机(例如pi zero或beaglebone black)
路线图是模糊的,但除了多板支持之外,这个存储库最终还将包含一些很酷的新功能,例如:
*在具有usb 2.0物理的设备上进行高速("usb2.0")设备模拟
有很多人应该为这次回购的惊人行为负责,
包括:
*特拉维斯·古德斯佩德(@travis goodspeed)
*谢尔盖·布拉图斯(@sergey bratus)
*ktemkin(@ktemkin)
*dominic spill(@dominicgs)
*michael ossmann(@michaelossmann)
*任何人谁的名字出现在git历史记录中:)
\
…总是受欢迎的。给我们一个公关!