我创建了一个基于
SQL Server 2014
C# (ASP.NET)
Javascript and jQuery
用户可以将信息存储在"我的网站"上的文本框中。为了防止注入,我可以使用特殊字符的编码/解码。用户应该能够提交如下代码,但不应执行代码。目前为止,一切都好。
<script type="text/javascript">
$(document).ready(function () {
console.log('uuuuups.....');
});
</script>
此代码将按原样存储到数据库中。(不先编码)。现在我想为我的用户提供一个 ckeditor,并赋予使用代码插件的能力。代码插件本身创建以下代码:
<pre class="brush:jscript;">
<script type="text/javascript">
$(document).ready(function () {
console.log('uuuuups....');
});
</script></pre>
我试图在SQL中替换字符,例如
replace(replace(@text, '<', '<'), '>', '>')
但是当我尝试查看时,这似乎破坏了代码。我现在的问题是,如何处理这个问题?我有两次编码吗?每一个提示都将不胜感激。
我在我的网站上使用CKEDITOR,我面临同样的问题,它是关于JavaScript注入的。 如何在不破坏视图的情况下防止它。尝试在服务器端解析"< script ...>javascript code ...</script>"
并清除它。我认为在 asp.net 和 php 中找到这个标签并不难。
祝你好运