CVE-2026-48980 pam_usb: getenv() used in PAM context allows environment variable injection into local-check logic

Medium 6.3 Published Updated

Local attackers can bypass hardware authentication in pam_usb by manipulating environment variables, potentially gaining unauthorized access or privileges.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
None listed

What is CVE-2026-48980?

CVE-2026-48980 is a medium-severity authentication bypass vulnerability in mcdope pam_usb, published on 18 Jun 2026. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

pam_usb provides hardware authentication for Linux using removable media. In versions prior to 0.9.2, getenv() environment variables XRDP_SESSION, DISPLAY and TMUX allow environment variable injection into local-check logic. These environment variables influence whether a current session is local or remote, and a PAM module that runs in the context of setuid binaries (sudo, su), getenv() returns attacker-controlled values whenever the process environment has been manipulated by a local user. This issue has been fixed in version 0.9.2.

Weakness: CWE-807, CWE-454

Which versions are affected by CVE-2026-48980?

How do I fix CVE-2026-48980?

No fix has been published for CVE-2026-48980 yet. Limit exposure of the affected software until one is available.

Upgrade, and rotate credentials and sessions that may have been exposed. More about Authentication bypass.

Is CVE-2026-48980 being exploited?

There is no known exploitation of CVE-2026-48980 in the wild and no public exploit code.

Sources

Also known as GHSA-qr83-mf3h-fvqr.

Is CVE-2026-48980 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free