FreeRADIUS Lets Remote Users Bypass OCSP Certificate Validation Using Expired Certificates
SecurityTracker Alert ID: 1025833|
SecurityTracker URL: http://securitytracker.com/id/1025833
(Links to External Site)
Date: Jul 25 2011
Host/resource access via network|
Vendor Confirmed: Yes |
Version(s): 2.1.11; possibly other versions|
A vulnerability was reported in FreeRADIUS. A remote user can authenticate with a revoked certificate.|
A remote user can supply a revoked certificate from a trusted certificate authority (CA) to authenticate against the target FreeRADIUS server (provided the user has the corresponding private key associated with the certificate). Systems configued to use EAP-TLS with OCSP certificate validation are affected.
The vulnerability resides in the ocsp_check() function in 'rlm_eap_tls.c', where the status of the certificate is not checked.
DFN-CERT Services GmbH reported this vulnerability.
A remote user can authenticate with a revoked certificate.|
No solution was available at the time of this entry.|
The report indicates that, as a workaround, you can disable OCSP support and use CRL checking instead.
Vendor URL: freeradius.org/ (Links to External Site)
Linux (Any), UNIX (Any)|
Source Message Contents
Date: Mon, 25 Jul 2011 17:36:27 +0200|
Subject: [DSB-2011-01] Security Advisory FreeRADIUS 2.1.11
-----BEGIN PGP SIGNED MESSAGE-----
DFN-CERT Services GmbH - Security Advisory
* Advisory: DSB-2011-01
* Version: 1.0
* Released on: 2011-07-22
* Updated on: 2011-07-22
* Product: FreeRADIUS 2.1.11 (2011-06-29)
FreeRADIUS is a RADIUS server software which supports many
authentication protocols. One of those protocols is EAP-TLS
used within 802.1X. In EAP-TLS X.509 client certificates are
used to authenticate remote users/clients.
FreeRADIUS supports several methods for checking the revocation
status of X.509 certificates. Recently support for revocation
status checking with the Online Certificate Status Protocol (OCSP)
was added to FreeRADIUS.
During a test of the OCSP support in FreeRADIUS, a security
vulnerability has been found in the way the FreeRADIUS code parses
the replies from an OCSP responder.
This allows a remote attacker to use a revoked certificate from an
otherwise trusted certification authority (CA) to successfully
authenticate against the FreeRADIUS server if it is configured
to use EAP-TLS with OCSP certificate validation.
OCSP is not enabled in the default configuration of FreeRADIUS.
Until now, there is no official patch for the vulnerability.
Therefore, we strongly advise you to disable OCSP support in the
FreeRADIUS configuration until an official patch by the packet
maintainer is available. Instead, the use of certification revocation
list (CRL) checking which is implemented by FreeRADIUS is recommended.
In the file rlm_eap_tls.c, the ocsp_check() function performs a basic
verification of the value that is returned by the OCSP service
OCSP_basic_verify(), but it does not verify the status of the
certificate itself. Thus, if an attacker has access to a revoked
certificate and its matching private key, the attacker is able to get
authenticated against the FreeRADIUS server.
This allows the attacker to gain access to all network resources that
are accessible due to the FreeRADIUS authentication, e.g. Internet access.
To avoid the issue, the status of the certificate has to be checked with
the OCSP_resp_find_status() function by comparing the returned status
value against 'V_OCSP_CERTSTATUS_GOOD', and by checking the freshness of
the OCSP response with OCSP_check_validity().
This advisory and further updates of it will be published at:
New releases, or patches, for the software can be downloaded from the
official FreeRADIUS web site:
We created a basic patch for this issue which is not publicly available
because of possible side effects and a missing test environment. However,
we are willing to send our patch to all Linux/BSD vendors as a basis for
their own patches.
Any questions regarding this advisory, or the patch itself,
can be sent to firstname.lastname@example.org.
Please note that we will not make our patch publicly available.
2011-07-01 Notified the FreeRADIUS project
2011-07-22 New version with a full description of the issue
and the CVE identifier
-----BEGIN PGP SIGNATURE-----
-----END PGP SIGNATURE-----