Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 31 Jul 2014 15:24:45 +0000 (UTC)
From:      Raphael Kubo da Costa <rakuco@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r363621 - in head/x11/kdelibs4: . files
Message-ID:  <201407311524.s6VFOjdl049002@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rakuco
Date: Thu Jul 31 15:24:44 2014
New Revision: 363621
URL: http://svnweb.freebsd.org/changeset/ports/363621
QAT: https://qat.redports.org/buildarchive/r363621/

Log:
  Add upstream patch for CVE-2014-5033.
  
  MFH:		2014Q3
  Security:	2f90556f-18c6-11e4-9cc4-5453ed2e2b49

Added:
  head/x11/kdelibs4/files/patch-CVE-2014-5033   (contents, props changed)
Modified:
  head/x11/kdelibs4/Makefile

Modified: head/x11/kdelibs4/Makefile
==============================================================================
--- head/x11/kdelibs4/Makefile	Thu Jul 31 15:23:47 2014	(r363620)
+++ head/x11/kdelibs4/Makefile	Thu Jul 31 15:24:44 2014	(r363621)
@@ -3,7 +3,7 @@
 
 PORTNAME=	kdelibs
 PORTVERSION=	${KDE4_VERSION}
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	x11 kde
 MASTER_SITES=	KDE/${KDE4_BRANCH}/${PORTVERSION}/src
 DIST_SUBDIR=	KDE/${PORTVERSION}

Added: head/x11/kdelibs4/files/patch-CVE-2014-5033
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/x11/kdelibs4/files/patch-CVE-2014-5033	Thu Jul 31 15:24:44 2014	(r363621)
@@ -0,0 +1,48 @@
+commit e4e7b53b71e2659adaf52691d4accc3594203b23
+Author: Martin T. H. Sandsmark <martin.sandsmark@kde.org>
+Date:   Mon Jul 21 22:52:40 2014 +0200
+
+    Use dbus system bus name instead of PID for authentication.
+    
+    Using the PID for authentication is prone to a PID reuse
+    race condition, and a security issue.
+    
+    REVIEW: 119323
+
+diff --git a/kdecore/auth/backends/polkit-1/Polkit1Backend.cpp b/kdecore/auth/backends/polkit-1/Polkit1Backend.cpp
+index cd7f6f3..732d2cb 100644
+--- kdecore/auth/backends/polkit-1/Polkit1Backend.cpp
++++ kdecore/auth/backends/polkit-1/Polkit1Backend.cpp
+@@ -144,7 +144,7 @@ void Polkit1Backend::setupAction(const QString &action)
+ 
+ Action::AuthStatus Polkit1Backend::actionStatus(const QString &action)
+ {
+-    PolkitQt1::UnixProcessSubject subject(QCoreApplication::applicationPid());
++    PolkitQt1::SystemBusNameSubject subject(QString::fromUtf8(callerID()));
+     PolkitQt1::Authority::Result r = PolkitQt1::Authority::instance()->checkAuthorizationSync(action, subject,
+                                                                                               PolkitQt1::Authority::None);
+     switch (r) {
+@@ -160,21 +160,12 @@ Action::AuthStatus Polkit1Backend::actionStatus(const QString &action)
+ 
+ QByteArray Polkit1Backend::callerID() const
+ {
+-    QByteArray a;
+-    QDataStream s(&a, QIODevice::WriteOnly);
+-    s << QCoreApplication::applicationPid();
+-
+-    return a;
++    return QDBusConnection::systemBus().baseService().toUtf8();
+ }
+ 
+ bool Polkit1Backend::isCallerAuthorized(const QString &action, QByteArray callerID)
+ {
+-    QDataStream s(&callerID, QIODevice::ReadOnly);
+-    qint64 pid;
+-
+-    s >> pid;
+-
+-    PolkitQt1::UnixProcessSubject subject(pid);
++    PolkitQt1::SystemBusNameSubject subject(QString::fromUtf8(callerID));
+     PolkitQt1::Authority *authority = PolkitQt1::Authority::instance();
+ 
+     PolkitResultEventLoop e;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201407311524.s6VFOjdl049002>