Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Nov 2016 10:50:13 +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: r427417 - in head/archivers/p7zip: . files
Message-ID:  <201611301050.uAUAoDv0082566@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rakuco
Date: Wed Nov 30 10:50:13 2016
New Revision: 427417
URL: https://svnweb.freebsd.org/changeset/ports/427417

Log:
  Import upstream patch to fix CVE-2016-9296
  
  Null pointer dereference can cause 7z to crash.
  
  PR:		214940
  Reported by:	Sevan Janiyan <venture37@geeklan.co.uk>
  MFH:		2016Q4
  Security:	48e83187-b6e9-11e6-b6cf-5453ed2e2b49
  Security:	CVE-2016-9296

Added:
  head/archivers/p7zip/files/patch-CPP_7zip_Archive_7z_7zIn.cpp   (contents, props changed)
Modified:
  head/archivers/p7zip/Makefile

Modified: head/archivers/p7zip/Makefile
==============================================================================
--- head/archivers/p7zip/Makefile	Wed Nov 30 10:48:56 2016	(r427416)
+++ head/archivers/p7zip/Makefile	Wed Nov 30 10:50:13 2016	(r427417)
@@ -3,7 +3,7 @@
 
 PORTNAME=	p7zip
 PORTVERSION=	15.14
-PORTREVISION?=	1
+PORTREVISION?=	2
 CATEGORIES=	archivers
 MASTER_SITES=	SF
 DISTNAME=	${PORTNAME}_${DISTVERSION}_src_all

Added: head/archivers/p7zip/files/patch-CPP_7zip_Archive_7z_7zIn.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/archivers/p7zip/files/patch-CPP_7zip_Archive_7z_7zIn.cpp	Wed Nov 30 10:50:13 2016	(r427417)
@@ -0,0 +1,16 @@
+Fix for CVE-2016-9296.
+
+Obtained from: https://sourceforge.net/p/p7zip/bugs/185/
+Security: 48e83187-b6e9-11e6-b6cf-5453ed2e2b49
+--- CPP/7zip/Archive/7z/7zIn.cpp.orig	2016-11-30 09:35:06 UTC
++++ CPP/7zip/Archive/7z/7zIn.cpp
+@@ -1091,7 +1091,8 @@ HRESULT CInArchive::ReadAndDecodePackedS
+       if (CrcCalc(data, unpackSize) != folders.FolderCRCs.Vals[i])
+         ThrowIncorrect();
+   }
+-  HeadersSize += folders.PackPositions[folders.NumPackStreams];
++  if (folders.PackPositions)
++    HeadersSize += folders.PackPositions[folders.NumPackStreams];
+   return S_OK;
+ }
+ 



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