我想,每當我收到我使用的過濾器的MVC應用程序的請求(在Global.asax中的註冊它)在我的應用程序, 解決一個問題:XSS驗證對身體.NET MVC
public class XSSAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
filterContext.HttpContext.Request.InputStream.Position = 0;
string body = null;
using (var sr = new StreamReader(filterContext.HttpContext.Request.InputStream))
{
body = sr.ReadToEnd();
}
bool isBodyValid = ***********
if (!isBodyValid)
{
filterContext.Result = new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
}
}
我想知道如何驗證身體的XSS漏洞。 謝謝。
看看這個https://msdn.microsoft.com/en-us/library/system.web.security.antixss(v=vs.110).aspx –
或者這個:https:// github。 com/mganss/HtmlSanitizer –
爲什麼你還需要它? MVC具有用於防XSS請求驗證的內置機制('ValidateInput'屬性),並且默認情況下啓用。你可以看到它是如何工作的[這裏](http://referencesource.microsoft.com/#System.Web/HttpRequest.cs,ad040181e60c14c7) – holdenmcgrohen