Description
pam_usb provides hardware authentication for Linux using ordinary removable media. Prior to 0.9.1, src/evdev.c silently ignores EACCES errors when opening /dev/input/event* nodes, causing pusb_has_virtual_input_device() to return 0 (no virtual devices found) even when every open() call failed due to insufficient permissions. The caller in src/local.c cannot distinguish a clean absence of virtual devices from a permission-denied scan, and acts on the false negative by continuing authentication without denying. This vulnerability is fixed in 0.9.1.
Problem types
CWE-390: Detection of Error Condition Without Action
CWE-693: Protection Mechanism Failure
Product status
References
github.com/...am_usb/security/advisories/GHSA-pvrg-chgw-x42c
github.com/mcdope/pam_usb/issues/351
github.com/mcdope/pam_usb/issues/55