避免C#winforms中的XSS漏洞

时间:2013-11-16 11:46:37

标签: c# winforms security xss

我的问题非常直截了当,我想知道如何限制用户在我的C#winform的文本框控件中输入<script>标签或任何其他潜在内容。

我知道如何在Web应用程序中执行此操作,但我不知道在C#winforms中执行此操作。

让我解释一下我的场景,我有一个桌面应用程序,用户从文本框输入一些评论,我将存储在我的数据库中,同一个用户可以在网站上看到他的评论。因此,如果用户在桌面应用程序的评论中输入window.open("http://www.foo.com"),那么当我在网站上检索此类评论时,它会自动重定向到该网站,我不希望这种情况发生。

任何关于如何开始的想法都会非常有用。

2 个答案:

答案 0 :(得分:2)

您在数据库中按原样写入数据,并在显示时正确转义。在Windows窗体上,您只需在HTML页面上显示数据,您就可以对输入中存在的HTML实体进行编码,例如通过HttpUtility.HtmlEncode()

答案 1 :(得分:-1)

如果您想阻止用户在文本框中输入特定字母(即因为您要将输入的数据存储在XML文件中),您必须自己编写代码。为文本框的Validating事件实现处理程序,并检查文本是否包含任何非法字符或字符串。