Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过修饰属性来清理属性,以避免XSS攻击_C#_Asp.net Core_Security_Xss_Websecurity - Fatal编程技术网

C# 通过修饰属性来清理属性,以避免XSS攻击

C# 通过修饰属性来清理属性,以避免XSS攻击,c#,asp.net-core,security,xss,websecurity,C#,Asp.net Core,Security,Xss,Websecurity,目前,我正在接受web API中的模型。我正在考虑装饰我的易受xss攻击的财产。这将删除所有脚本标记等。 在这方面有没有图书馆可以帮助我 public class ClassToSanitze { public int Id {get;set;} [Sanitize] public string Name {get;set;} } 没有什么能实现你想要实现的目标。阅读 我认为以下是最重要的指导方针 验证是限制XSS攻击的有用工具。例如,仅包含字符0-9的数字字符串不

目前,我正在接受web API中的模型。我正在考虑装饰我的易受xss攻击的财产。这将删除所有脚本标记等。 在这方面有没有图书馆可以帮助我

public class ClassToSanitze
{

    public int Id {get;set;}
    [Sanitize]
    public string Name {get;set;}

}

没有什么能实现你想要实现的目标。阅读

我认为以下是最重要的指导方针

验证是限制XSS攻击的有用工具。例如,仅包含字符0-9的数字字符串不会触发XSS攻击。在用户输入中接受HTML时,验证变得更加复杂。解析HTML输入即使不是不可能,也是很困难的。Markdown加上剥离嵌入HTML的解析器,是接受丰富输入的更安全的选择。永远不要仅仅依靠验证。在输出之前,始终对不受信任的输入进行编码,无论执行了什么验证或清理

这里也有一些很好的答案:

基本上,唯一要做的就是对字符串进行Html编码