aboutsummaryrefslogtreecommitdiff
path: root/poll.rb
diff options
context:
space:
mode:
authorBenjamin Kellermann <Benjamin.Kellermann@gmx.de>2013-08-19 08:25:33 +0200
committerBenjamin Kellermann <Benjamin.Kellermann@gmx.de>2013-08-19 08:25:33 +0200
commitfe5ff8340292958c247cf7e3f1ad8330c88de33a (patch)
tree25d6183684d0f63eebb5a702467f03e0f2a64823 /poll.rb
parent6cd3ca6c265e2d55be6d0906cdae8d178e9e222d (diff)
Bugfix XSS (thanks to Sipke Mellema)
Diffstat (limited to 'poll.rb')
-rw-r--r--poll.rb15
1 files changed, 8 insertions, 7 deletions
diff --git a/poll.rb b/poll.rb
index 269fcb5..8a9be6a 100644
--- a/poll.rb
+++ b/poll.rb
@@ -178,7 +178,7 @@ class Poll
end
def invite_to_html
- edituser = $cgi["edituser"] unless $cgi.include?("deleteuser")
+ edituser = CGI.escapeHTML($cgi["edituser"]) unless $cgi.include?("deleteuser")
invitestr = _("Invite")
namestr = _("Name")
ret = <<HEAD
@@ -248,24 +248,25 @@ END
end
def deleteuser_to_html
+ edituser = CGI.escapeHTML($cgi["edituser"])
ret = "<tr id='add_participant'>\n"
- ret += "<td colspan='2' class='name'>#{$cgi["edituser"]}</td>"
+ ret += "<td colspan='2' class='name'>#{edituser}</td>"
ret += "<td colspan='#{@head.col_size}'>"
- ret += _("Do you really want to delete user %{user}?") % {:user => $cgi["edituser"]}
- ret += "<input type='hidden' name='delete_participant_confirm' value='#{$cgi["edituser"]}' />"
+ ret += _("Do you really want to delete user %{user}?") % {:user => edituser}
+ ret += "<input type='hidden' name='delete_participant_confirm' value='#{edituser}' />"
ret += "</td>"
- ret += save_input($cgi["edituser"], "", _("Confirm"))
+ ret += save_input(edituser, "", _("Confirm"))
ret += "</tr>"
ret
end
def edituser_to_html
- edituser = $cgi["edituser"]
+ edituser = CGI.escapeHTML($cgi["edituser"])
checked = {}
if @data.include?(edituser)
@head.columns.each{|k| checked[k] = @data[edituser][k]}
else
- edituser = $cgi.cookies["username"][0] unless @data.include?($cgi.cookies["username"][0])
+ edituser = CGI.escapeHTML($cgi.cookies["username"][0]) unless @data.include?($cgi.cookies["username"][0])
@head.columns.each{|k| checked[k] = NOVAL}
end