nccgroup / umap2

Umap2 is the second revision of NCC Group's python based USB host security assessment tool.
GNU Affero General Public License v3.0
252 stars 70 forks source link

Usage with USB Gadget (OTG)? #2

Closed Manouchehri closed 8 years ago

Manouchehri commented 8 years ago

This is more of a suggestion/feature request than an actual issue.

For targeting remote devices (such as an iOS device) where we don't have a shell to start with, it'd be useful to take advantage of Linux's USB gadget framework on a debugger 'server' (e.g. Raspberry Pi).

BinyaminSharet commented 8 years ago

TL;DR; Not against that, but it will take some time.

We tried to make Umap2 modular, and while there are probably some dependencies that we missed, it should be rather simple to replace the Facedancer "physical" layer with something else (see umap2/phy/facedancer).

We also started to look into USB gadget, but it seems to miss some features and to be much more "static" than what we want to support in Umap2. At this point we try to focus on some other issues/features that are missing, but if you feel like it - you are more than welcome to implement the USB gadget layer 😄 if not - we'll probably get to it sometime in the future...

I must say, though, that I'm not sure what is the benefit of that, since Facedancer21 support OTG (we actually were able to run Umap2 to test android phones), and you should also be able to use a USB OTG extension cable to connect to older Facedancer devices.

Manouchehri commented 8 years ago

not sure what is the benefit of that

The main reason is availability; most us are already have a few boards that support USB gadgets, the Facedancer21 isn't as common.

BinyaminSharet commented 8 years ago

That's a valid point 😄

Manouchehri commented 8 years ago

Solved and implemented in ba6247d9ba3d65fc74406851fd728f697a0bfd3d!

Thanks @BinyaminSharet!