我已经参考https://cloud.google.com/armor/docs/rules-language-reference设置了 Google Cloud Armor 安全策略。它工作得很好。检测到来自我办公室的模拟 SQL 注入攻击,随后的访问被阻止。Stackdriver 日志条目显示“拒绝”的相应强制安全策略结果,并且应用的表达式 ID 为“owasp-crs-v030001-id942421-sqli”。关键WAF规则如下:
evaluatePreconfiguredExpr('xss-stable') && evaluatePreconfiguredExpr('sqli-stable')
有一点我无法控制。在我的模拟攻击之后,我办公室的所有访问都被一路封锁。一旦我将 Cloud Armor 安全策略与 LB 分离并重新附加到 LB,我办公室的访问仍然被阻止。删除该安全策略并重新创建它并没有帮助。这意味着存在一个看不见的 SQLi 和 XSS 攻击者持久数据库,并且我的办公室 IP 可能已在其中注册,从而导致“所有时间”的拒绝。
问题是:如何在不修改规则的情况下从那个看不见的“SQLi 和 XSS 黑名单”数据库中删除我的 IP 以重新获得后端访问权限?在我们的 Cloud Armor 生产操作中,曾经被禁止的 IP 在其攻击源被移除后可能希望重新获得对目标后端服务的访问权限。
当然,如果我添加比 WAF 规则更高优先级的权限规则,我可以重新获得对目标后端的访问权限,但是会绕过 WAF 检查,这不是我想要的。
提前感谢您的宝贵时间。
栗岛