Hi David, And attached the last one also for unstable. For unstable it might be good to also include Moritz' patch to enable hardening flags additionally (it will need a further patch on top of it though).
Are you working on the issues; or do you need help? Regards, Salvatore
diff -Nru graphviz-2.26.3/debian/changelog graphviz-2.26.3/debian/changelog --- graphviz-2.26.3/debian/changelog 2013-12-23 18:55:30.000000000 +0100 +++ graphviz-2.26.3/debian/changelog 2014-01-11 15:41:52.000000000 +0100 @@ -1,3 +1,15 @@ +graphviz (2.26.3-16.1) unstable; urgency=medium + + * Non-maintainer upload. + * Add CVE-2014-1235.patch patch. + CVE-2014-1235: buffer overflow vulnerability in yyerror() introduced by + original fix for CVE-2014-0978. (Closes: #734745) + * Add CVE-2014-1236.patch patch. + CVE-2014-1236: buffer overflow from user input (the regexp in chkNum + would accept arbitrary long digit list) (Closes: #734745) + + -- Salvatore Bonaccorso <car...@debian.org> Sat, 11 Jan 2014 15:41:31 +0100 + graphviz (2.26.3-16) unstable; urgency=medium * Add patch cherry-picked from upstream's github - fixes buffer diff -Nru graphviz-2.26.3/debian/patches/CVE-2014-1235.patch graphviz-2.26.3/debian/patches/CVE-2014-1235.patch --- graphviz-2.26.3/debian/patches/CVE-2014-1235.patch 1970-01-01 01:00:00.000000000 +0100 +++ graphviz-2.26.3/debian/patches/CVE-2014-1235.patch 2014-01-11 15:41:52.000000000 +0100 @@ -0,0 +1,22 @@ +Description: Fix buffer overflow in yyerror() + CVE-2014-1235: buffer overflow vulnerability in yyerror() introduced by + original fix for CVE-2014-0978 +Origin: upstream, https://github.com/ellson/graphviz/commit/d266bb2b4154d11c27252b56d86963aef4434750 +Bug-Debian: http://bugs.debian.org/734745 +Bug-RedHat: https://bugzilla.redhat.com/show_bug.cgi?id=1050871 +Forwarded: not-needed +Author: Salvatore Bonaccorso <car...@debian.org> +Last-Update: 2014-01-11 + +--- a/lib/cgraph/scan.l ++++ b/lib/cgraph/scan.l +@@ -203,7 +203,8 @@ + agxbput (&xb, InputFile); + agxbput (&xb, ": "); + } +- sprintf(buf," %s in line %d near '", str,line_num); ++ agxbput (&xb, str); ++ sprintf(buf," in line %d near '", line_num); + agxbput (&xb, buf); + agxbput (&xb, yytext); + agxbput (&xb,"'\n"); diff -Nru graphviz-2.26.3/debian/patches/CVE-2014-1236.patch graphviz-2.26.3/debian/patches/CVE-2014-1236.patch --- graphviz-2.26.3/debian/patches/CVE-2014-1236.patch 1970-01-01 01:00:00.000000000 +0100 +++ graphviz-2.26.3/debian/patches/CVE-2014-1236.patch 2014-01-11 15:41:52.000000000 +0100 @@ -0,0 +1,54 @@ +Description: Fix possible buffer overflow problem in chkNum of scanner + CVE-2014-1236: buffer overflow from user input (the regexp in chkNum + would accept arbitrary long digit list) +Origin: backport, https://github.com/ellson/graphviz/commit/1d1bdec6318746f6f19f245db589eddc887ae8ff +Bug-Debian: http://bugs.debian.org/734745 +Bug-RedHat: https://bugzilla.redhat.com/show_bug.cgi?id=1050872 +Forwarded: not-needed +Author: Salvatore Bonaccorso <car...@debian.org> +Last-Update: 2014-01-11 + +--- a/lib/cgraph/scan.l ++++ b/lib/cgraph/scan.l +@@ -131,15 +131,32 @@ + * and report this to the user. + */ + static int chkNum(void) { +- unsigned char c = (unsigned char)yytext[yyleng-1]; /* last character */ +- if (!isdigit(c) && (c != '.')) { /* c is letter */ +- char buf[BUFSIZ]; +- sprintf(buf,"syntax error - badly formed number '%s' in line %d\n",yytext,line_num); +- strcat (buf, "splits into two name tokens"); +- agerr(AGWARN,buf); +- return 1; +- } +- else return 0; ++ unsigned char c = (unsigned char)yytext[yyleng-1]; /* last character */ ++ if (!isdigit(c) && (c != '.')) { /* c is letter */ ++ unsigned char xbuf[BUFSIZ]; ++ char buf[BUFSIZ]; ++ agxbuf xb; ++ char* fname; ++ ++ if (InputFile) ++ fname = InputFile; ++ else ++ fname = "input"; ++ ++ agxbinit(&xb, BUFSIZ, xbuf); ++ ++ agxbput(&xb,"syntax ambiguity - badly delimited number '"); ++ agxbput(&xb,yytext); ++ sprintf(buf,"' in line %d of ", line_num); ++ agxbput(&xb,buf); ++ agxbput(&xb,fname); ++ agxbput(&xb, " splits into two tokens\n"); ++ agerr(AGWARN,agxbuse(&xb)); ++ ++ agxbfree(&xb); ++ return 1; ++ } ++ else return 0; + } + + /* The LETTER class below consists of ascii letters, underscore, all non-ascii diff -Nru graphviz-2.26.3/debian/patches/series graphviz-2.26.3/debian/patches/series --- graphviz-2.26.3/debian/patches/series 2013-12-23 18:54:30.000000000 +0100 +++ graphviz-2.26.3/debian/patches/series 2014-01-11 15:41:52.000000000 +0100 @@ -17,3 +17,5 @@ kfreebsd-hang.patch use-system-ltdl.patch buffer_overflow.patch +CVE-2014-1235.patch +CVE-2014-1236.patch