diff options
author | Ming Liu <ming.liu@windriver.com> | 2013-05-15 05:56:50 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-05-30 20:55:07 +0100 |
commit | 7dd4d0178e2b057f76cd2b0b6fe8402f8c1ab23d (patch) | |
tree | 8b4b83fc46a453f916e88301d4c66101212d3545 /meta | |
parent | d9d4fdc769dfe6bf9838f5c5f3189a80f0e3cf90 (diff) | |
download | openembedded-core-7dd4d0178e2b057f76cd2b0b6fe8402f8c1ab23d.tar.gz openembedded-core-7dd4d0178e2b057f76cd2b0b6fe8402f8c1ab23d.tar.bz2 openembedded-core-7dd4d0178e2b057f76cd2b0b6fe8402f8c1ab23d.zip |
grep: fix for CVE-2012-5667
Multiple integer overflows in GNU Grep before 2.11 might allow
context-dependent attackers to execute arbitrary code via vectors
involving a long input line that triggers a heap-based buffer overflow.
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-5667
Signed-off-by: Ming Liu <ming.liu@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-extended/grep/grep-2.5.1a/grep-CVE-2012-5667.patch | 32 | ||||
-rw-r--r-- | meta/recipes-extended/grep/grep_2.5.1a.bb | 3 |
2 files changed, 34 insertions, 1 deletions
diff --git a/meta/recipes-extended/grep/grep-2.5.1a/grep-CVE-2012-5667.patch b/meta/recipes-extended/grep/grep-2.5.1a/grep-CVE-2012-5667.patch new file mode 100644 index 0000000000..0631f35f16 --- /dev/null +++ b/meta/recipes-extended/grep/grep-2.5.1a/grep-CVE-2012-5667.patch @@ -0,0 +1,32 @@ +The patch to fix CVE-2012-5667 +Reference: https://bugzilla.redhat.com/attachment.cgi?id=686605&action=diff + +Multiple integer overflows in GNU Grep before 2.11 might allow +context-dependent attackers to execute arbitrary code via vectors +involving a long input line that triggers a heap-based buffer overflow. + +http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-5667 + +Upstream-status: Inappropriate [other] +This version of GNU Grep has been abandoned upstream and they are no longer +accepting patches. This is not a backport. + +Signed-off-by Ming Liu <ming.liu@windriver.com> +--- + grep.c | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +--- a/src/grep.c 2013-05-15 13:39:33.359191769 +0800 ++++ a/src/grep.c 2013-05-15 13:50:22.609191882 +0800 +@@ -306,6 +306,11 @@ fillbuf (size_t save, struct stats const + int cc = 1; + char *readbuf; + size_t readsize; ++ const size_t max_save = INT_MAX / 2; ++ ++ /* Limit the amount of saved data to INT_MAX to fix CVE-2012-5667 */ ++ if (save > max_save) ++ error (2, 0, _("line too long")); + + /* Offset from start of buffer to start of old stuff + that we want to save. */ diff --git a/meta/recipes-extended/grep/grep_2.5.1a.bb b/meta/recipes-extended/grep/grep_2.5.1a.bb index d6386edb3f..247c837004 100644 --- a/meta/recipes-extended/grep/grep_2.5.1a.bb +++ b/meta/recipes-extended/grep/grep_2.5.1a.bb @@ -13,7 +13,8 @@ SRC_URI = "${GNU_MIRROR}/grep/grep-${PV}.tar.bz2 \ file://gettext.patch \ file://fix64-int-to-pointer.patch \ file://Makevars \ - " + file://grep-CVE-2012-5667.patch \ + " SRC_URI[md5sum] = "52202fe462770fa6be1bb667bd6cf30c" SRC_URI[sha256sum] = "38c8a2bb9223d1fb1b10bdd607cf44830afc92fd451ac4cd07619bf92bdd3132" |