From 09317bf98d6100f3242150c6bd683c58d5e9793e Mon Sep 17 00:00:00 2001 From: Frédéric Buclin Date: Sat, 15 Feb 2014 00:27:26 +0100 Subject: Bug 966676: The 'sudo' cookie should not be accessible from JavaScript r=dkl a=justdave --- relogin.cgi | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'relogin.cgi') diff --git a/relogin.cgi b/relogin.cgi index e2effd105..52944a811 100755 --- a/relogin.cgi +++ b/relogin.cgi @@ -137,11 +137,18 @@ elsif ($action eq 'begin-sudo') { # For future sessions, store the unique ID of the target user my $token = Bugzilla::Token::_create_token($user->id, 'sudo', $target_user->id); + + my %args; + if (Bugzilla->params->{ssl_redirect}) { + $args{'-secure'} = 1; + } + $cgi->send_cookie('-name' => 'sudo', '-expires' => $time_string, - '-value' => $token - ); - + '-value' => $token, + '-httponly' => 1, + %args); + # For the present, change the values of Bugzilla::user & Bugzilla::sudoer Bugzilla->sudo_request($target_user, $user); -- cgit v1.2.3-24-g4f1b