Bug 16175 - freeradius new security issue CVE-2015-4680
Summary: freeradius new security issue CVE-2015-4680
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: Security (show other bugs)
Version: 5
Hardware: i586 Linux
Priority: Normal normal
Target Milestone: ---
Assignee: QA Team
QA Contact: Sec team
URL: http://lwn.net/Vulnerabilities/652803/
Whiteboard: MGA4TOO has_procedure advisory MGA4-3...
Keywords: validated_update
Depends on:
Blocks: 16176
  Show dependency treegraph
 
Reported: 2015-06-22 14:44 CEST by David Walser
Modified: 2015-07-29 20:23 CEST (History)
7 users (show)

See Also:
Source RPM: freeradius-2.2.3-6.mga5.src.rpm
CVE:
Status comment:


Attachments

Description David Walser 2015-06-22 14:44:30 CEST
An advisory has been issued today (June 22):
http://www.ocert.org/advisories/ocert-2015-008.html

It sounds like the issue will be fixed in an upcoming 2.2.8 release.

Mageia 4 and Mageia 5 are also affected.

Reproducible: 

Steps to Reproduce:
David Walser 2015-06-22 14:44:37 CEST

Whiteboard: (none) => MGA5TOO, MGA4TOO

David Walser 2015-06-23 00:34:38 CEST

Blocks: (none) => 16176

Comment 1 David Walser 2015-07-09 23:03:51 CEST
Updated packages uploaded for Mageia 3 and Mageia 4.

Testing procedure is in Bug 8726.

Advisory:
========================

Updated freeradius packages fix security vulnerability:

The FreeRADIUS server relies on OpenSSL to perform certificate validation,
including Certificate Revocation List (CRL) checks. The FreeRADIUS usage of
OpenSSL, in CRL application, limits the checks to leaf certificates, therefore
not detecting revocation of intermediate CA certificates. An unexpired client
certificate, issued by an intermediate CA with a revoked certificate, is
therefore accepted by FreeRADIUS (CVE-2015-4680).

The freeradius package has been updated to version 2.2.8, which fixes this
issue, as well as the failure to run on Mageia 5 due to an OpenSSL issue.

References:
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-4680
http://freeradius.org/security.html
http://freeradius.org/press/index.html#2.2.8
http://www.ocert.org/advisories/ocert-2015-008.html
https://bugs.mageia.org/show_bug.cgi?id=16176
https://bugs.mageia.org/show_bug.cgi?id=16175
========================

Updated packages in core/updates_testing:
========================
freeradius-2.2.8-1.mga4
freeradius-krb5-2.2.8-1.mga4
freeradius-ldap-2.2.8-1.mga4
freeradius-postgresql-2.2.8-1.mga4
freeradius-mysql-2.2.8-1.mga4
freeradius-unixODBC-2.2.8-1.mga4
freeradius-sqlite-2.2.8-1.mga4
freeradius-yubikey-2.2.8-1.mga4
libfreeradius1-2.2.8-1.mga4
libfreeradius-devel-2.2.8-1.mga4
freeradius-web-2.2.8-1.mga4
freeradius-2.2.8-1.mga5
freeradius-krb5-2.2.8-1.mga5
freeradius-ldap-2.2.8-1.mga5
freeradius-postgresql-2.2.8-1.mga5
freeradius-mysql-2.2.8-1.mga5
freeradius-unixODBC-2.2.8-1.mga5
freeradius-sqlite-2.2.8-1.mga5
freeradius-yubikey-2.2.8-1.mga5
libfreeradius1-2.2.8-1.mga5
libfreeradius-devel-2.2.8-1.mga5
freeradius-web-2.2.8-1.mga5

from SRPMS:
freeradius-2.2.8-1.mga4.src.rpm
freeradius-2.2.8-1.mga5.src.rpm

CC: (none) => oe
Version: Cauldron => 5
Assignee: oe => qa-bugs
Whiteboard: MGA5TOO, MGA4TOO => MGA4TOO has_procedure

Comment 2 Luca Olivetti 2015-07-10 09:44:16 CEST
"as well as the failure to run on Mageia 5 due to an OpenSSL issue."

I just reported on bug #16176 that this package doesn't fix that issue.

CC: (none) => luca

Comment 3 claire robinson 2015-07-10 12:04:05 CEST
Openssl was pushed to updates this morning Luca. Please retest with the updated packages.
Comment 4 David Walser 2015-07-10 12:46:05 CEST
Indeed, it's expected to not work if you haven't installed the openssl update (which it was built against).  If you look at the code, as long as the openssl you're using is equal to or newer than the one it was built against, it will allow it.  This is appropriate.
Comment 5 Luca Olivetti 2015-07-10 15:36:30 CEST
So, are you saying that the updated version of openssl is not binary compatible with the one it replaces?
If that's not the case it shouldn't matter if freeradius is updated before or after openssl.
I don't know which one urpmi would update first (since there's no strict dependency in freeradius), but if it updates freeradius before openssl, it would leave radiusd not running (and with no message on the command line that the restart failed).
Comment 6 Luca Olivetti 2015-07-10 15:38:42 CEST
BTW, I can confirm that the new radiusd works once openssl has been updated, but I'm still worried that it could fail again in the future.
Comment 7 David Walser 2015-07-10 15:44:41 CEST
freeradius requires libopenssl1.0.0, so RPM would update libopenssl1.0.0 first if both updates were being installed together (assuming no circular dependencies in the transaction).  As far as why FreeRADIUS does the version checks (and a comment in the code says that OpenSSH uses the same approach that they do now), you'd have to ask them.  The bottom line is that we wouldn't ever release a build of freeradius that's built against a newer openssl than what's current in the distro, so in practice this will never be an issue.
Dave Hodgins 2015-07-17 15:33:05 CEST

CC: (none) => davidwhodgins
Whiteboard: MGA4TOO has_procedure => MGA4TOO has_procedure advisory

Comment 8 Samuel Verschelde 2015-07-22 17:53:26 CEST
Luca, what arch have you tested on?
Comment 9 Samuel Verschelde 2015-07-22 18:16:48 CEST
In Mageia 4 64 bits, I just installed freeradius and lib64freeradius1 from updates testing.

Service start fails, and there's nothing that I could find in logs but maybe someone will have an idea where to look.

[root@localhost ~]# service radiusd start
Redirecting to /bin/systemctl start radiusd.service
Job for radiusd.service failed. See 'systemctl status radiusd.service' and 'journalctl -xn' for details.
[root@localhost ~]# systemctl status radiusd.service
radiusd.service - FreeRADIUS high performance RADIUS server.
   Loaded: loaded (/usr/lib/systemd/system/radiusd.service; enabled)
   Active: failed (Result: exit-code) since mer. 2015-07-22 18:16:06 CEST; 7s ago
  Process: 28234 ExecStartPre=/usr/sbin/radiusd -C (code=exited, status=1/FAILURE)

juil. 22 18:16:06 localhost.localdomain systemd[1]: radiusd.service: control process exited, code=exited status=1
juil. 22 18:16:06 localhost.localdomain systemd[1]: Failed to start FreeRADIUS high performance RADIUS server..
juil. 22 18:16:06 localhost.localdomain systemd[1]: Unit radiusd.service entered failed state.
Samuel Verschelde 2015-07-22 18:16:56 CEST

Whiteboard: MGA4TOO has_procedure advisory => MGA4TOO has_procedure advisory feedback

Comment 10 Samuel Verschelde 2015-07-22 18:17:42 CEST
But maybe I should look at the documentation and need to alter some configuration.

Whiteboard: MGA4TOO has_procedure advisory feedback => MGA4TOO has_procedure advisory

Comment 11 Luca Olivetti 2015-07-22 20:22:12 CEST
When I first installed it in mga4 it didn't start either with the provided configuration files  (IIRC it referenced a missing mysql or postgresql or somesuchsql module, sorry if I cannot be more specific).
I didn't give too much thought at the time because I don't think there can be a suitable radius default configuration.
With my configuration the packages in comment 1 work.
Comment 12 Luca Olivetti 2015-07-22 20:24:17 CEST
BTW, to check the configuration you can use (as root)

/usr/sbin/radiusd -CX

(but see the caveats in the manpage)
Comment 13 Herman Viaene 2015-07-24 13:32:58 CEST
MGA4-32 on Acer D620 Xfce
No apparent installation issues
Radius service does not start
Giving command "radiusd -CX" at CLI gives at the end:
WARNING: No such configuration item certdir
/etc/raddb/eap.conf[304]: Reference "${certdir}/bootstrap" not found
Errors reading or parsing /etc/raddb/radiusd.conf
Something missing?

CC: (none) => herman.viaene

Comment 14 Herman Viaene 2015-07-24 13:38:17 CEST
Followed procedure as per bug 8726 Comment 2 and Comment 3 : tests succeed.

Whiteboard: MGA4TOO has_procedure advisory => MGA4TOO has_procedure advisory MGA4-32-OK

Comment 15 Shlomi Fish 2015-07-27 16:32:06 CEST
I am going to test on MGA5-64. Stay tuned.

CC: (none) => shlomif

Comment 16 Shlomi Fish 2015-07-27 17:28:52 CEST
(In reply to Shlomi Fish from comment #15)
> I am going to test on MGA5-64. Stay tuned.

sorry, but I'm not getting along too well with testing this - you people can test it instead. I'll try to test some other bugs.
Comment 17 Stefan Puch 2015-07-28 09:41:11 CEST
After upgrading from MGA4-32 to MGA5-32 yesterday I run into that problem, too. I installed

freeradius-2.2.8-1.mga5
libfreeradius1-2.2.8-1.mga5

from core/updates_testing and can confirm that radiusd starts and works again as expected with the updated version on MGA5-32.
Thanks for fixing!

CC: (none) => s.puch

Comment 18 Samuel Verschelde 2015-07-28 10:19:10 CEST
Thanks for testing.

Whiteboard: MGA4TOO has_procedure advisory MGA4-32-OK => MGA4TOO has_procedure advisory MGA4-32-OK MGA5-32-OK

Dave Hodgins 2015-07-28 15:52:54 CEST

Keywords: (none) => validated_update
CC: (none) => sysadmin-bugs

Comment 19 Mageia Robot 2015-07-28 23:03:08 CEST
An update for this issue has been pushed to Mageia Updates repository.

http://advisories.mageia.org/MGASA-2015-0291.html

Status: NEW => RESOLVED
Resolution: (none) => FIXED

David Walser 2015-07-29 20:23:43 CEST

URL: (none) => http://lwn.net/Vulnerabilities/652803/


Note You need to log in before you can comment on or make changes to this bug.