Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Apr 2020 19:47:27 +0000 (UTC)
From:      Josh Paetzel <jpaetzel@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r533163 - head/security/vuxml
Message-ID:  <202004271947.03RJlRuE021579@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jpaetzel
Date: Mon Apr 27 19:47:26 2020
New Revision: 533163
URL: https://svnweb.freebsd.org/changeset/ports/533163

Log:
  Add entry for py-yaml vulnerability

Modified:
  head/security/vuxml/vuln.xml

Modified: head/security/vuxml/vuln.xml
==============================================================================
--- head/security/vuxml/vuln.xml	Mon Apr 27 18:45:02 2020	(r533162)
+++ head/security/vuxml/vuln.xml	Mon Apr 27 19:47:26 2020	(r533163)
@@ -58,6 +58,52 @@ Notes:
   * Do not forget port variants (linux-f10-libxml2, libxml2, etc.)
 -->
 <vuxml xmlns="http://www.vuxml.org/apps/vuxml-1">;
+  <vuln vid="aae8fecf-888e-11ea-9714-08002718de91">
+    <topic>py-yaml -- FullLoader (still) exploitable for arbitrary command execution</topic>
+    <affects>
+      <package>
+	<name>py27-yaml</name>
+	<name>py37-yaml</name>
+	<range><lt>5.3.1</lt></range>
+      </package>
+    </affects>
+    <description>
+      <body xmlns="http://www.w3.org/1999/xhtml">;
+	<p>Riccardo Schirone (https://github.com/ret2libc) reports:</p>
+	<blockquote cite="https://bugzilla.redhat.com/show_bug.cgi?id=1807367">;
+	  <p>In FullLoader python/object/new constructor, implemented by
+	    construct_python_object_apply, has support for setting the
+	    state of a deserialized instance through the set_python_instance_state
+	    method.  After setting the state, some operations are performed
+	    on the instance to complete its initialization, however it is
+	    possible for an attacker to set the instance' state in such a way
+	    that arbitrary code is executed by the FullLoader.</p>
+	  <p>This patch tries to block such attacks in FullLoader by
+	    preventing set_python_instance_state from setting arbitrar
+	    properties. It implements a blacklist that includes extend method
+	    (called by construct_python_object_apply) and all special
+	    methods (e.g. __set__, __setitem__, etc.).</p>
+	  <p>Users who need special attributes being set in the state of a
+	    deserialized object can still do it through the UnsafeLoader, which
+	    however should not be used on untrusted input. Additionally, they can
+	    subclass FullLoader and redefine state_blacklist_regexp to include the
+	    additional attributes they need, passing the subclassed loader to
+	    yaml.load.</p>
+	</blockquote>
+      </body>
+    </description>
+    <references>
+      <url>https://bugzilla.redhat.com/show_bug.cgi?id=1807367</url>;
+      <url>https://github.com/yaml/pyyaml/pull/386</url>;
+      <cvename>CVE-2020-1747</cvename>
+      <freebsdpr>ports/245937</freebsdpr>
+    </references>
+    <dates>
+      <discovery>2020-03-02</discovery>
+      <entry>2020-04-27</entry>
+    </dates>
+  </vuln>
+
   <vuln vid="4c52ec3c-86f3-11ea-b5b4-641c67a117d8">
     <topic>py-bleach -- regular expression denial-of-service</topic>
     <affects>



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