-1

这是一个非常笼统的问题,突然出现在我的脑海中。原因是我遇到了一个网站开发服务器,该服务器由于错误而泄露了有关数据库连接的敏感信息。起初我很震惊,现在我想知道为什么有人将开发服务器放在互联网上并让每个人都可以访问它?

对我来说,没有理由这样做。

但是,一家公司创建了一个子域(dev.example.com)并将开发代码推送到它肯定不是偶然发生的。那么,忽略高安全风险这一事实的原因是什么?

快速搜索并没有找到任何关于此的信息。我对有关此特定主题的任何进一步阅读感兴趣。

先感谢您

4

2 回答 2

0

公众没有理由访问您的开发服务器。

作为一名客户,我刚刚体验了一个私人厨师网站,在那里我花时间与他们的开发服务器进行交互,因为它设法被 Bing 抓取。一切都和现场一样,但我越来越沮丧,因为支付押金没有得到授权。客户支持团队也不知道我在错误的站点上。唯一的区别是 URL。我的电子邮件地址现在在他们的测试系统中,他们每晚进行测试运行时都会向我发送垃圾邮件。

假设您不想更改页面上的代码,您可以考虑一些选项:

  • IP 白名单是最低要求
  • 有一个单独的登录页面,开发人员可以使用该页面重定向到具有正确身份验证令牌的开发站点 - 告诉流浪用户这是一个测试端并且实时站点位于 https://.....
  • 使用 robots.txt 确保您不会被编入索引
  • 将其全部隐藏在 VNET 后面 - 对于 VPN 或 Bastion 等服务,这真的不再是问题了。

还要考虑以下几点,这样您的开发人员/测试人员就不会意外使用错误的站点:

  • 拥有一个开发 css 以使其成为一个测试系统(这假设您稍后在管道中进行可视化测试)
  • 使用横幅表明这是一个开发网站

请注意,这将是一个开发服务器。如果您使用的是环形/预览/渐进式部署,那么这些应该与实时站点一样工作,因为它们是实时站点。

于 2021-11-02T09:38:15.193 回答
-2

对于开发环境或任何“较低级别”环境而言,该问题暴露于公共互联网是极其常见的。今天,尤其是随着越来越多的公司在公共云中工作并拥有远程团队成员,让您的开发团队或 UAT 完成而无需建立 VPN 连接或更快更昂贵的直接连接到来自您公司的本地网络的云。值得一提的是,暴露于公共互联网并不意味着您不应该在这些环境中使用某种 HTTP 身份验证来隐藏您网站的详细信息。您还可以使用带有 IP 地址白名单的防火墙。这仍然很重要,所以你不要' 不要暴露您的产品并失去可能的竞争优势。这也很重要,因为较低级别的环境往往更容易出错,并且有关应用程序内部工作的重要细节可能会意外出现。

于 2018-12-04T14:44:02.767 回答