GCP - Cloud SQL Post Exploitation
Last updated
Last updated
学习和实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习和实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)
有关 Cloud SQL 的更多信息,请查看:
GCP - Cloud SQL Enumcloudsql.instances.update
, ( cloudsql.instances.get
)要连接到数据库,您只需访问数据库端口并知道用户名和密码,没有任何 IAM 要求。因此,获取访问权限的一个简单方法是,假设数据库具有公共 IP 地址,更新允许的网络并允许您自己的 IP 地址访问它。
也可以使用 --no-backup
来 中断数据库的备份。
由于这些是要求,我不太确定 cloudsql.instances.connect
和 cloudsql.instances.login
的权限是什么。如果你知道,请发送一个 PR!
cloudsql.users.list
获取数据库的 所有用户列表:
cloudsql.users.create
此权限允许在数据库中创建新用户:
cloudsql.users.update
此权限允许更新数据库中的用户。例如,您可以更改其密码:
cloudsql.instances.restoreBackup
, cloudsql.backupRuns.get
备份可能包含旧的敏感信息,因此检查它们是很有趣的。 在数据库中恢复备份:
为了以更隐蔽的方式进行操作,建议创建一个新的 SQL 实例,并在该实例中恢复数据,而不是在当前运行的数据库中。
cloudsql.backupRuns.delete
此权限允许删除备份:
cloudsql.instances.export
, storage.objects.create
将数据库导出到 Cloud Storage Bucket,以便您可以从那里访问它:
cloudsql.instances.import
, storage.objects.get
从 Cloud Storage Bucket 导入数据库(覆盖):
cloudsql.databases.delete
从数据库实例中删除一个数据库:
学习与实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习与实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)