将控制面板保留在单独的子域或域中是否合理?

信息安全 dns 域
2021-08-29 22:22:01

由于我非常初始信息和网站安全,我想问一下更多有经验的人和想法,刚刚越过我的想法(可能不是我原来的发现!:])。

通过引入这么多新顶级域,如果我会将“控制面板”移动到单独的子域甚至顶级域名,它会增加我的网站安全性吗?例如:

  • 所有用户前端:http ://www.example.website ,
  • 仅限管理员的后端:http ://www.example.management 。

用户仅使用第一个链接。他们甚至可能不知道存在另一个域的事实,因为它可以在服务器端进一步保护,以禁止来自外部公司网络的所有流量。另外,您甚至无法访问任何管理工具,如果您通过第一个域登录,则只能访问您帐户的控制面板。但是,从来没有任何与整个网站管理相关的任何东西。

出于显而易见的原因,两个网站都将使用相同的数据库(这里我不将复制作为选项——见文末)并且两个顶级域很可能都停放在同一服务器/主机上(低成本项目 - 见文末),但彼此的完全分离。

这与实施 RBAC 系统的“标准”网站相反,其中 - 如果管理员级别的用户登录,他或她不仅可以访问他或她的帐户控制面板,还可以访问整个网站管理工具,系统等玩具都基于确定他或她的访问权限。

将以任何明显或合理的方式执行前端的分离,并提高网站安全吗?或者这只是浪费时间,金钱和资源?

我的一所大学声称,如今入侵者不关心诸如闯入帐户或控制面板或获取某人的密码之类的事情。如今的入侵是基于 DDoS 攻击和物理“杀死”服务器。如果这是真的,那么我提出的解决方案将一无所获。一次有效的攻击会关闭整个服务器,包括前端和后端,无论它使用多少个域。

顺便说一句:我们谈论的是低级网站,拥有多达 10k-100k 的用户,这是一个本土项目,结果变得更有趣了。托管在一台服务器上。没有多服务器托管,没有数据库复制,没有 DDoS 攻击缓解等。我们不是在谈论另一个 Facebook 或此类服务,因为在这种情况下,它们很可能拥有比多域更好的解决方案。

2个回答

前端和后端分离的实施是否会以任何明显或合理的方式提高网站安全性?

是的。将接口拆分为两个主机名——或者实际上是两个端口号或协议(HTTP/HTTPS)——会给你两个不同的 JavaScript 来源。这可以防止在一个站点上可访问的任何跨站点脚本 (XSS) 攻击自动感染到另一个站点。

例如,如果您的公共站点中存在 HTML 注入漏洞,它可能包含一些 JavaScript,这些 JavaScript 会自动加载管理界面并模拟用户按下大红色的破坏站点按钮(或任何其他敏感功能)。如果管理员在管理站点上进行活动会话时浏览了受感染的公共页面,则该站点会变得繁荣。

由于两个不同的来源,一个来源上注入的 JavaScript 无法与另一个来源上的控件交互,因此损害仅限于可以在公共站点上执行的任何操作。

(作为一个附带问题,为每个界面设置单独的登录会话还可以缓解 XSS 和跨站点请求伪造漏洞,因为管理员在浏览公共站点时不太可能登录到管理站点。这是可以使用或不使用不同的主机名进行单独或组合的登录会话,但通常单独的主机名会给您单独的登录名,除非您专门解决了这个问题。)

出于这个原因,按主机名分隔内部受众界面通常是一种有用的缓解措施,但当然跨站点脚本只是 webapp 安全性的一个次要方面,您不应该想象它可以为您提供任何针对其他应用程序和基础设施安全问题的保护像 DDoS。

(是的,关于访问控制安全性因为 DDoS 而无关紧要的评论完全是荒谬的。它们几乎是完全不相关的攻击,由不同的人出于不同的原因进行。你想集中精力应对每种攻击应该由威胁模型驱动对于您的应用程序, 但两种攻击都很常见, 一种攻击的存在并不是忽略另一种的借口. 通常, 单独的 DoS 被认为比入侵或数据丢失攻击更小, 但这又取决于威胁模型 -攻击者是否可以通过使您的服务不可用而获得任何好处?它是否足够重要,以至于在服务关闭时会造成严重的不便?)

将管理界面放在不同的域上是纯粹的安全性。不管你把 URL 弄得多么晦涩,只要它可以从公共互联网上访问,你就必须考虑到它有朝一日会成为公共知识的可能性。

但是,即使您认为 SbO 可能对您有利,但仅为您的管理控制台注册另一个域可能会适得其反,从而最大限度地降低知名度。请记住,域名注册是公开的。有人可能会不小心发现域名example.management被注册了,并且域名所有者是你,这可能会引起他们的注意。但是放置在域本身的一个不起眼的 URL 上的管理界面不会在任何地方留下其存在的公共记录(只要服务器配置正确)。

底线:不要试图隐藏你的管理界面。你应该把精力投入到以安全的方式开发它,这样即使全世界都试图访问它,他们也不会成功。

我的一所大学声称,如今入侵者不关心诸如闯入帐户或控制面板或获取某人的密码之类的事情。如今的入侵是基于 DDoS 攻击和物理“杀死”服务器。

这是不正确的。最近有许多入侵知名服务的事件,目的是获取用户的电子邮件地址和密码。人们只能猜测每天发生多少此类违规行为,但从未被发现或向公众报告。但是,易受攻击的管理界面只是可能导致数据泄露的众多潜在攻击媒介之一。有关导致网站漏洞的最常见错误的信息,请参阅OWASP 十大列表

拒绝服务 (DoS) 攻击是一种给网站所有者带来麻烦的方法,但它不会“物理杀死”服务器。它只会在攻击发生时使服务器难以到达,但不会造成持久的损害,最重要的是,不会损害服务器上的任何数据。它们经常被执行,因为它们几乎不需要技术专业知识来执行,但它们远非严重的安全威胁。