]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 621090: [SECURITY] Adding saved searches lacks CSRF protection
authorDavid Lawrence <dkl@mozilla.com>
Mon, 24 Jan 2011 16:58:48 +0000 (17:58 +0100)
committerFrédéric Buclin <LpSolit@gmail.com>
Mon, 24 Jan 2011 16:58:48 +0000 (17:58 +0100)
r=mkanat a=justdave

buglist.cgi
template/en/default/global/per-bug-queries.html.tmpl
template/en/default/list/list.html.tmpl

index 1b00148f0248142a5138e5ef099c7493a04e23c8..788f28c956eb4362f799a4b0333c426a86eb0f14 100755 (executable)
@@ -504,6 +504,8 @@ elsif (($cmdtype eq "doit") && defined $cgi->param('remtype')) {
         my $query_name = $cgi->param('newqueryname');
         my $new_query = $cgi->param('newquery');
         my $query_type = QUERY_LIST;
+        my $token = $cgi->param('token');
+        check_hash_token($token, ['savedsearch']);
         # If list_of_bugs is true, we are adding/removing individual bugs
         # to a saved search. We get the existing list of bug IDs (if any)
         # and add/remove the passed ones.
index 3c62e35f547cf5a9ec981446e811c2941ee41bd5..a7c073ba1ff12ca77d439929ec2d008c9d9ed9a8 100644 (file)
@@ -63,6 +63,7 @@
         <input type="hidden" name="cmdtype" value="doit">
         <input type="hidden" name="remtype" value="asnamed">
         <input type="hidden" name="list_of_bugs" value="1">
+        <input type="hidden" name="token" value="[% issue_hash_token(['savedsearch']) FILTER html %]">
         <select id="lob_action" name="action" onchange="update_text();">
           <option value="add">Add</option>
           [% IF lists_of_bugs.size %]
index aebfb1d495d910c290d2f98a41a3cc3ccb58e93e..8d87b5c7077d0901abfbdad1768ec03769a5f362 100644 (file)
                  value="[% urlquerypart FILTER html %][% "&order=$qorder" FILTER html IF order %]">
           <input type="hidden" name="cmdtype" value="doit">
           <input type="hidden" name="remtype" value="asnamed">
+          <input type="hidden" name="token" value="[% issue_hash_token(['savedsearch']) FILTER html %]">
           <input type="text" id="save_newqueryname" name="newqueryname" size="20"
                  value="[% defaultsavename FILTER html %]"> 
         </form>