[英]ValidateInput Cross Site Scripting Prevention not working Asp.net MVC
[英]How to handle cross site scripting in ASP.NET Core
如何處理跨站點腳本 ASP.NetCore MVC。 在之前的框架中,我們有 [AllowHTML] 和 [ValidateInput] 之類的注釋。但是 .Net Core 中似乎缺少這些屬性。 因此,請分享 .Net Core 中可用選項的詳細信息
首先,您應該閱讀以下內容: https : //docs.microsoft.com/zh-cn/aspnet/core/security/cross-site-scripting?view=aspnetcore-2.2
如果您將Razor與變量一起使用,則在大多數情況下應該是安全的,因為“ MVC中使用的Razor引擎會自動對所有源自變量的輸出進行編碼”
如果要繞過Razor變量,例如,使用@Html.Raw(someData)
類的東西,則需要確保對輸出為原始(未編碼)html的所有內容進行清理。 您可以使用像這樣的消毒劑(我使用的): https : //github.com/mganss/HtmlSanitizer
這些是基本的防護措施,可以阻止大多數XSS嘗試。
您可以使用antiforgerytoken屬性
[ValidateAntiForgeryToken]
以防止跨站點腳本攻擊。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.