我想添加一个文本区字段到我的网站,在那里用户可以粘贴整个脚本到它并保存它。
我担心的是用户试图向该领域注入其他代码。
这就是脚本的样子……ID和hex会发生变化,但不会有其他变化:
<script type="text/javascript">
var advertvars_vars = {
pubid: '00000000000', // publisher id
bgcolor: '804296', // background color (hex)
text: 'FFFFFF', // font-color (hex)
test: true
};
</script>
<script type="text/javascript" src="http://mysite.com/static/ad.js"></script>我的问题is...Is有没有验证用户粘贴的有效代码如上所述?
发布于 2012-03-20 19:36:47
这是在自找麻烦。无论你验证得多么彻底,总会有人想出一种方法来在文本框中注入一些不好的东西。永远不要,永远不要,eval()或者以其他方式直接运行来自用户输入的东西。只需添加一个表单,用户可以在其中键入pubid、color等的值,验证它们,然后自己组装javascript块。
发布于 2012-03-20 19:28:41
我建议只从用户那里获取ID和十六进制,在服务器上验证并将这些值设置为最终合成的脚本。
https://stackoverflow.com/questions/9785825
复制相似问题