我意识到,使用默认设置创建存储桶后,任何知道存储桶名称的人都可以检查文件的存在。
例子:
有人尝试使用网址https://storage.googleapis.com/bucket_name/file_name
如果文件不存在,则显示的消息是“指定的密钥不存在”
如果文件确实存在,则消息为“匿名调用者没有storage.objects.get对对象bucket_name / file_name的访问权限”
这使查找存储在存储桶中的文件名变得容易,因此,存储桶内容的私密性不完整。
在这两种情况下,我也都使用S3存储,其中消息均为“拒绝访问”,因此无法知道文件是否确实存在。
有什么办法可以禁用此行为?
谢谢
抱歉,但是对于这两种情况,目前都没有任何办法可以使“访问被拒绝”。
请注意,即使确实存在,也不一定会阻止计时攻击来确定对象是否存在。因此,建议您不要在对象名称中存储敏感数据,并且如果确定对象名称的存在对您的业务构成风险,则建议您混淆对象名称。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句