CVE-2026-48985
Received Received - Intake
pam_usb NULL Dereference in loginctl Parsing

Publication date: 2026-06-18

Last updated on: 2026-06-18

Assigner: GitHub, Inc.

Description
pam_usb provides hardware authentication for Linux using ordinary removable media. In versions 0.9.1 and below, pusb_is_loginctl_local() can cause a NULL dereference crash when parsing loginctl output. The function calls popen() and reads the result; if the Remote field is only a newline, fgets() succeeds but strtok_r(buf, "\n", &saveptr) returns NULL. A subsequent strcmp(is_remote, "no") then dereferences NULL, causing undefined behavior (typically SIGSEGV) and crashing the PAM module. This can crash the authenticating process (e.g., sudo, login) and, depending on PAM stack configuration, deny access for all users of the affected service. This issue has been fixed in version 0.9.2.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-06-18
Last Modified
2026-06-18
Generated
2026-06-19
AI Q&A
2026-06-18
EPSS Evaluated
N/A
NVD
EUVD
Affected Vendors & Products
Showing 2 associated CPEs
Vendor Product Version / Range
mcdope pam_usb to 0.9.2 (exc)
mcdope pam_usb 0.9.2
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-476 The product dereferences a pointer that it expects to be valid but is NULL.
Attack-Flow Graph
AI Quick Actions
Instant insights powered by AI
Compliance Impact

The vulnerability causes a denial of service by crashing the PAM module during authentication, which can deny access to all users of the affected service. This impacts availability but does not directly affect confidentiality or integrity of data.

Since the issue primarily affects availability and does not involve unauthorized data access or leakage, its impact on compliance with standards like GDPR or HIPAA is indirect and depends on the criticality of the affected service's availability.

Organizations relying on pam_usb for authentication should consider that denial of service affecting user access could potentially violate availability requirements in these regulations if it disrupts critical systems.

Executive Summary

The vulnerability CVE-2026-48985 is a NULL dereference crash in the pam_usb software, specifically in the function pusb_is_loginctl_local() in versions 0.9.1 and below.

This function calls the loginctl command and parses its output. If the Remote field in the output is only a newline, the parsing function strtok_r returns NULL. A subsequent call to strcmp with this NULL pointer causes undefined behavior, typically resulting in a segmentation fault (SIGSEGV) that crashes the PAM module.

This crash affects authentication processes such as sudo or login, potentially causing denial of access for all users of the affected service depending on the PAM stack configuration.

Impact Analysis

This vulnerability can cause the PAM module to crash during authentication attempts, leading to denial of service.

  • Crashing the authenticating process (e.g., sudo, login).
  • Depending on PAM stack configuration, it can deny access for all users of the affected service.

The attack requires local access with low privileges and no user interaction, but the impact is primarily on availability.

Detection Guidance

This vulnerability manifests as a crash (typically a segmentation fault) in the PAM module during authentication processes such as sudo or login.

Detection can involve monitoring authentication logs for unexpected crashes or denial of access related to PAM modules.

Since the issue is triggered by the parsing of loginctl output, you can manually check the Remote field returned by the command:

  • Run the command: loginctl show-session $(loginctl | grep $(whoami) | awk '{print $1}') -p Remote

If the Remote field is only a newline or empty, it indicates the condition that can trigger the NULL dereference.

Additionally, monitoring system logs (e.g., /var/log/auth.log or journalctl) for segmentation faults or PAM-related errors during authentication attempts can help detect exploitation attempts.

Mitigation Strategies

The primary mitigation is to upgrade pam_usb to version 0.9.2 or later, where this vulnerability has been fixed.

Until the upgrade can be applied, consider restricting local access to trusted users only, as the attack requires local low-privilege access.

Review and monitor PAM stack configurations to understand the impact and possibly adjust authentication methods to reduce reliance on the vulnerable pam_usb module.

Apply general security best practices such as limiting sudo access and monitoring authentication failures to reduce risk.

Chat Assistant
Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-48985. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70
EPSS Chart