我们希望允许人们有时在我们的论坛帖子中嵌入一些小部件。但是,由于担心安全感,我们一直在剥离脚本标签,尽管我们并不真正知道这些问题是什么。
那里有数以万计的有用小部件,我们不介意人们将它们添加到帖子中,但我们并不想破坏我们的系统,或者允许使用特洛伊木马等。
这些天人们怎么想?我们禁止脚本标签的做法是否被视为最佳做法?
谢谢,
道格
答案 0 :(得分:1)
有多危险?非常。让人们嵌入< script>帖子中的标签是cross-site scripting attacks的公开邀请。
答案 1 :(得分:0)
通常不允许您的用户将自己的(不受信任的)JavaScript逻辑嵌入到您的页面中,特别是如果您要将这些信息存储在数据库中并允许其他人访问它。将您的站点打开到用户嵌入的<script>
标记是XSS攻击的常见来源,也称为跨站点脚本攻击。您应该查看此cheatsheet以获取更多信息。
跨站点脚本攻击会形成恶意JS代码,该代码由第三方嵌入到您的页面中,目的是劫持您网站的某些部分。例如,假设用户嵌入了一个脚本,该脚本会在您的网站上创建看似小部件的内容(假设它是天气小部件),但当用户点击特定日期的天气时,他们会被重定向到恶意网站。
如果您认为自己只是必须允许用户使用此功能,请考虑从受信任方(即Wordpress,Google,Twitter)创建小部件的白名单并允许用户可从您列入白名单的小部件中进行选择。这使您可以对生产环境进行必要的控制,同时为您的网站提供更丰富的内容。