问题标签 [google-cloud-armor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
234 浏览

google-cloud-platform - 使用 Traefik 入口(TCP 负载均衡器)为 GKE Autopilot 启用 DDoS 保护

有没有人为使用 Traefik 作为入口控制器的 GKE Autopilot 集群配置 DDoS 保护(使用 Cloud Armor)。问题是 Traefik 正在使用 TCP 负载均衡器,这就是为什么(据我所知)无法将 Cloud Armor 应用于其配置的原因。有什么解决方法吗?请分享您的经验或想法。谢谢。

0 投票
1 回答
163 浏览

google-app-engine - 谷歌云盔甲中是否有可以减轻slowloris攻击的功能?

我收到安全团队的消息,我们托管在 App Engine 上的应用容易受到慢速 DDOS 攻击。在互联网上搜索后,我发现如果配置正确,可以通过 Web 服务器或 L7 负载均衡器缓解这种攻击。但我没有找到任何明确指出 Google Cloud Armor 支持此类功能的信息。

在一篇文章中提到 Cloud Armor 和 slowloris DDOS 的唯一网页,我发现是这个:https ://cloud.google.com/blog/products/identity-security/identifying-and-protecting-against-the -最大的 ddos​​ 攻击

有人有保护 App Engine 免受慢速 DDOS 攻击的经验并且可以共享链接或资料吗?

0 投票
1 回答
214 浏览

kubernetes - 使用 Istio 和 Cloud Armor 的 GKE 集群中的后端不健康

我正在尝试在 GKE 集群前使用Cloud Armor 自适应保护。我从 contino-engineering 中找到了本指南,而这本从always up always on 中找到。但是,这两个都使用了一个简单的 hello world 示例,我正在尝试通过使用 istio 中的bookinfo示例来部署(希望如此?)更现实的部署。(我使用在线精品店也有类似的结果。)

问题是后端永远不会变得健康。我假设这是因为健康检查器无法访问健康检查服务,但我对这一切都很陌生,不确定如何验证。

这是我用于部署集群的 TF。请注意,这ip_allocation_policy相当于--enable-ip-aliasesgcloud 参数......我认为。我没有在这里启用 CloudRun 以简化事情。

集群 tf

获得信任后,我应用我的后端配置来允许(?)/启用(?)健康检查。

然后我修补入口网关:

最后,应用入口资源

推出新的 Pod 以获得更好的效果:

等待 10 多分钟后,我在 Google 控制台中看到新的负载均衡器显示不正常的后端: 负载均衡器

0 投票
1 回答
472 浏览

google-cloud-platform - 如何使用 Cloud Armor 和负载均衡器保护您的 GCP 应用免受恶意机器人的攻击?

我将 Google Cloud Platform 负载平衡器作为 CDN 和运行服务的入口点。

据我所知,即使没有自定义 Cloud Armor 规则设置,GCP 负载均衡器也能提供开箱即用的 DDoS 保护。

它是否还包括对正在抓取信息或发送垃圾邮件的“坏机器人”的一些保护?

如果没有,我们有什么办法可以使用 Cloud Armor 设置一些规则来保护 GCP 服务免受此类机器人的攻击?

0 投票
1 回答
251 浏览

google-cloud-platform - 在 GCP Cloud Armor 规则的匹配中使用 RE2 表达式

您好我正在尝试在 Cloud Armor 安全策略中设置一条规则,以阻止将主机设置为 IP 地址的请求。这应该是相当直截了当的,除了我在尝试应用规则时在 Web 控制台中遇到错误。

这是自定义规则的 RE2 代码:

我们获取 Host 标头,然后对 Host 标头字符串使用 .matches()。正则表达式是相当标准的东西,但我不明白为什么控制台会出现这种错误消息:

我一直在这里使用文档

0 投票
0 回答
65 浏览

mysql - 如何使用 FastAPI 后端防止 Cloud Armor WAF SQL 注入提示?

对于上下文,我有一个 FastAPI 微服务,它位于受云装甲保护的负载均衡器后面。sql-i 规则是在预览模式下配置的。对于路线,我违反了 SQL-i 规则。

我使用 FastAPI 作为后端,使用 mysql-connector-python 来执行查询。没有使用 ORM。我收到 SQL-i 提示的路线有:

  1. 请求正文上的输入验证作为中间件
  2. 参数化 sql 查询

发现:

  • 所有 SQL-i 提示日志都以我的 localhost Angular 前端客户端作为引荐来源。
  • 当前端客户端位于相同的负载均衡器 url 后面时,没有 SQL-i 提示。

进一步的研究表明我应该使用准备好的语句或 ORM。我正在使用准备好的语句方法,它似乎无法与我的 mysql-connector 一起正常工作。它只会在参数化查询中无限停留,当我从光标cursor.fetchall()中删除属性时情况并非如此。prepared=True

我可能做错了什么?我也不确定我应该在哪里指出问题。抱歉,我是 Cloud Armor、FastAPI 和使用原始 sql 语句的新手。我一直在将 ORM 与其他服务一起使用,它们似乎工作正常,没有任何 SQL-i 提示。

更新:能够为应用程序实现准备好的语句,仍然可以获取上面提到的 SQL 注入漏洞的日志。

0 投票
1 回答
162 浏览

google-cloud-platform - 为什么在谷歌云盔甲中禁用了某些规则操作?

我在创建新策略时尝试选择“基于速率的禁令”规则操作,但它被禁用,当我单击该选项时没有任何反应。我尝试创建新规则(而不是默认规则),针对不同的后端,启用自适应保护但不关闭这些帮助我正在使用“标准层”并且还具有“计算负载均衡器管理员”权限角色

问题截图

编辑:

我尝试使用 cmd 创建策略,但似乎“基于速率的禁令”不可用:

给出错误:

0 投票
1 回答
215 浏览

kubernetes - 是否有一种解决方法可以将 Cloud Armor 策略附加到通过 kubernetes 入口和 terraform 创建的负载均衡器?

我已经使用 Terraform 创建了 Cloud Armor 安全策略,并且我有一个通过 Kubernetes Ingress 创建的负载均衡器。我想通过 Terraform 将 Cloud Armor 策略附加到负载均衡器。

根据Terraform 文档,必须通过 附加 Cloud Armor 策略google_compute_backend_service

我的负载均衡器是使用创建的kubernetes_ingress,它不允许添加云装甲策略。

在 GCP 控制台中,我可以手动将负载均衡器目标添加到 Cloud Armor 策略。有谁知道在 Terraform 中实现这种行为的解决方法?

作为参考,我创建的资源是:google_compute_security_policy & kubernetes_ingress

0 投票
1 回答
175 浏览

google-cloud-platform - 如何使用云盔甲来阻止POST正文中包含特定文本的POST请求

我最近收到了来自机器人的大量流量。但是,他们使用的是我的代码能够在其上进行指纹识别的同一设备,并且此信息在 POST 请求正文中发送,例如

{ 'deviceid':'ABC123' }

我正在使用 Google Cloud 和 Cloud Armor,并且想知道如何配置 Cloud Armor 规则来阻止具有ABC123 POST 正文内部的请求?

0 投票
3 回答
227 浏览

google-cloud-functions - 如何使用 Cloud Armor 对 Firebase 功能进行速率限制

我有一个可公开访问的云功能(firebase 功能),我想在 Google Cloud Armor 的帮助下限制此功能。

然而,这似乎不像我想的那样是一项微不足道的任务,我找不到太多关于设置这样的东西的文档。

文档准确地说明了我需要什么,但没有提供任何指导来设置云功能。

当我尝试在 GCP 控制台中添加 Cloud Armor 策略时,我什至无法添加目标 在此处输入图像描述

我使用的是标准(不是 Managed Protection Plus)计划,但我认为这应该没问题。