diff --git a/src/Umbraco.Web/HttpRequestExtensions.cs b/src/Umbraco.Web/HttpRequestExtensions.cs
index 5a71348c2a..e700f96571 100644
--- a/src/Umbraco.Web/HttpRequestExtensions.cs
+++ b/src/Umbraco.Web/HttpRequestExtensions.cs
@@ -17,13 +17,10 @@ namespace Umbraco.Web
///
///
///
- public static string GetCleanedItem(this HttpRequest request, string key)
+ public static string CleanForXss(this HttpRequest request, string key)
{
var item = request.GetItemAsString(key);
- //remove any html
- item = item.StripHtml();
- //strip out any potential chars involved with XSS
- return item.ExceptChars(new HashSet
("(){}[];:%<>/\\|&'\"".ToCharArray()));
+ return item.CleanForXss();
}
///
diff --git a/src/Umbraco.Web/umbraco.presentation/umbraco/dashboard/FeedProxy.aspx.cs b/src/Umbraco.Web/umbraco.presentation/umbraco/dashboard/FeedProxy.aspx.cs
index 8317f8ab5d..a938935d2b 100644
--- a/src/Umbraco.Web/umbraco.presentation/umbraco/dashboard/FeedProxy.aspx.cs
+++ b/src/Umbraco.Web/umbraco.presentation/umbraco/dashboard/FeedProxy.aspx.cs
@@ -1,4 +1,5 @@
using Umbraco.Core.Logging;
+using Umbraco.Web;
namespace dashboardUtilities
{
@@ -32,10 +33,10 @@ namespace dashboardUtilities
{
var response = client.DownloadString(requestUri);
- if (!string.IsNullOrEmpty(response))
+ if (string.IsNullOrEmpty(response) == false)
{
Response.Clear();
- Response.ContentType = Request.QueryString["type"] ?? MediaTypeNames.Text.Xml;
+ Response.ContentType = Request.CleanForXss("type") ?? MediaTypeNames.Text.Xml;
Response.Write(response);
}
}
diff --git a/src/Umbraco.Web/umbraco.presentation/umbraco/developer/Macros/assemblyBrowser.aspx.cs b/src/Umbraco.Web/umbraco.presentation/umbraco/developer/Macros/assemblyBrowser.aspx.cs
index de7dbd62f7..b58dbc3836 100644
--- a/src/Umbraco.Web/umbraco.presentation/umbraco/developer/Macros/assemblyBrowser.aspx.cs
+++ b/src/Umbraco.Web/umbraco.presentation/umbraco/developer/Macros/assemblyBrowser.aspx.cs
@@ -14,6 +14,7 @@ using System.Collections.Specialized;
using Umbraco.Core;
using Umbraco.Core.IO;
using Umbraco.Core.Models;
+using Umbraco.Web;
using Umbraco.Core.PropertyEditors;
using umbraco.BusinessLogic;
using System.Collections.Generic;
@@ -43,7 +44,7 @@ namespace umbraco.developer
if (Request.QueryString["type"] == null)
{
isUserControl = true;
- var fileName = Request.QueryString["fileName"];
+ var fileName = Request.CleanForXss("fileName");
if (!fileName.StartsWith("~"))
{
if (fileName.StartsWith("/"))
diff --git a/src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/create.aspx.cs b/src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/create.aspx.cs
index 761c9cbe2c..a3da4846b3 100644
--- a/src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/create.aspx.cs
+++ b/src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/create.aspx.cs
@@ -38,7 +38,7 @@ namespace umbraco.dialogs
{
if (_app == null)
{
- _app = Request.GetCleanedItem("app");
+ _app = Request.CleanForXss("app");
//validate the app
if (BusinessLogic.Application.getAll().Any(x => x.alias.InvariantEquals(_app)) == false)
{