]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 1221518: (CVE-2015-8508) [SECURITY] XSS in dependency graphs when displaying...
authorFrédéric Buclin <LpSolit@gmail.com>
Tue, 22 Dec 2015 18:00:48 +0000 (19:00 +0100)
committerFrédéric Buclin <LpSolit@gmail.com>
Tue, 22 Dec 2015 18:00:48 +0000 (19:00 +0100)
r/a=dkl

showdependencygraph.cgi

index a461187fa5e9bbf881b38e2b4855ce0d91c26fee..9e060c6da9f209ed69d1cbfb6c471bf49a677e75 100755 (executable)
@@ -73,7 +73,7 @@ sub CreateImagemap {
             # Pick up bugid from the mapdata label field. Getting the title from
             # bugtitle hash instead of mapdata allows us to get the summary even
             # when showsummary is off, and also gives us status and resolution.
-            my $bugtitle = html_quote(clean_text($bugtitles{$bugid}));
+            my $bugtitle = $bugtitles{$bugid};
             $map .= qq{<area alt="bug $bugid" name="bug$bugid" shape="rect" } .
                     qq{title="$bugtitle" href="$url" } .
                     qq{coords="$leftx,$topy,$rightx,$bottomy">\n};
@@ -188,13 +188,16 @@ foreach my $k (keys(%seen)) {
     # Retrieve bug information from the database
     my ($stat, $resolution, $summary) = $dbh->selectrow_array($sth, undef, $k);
 
+    $vars->{'short_desc'} = $summary if ($k eq $cgi->param('id'));
+
     # Resolution and summary are shown only if user can see the bug
-    if (!Bugzilla->user->can_see_bug($k)) {
+    if (Bugzilla->user->can_see_bug($k)) {
+        $summary = html_quote(clean_text($summary));
+    }
+    else {
         $resolution = $summary = '';
     }
 
-    $vars->{'short_desc'} = $summary if ($k eq $cgi->param('id'));
-
     my @params;
 
     if ($summary ne "" && $cgi->param('showsummary')) {