系统背景自动产生的影子资源恐出现弱点!研究人员揭AWS服务存在Bucket Monopoly、Shadow Resources漏洞

云端服务的运作相当复杂,尤其是有许多服务于背景运作,甚至有可能作为其他服务运作的其中一环,若是这些服务运作的方式不够安全,很有可能引发严重的后果。

资安业者Aqua Security的研究人员于今年2月,找到6个AWS重大层级的漏洞,这些漏洞主要偏重于「影子资源」的层面,这类资源的来源,是使用者在进行AWS服务的相关设定过程里,由系统在背景自动产生的资源,因此这类资源的运作状态,一般使用者往往不会特别留意。

而对于漏洞的影响范围,研究人员指出涵盖多项服务,包括:CloudFormation、Glue、EMR、SageMaker、ServiceCatalog、CodeStar。使用者首次在新地点建立服务的过程里,系统会自动建立具有特定名称的S3储存桶,这个名称包含用ID、服务名称、地区。

其中一个漏洞被称做Bucket Monopoly,起因是S3储存桶使用了容易被猜到的AWS帐号ID,由于这个ID原本不被视为敏感资料,而让攻击者有机可乘。

攻击者可借由上述储存桶名称可预测的规则,抢在目标用户之前在其他地区的资料中心建立储存桶并植入恶意程式码,使得受害组织试图在新区域启用服务时,恶意程式码便会不知不觉在组织的环境内执行,从而让攻击者建立管理员帐号并取得控制权。

研究人员指出,根据他们的分析,这种ID应被视为机密,因为攻击者一旦取得这类资料,就有机会进行相关攻击。就算攻击者无法直接破解控制使用者帐号,但还是能借由这项资讯,收集用户的各式资料。

针对这项问题,AWS已变更预设组态,经过调整的服务将不会自动产生储存桶的名称,若是储存桶名称已经存在,系统则会加上随机的识别码。

另一个研究人员公布的弱点被称为Shadow Resources,攻击者可在使用者不知情的状态下,借此产生AWS S3的服务元件。

研究人员起初在CloudFormation察觉此事,攻击者可在目标用户尚未启用的AWS地区当中,使用现有的堆叠及名称建立帐号,来抢占资源,当受害者将工作负载转移到新区域,就有可能不知不觉使用攻击者控制的S3储存桶而受到控制。

这项弱点发生的原因在于,使用者透过AWS管理主控台在CloudFormation建立堆叠的过程中,AWS会自动建立存放CloudFormation范本的S3储存桶,而这个储存桶的名称也同样具备相同的特性,使得攻击者有机会用来发动攻击。