S3 Bucket Brute Force to Breachb
| 2024-7-14
0  |  阅读时长 0 分钟
Field
RedTeam
Beginner
Free
Tags
brute force
fuff
lambda
s3
ssm
Status
Done
Huge Logistics, a global powerhouse, has enlisted your expertise to evaluate their cloud security measures. During your preliminary scans, an S3 bucket titled hlogistics-web caught your attention. Your mission is to use knowledge of the naming convention to access other S3 buckets, and pivot to other cloud services if possible.
题目提供的信息:S3 bucket hlogistics-web
 
 
本地打开是一个 HTML 页面,里面有两个桶 hlogistics-imageshlogistics-staticfiles,但里面没啥,版本也看不了,写也写不进去
 
没发了,只能 fuzz 一下有没有其他桶,毕竟它们家公司的桶都是以 hlogistics- 开头的
 
装个 fuzz
 
region,写入为 regions.txt
 
下载 aws s3 bucket 字典
 
开 fuzz!
 
有个没见过的 hlogistics-beta,里面有个脚本
 
里面有个 AKSK,看脚本内容是用来操作 lambda 函数的
 
调用一下
权限不足…
 
查看一下策略啥的
 
该策略允许查看 SSM(AWS Systems Manager) 参数
SSM参数允许安全地存储和管理敏感信息和配置数据。我们可以将密码、数据库连接字符串和许可证代码等数据存储为参数值。SSM 和 AWS Secrets Manager 在成本和功能上有所不同。SSM 的免费标准参数高达10000个条目,更具成本效益,而 Secrets Manager 对 API 调用和每个秘密每月收费。Secrets Manager 提供 SSM 所缺乏的自动密码生成和轮换功能。Secrets Manager 被推荐用于全面的秘密管理,而 SSM 是一种成本友好的基本解决方案。
 
describe 权限不足
 
get arn 限定的可以,拿到新的 AKSK,以 , 分割
 
查看一下用户,通过 aws-enumerator 枚举发现 ListFunctions 权限
 
查看所有函数
 
调用
 
防御
S3存储桶的名称是全局唯一的,公司通常使用易于识别的存储桶名称,并结合位置、公司名称和存储的资源类型或功能。虽然这种方法可以方便地进行内部识别和组织,但它也可以使这些桶成为恶意行为者更可预测的目标。因此,需要在命名的清晰性和安全性之间取得平衡,以便轻松发现S3资产。
 
将随机字符串附加到S3存储桶名称(例如 hlogistics-backups-626825)可以帮助隐藏存储桶,使其不容易被发现,这作为深度防御策略的一部分非常有用。这种缓解措施是通过模糊实现安全的一个例子,不建议仅依靠模糊实现安全。虽然随机字符串可以阻止基本的发现尝试,但它不应该是唯一的防线。适当的权限、存储桶策略和监控是必不可少的。
 
我们可以使用 AWS CloudTrail 和 S3 服务器访问日志记录来检测异常活动,以监控对 S3 存储桶的访问和API调用。必须小心过滤掉合法和非合法的请求,否则可能导致“雪盲症”。此外,根据您的公司和内部资源面临的敌对环境,实施 “蜜罐桶” 也可能是值得的,它们使用与对手可能猜测或发现的命名约定相同的命名约定,而您的代码或基础设施都没有引用。对于庞大物流来说,这可能是桶名称,如 hlogistics academyhlogisticswidgets,使用常见单词列表中的环境名称。可以为这些桶启用日志记录,以便其中一个桶上的任何警报(特别是如果两者都有)都能提供潜在对手正在进行OSINT的良好预警。
 
为了强化 S3 bucket 攻击面,在绝对需要之前限制公共访问是很重要的。此外,bucket策略可以实现为只允许特定的IP地址或VPC端点,理想情况下限制对源自VPC内的请求的访问。
 
进一步阅读,S3 安全最佳实践
Loading...
目录