]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 754673 - CSRF vulnerability in query.cgi allows possible unauthorized use of...
authorReed Loden <reed@reedloden.com>
Tue, 29 May 2012 14:52:31 +0000 (07:52 -0700)
committerReed Loden <reed@reedloden.com>
Tue, 29 May 2012 14:52:31 +0000 (07:52 -0700)
[r=LpSolit a=LpSolit]

query.cgi
template/en/default/search/knob.html.tmpl

index b3b9aa443e0f3b5b257a69d403bbf42dbe09fffe..bfb79e52c97cd00b86b4878c283036b5fe648f67 100755 (executable)
--- a/query.cgi
+++ b/query.cgi
@@ -39,6 +39,7 @@ use Bugzilla::Product;
 use Bugzilla::Keyword;
 use Bugzilla::Field;
 use Bugzilla::Install::Util qw(vers_cmp);
+use Bugzilla::Token;
 
 my $cgi = Bugzilla->cgi;
 my $dbh = Bugzilla->dbh;
@@ -51,6 +52,8 @@ my $userid = $user->id;
 
 if ($cgi->param('nukedefaultquery')) {
     if ($userid) {
+        my $token = $cgi->param('token');
+        check_hash_token($token, ['nukedefaultquery']);
         $dbh->do("DELETE FROM namedqueries" .
                  " WHERE userid = ? AND name = ?", 
                  undef, ($userid, DEFAULT_QUERY_NAME));
index 17ff63a1045bb116654e007eed4ca32be8d96ba9..a50f6bd32626bc5b6a4c41f155a226647ae42c5a 100644 (file)
@@ -79,7 +79,8 @@
         
 [% IF userdefaultquery %]
   <p>
-    <a href="query.cgi?nukedefaultquery=1">
+    <a href="query.cgi?nukedefaultquery=1&amp;token=
+       [%- issue_hash_token(['nukedefaultquery']) FILTER uri %]">
       Set my default search back to the system default</a>.
   </p>
 [% END %]