summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorReed Loden <reed@reedloden.com>2011-08-04 21:19:33 +0200
committerReed Loden <reed@reedloden.com>2011-08-04 21:19:33 +0200
commitb9c01561118c42514055b218f81cb82fa76dbb05 (patch)
tree72ba53c7e8cf1322915d8fe39558e43a53b0033d
parent1e41eccc970e905694b3e66acda5f886055a9564 (diff)
downloadbugzilla-b9c01561118c42514055b218f81cb82fa76dbb05.tar.gz
bugzilla-b9c01561118c42514055b218f81cb82fa76dbb05.tar.xz
Bug 657158 - (CVE-2011-2381) [SECURITY] Request email headers for attachment containing newline are corrupt
[r=LpSolit a=LpSolit]
-rw-r--r--Bugzilla/Template.pm3
-rw-r--r--template/en/default/request/email.txt.tmpl2
2 files changed, 4 insertions, 1 deletions
diff --git a/Bugzilla/Template.pm b/Bugzilla/Template.pm
index 64c18c64c..527b704b2 100644
--- a/Bugzilla/Template.pm
+++ b/Bugzilla/Template.pm
@@ -695,6 +695,9 @@ sub create {
# as prefix. In addition it replaces a ' ' by a '_'.
css_class_quote => \&Bugzilla::Util::css_class_quote ,
+ # Removes control characters and trims extra whitespace.
+ clean_text => \&Bugzilla::Util::clean_text ,
+
quoteUrls => [ sub {
my ($context, $bug, $comment) = @_;
return sub {
diff --git a/template/en/default/request/email.txt.tmpl b/template/en/default/request/email.txt.tmpl
index 72da9ae73..fb957484b 100644
--- a/template/en/default/request/email.txt.tmpl
+++ b/template/en/default/request/email.txt.tmpl
@@ -50,7 +50,7 @@ From: [% Param('mailfrom') %]
To: [% to %]
Subject: [% flagtype_name %] [%+ subject_status %]: [[% terms.Bug %] [%+ bug.bug_id %]] [% bug.short_desc %]
[%- IF attachment %] :
- [Attachment [% attachment.id %]] [% attachment.description %][% END %]
+ [Attachment [% attachment.id %]] [% attachment.description FILTER clean_text %][% END %]
Date: [% date %]
X-Bugzilla-Type: request
[%+ threadingmarker %]