A security flaw was found in the way phpCAS managed proxying of services. In the detault configuration an phpCAS protected application allowed to proxy any other CAS service with proxy authorization and valid user credentials in the same SSO realm to other phpCAS applications. The application, CAS services has been proxied to, could use this flaw to in unauthorized way to use these CAS services. Upstream bug report: [1] https://issues.jasig.org/browse/PHPCAS-69 CVE request and assignment: [2] http://www.openwall.com/lists/oss-security/2012/03/04/7 [3] http://seclists.org/oss-sec/2012/q1/551 Upstream patch (against trunk): [4] https://github.com/Jasig/phpCAS/commit/717009a6529d7c7ad968544a5fff4a40a21137a6
This issue affects the versions of the php-pear-CAS package, as shipped with Fedora release of 15 and 16. Please schedule an update. -- This issue affects the versions of the php-pear-CAS package, as shipped with Fedora EPEL 5 and Fedora EPEL 6. Please schedule an update.
Created php-pear-CAS tracking bugs for this issue Affects: fedora-all [bug 801349] Affects: epel-all [bug 801350]
For version of php-pear-CAS package, as shipped in Fedora EPEL 5 (php-pear-CAS-1.1.3-1.el5) the code is slightly different, but parts from particular upstream patch [4] seems to be applicable to this version too. For example the source/CAS/Client.php change: @@ -764,40 +767,15 @@ public function __construct( } else { //normal mode: get ticket and remove it from CGI parameters for developpers $ticket = (isset($_GET['ticket']) ? $_GET['ticket'] : null); - switch ($this->getServerVersion()) { can be found in BUILD/php-pear-CAS-1.1.3/CAS-1.1.3/CAS/client.php CASClient constructor code: 571 * @return a newly created CASClient object 572 * 573 * @public 574 */ 575 function CASClient( 576 $server_version, [..] 659 } else { 660 //normal mode: get ticket and remove it from CGI parameters for developpers 661 $ticket = (isset($_GET['ticket']) ? $_GET['ticket'] : null); 662 switch ($this->getServerVersion()) { 663 case CAS_VERSION_1_0: // check for a Service Ticket etc. Though it might be easier to rebase Fedora EPEL 5 version to recent upstream one, than backport relevant patch.
Also, the versions of the glpi package, as shipped with Fedora release of 15, 16, Fedora EPEL 5 and EPEL 6 use system version of php-pear-CAS library: * Thu May 20 2010 Remi Collet <Fedora> - 0.72.4-3.svn11497 - use system phpCAS instead of bundled copy - minor bug fixes from SVN and thus are not affected by this issue once the deficiency in php-pear-CAS package has got addressed.
The versions of the moodle package, as shipped with Fedora release of 15, 16, Fedora EPEL 5 and EPEL 6 are also using system version of the php-pear-CAS package: EPEL-5 case: * Fri Aug 20 2010 Jon Ciesla <limb> - 1.8.13-2 - Switch to system php-pear-CAS, BZ 577467, 620772. F-16 case: * Thu Aug 19 2010 Jon Ciesla <limb> - 1.9.9-2 - Switch to system php-pear-CAS, BZ 577467, 620772. - Patching htmlpurifier, BZ 624754. and as such are not vulnerable to this issue, once this flaw has been corrected in php-pear-CAS package.
php-pear-CAS-1.3.0-2.fc15 has been pushed to the Fedora 15 stable repository. If problems still persist, please make note of it in this bug report.
php-pear-CAS-1.3.0-2.fc16 has been pushed to the Fedora 16 stable repository. If problems still persist, please make note of it in this bug report.
php-pear-CAS-1.3.0-2.el5 has been pushed to the Fedora EPEL 5 stable repository. If problems still persist, please make note of it in this bug report.
php-pear-CAS-1.3.0-2.el6 has been pushed to the Fedora EPEL 6 stable repository. If problems still persist, please make note of it in this bug report.
php-pear-CAS-1.3.0-2.fc17 has been pushed to the Fedora 17 stable repository. If problems still persist, please make note of it in this bug report.