我目前正在开发一个经典的asp项目,并且正在使用CKEditor插件来获取用户输入。我想在我的项目中尝试防止XSS攻击。删除脚本标记很简单,棘手的部分是处理html标记内的属性而不完全删除标记 我找到了很多基于javascript的解决方案,但出于安全原因,我希望我的代码在服务器端。
我尝试了一个简单的替换方法:
CleanedHTML = Replace(HTML,"onmouseover","[removed]",1,-1,1)
但如果它不在标签之间,这也将删除该单词。
我已经通过OWASP网站,我也有一个功能,删除我找到here的所有标签,但我不能使用它,因为我想允许用户输入链接,图像等。有没有安全的方法来完成这个?