From owner-svn-ports-head@FreeBSD.ORG Thu Jul 31 15:24:45 2014 Return-Path: Delivered-To: svn-ports-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A76F1AC6; Thu, 31 Jul 2014 15:24:45 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 885F22D22; Thu, 31 Jul 2014 15:24:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id s6VFOjTc049004; Thu, 31 Jul 2014 15:24:45 GMT (envelope-from rakuco@svn.freebsd.org) Received: (from rakuco@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id s6VFOjdl049002; Thu, 31 Jul 2014 15:24:45 GMT (envelope-from rakuco@svn.freebsd.org) Message-Id: <201407311524.s6VFOjdl049002@svn.freebsd.org> From: Raphael Kubo da Costa Date: Thu, 31 Jul 2014 15:24:45 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r363621 - in head/x11/kdelibs4: . files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 31 Jul 2014 15:24:45 -0000 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 +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;