全局 DNS 记录对 phpMyAdmin 有安全风险吗?

信息安全 Web应用程序 dns 网络访问控制
2021-08-11 14:12:35

像 phpMyadmin 这样的服务需要一个域名才能访问。除了添加全局 DNS 记录,还可以制作本地 DNS 记录(例如 in /etc/hosts)来访问该站点。

如果没有建立全球 DNS 记录,如果假设其他典型的安全措施(HTTPS、密码验证等)已经到位,它会增加安全性吗?

3个回答

这将被称为“通过默默无闻的安全”,并且几乎没有提供任何保护。

/etc/hosts 文件不是 DNS;它是 DNS 的前身,任何人都可以在其中更改自己的记录。

域名主要供人类使用......计算机只会将其转换为IP地址并使用它(并在HTTP 1.1+中发送主机名)。虽然域名在虚拟主机配置中具有功能,但它不是安全防御的一部分。

要提高安全性,请考虑添加以下内容之一:

  • IP将您自己的IP列入白名单并将所有其他IP列入黑名单
  • 通过 oAuth / SAML 的外部登录提供程序。(如谷歌的登录系统)
  • 使用客户端证书授权访问

所有这些都将提高安全性,从最低到最高,但也从最简单到最困难。

不,它不会增加安全性。如果攻击者知道域和 IP,他们仍然可以连接到 phpMyAdmin,而不管它的 DNS 记录是否存在。例如,他们可以将信息放在自己的主机文件中。

这将最大限度地减少攻击面,但是正如其他海报所说的那样 - 它是“默默无闻的安全”,它可能是你防线的一部分,但不是唯一的部分。

只有当它是一个虚拟主机时,攻击面的减少才有效,否则攻击者及其脚本会在扫描所有附加了 /phpMyAdmin 的 IP 时找到我们的 phpmyadmin 安装。

您还可以将默认端口从 80/443 更改为某个随机端口,以进一步减少攻击面并将更改最小化,简单扫描将找到您的 phpmyadmin 安装。

更好的解决方案:

  • 在 IP 白名单上投入时间
  • 使用直接 VPN 连接到您的服务器
  • 或 SSH 隧道
  • .htaccess

最重要的是:进行软件更新并选择长/安全密码。

正如您提到的HTTPS。这是为了加密您的流量,因此没有人可以窃听您的连接。这本身并不能使 phpmyadmin 更安全!