为了账号安全,请及时绑定邮箱和手机立即绑定

在同一台服务器或另一台服务器上执行 JavaScript 代码的安全方式?

在同一台服务器或另一台服务器上执行 JavaScript 代码的安全方式?

PHP
哈士奇WWW 2021-11-26 16:12:53
我有一个网站建设者,它允许用户拖放HTML块(img,div,等...)到页面中。他们可以保存它。保存后,他们可以查看该页面。我还允许自定义代码,如 JavaScript。将他们的页面显示在子域 (mypage.example.com) 上的另一台服务器上是否安全,但仍然从与主服务器相同的数据库中获取,或者将其与主服务器放在同一台服务器上是否无关紧要?服务器?据我所知,它们不能执行任何 PHP 代码,因为我将echo用于显示页面内容。感谢帮助!
查看完整描述

2 回答

?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

这取决于您的设置。如果您允许他们运行自定义 JavaScript,他们可能会窃取其他用户的会话令牌,这些令牌可用于窃取其他帐户。我建议阅读有关 XSS (Cross-Site-Scripting) 的文章

简而言之:XSS 是将代码注入站点的漏洞,该站点将在其他人的计算机上运行。

在这一点上给你一个关于如何做到这一点的严格教程是没有意义的,因为每个系统都是不同的,需要不同的配置来抵抗攻击。

让用户把代码放在某个地方总是有风险的!


查看完整回答
反对 回复 2021-11-26
?
幕布斯7119047

TA贡献1794条经验 获得超8个赞

不需要另一台服务器,但您确实需要另一个域来防止主页上的跨站点脚本攻击。不,一个子域可能还不够,为了安全起见,将它完全放在另一个域上。(幸运的是如果您对域名没问题,可以免费获得.tk域名)

将他们的页面显示在子域的另一台服务器上是否安全

即使是子域也可能是危险的,只需将其完全放在另一个域中,您就会安全。

或者把它和主服务器放在同一台服务器上没有关系吗?

你可以在同一台服务器上使用它。顺便说一句,您是否知道共享虚拟主机服务(如 GoDaddy、hostgator 等)有数千个网站共享一个物理服务器?

  • 另外,不要听人们说您需要清理或过滤 HTML,那不是真的。在我看来,没有必要过滤掉任何数据损坏的东西。不要对您的用户这样做,没有必要这样做。(至少我想不出)

据我所知,他们无法执行任何 PHP 代码,因为我将使用 echo 来显示页面内容。

正确的。如果你在做include("file");或者eval($code);他们可以执行服务器端代码,但只要你在做echo $code;,他们就无法执行服务器端代码,这不是安全问题。


查看完整回答
反对 回复 2021-11-26
  • 2 回答
  • 0 关注
  • 188 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信