s3 中的任何公共文件是否是某人钱包的开放保险库?
我已经看到了一些脚本和外部工具来监控和做出反应,我想知道目前是否有更好的方法来限制 AWS 资源消耗。
s3 中的任何公共文件是否是某人钱包的开放保险库?
我已经看到了一些脚本和外部工具来监控和做出反应,我想知道目前是否有更好的方法来限制 AWS 资源消耗。
如果达到某个限制,您可以使用 CloudWatch(AWS 内部监控工具)设置通知。收到此类通知后,您可以限制对该存储桶/文件的访问。
您可以轻松设置服务器访问日志(查看文档),这将允许您检查您是否受到攻击,以及被谁攻击。例如:
$ ./s3curl.pl --id YOUR_AWS_ACCESS_KEY_ID --key YOUR_AWS_SECRET_ACCESS_KEY -- -s -v 'https://s3.amazonaws.com/mybucket?logging' > mybucket.logging
您有一组可以定义的限制。您可以根据 IP 范围甚至通过引用进行限制(仅当引用的站点是您的站点时才允许下载图像)。例如:
{
"Version":"2008-10-17",
"Id":"http referrer policy example",
"Statement":[
{
"Sid":"Allow get requests referred by www.mysite.com and mysite.com",
"Effect":"Allow",
"Principal":"*",
"Action":"s3:GetObject",
"Resource":"arn:aws:s3:::example-bucket/*",
"Condition":{
"StringLike":{
"aws:Referer":[
" http://www.mysite.com/*",
" http://mysite.com/*"
]
}
}
}
]
}
无论如何,一次黑客攻击的代价是相当低的。S3 定价为每 GB 0.12 美元,每 10,000 个 GET 请求 0.01 美元。您需要付出巨大的努力和数百万的请求才能获得一笔巨额账单。
我建议您在努力保护它之前设置上面的通知并跟踪对您的存储桶的访问。
发现问题后,您可以使用上述选项来保护它,以及设置VPC(无需额外费用)并使用您最喜欢的安全软件进一步控制您的内容。
通常的问题是让人们查看您的内容,而 S3 可以轻松地以相当低的成本和工作量发布您想要的尽可能多的内容。
AWS 确实有一些内置限制(例如,大约 20 个并发实例,除非您填写此表格)
不过,最好的选择是设置一些警报并使用newvem等工具进行整合
Newvem 不可用,因为它现在已被 Datapipe 收购。
https://techcrunch.com/2013/09/10/datapipe-acquires-newvem-an-analytics-service-for-monitoring-aws/