Cloudanix VulnDB

CVE-2015-9542

High · 7.5

CVSS

7.5

EPSS

3.5%

Published

Feb 24, 2020

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A password-handling component used by some login systems can be overwhelmed by an unusually long password, potentially shutting down access or letting an attacker take control.

Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Low
Impact
Denial Of Service
Component
Library
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Stack-based buffer overflow in pam_radius add_password function allows memcpy of an unchecked input password, enabling application crash or potential arbitrary code execution depending on runtime environment.

Why it matters to the business

Authentication services using the affected PAM module can be disrupted or compromised, leading to denial of service against login flows or possible unauthorized access on systems that rely on this library for RADIUS authentication.

How an attack unfolds

An attacker supplies an oversized crafted password to any application that loads the vulnerable pam_radius library; the missing length check permits overflow during memcpy, which may crash the process or allow control-flow hijacking under favorable memory layout conditions.

How to fix it

Upgrade pam_radius to a version containing the length check fix; where an update is unavailable, replace the module with an unaffected RADIUS PAM implementation or enforce strict input validation at the application layer before PAM invocation.

How to confirm the fix worked

Confirm the installed pam_radius_auth.c contains an explicit password length check before the memcpy call; recompile and test authentication with both normal and maximum-length passwords to verify stability.

Typical attack path

  1. Identify services or applications that invoke pam_radius for authentication
  2. Send an authentication request containing an excessively long password string
  3. Trigger the vulnerable add_password path and overflow the stack buffer
  4. Observe crash or attempt to redirect execution to attacker-controlled data

How to detect it

Review authentication logs and system crash reports for segmentation faults or aborts occurring inside pam_radius or processes that load it; correlate with unusual authentication attempts containing long password fields.

  • segmentation fault in pam_radius_auth
  • memcpy overflow pam_radius
  • pam authentication crash radius

What your security team should do

  • Inventory all systems using pam_radius and prioritize patching or replacement
  • Monitor authentication service availability and process crash logs for signs of exploitation attempts
  • Apply network-level rate limiting on authentication endpoints until remediation is complete

The record

add_password in pam_radius_auth.c in pam_radius 1.4.0 does not correctly check the length of the input password, and is vulnerable to a stack-based buffer overflow during memcpy(). An attacker could send a crafted password to an application (loading the pam_radius library) and crash it. Arbitrary code execution might be possible, depending on the application, C library, compiler, and other factors.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 libpam-radius-auth 0 1.4.0-3
Debian:12 libpam-radius-auth 0 1.4.0-3
Debian:13 libpam-radius-auth 0 1.4.0-3
Debian:8 libpam-radius-auth 0 1.3.16-4.4+deb8u1
Debian:9 libpam-radius-auth 0 1.3.16-5+deb9u1
SUSE:Enterprise Storage 5 pam_radius 0 1.3.16-239.4.1
SUSE:Enterprise Storage 6 pam_radius 0 1.4.0-3.3.1
SUSE:HPE Helion OpenStack 8 pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP1-ESPOS pam_radius 0 1.4.0-3.3.1
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS pam_radius 0 1.4.0-3.3.1
SUSE:Linux Enterprise High Performance Computing 15-ESPOS pam_radius 0 1.4.0-3.3.1
SUSE:Linux Enterprise High Performance Computing 15-LTSS pam_radius 0 1.4.0-3.3.1
SUSE:Linux Enterprise Module for Server Applications 15 SP2 pam_radius 0 1.4.0-3.3.1
SUSE:Linux Enterprise Module for Server Applications 15 SP3 pam_radius 0 1.4.0-3.3.1
SUSE:Linux Enterprise Server 12 SP1-LTSS pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise Server 12 SP2-BCL pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise Server 12 SP2-LTSS pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise Server 12 SP3-BCL pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise Server 12 SP3-LTSS pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise Server 12 SP4 pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise Server 12 SP5 pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise Server 15 SP1-BCL pam_radius 0 1.4.0-3.3.1
SUSE:Linux Enterprise Server 15 SP1-LTSS pam_radius 0 1.4.0-3.3.1
SUSE:Linux Enterprise Server 15-LTSS pam_radius 0 1.4.0-3.3.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP2 pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP3 pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP4 pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 pam_radius 0 1.3.16-239.4.1
SUSE:Linux Enterprise Server for SAP Applications 15 pam_radius 0 1.4.0-3.3.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP1 pam_radius 0 1.4.0-3.3.1
SUSE:Manager Proxy 4.0 pam_radius 0 1.4.0-3.3.1
SUSE:Manager Retail Branch Server 4.0 pam_radius 0 1.4.0-3.3.1
SUSE:Manager Server 4.0 pam_radius 0 1.4.0-3.3.1
SUSE:OpenStack Cloud 7 pam_radius 0 1.3.16-239.4.1
SUSE:OpenStack Cloud 8 pam_radius 0 1.3.16-239.4.1
SUSE:OpenStack Cloud Crowbar 8 pam_radius 0 1.3.16-239.4.1
Ubuntu:14.04:LTS libpam-radius-auth 0 1.3.17-0ubuntu4+esm1
Ubuntu:16.04:LTS libpam-radius-auth 0 1.3.17-0ubuntu4.1
Ubuntu:18.04:LTS libpam-radius-auth 0 1.3.17-0ubuntu5.18.04.1
Ubuntu:Pro:14.04:LTS libpam-radius-auth 0 1.3.17-0ubuntu4+esm1
openSUSE:Leap 15.2 pam_radius 0 1.4.0-lp152.4.3.1
openSUSE:Leap 15.3 pam_radius 0 1.4.0-3.3.1

Related vulnerabilities