我有一个问题是这个问题的延伸: AWS安全组不足以作为防火墙的例子? 。 最初,这个问题的答案对我来说是有意义的,而且我正在假定作为AWS安全组的防火墙对于我的应用程序基础架构来说已经足够好了(具有公共/专用子网+互联网网关+ NAT设备的AWS VPC +弹性负载平衡器)。
但是,今天早上,当我醒来检查我的服务器日志,我看到我收到了约。 一千个垃圾邮件GET请求过夜到不存在的path,从而导致从我的服务器404响应。 请求不断,并没有停止的迹象。 请求的IP地址是不同的,但在一个特定的范围内。 因此,我更新了Elastic Load Balancer上的networkingACL入站规则,并添加了一个拒绝对该范围内的IP地址的访问。 在这一点上,请求停止击中我的应用程序服务器。
我不知道攻击者是否试图阻止我,或者这只是标准的垃圾邮件。 自从我的系统上线以来,在过去的几个星期里,我每隔几小时就会收到类似这样的请求,但这些请求的数量/频率是我从未见过的。 我对服务器操作相对较新。 我很高兴能够阻止攻击继续加载我的应用程序服务器,但是我想知道是否有一个Web应用程序防火墙(实现为WAF三明治:Load Balancer-WAF-Load Balancer)如果整个情况都会照顾好我的话。
由于我是这个领域的新手,当我在这里阅读不同WAF产品的产品营销详情时,我的答案并不清楚: https ://aws.amazon.com/marketplace/search/results/ref=srh_navgno_search_box?page = 1&searchTerms = web +应用程序+防火墙 。 我真的在寻求实用的build议,以确定我是否需要在我的基础架构中使用WAF(即,我实际上不能依赖AWS安全组来保护我的系统免受垃圾邮件/ DDOS的攻击),以及我在产品中需要的基本function。 提前致谢!
PS我的应用程序不是build立在SQL上,所以我不担心SQL注入攻击。
如果您需要检查HTTP请求的内容并从中作出推断,请确定是否阻止请求(可能基于一段时间的请求),则您需要的不是AWS安全组。 安全组实际上只是iptablestypes的防火墙规则,只根据源/目标IP地址+端口来查看允许/拒绝各个连接。
select什么样的WAF是合适的,这是一个更大的问题。 你可以去任何地方使用直接安装在你的web服务器上的东西(例如Apache上的mod_security),直到一个单独的设备。 决定使用什么将完全取决于你想保护自己的威胁的性质。