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

Description of issue is incorrect. #1

Open
russdill opened this issue Sep 6, 2023 · 1 comment
Open

Description of issue is incorrect. #1

russdill opened this issue Sep 6, 2023 · 1 comment

Comments

@russdill
Copy link

russdill commented Sep 6, 2023

There's several issues with this report.

  • There is no usb_giveback_urb function, maybe the reporter meant __usb_hcd_giveback_urb or usb_hcd_giveback_urb?
  • There are no goto's or loops in either function.

usb_giveback_urb_bh does have two loops, but it's clear that both loops must always terminate. It looks like the actual issue is related to drivers/media/rc/imon.c continually resubmitting urbs making the system unusable.

@desnesn
Copy link

desnesn commented Jan 17, 2024

Hello @wanrenmi @russdill ,

Hope things are well with both of you.

For starters, I also agree with Russ' observations.

I wonder if the offending code meant by @wanrenmi on the report was a restart goto on usb_giveback_urb_bh() that was removed on v6.0-rc1 commit torvalds/linux@26c6c2f .

Furthermore, I am not a debian/ubuntu based distro user, but I also wonder if the NVR mentioned on the report (v6.3.7) is some sort of debian/ubuntu kernel NVR. I think this is so, mostly because by the report, I am guessing that @wanrenmi apparently used the usbfuzz-afl to reproduce this PoC/CVE.

The instructions on how to setup the debian image, run it with the provided qemu-system-x86_64, patch the kernel to add a custom KVM inter-VM shared memory driver (ivshmem); while also patching the kernel to save a prev_loc variable on the stack during interrupts that will be read by the ivshmem driver can be found here: https://github.com/HexHive/USBFuzz/tree/master .

Hence, in the case this test was run in a debian kernel which did not include commit 26c6c2f8a907, maybe a retest would certainly be welcome to verify if this patch fixes this CVE and in consequence makes imon stop resubmitting urbs.

Thanks in advance for any help on the matter @wanrenmi and @russdill

Best Regards,

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants