Umap2是一款由NCC Group和Cisco SAS小组开发的、基于python的USB host安全评估工具。

它拥有第一版所支持的所有功能:

umap2emulate:USB设备枚举

umap2scan:用于设备支持的USBhost扫描

umap2detect:USBhost操作系统检测(尚未实现)

umap2fuzz:USB host fuzzing

另外,该版本中添加了额外的功能:

USBhost fuzzing使用kitty作为fuzzing引擎

Umap2中不仅包含可执行的脚本,而且作为程序包进行安装,也可用于库

注意:Umap2目前仍然是一款处于alpha阶段的工具。API、可执行文件名都有可能会更改。

安装

Umap2是一个比较早期的版本,因此还不能通过pypi安装。目前是使用pip进行安装:

$ pipinstall git+https://github.com/nccgroup/umap2.git#egg=umap2

附属功能

Umap2的附属功能列在setup.py文件中,并且会与Umap2一起安装。但是对于某些设备需要添加支持:

大容量存储

需要在运行目录中添加名为stick.img的磁盘镜像。

MTP

1、需要在当前目录中添加名为mtp_fs的文件/文件夹

2、需要python程序包pymtpdevice,下载地址:https://github.com/BinyaminSharet/Mtp

用例

设备枚举

Umap2的基本功能是枚举。用户可以枚举任何一个存在的USB设备(使用umap2list命令查看可用设备):

$ umap2emulate -P fd:/dev/ttyUSB0 -C mass_storage

或枚举自己的设备:

$ umap2emulate -P fd:/dev/ttyUSB0 -C ~/my_mass_storage.py

将来会有一个详细的添加设备的指南,同时,用户可以在umap2/dev/目录下查看umap2设备。

设备支持扫描

Umap2会检测主机支持的USB设备类型。它通过在短周期内模拟不同的设备并发送设备特有的消息来完成扫描:

$ umap2scan -P fd:/dev/ttyUSB0

Fuzzing

Umap2的Fuzzing过程有三个步骤组成,这三步未来可能会写到一个独立的脚本中:

1、用户需要确定目标主机的消息序列和模拟的USB设备:

$ umap2stages -P fd:/dev/ttyUSB0 -C keyboard -s keyboard.stages

2、在独立的shell中启动kitty fuzzer,并提供第一阶段生成的stages:

$ umap2kitty -s keyboard.stages

3、开启fuzz模式的umap2键盘仿真

$ umap2fuzz -P fd:/dev/ttyUSB0 -C keyboard

步骤三执行后,fuzzing会话就开始了。

*原文地址:github

Umap2:开源USB host安全评估工具的更多相关文章

  1. 【转】Android Service创建USB HOST通信

    之前做了一个关于Android USB通信的Case,通过Android的USB总线给Zigbee供电,和板载的Zigbee(基于Zigbee的自组网)进行通信.要使用Android的USB Host ...

  2. usb host和device的关系-ARM 论坛 - 21ic电子技术论坛

    usb host和device的关系 疑问1:我们通常所用的u盘应该是usb device吧?我想这个不用多说,呵呵. ===============恩.============== 疑问2:我们通常 ...

  3. Android Service创建USB HOST通信

    之前做了一个关于Android USB通信的Case,通过Android的USB总线给Zigbee供电,和板载的Zigbee(基于Zigbee的自组网)进行通信.要使用Android的USB Host ...

  4. 常用的商业级和免费开源Web漏洞扫描工具

    Scanv 国内著名的商业级在线漏洞扫描.可以长期关注,经常会有免费活动.SCANV具备自动探测发现无主资产.僵尸资产的功能,并对资产进行全生命周期的管理.主动进行网络主机探测.端口探测扫描,硬件特性 ...

  5. Android开启OTG功能/USB Host API功能

    Android USB 模式简介 设备模式 当计算机或其他USB主机需要连接安卓设备时,此时安卓设备是作为"USB设备"角色的,在计算机上显示为 USB 外设.现在的安卓设备已经被 ...

  6. Android USB Host与HID通讯

    前端时间捣鼓一个HID的硬件, 需要和android通信, 网上搜索了一圈,收获不小. 比较好的文章是:      Android USB Host与HID通讯 Android Service创建US ...

  7. [转]Android开源项目第二篇——工具库篇

    本文为那些不错的Android开源项目第二篇--开发工具库篇,主要介绍常用的开发库,包括依赖注入框架.图片缓存.网络相关.数据库ORM建模.Android公共库.Android 高版本向低版本兼容.多 ...

  8. pylot是一款开源的web性能测试工具

    pylot是一款开源的web性能测试工具,http://www.pylot.org/ 参考文档:http://www.pylot.org/gettingstarted.html很容易上手 使用分为以下 ...

  9. 10 个强大的开源 Web 流量分析工具(转帖)

    Web 流量分析工具多不胜数,从 WebTrends 这样专业而昂贵的,到 Google Analytics 这样强大而免费的,从需要在服务器端单独部署的,到可以从前端集成的,不一而足.本文收集并介绍 ...

随机推荐

  1. /var/spool/postfix/maildrop 占用inode索引及磁盘空间解决办法

    1.问题表现和检查 运行df -i / 查看inode使用是否满: 2.查看/var/spool/postfix/maildrop是否有非常多的小文件,ls直接卡死等情况 解决: 删除小文件: cd ...

  2. vim操作集合

    Vim命令合集 命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令. 启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filena ...

  3. SQL Server索引调优系列

    http://www.cnblogs.com/chenmh/category/586612.html http://www.cnblogs.com/zhijianliutang/category/63 ...

  4. 深入浅出设计模式——命令模式(Command Pattern)

    模式动机 在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个,我们只需在程序运行时指定具体的请求接收者即可,此时,可以使用命令模式来进行设计,使得请 ...

  5. 《BI那点儿事》SSRS图表和仪表——雷达图分析三国超一流谋士、统帅数据(图文并茂)

    雷达图分析三国超一流谋士.统帅数据,献给广大的三国爱好者们,希望喜欢三国的朋友一起讨论,加深对传奇三国时代的了解 建立数据环境: -- 抽取三国超一流谋士TOP 10数据 DECLARE @t1 TA ...

  6. python uuid、hex study

    由 import uuid product[“SourceInfo"]["ProductID"] = uuid.uuid4().hex 引起的uuid 一.概述 uuid ...

  7. keyup与setInterval

    <html><body> <input type="text" id="clock" size="35" /& ...

  8. Asp.Net_网站性能

    1.如果不想被微软包围(其实微软的一套并不贵,是被谣言传高了),数据层依然可以选择SQL Server数据库和存储过程. 2.缓存不再依赖.net自身提供的缓存机制,迁移到部署在Linux平台上的分布 ...

  9. 运行Maven是报错:No goals have been specified for this build

    No goals have been specified for this build. You must specify a valid lifecycle phase or a goal in t ...

  10. dataserver test code

    main.go package main import ( "database/sql" "fmt" "log" "net/htt ...