Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WSL 2 With USB Support #1536

Closed
TheProgramableTurtle opened this issue Jul 1, 2020 · 1 comment
Closed

WSL 2 With USB Support #1536

TheProgramableTurtle opened this issue Jul 1, 2020 · 1 comment
Labels
status-invalid Invalid report

Comments

@TheProgramableTurtle
Copy link

Somewhat of a continuation of #876, now that WSL 2 has support for USB (given the WSL kernel is compiled with USB options enabled) a device can be connected using USBIP, or similar software. Of course, checkra1n does not work because, like a VM, the hypervisor or virtualization software still has to use Windows drivers to access the USB device. Running the checkm8 exploit in this environment does not work either, producing:

*** checkm8 exploit by axi0mX ***
****** stage 1, heap grooming
Found: CPID:8960 CPRV:11 CPFM:03 SCEP:01 BDID:00 ECID:0000020E8E49A434 IBFL:1C SRTG:[iBoot-1704.10]
ctrl transfer ERROR: 2 3 USBError(32, 'Pipe error')
# An endless stream of identical time outs, only showing one
ctrl transfer ERROR: 128 6 USBError(110, 'Operation timed out')
Performing USB port reset.
Caught exception during port reset; should still work.
****** stage 2, usb setup, send 0x800 of 'A', sends no data
ERROR: No Apple device in DFU Mode 0x1227 detected after 5.00 second timeout. Exiting.

Other people have reported success running a fork of the exploit with libusb-win32 drivers installed and controlling the device while in DFU mode. I'm probably misunderstanding the functionality of libusb-win32 (I assume it is used instead of the Windows drivers, correct me if I'm wrong), but if this would give checkra1n the necessary control over the USB stack, how much modification would be required to make checkra1n work? Is it worth considering, is it easier to just make custom drivers for windows, or is this not possible at all? Given the requirements to run WSL with a custom kernel and to enable USB access, this would be more difficult than just booting Linux from a USB stick, but it'd be nice to know if it's possible.

@Siguza
Copy link
Member

Siguza commented Jul 5, 2020

I had a look around regarding WSL2 and USB, and ended up here: microsoft/WSL#5158
Basically there is no USB passthrough, and tunneling USB to the Windows API leaves us exactly where we started.

So, gonna mark this issue as invalid - good idea, but unfortunately based on wrong assumptions.

@Siguza Siguza closed this as completed Jul 5, 2020
@Siguza Siguza added the status-invalid Invalid report label Jul 5, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status-invalid Invalid report
Projects
None yet
Development

No branches or pull requests

2 participants