1、你可以拿到IaaS环境中的原始网络流量
公有云中无法像物理环境中一样使用交换机的镜像流量接入到NDR设备的监听口,也没有办法像私有云中一样操作虚拟交换机,你需要一些特别的操作。有些公有云厂商会提供原生的流量镜像服务,业内支持比较好的是AWS,提供了灵活、可靠的流量镜像服务,用户可以根据实际的网络架构按需选择合适的镜像位置,如GWLB,ENI,或第三方Agent、第三方WAF、第三方Proxy、第三方防火墙等设备作为流量镜像源,下面分别介绍这几种方案的特点。
-
GWLB(Gateway Load Balancer)流量镜像方案。该方案于2020年推出,这项服务使部署、扩展和管理第三方虚拟设备(如防火墙、入侵检测和防御系统、云中的深度数据包检测系统)的可用性变得简单且经济高效。除了安全设备之外,GWLB 还为数据分析、电信、物联网 (IoT) 和自定义设备提供同样的好处。AWS 合作伙伴网络和 AWS Marketplace 合作伙伴还可以为 AWS 客户提供虚拟设备即服务,而无需解决规模、可用性和服务交付等复杂问题。在此之前AWS已经有比较简单的ENI流量镜像方案(elastic networking interfaces)的方案(有时也叫做VPC Traffic Mirroring),GWLB镜像方案的好处是支持用户集中对 AWS 账户以及 VPC 的网络流量进行带外监控和检查,支持跨VPC和跨账户,支持多对多的流量镜像复制。
如下图所示,GWLBe(e=endpoint,它相当于VPC Traffic Mirroring的服务端,也同时作为GWLB的客户端)作为VPC Traffic Mirroring的目标,再把流量送往GWLB,最后到达GWLB后面的检测设备,即镜像流量->GWLBe->GWLB->检测设备,GWLB方案提供镜像源和检测设备之间的私有连接。GWLBe配置在应用VPC的一个子网内,VPC到GWLBe流量无需启用ENI镜像服务,但需要修改现有的应用所在私有子网的路由表,将默认路由指向到GWLBe,再把GWLBe所在子网的路由指向原来的IGW(Internet gateway)出网。因此可能会涉及网络架构的变动,对于现网中没有使用GWLB的用户,投入工作量会比较大。Tips:GWLB不仅可以把流量给旁路的NDR,也可以给到串联的防火墙,然后再原路返回给GWLBe出网也是可以的,见下面第二个图。
-
ENI直接镜像的方案。这个方案比较简单,AWS本身就支持把ENI(可以理解为云主机的网卡)镜像到指定云主机的ENI、指定的NLB(Network Load Balancer,注意,都叫LB,但不同于GWLB)、指定的GWLBe,不需要额外安装Agent,区别于传统物理网卡或虚拟网卡,ENI是一个云原生的服务,在ENI捕获数据包,不会像以前在网卡上执行tcpdump一样影响主机的性能,也不用担心攻击者在用户空间禁用或篡改。借助此功能,客户可以复制来自 EC2 实例的网络流量并将其转发到安全和监控设备,用于内容检查、威胁监控和故障排除。所有的镜像策略(包括GWLB方式)都可以像传统数据中心中使用的TAP一样做镜像流量的过滤,包括流量出入站方向、协议、源目端口、源目IP地址范围等,用户可以按需选择,在检测深度和成本之间取得较好的平衡。
-
第三方专用虚拟设备镜像。假设在你的IaaS环境中有合适的虚拟防火墙、虚拟WAF、虚拟TAP等专业设备,可以看一下它们是否支持外吐镜像流量,这些设备可能是已经逻辑串联在虚拟网络中的,也可能是GWLB后面的检测设备,但不管是哪种形式,它们都有可能把处理的流量额外吐出一份给新上的NDR设备,它本身需要有这个功能,并且它所在的位置刚好是需要给NDR进行深度检测的流量,比如“南北向边界”。如下图所示,使用GWLB后面的Virtual Appliance再把流量复制给额外的绿色盒子。
-
第三方Proxy代码。以Nginx举例,这个强大的软件经常被用在互联网边界处作为代理、负载均衡、WAF等角色,Nginx 1.13.4及后续版本内置了ngx_http_mirror_module模块,提供流量镜像的复制功能,支持在不影响对后端服务请求的情况下,复制一份流量到其他检测设备,同时 mirror 模块会丢弃 mirror 的响应。需要在http_mirror_module模块中做一些简单配置即可启用。 https://nginx.org/en/docs/http/ngx_http_mirror_module.html
在公有云上应用安全产品一定要对云厂商的专业术语有较好的了解,每一个英文名称代表特定的服务,比如Network load balancer和Gateway load balancer是两个不同的服务,虽然都可以做LB,但收费模式和功能场景是不一样的,此外,不同的云厂商类似的服务名字也不一样,AWS的EC2对应阿里云的ECS,相信各位小伙伴通过上面的基础了解,再加以实践一定可以让NDR成功上云。
本文由于篇幅有限,在公有云上配置的具体步骤本文不再贴图细述,可以参考云厂商官方帮助文档,下面附上一些AWS上的指导说明,仅供参考。后面有时间的话再整理一篇公有云上使用NDR的注意事项(Bi Keng Zhi Nan)。
-
https://www.gartner.com/doc/reprints?id=1-2C08X0XR&ct=221214&st=sb -
https://aws.amazon.com/cn/blogs/aws/new-vpc-traffic-mirroring/ -
https://aws.amazon.com/cn/blogs/china/gateway-load-balanceruse-implement-centralized-network-traffic-depth-detection/ -
https://docs.aws.amazon.com/vpc/latest/mirroring/what-is-traffic-mirroring.html -
https://aws.amazon.com/blogs/networking-and-content-delivery/introduction-to-traffic-mirroring-to-gwlb-endpoints-as-target/ -
https://aws.amazon.com/cn/blogs/networking-and-content-delivery/scaling-network-traffic-inspection-using-aws-gateway-load-balancer/ -
https://aws.amazon.com/cn/blogs/china/introducing-aws-gateway-load-balancer-easy-deployment-scalability-and-high-availability-for-partner-appliances/
原文始发于微信公众号(无限手套Infinity Gauntlet):如何在公有云中部署NDR
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论