У меня есть система комментирования, где люди могут оставлять комментарии вместе со своим сайтом. Поскольку по умолчанию рельсы теперь избегают всего, я действительно ничего не делаю, чтобы избежать XSS, и это работает - почти. По какой-то причине URL не экранирован.
Для отображения имени пользователя у меня есть простой помощник:
def display_name(name, site)
if !site.blank?
return link_to(name, site)
else
return name
end
end
Но если вы поместите что-то вроде javascript: alert (1) в поле сайта, оно будет вставлено прямо в страницу - есть идеи, как избежать этого?