aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGareth Rees <gareth@mysociety.org>2014-10-01 13:00:01 +0100
committerLouise Crow <louise.crow@gmail.com>2014-12-22 10:24:55 +0000
commit052c242d74b1aff44b5d08ed664201f17792e5a4 (patch)
treee57709af2502bf46d2719484464600a176dae1a3
parentfe96b9bce85267ee4082d53a177d914c19714206 (diff)
Fix unvalidated redirects
-rw-r--r--app/controllers/track_controller.rb2
-rw-r--r--app/controllers/user_controller.rb4
2 files changed, 3 insertions, 3 deletions
diff --git a/app/controllers/track_controller.rb b/app/controllers/track_controller.rb
index 83700a55b..144f4d55a 100644
--- a/app/controllers/track_controller.rb
+++ b/app/controllers/track_controller.rb
@@ -214,7 +214,7 @@ class TrackController < ApplicationController
track_thing.destroy
end
- redirect_to params[:r]
+ redirect_to URI.parse(params[:r]).path
end
diff --git a/app/controllers/user_controller.rb b/app/controllers/user_controller.rb
index baeaab18a..43eb99c58 100644
--- a/app/controllers/user_controller.rb
+++ b/app/controllers/user_controller.rb
@@ -271,7 +271,7 @@ class UserController < ApplicationController
def signout
self._do_signout
if params[:r]
- redirect_to params[:r]
+ redirect_to URI.parse(params[:r]).path
else
redirect_to :controller => "general", :action => "frontpage"
end
@@ -611,7 +611,7 @@ class UserController < ApplicationController
end
@user.receive_email_alerts = params[:receive_email_alerts]
@user.save!
- redirect_to params[:came_from]
+ redirect_to URI.parse(params[:came_from]).path
end
private