我在共享主机上看到其他人的 Redis 数据是否正常?

Дми*_*лин 40 php redis

Redis 服务在我的主机上可用,如果我为了钱连接它,它只对我可用,因为 Redis 在一个单独的 docker 容器中上升。

但是,如果我将其关闭,那么 Redis 仍然可以免费使用,尽管在服务器范围内。在这里,我连接到服务器范围的 Redis:

$redis = new Redis ();
$redis->connect('127.0.0.1', 6379);
Run Code Online (Sandbox Code Playgroud)

我看到大约有 300,000 条其他人网站的记录。

$allKeys = $redis->keys('*');
echo(count($allKeys)); // ~300000
echo ($allKeys[10000]); // some data of some site
echo ($redis->get($allKeys[10000])); // some data of some site
Run Code Online (Sandbox Code Playgroud)

而且我可以更改每条记录!像这样:

$redis->set($allKeys[10000], 0);
Run Code Online (Sandbox Code Playgroud)

也就是说,有人使用服务器范围的 Redis,我相信用户不知道他们的数据的公共可用性。他刚刚在 WordPress 的某个地方打开了“使用 Redis”复选框。

问题是:托管服务提供商是否对此负责?毕竟,普通用户认为他的数据只存储在他的服务器上,只有他自己可以使用。

技术支持的回应是:一切正常。

但我不这么认为,所以我问。

Nik*_*cic 25

该托管服务提供商应对安全漏洞负责。考虑到 OWASP 的十大 Web 应用程序安全风险,这是一个很少有安全风险的问题:身份验证失效、敏感数据暴露和访问控制失效。

你的下一步是什么取决于你。您应该通知托管服务提供商,托管服务提供商应就可能的数据泄露通知用户。这是一个非常严重的安全和法律问题,因为其他用户可以访问某人可能的私人数据。

参见:https : //owasp.org/www-project-top-ten/

  • @ДмитрийПаймуллин,如果您可以访问其他用户的数据,那么其他用户也可以访问您的数据。这是不安全的,您应该考虑使用这个托管提供商。 (15认同)
  • 技术支持的答复是:一切正常。 (4认同)

Rya*_*ers 5

我在网络托管工作。这是不正确的,意味着他们手上有严重的问题!询问经理或主管。如果那无济于事,请移动。

根据您的描述,他们为付费的 Redis 用户提供虚拟用户。他们没有为其他人禁用它,而是允许每个人访问同一个共享池,从而导致您描述的安全漏洞。