diff --git a/app/views/dashboard/actions/new_request.html.erb b/app/views/dashboard/actions/new_request.html.erb
index 1b6fd3710..ba6486ce5 100644
--- a/app/views/dashboard/actions/new_request.html.erb
+++ b/app/views/dashboard/actions/new_request.html.erb
@@ -2,7 +2,7 @@
- <%== dashboard_action.description %>
+ <%= WYSIWYGSanitizer.new.sanitize(dashboard_action.description) %>
<%= render "dashboard/form" %>
diff --git a/spec/features/xss_spec.rb b/spec/features/xss_spec.rb
index 136f0e36a..71447c976 100644
--- a/spec/features/xss_spec.rb
+++ b/spec/features/xss_spec.rb
@@ -60,6 +60,16 @@ describe "Cross-Site Scripting protection", :js do
expect(page.text).not_to be_empty
end
+ scenario "new request for proposal action in dashboard" do
+ proposal = create(:proposal)
+ action = create(:dashboard_action, description: attack_code)
+
+ login_as(proposal.author)
+ visit new_request_proposal_dashboard_action_path(proposal, action)
+
+ expect(page.text).not_to be_empty
+ end
+
scenario "poll description setting in dashboard" do
Setting["proposals.poll_description"] = attack_code
proposal = create(:proposal)