CVE-2024-3596: PAN-OS: CHAP and PAP When Used with RADIUS Authentication Lead to Privilege Escalation (Severity: MEDIUM)

Published Feb 7, 2024
·
Updated

A fundamental design flaw within the RADIUS protocol has been proven to be exploitable, compromising the integrity in the RADIUS Access-Request process. The attack allows a malicious user to modify packets in a way that would be indistinguishable to a RADIUS client or server. To be successful, the attacker must have the ability to inject themselves between the client and server.

Other sources

Affected Vendor IETF Every vendor who implements a product supporting RADIUS

Affected Product RFC 2865

Affected Version RFC 2865

Significant ICS/OT impact? no

Reporter Nadia Heninger [nadiah.edu] University of California San Diego

Vendor contacted? yes We have reached out to the IETF. This vulnerability will affect a large number of vendors and we have not reached out to any individual vendors yet.

Description We have an efficient forgery attack against the Response Authenticator used to authenticate RADIUS server Access-Accept or Access-Reject messages. This is a protocol vulnerability against RFC 2865 and applies to RADIUS/UDP. It allows a man-in-the-middle attacker to forge a valid Access-Accept response to a client request that has been rejected by the RADIUS server, and gain access to the network resources and devices for which the RADIUS client may authorize users.

The Response Authenticator is an MD5 hash of values from the RADIUS client request and server response together with a fixed shared secret (unknown to our attacker) that is shared between the RADIUS client and server. The first byte of an Access-Accept and Access-Reject message differ. The attacker executes a so-called chosen-prefix collision attack on MD5 to change the message type in the first byte and any relevant packet attributes while ensuring that the Access-Reject and forged Access-Accept both produce the same Response Authenticator. Once an MD5 chosen-prefix hash collision has been computed, any fixed value appended to the two messages will continue to produce an MD5 hash collision. In particular, the attacker can compute a collision with known values such that when the client or server append the secret to compute the Response Authenticator, it will still produce the same hash value.

Computing an MD5 chosen-prefix hash collision requires predicting the Access-Reject message and appending as few as 80 bytes of collision block gibberish to the Access-Request sent to the server. In our attack, the attacker encapsulates this collision-block gibberish in Proxy-State attributes that are required by the RFC to be returned by the server in its response and are hence also present in the Access-Reject produced by the server. These gibberish values ensure the Response Authenticator computed from the Access-Reject and will be a correct Response Authenticator for the forged Access-Accept. Exploit To exploit this vulnerability, an attacker needs man-in-the-middle network access between the RADIUS client and server, and the client and server must be using RADIUS/UDP to communicate. The attacker also needs to be able to trigger a RADIUS client Access-Request, by for example entering a username and (incorrect) password at a login prompt on a victim device. The simplest case is when the client is using PAP authentication.

The attacker observes the Access-Request packet (in particular the random ID and Request Authenticator values included in the request) and predicts the attributes that will be returned in the Access-Reject response that is expected to be returned by the server.

The attacker then computes an MD5 chosen-prefix collision online, before the client times out its request. With our computing power, we are currently able to compute such a collision in as little as 5 to 6 minutes; we expect to continue to improve this, and a well-resourced attacker with the ability to implement this attack on FPGAs would certainly be able to improve this time to seconds.

Once the attacker has computed the MD5 collision, the attacker inserts the corresponding collision blocks into one or more Proxy-State attributes in the request, and removes any Message-Authenticator attributes from the request. (This is allowed and undetectable when using PAP authentication.) The attacker sends this modified client request to the RADIUS server.

The attacker then receives the expected Access-Reject response from the RADIUS server, and copies the Response Authenticator value from the Access-Reject to the colliding Access-Accept packet that it forges. This packet will include some Proxy-State attributes containing the collision block gibberish; we have verified that these attributes are accepted by clients.

The attacker then forwards its modified Access-Accept response to the client, which should successfully let the attacker log in.

We have attached a file poc.md showing logs and values with a sample colliding request. Impact An attacker gains access to any resource for which RADIUS is used for authentication/authorization. RADIUS/UDP appears to be commonly used within enterprise networks and organizations to provide admin access to routing infrastructure, user logins for VPNs, for Wi-Fi access via WPA-enterprise, and as a lightweight authentication mechanism for a variety of networked devices and hardware. RADIUS is supported by cloud authentication services like Duo and Okta as well. Discovery This vulnerability was discovered by Mike Milano, Sharon Goldberg, Nadia Heninger, Dan Shumow, Marc Stevens, Miro Haller, and Adam Suhl. We discovered it by reading the RFC, examining the behavior of the RADIUS client and server implementations we currently have access to (FreeRadius, Okta, a Cisco ASA 5505), and optimizing Marc Stevens's Hashclash MD5 collision software for our particular case.

Has been exploited? no

Is public? no

Disclosure Plans? yes We plan to submit a paper to the Usenix Security conference. The paper will be confidential except to the program committee. The submission deadline is February 8 and the conference takes place August 14-16. We are fine with coordinating the public disclosure deadline with vendors.

Red Hat

CERT/CC: CVE-2024-3596 RADIUS Protocol Spoofing Vulnerability

Microsoft

RADIUS Protocol under RFC 2865 is susceptible to forgery attacks by a local attacker who can modify any valid Response (Access-Accept, Access-Reject, or Access-Challenge) to any other response using a chosen-prefix collision attack against MD5 Response Authenticator signature.

Debian

This vulnerability allows an attacker performing a meddler-in-the-middle attack between Palo Alto Networks PAN-OS firewall and a RADIUS server to bypass authentication and escalate privileges to ‘superuser’ when RADIUS authentication is in use and either CHAP or PAP is selected in the RADIUS server profile.

CHAP and PAP are protocols with no Transport Layer Security (TLS), and hence vulnerable to meddler-in-the-middle attacks. Neither protocol should be used unless they are encapsulated by an encrypted tunnel. If they are in use, but are encapsulated within a TLS tunnel, they are not vulnerable to this attack.

For additional information regarding this vulnerability, please see https://blastradius.fail.

Palo Alto Networks

Affected Software

98 affected componentsFixes available
Microsoft Windows Server 2012 R2
Microsoft Windows Server 2012 R2
Microsoft Windows Server 2022, 23H2 Edition
debian/freeradius<=3.0.21+dfsg-2.2+deb11u1, <=3.2.1+dfsg-4+deb12u1
3.2.6+dfsg-3
Microsoft Windows Server 2012
Microsoft Windows Server 2012
Microsoft Windows Server 2008
Microsoft Windows Server 2008
Microsoft Windows Server 2008
Microsoft Windows Server 2008
Microsoft Windows Server 2019
Microsoft Windows Server 2019
Microsoft Windows 11=23H2
Microsoft Windows 11=22H2
Microsoft Windows 11=22H2
Microsoft Windows 11=21H2
Microsoft Windows 11=21H2
Microsoft Windows 11=23H2
Microsoft Windows Server 2022
Microsoft Windows Server 2022
Microsoft Windows Server 2016
Microsoft Windows Server 2016
FreeRADIUS freeradius<3.0.27
Broadcom Brocade Sannav
Broadcom Fabric Operating System
SonicWall SonicOS
Microsoft Windows 10=1809
Microsoft Windows 10=1809
Microsoft Windows 10=1809
Microsoft Windows 10=22H2
Microsoft Windows 10=22H2
Microsoft Windows 10=22H2
Microsoft Windows 10=1607
Microsoft Windows 10=1607
Microsoft Windows 10=21H2
Microsoft Windows 10=21H2
Microsoft Windows 10=21H2
Microsoft Windows 10
Microsoft Windows 10
Palo Alto Networks PAN-OS<11.1.3, =11.1.0, <10.2.4-h21, =10.2.0, <10.1.14, =10.1.0, <11.0.4-h5, =11.0.0, <9.1.19, =9.1.0
11.1.310.2.1010.2.9-h810.2.8-h2010.2.7-h2110.2.4-h2110.1.1410.1.12-h411.0.4-h511.0.69.1.19
Palo Alto Networks Cloud NGFW
Palo Alto Networks Prisma Access
Microsoft Windows Server 2008 R2
Microsoft Windows Server 2008 R2
F5 BIG-IP Next Central Manager>=20.2.0<=20.3.0
F5 BIG-IP (APM)>=17.1.0<=17.1.1
17.1.2417.1.1.4
F5 BIG-IP (APM)>=16.1.0<=16.1.5
16.1.64
F5 BIG-IP (APM)>=15.1.0<=15.1.10
-
F5 BIG-IP>=17.1.0<=17.1.1
17.1.2417.1.1.4
F5 BIG-IP>=16.1.0<=16.1.5
16.1.64
F5 BIG-IP>=15.1.0<=15.1.10
-
F5 BIG-IQ Centralized Management>=8.2.0<=8.4.0
5
F5 F5OS-A=1.7.0, >=1.5.1<=1.5.2
1.8.01.5.3
F5 F5OS-C>=1.6.0<=1.6.2
1.8.0
Fortinet FortiADC=.
Fortinet FortiADC>=7.4.0<=7.4.5
Fortinet FortiADC>=7.2
Fortinet FortiADC>=7.1
Fortinet FortiADC>=7.0
Fortinet FortiADC>=6.2
Fortinet FortiADC>=6.1
Fortinet FortiADC>=6.0
Fortinet FortiAnalyzer=.
Fortinet FortiAnalyzer>=7.4.0<=7.4.5
Fortinet FortiAnalyzer>=7.2.0<=7.2.9
Fortinet FortiAnalyzer>=7.0
Fortinet FortiAuthenticator>=6.6.0<=6.6.2
Fortinet FortiAuthenticator>=6.5.0<=6.5.5
Fortinet FortiAuthenticator>=6.4.0<=6.4.9
Fortinet FortiGuest=.
Fortinet FortiGuest>=1.2.0<=1.2.1
Fortinet FortiGuest>=1.1
Fortinet FortiGuest>=1.0
Fortinet FortiManager>=7.6.0<=7.6.1
Fortinet FortiManager>=7.4.0<=7.4.5
Fortinet FortiManager>=7.2.0<=7.2.9
Fortinet FortiManager>=7.0
Fortinet FortiOS=.
Fortinet FortiOS>=7.4.0<=7.4.5
Fortinet FortiOS>=7.2.0<=7.2.10
Fortinet FortiOS>=7.0
Fortinet FortiOS>=6.4
Fortinet FortiProxy>=7.4.0<=7.4.5
Fortinet FortiProxy>=7.2
Fortinet FortiProxy>=7.0
Fortinet FortiSandbox=.
Fortinet FortiSandbox>=4.4.0<=4.4.6
Fortinet FortiSandbox>=4.2
Fortinet FortiSandbox>=4.0
Fortinet FortiSwitch=.
Fortinet FortiSwitch>=7.2.0<=7.2.5
Fortinet FortiSwitch>=7.0.0<=7.0.7
Fortinet FortiSwitch>=6.4
Fortinet FortiWeb=.
Fortinet FortiWeb>=7.4.0<=7.4.4
Fortinet FortiWeb>=7.2
Fortinet FortiWeb>=7.0
IBM Edge Application Manager<=4.5

Remediation

Mitigation

Disable the use of RADIUS/UDP and RADIUS/TCP - instead RADIUS/TLS or RADIUS/DTLS should be used.

Mitigation

TBD

Information

The best way to address this issue is by using encrypted and authenticated channels that offer modern cryptographic security guarantees. Configure an alternate authentication mechanism if you are using RADIUS with a CHAP or PAP authentication protocol. PAN-OS provides the following alternate RADIUS authentication mechanisms: PEAP-MSCHAPv2 (default), PEAP with GTC, and EAP-TTLS with PAP. For more information, please see https://docs.paloaltonetworks.com/pan-os/11-1/pan-os-admin/authentication/configure-radius-authentication. In addition, instead of using RADIUS, you can configure an alternate authentication mechanism using one of the options described here: https://docs.paloaltonetworks.com/pan-os/11-1/pan-os-admin/authentication. If you are a Prisma Access customer using a RADIUS configuration with PAP or CHAP in your profile and have not applied one of the changes described above, please reach out to TAC/CS to schedule an upgrade window. PAN-OS 9.1.19, PAN-OS 10.1.14, PAN-OS 10.2.10, PAN-OS 11.0.7, PAN-OS 11.1.3, and all later PAN-OS versions add a new feature to enforce an authentication check in RADIUS. This new feature is disabled by default to match the existing behavior. To enable this feature, run the following commands: > set auth radius-require-msg-authentic yes To confirm that the setting was correctly enabled, run the following command: > show auth radius-require-msg-authentic If set correctly, the response will say "yes". This setting is persistent across reboots. No ‘commit’ is required for this to take effect. Please note that this feature requires that the RADIUS server has been updated to support the new protocol changes, as detailed in https://kb.cert.org/vuls/id/456537. If your RADIUS authentication breaks when radius-require-msg-authentic is set to yes, please work with your RADIUS server vendor for support with the RADIUS server upgrade process.

Event History

Feb 7, 2024
Data Sourced
via Red Hat·07:10 PM
DescriptionSeverityAffected Software
Jul 9, 2024
CVE Published
via Microsoft·07:00 AM
Data Sourced
via Microsoft·07:00 AM
DescriptionSeverityWeakness
CVE Published
via MITRE·12:02 PM
Data Sourced
via MITRE·12:02 PM
DescriptionWeakness
Data Sourced
via NVD·12:15 PM
DescriptionSeverityWeaknessAffected Software
News Published
via BleepingComputer·07:44 PM
News Published
via BleepingComputer·07:46 PM
Jul 10, 2024
News Published
via The Register·03:15 AM
News Published
via The Register·03:19 AM
Advisory Published
via Palo Alto Networks·04:00 PM
Known Exploited
via Palo Alto Networks·04:00 PM
Aug 13, 2024
Advisory Published
via FortiGuard·12:00 AM
Data Sourced
via FortiGuard·12:00 AM
DescriptionSeverityWeaknessAffected Software
Sep 9, 2024
Advisory Published
via F5·10:01 PM
Data Sourced
via F5·10:01 PM
DescriptionSeverityWeaknessAffected Software
Feb 5, 2025
Data Sourced
via Ubuntu·06:12 AM
RemedyDescriptionSeverityAffected Software
Mar 6, 2025
Advisory Published
via FortiGuard·03:12 PM
Apr 30, 2025
Advisory Published
via Palo Alto Networks·05:45 PM
Aug 20, 2025
Data Sourced
via IBM·12:00 AM
DescriptionAffected Software
Mar 15, 58331
Event
via Palo Alto Networks·08:35 PM

Parent advisories

This vulnerability appears in the following advisories.

Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2024-3596?

CVE-2024-3596 has been categorized as a critical vulnerability affecting RADIUS implementations.

2

How do I fix CVE-2024-3596?

To address CVE-2024-3596, it is recommended to apply the latest security patches provided by your software vendor.

3

Which products are affected by CVE-2024-3596?

CVE-2024-3596 affects multiple products including Windows Server 2019, Windows 10, Windows Server 2008 R2, and various FreeRADIUS versions.

4

Is there a known exploit for CVE-2024-3596?

Yes, CVE-2024-3596 is associated with a known exploit that allows attackers to bypass authentication in RADIUS systems.

5

When was CVE-2024-3596 reported?

CVE-2024-3596 was reported by Nadia Heninger from the University of California San Diego.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203