AntiXSS Library
Microsoft AntiXSS Library является хорошим решением для ASP.Net.Он использует подход белого (против черного) списка и, кажется, регулярно обновляется Microsoft.
Последние загрузки (на момент публикации): http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=28589
AntiXSS поддерживает как текст, так и HTML-стильПроверка.Проверка HTML разрешает содержимое, которое может быть нежелательным (например, изображения в другом домене).
Требуется, чтобы вы вводили каждое из ваших входных значений через библиотеку, что приведет к дополнительному (хотя и простому) коду.1012 *
using System;
using Microsoft.Security.Application;
public class AppText
{
public static string GetSafeHtml( string inputText )
{
return Sanitizer.GetSafeHtmlFragment( inputText );
}
public static string GetSafeText( string inputText )
{
return Microsoft.Security.Application.Encoder.HtmlEncode( inputText );
}
}
Преимущества
Ручная проверка каждого ввода гарантирует, что вы не предполагаете, что безопасность просто «обрабатывается» проверкой запроса ASP.Net.Это также дает вам возможность отключить проверку запроса, если это необходимо (существуют допустимые случаи для сомнительных символов в запросе).Поскольку вы явно проверяете ввод с помощью библиотеки AntiXSS, вы можете разрешить символы / разметку в запросе.
Общая информация XSS
https://www.owasp.org/index.php/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet