亚马逊虚拟私有云(亚马逊
VPC)允许您在定义的虚拟网络中启动AWS资源。这种虚拟网络与您在数据中心运行的传统网络非常相似,将为您提供使用AWS可扩展基础架构的优势。简而言之,VPC是一种虚拟网络服务,AWS使用它将您的网络与其他客户网络隔离开来。在VPC中,用户的数据将在逻辑上与其他AWS租户分开,以确保数据安全。
在启动实例之前,当配置实例时,您可以将一个定制的私有IP地址关联到您的Amazon EC2实例。但是,此IP地址必须满足以下条件:
属于有效的IPv4范围。
在所选子网的CIDR范围内。
可以使用。此专用IP地址不能绑定到任何其他资源。
* *注意:* *新的自定义主专用IP地址不能分配给现有实例。
1.AWS EC2 VPC具有以下特点:
可以在VPC创建多个子网;
您可以在选定的子网上启动EC2实例;
在每个子网上分配您自己规划的IP地址;
每个子网都配置有自己的路由表;
创建一个Internet网关并绑定到VPC,这样EC2实例就可以访问Internet;
VPC对您的AWS资源有更安全的保护;
……
AWS VPC致力于识别和检测整个企业中的攻击者技术;在终端、本地和云上,Hunters团队研究了一种使用VPC功能的技术,允许客户控制他们的。
IP地址。攻击者可以使用它来控制访问受感染帐户时写入AWS CloudTrail日志的IP地址。这使得攻击者能够依靠Cloudtrail进行欺骗。
针对日志的各种安全保护措施,如SIEM、云安全工具等。包括但不限于警卫任务、Rapid7和
花边.此外,寻找攻击证据的分析师可能会忽略它。
本文回顾了混淆处理技术的技术细节,并提供了可行的措施和建议。
第二,攻击者控制了CloudTrail SourceIP。
通过控制他们的源IP地址,攻击者可以隐藏起来,这可能会绕过完全依赖于AWS CloudTrail的安全措施。
因此,通过使恶意行为看起来像是由合法对象执行的,可以使恶意行为看起来无害,并且很难检测到攻击的痕迹并将入侵归因于特定的来源。
如果您的安全工具仅依赖于AWS CloudTrail日志中的sourceIP字段,缓解措施如下。
技术分析
为了成功实现这项技术,攻击者需要从受害者的帐户获取合法的AWS凭据,然后创建一个VPC终端,这允许您的VPC和。
自动警报系统
服务在其自己的帐户中直接通信。创建一个IP范围的VPC,当他们使用损坏的凭据时,这可能会混淆他们的流量。以下是我们需要描述的关键功能,以解释如何使用这项技术:
CloudTrail日志有一个“sourceIPAddress”字段。该字段包含攻击者的IP地址,在大多数情况下是公共IPv4地址。
但是,如果攻击者通过AWS VPC内VPC的终端发送AWS。
API请求,CloudTrail日志中记录的IP地址是VPC“内部”EC2的IP地址,也就是攻击者可以控制的IP地址。
用户可以在VPC设置任何IPv4地址范围,包括rfc1918地址范围和外部可路由的IP地址范围。可以公开路由的IP块只能通过虚拟专用网关访问,而不能通过互联网网关访问。这使得攻击者能够创建模仿受害者自己的网络或信誉良好的外部服务的IP寻址方案。
另一个重要的事实是,登录到CloudTrail的userAgent字段显示了攻击者的userAgent字符串,该字符串完全由发出API调用的攻击者控制。然而,这并不是这项技术的直接组成部分,当它被使用时,它可以帮助进一步使模拟过程看起来合法。
在专用AWS帐户(攻击者帐户“A”)中创建了一个带有我们选择的专用IP CIDR地址块(12.34.56.0/24)的VPC。
然后,我们在这个VPC中创建了一个EC2实例,并选择它的私有IPv4地址为12.34.56.78。
我们在受害者的帐户(“B”)中生成API凭据,作为在使用该技术之前被攻击者销毁的凭据。
然后,我们在~/中配置这些“偷来的”凭证。aws/credentials文件,以便可以从攻击者控制的帐户A中的实例颁发这些证书。
AWS CLI调用将使用它们。
接下来,我们在攻击者的帐户中为我们打算进行API调用的服务创建了一个VPC终端。
我们从可以创建VPC终端的125个AWS服务中选择44个最重要服务的子集,并为每个不需要任何特定参数的服务选择一个API调用。
为了验证这项技术,我们进行了一项测试。为了进行比较,我们首先从EC2实例对服务进行API调用,而不是通过VPC。
终端进行隧道传输。这些调用显示在CloudTrail日志中,实例的公共IP地址作为源IP。
在下一步中,我们为上述服务创建了VPC终端节点,并在每个服务中重新运行AWS CLI命令,这次是通过VPC终端节点。
测试成功,攻击者选择的“内部”IP地址在CloudTrail日志中显示为源IP。
攻击者可以出于许多不同的目的混淆他们的IP地址。以下是一些例子:
1.“组织”公共IP地址:如果攻击者收集受害组织的公共互联网信息,
基础设施信息,攻击者可以使用与他的公共基础设施的某些部分相对应的公共IP。比如公司的外部VPN IP地址。
2.员工的“家”外部IP地址:如果攻击者获得员工离开办公室时使用的外部IP地址的信息,他们可以选择这一个。
IP,从而错误地将任何调查指向“无辜”的员工。比如云IT管理员的家庭IP地址。
3.第三方服务提供商的公共IP地址:攻击者可以在AWS客户环境中使用属于第三方服务提供商的已知公共IP。
地址,从而增加逃脱威胁的情报和信誉服务的机会。因为有时这些IP可能被AWS客户列入白名单,攻击者甚至可以进行更敏感的API调用。
示例1:使用属于企业级云安全智能防护产品的IP地址(最好是受害组织使用的IP地址)。
例2:使用198.20.69.74,流行的互联网扫描Shodan扫描整个互联网。
4.一个特殊的私有、保留、测试或文档专用IPv4子网块:4-5个子网被定义为临时“保留”。
IP”,使用其中一个也有助于规避信誉服务。完整的列表可以在这里获得。
示例:使用测试网子网中的IP地址(192.0.2.0/24、198.51.100.0/24或
203.0.113.0/24)。
3.哪些AWS服务支持VPC终端节点访问?
该技术只能用于对AWS服务进行API调用,可以为AWS服务创建VPC终端节点。然而,截至2021年5月,共有125种不同的AWS。
服务创建VPC终端节点,包括最著名的AWS服务(如EC2、S3、Lambda、STS、DynamoDB、Secrets Manager)
等等。),唯一重要的例外是我们见过IAM。
此外,AWS还在不断扩大VPC终端支持的服务列表。您可以在AWS门户中查看受支持服务的完整列表。
解决办法
配置Amazon EC2实例。有关详细步骤,请参见使用旧的启动实例向导启动实例或使用新的启动实例向导启动实例。
在“配置实例详细信息”部分的“网络”中,选择虚拟私有云(VPC)或创建新的VPC。对于子网,选择适当的子网,或创建一个新的子网来启动实例。
在网络接口部分的主IP(网络接口的主专用IPv4地址)中,输入自定义专用IPv4地址。
完成启动实例向导的配置,然后启动实例。
可以简单地理解为,VPC是一个虚拟的数据中心。在这个虚拟数据中心中,我们可以创建不同的子网(公共和私有网络),并构建我们的web服务器、应用服务器、数据库服务器和其他服务。
4.这可以用来绕过基于IP的IAM策略吗?
我们测试了这种技术是否可以用来绕过基于IAM源IP的策略(使用aws:SourceIp
关键)。测试假设在某些情况下,组织配置此类策略,只允许特定子网中的某些敏感AWS操作。
在这种假设下,我们测试了如果攻击者使用相应的“内部”IPv4 CIDR块创建VPC并使用VPC终端,他们是否能够成功调用敏感设备。
AWS API,从而“绕过”这样的策略。
我们发现(点击此处https://docs.aws.amazon.com/iam/latest/userguide/reference _政策_ condition-keys.html #条件-密钥-源ip)当
当通过VPC终端完成API调用时,aws:SourceIp key不可用(反之,aws:VpcSourceIp可用),所以不能使用该技术绕过这类IAM。
策略。
如何在您的运行环境中检测此类活动:
通常,当通过VPC终端节点完成AWS API调用时,会填充可选的vpcEndpointID CloudTrail字段(使用VPC)。
终端节点的ID),与所有其他呼叫不同,它不填充该字段。这是该技术在日志中唯一的残留用法。
鉴于此,我们的第一个建议是查看vpcEndpointID字段。
检测使用不在您在VPC使用的任何私有IP范围内的IP地址的攻击者相对容易,这可以通过查找经过VPC终端节点(带填充)的攻击者来完成
vpcEndpointId字段)和不在您的VPC中使用的专用IP范围内的源IP地址。
但是,在您的任何VPC中,很难检测出攻击者使用的IP地址是有效的私有IP地址。这是因为当您在环境中使用VPC终端时,攻击者的合法行为和由攻击者的行为生成的日志之间的唯一区别是记录的特异性。
VPC终端节点ID。我们建议使用更多基于异常的检测逻辑来解决这个用例,并检测组织中从未见过的新VPC终端节点ID的使用情况。
最后推荐AWS CloudTrail。
用户将他们的云事件与终端上的其他传感器、本地、电子邮件、身份等进行交叉引用。跨攻击面的全面自动检测是发现被忽略威胁的最有效方法。
评论前必须登录!
注册