|
Message-ID: <52F0F944.6050600@redhat.com> Date: Tue, 04 Feb 2014 15:29:24 +0100 From: Florian Weimer <fweimer@...hat.com> To: Henri Salo <henri@...v.fi>, oss-security@...ts.openwall.com CC: Matthew Daley <mattd@...fuzz.com> Subject: Re: CVE request: python-gnupg before 0.3.5 shell injection On 02/04/2014 02:50 PM, Henri Salo wrote: > Upstream has made new version for testing. Please do comment if you have time. I > will also test that later and maybe provide more unit tests. > > https://code.google.com/p/python-gnupg/issues/detail?id=98#c4 I can't create a Google account right now. This: if not s: result = "''" elif len(s) >= 2 and (s[0], s[-1]) == ("'", "'"): result = '"%s"' % s.replace('"', r'\"').replace("'", r"'\''") elif not UNSAFE.search(s): result = s else: result = "'%s'" % s.replace("'", r"'\''") return result should be: return "'" + s.replace("'"', r"'\''") + "'" If I write "wrap them in ''", I mean single quotes, not double quotes. Those behave differently in shell. If upstream really wants to strip the outer '', it can use this instead: if s[:1] == "'" and s[-1:] == "'": s = s[1:-1] return "'" + s.replace("'"', r"'\''") + "'" Again, this may or may not be safe in some Far-Eastern locales. -- Florian Weimer / Red Hat Product Security Team
Powered by blists - more mailing lists
Please check out the Open Source Software Security Wiki, which is counterpart to this mailing list.
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.