1. 程式人生 > 其它 >ASP.NET Core 對XSS攻擊字串的過濾--KYSharpCore.XSSFilter

ASP.NET Core 對XSS攻擊字串的過濾--KYSharpCore.XSSFilter

在專案安全中,都會涉及到XSS攻擊,這裡對xss攻擊內容進行了過濾方法的封裝,做了一個過濾器,方便在專案中使用。

這裡的過濾是指將不合規的敏感字元相關內容直接刪除。 比如引數中帶有?text=<script>hello</script> world,過濾完,僅會將world傳遞到action中。

KYSharpCore.XSSFilter 定義的是一個過濾器,基於Netstand 2.0和MVC。

1、第一步,從包管理器引入元件KYSharpCore.XSSFilter (僅限公司內部的包管理器)

2、startup檔案中完成過濾器的注入

      public
void ConfigureServices(IServiceCollection services) { services.AddControllers(option=> { option.Filters.Add(new XSSFilter()); }); }

新增這個過濾器,就會對每個請求提交的所有字串內容進行過濾處理。

XSSFilter 提供了2個建構函式,第一個如上面程式碼,無參建構函式(常用)

另一個是帶引數的

  services.AddControllers(option=> {
                option.Filters.Add(
new XSSFilter(new List<string>() { "/nlp/get2"})); //引數是url路徑的集合,必須小寫。表示這些地址的請求將忽略過濾。 });

這樣,就簡單的完成了xss過濾的整個應用。