写点什么

AWS Web Application Firewall:加固不安全 Web 网站的安全性

  • 2017-08-10
  • 本文字数:1666 字

    阅读完需:约 5 分钟

Web Application Firewall (WAF)是 AWS 的一个新特性,它部署在用户公开网站的前端,保护网站免受异常流量的侵扰。WAF 的工作机制类似于反向代理,对传入的 HTTP 请求进行检查,查找其中活动可疑的模式。正常的请求才会被传递给用户的 Web 应用做处理,而异常的请求则会被阻塞。WAF 是一种无需更改现有应用即可为应用添加一层安全的工具。

通过设置一些用于识别并管理可疑流量的策略,我们可以配置 WAF 的行为。Amazon 已发布了 PDF 格式的白皮书,阐述了如何使用 WAF 去规避在 Web 应用中最广为出现的“ OWASP 十大安全漏洞”。对于所请求的传入请求(例如安全令牌),或是受限的传入请求(例如 SQL 关键字),不少推荐方法使用字符串匹配去检查请求的头部或主体内容。为实现更多的威胁检测,还有一些方法建议将 WAF 与 Lambda 或 CloudFront 组合。

WAF 是一种通用工具,它对于部分类型的攻击的成功率,要远高于其它类型的攻击。通过分析请求,相对易于规避注入攻击,这无需知道应用的上下文。用户可以配置 WAF 去检查请求查询字符串中的 SQL 关键字,实现对可疑活动的阻止。但是对于那些借助于颠覆应用上下文内安全的攻击,则是难以规避的。如果用户应用使用了独特的跨站请求伪造(Cross-Site Request Forgery,CSRF)令牌,我们无法配置 WAF 去拒绝一个重放已用令牌的请求,这需要在 WAF 和用户应用间构建一个用户定制的集成。

就 WAF 这类通用工具是否可以成功地加固那些不安全的 Web 应用这一问题,InfoQ 采访了 Mark Nunnikhoven 。Mark 是 Trend Micro 云技术研究部门的副总,也是一位 AWS 社区英雄(Community Hero)。

InfoQ:你认为近期高调出现的一些违规行为是否能被 WAF 这样的工具所阻止?

Mark Nunnikhoven:违规行为的发生是有一系列的原因,但常见的是利用 Web 应用的漏洞。跨站脚本攻击 (Cross Site Scripting) 和 SQL 注入攻击持续是被攻击者所采用的一些特别有效的方法。AWS WAF 对这些攻击方法非常有效。WAF 在设计上就是分析 Web 应用流量并查找异常,它对于用户的 Web 应用是一种简单并有效的防御层。

InfoQ:“OWASP 的十大安全漏洞”是很多安全规划、审计和 WAF 等工具的关注点。是否能解决这十大安全漏洞就足矣?或者为了加固 Web 应用,还需要考虑更多的问题?

Nunnikhoven:“OWASP 的十大安全漏洞”近期做了一些更新,但令人沮丧的是改动并不大。开发人员继续在犯着同样的错误,平台也继续在暴露类似的问题。安全问题具有长尾效应,十大安全漏洞只是给出一些最大的关注点。如果一个应用能很好地解决这十个领域问题,那么该应用就具有着坚实的安全基础。如果用户还没有率先解决这些基础的问题,那么完全没有必要去操心那些不太可能会影响到自身应用及用户的未知攻击。

InfoQ:我们可以使用 WAF 的工作流为模型创建自己定制的代理,在不改变应用的情况下增加安全。这是否有可能?或者还是需要通过修改应用才能解决安全缺陷?

Nunnikhoven:任何第三方的安全控制都是设计用于强化应用,AWS WAF 也是如此。安全控制是一种安全的网络,那些破坏了良好设计的应用及其支撑平台的问题会落在网中,并被安全网络所捕获。

InfoQ:安全正成为云的一个特性。AWS 提供了 WAF 和 Amazon Inspector 特性,后者检查部署中的不安全配置。Azure 提供了 Security Center 特性,自动规避安全攻击,并给出增加安全的推荐。安全是否能构成了迁移到云端的一个正当理由?

Nunnikhoven:安全绝对是迁移到云的一个理由。各大云服务提供商,例如提供全球范围服务的 AWS、Microsoft 和 Google,提供了强大的基础服务,用户可以在此上构建自己的应用,这些应用都运行于共享责任模型下。这就是用户和云服务提供商间在六个主要领域(即物理、架构、虚拟化、操作系统、应用和数据)上划分日常职责之处。

这一模型意味着用户可聚焦于更少的领域。用户将部分工作代理给服务提供商,仅需验证所提供的服务是否适合自身的需求。使用云技术,我们可以花用很少的精力完成很多的事情。这对于构建安全应用是一个非常好的环境。

查看英文原文 AWS Web Application Firewall: Bolt-on Security for Insecure Websites

2017-08-10 19:001821
用户头像

发布了 227 篇内容, 共 78.7 次阅读, 收获喜欢 28 次。

关注

评论

发布
暂无评论
发现更多内容

在Ubuntu的Vscode中怎么添加第三方库文件sqlite3.h

linux大本营

sqlite Linux ubuntu vscode

ES开发指南|如何快速上手ElasticSearch

浅羽技术

全文检索 搜索 Lucence Elastic Search 三周年连更

领先企业的数智化进入2.0阶段,需要升级数智底座

用友BIP

创建和管理复杂的项目:OmniPlan Pro 4 mac中文版

真大的脸盆

Mac Mac 软件 项目管理工具 项目流程软件

C++11引入了std::atomic模板类无锁栈的实现如何判断栈空

linux大本营

多线程 线程安全 C++11

想转行计算机但不知道转哪个方面比较好?

linux大本营

软件开发 计算机

Apache derby 和sqlite进行对比

linux大本营

sqlite 数据库

怎么查看 .crash文件

linux大本营

Linux gdb Crash 内核 perf

C语言sqlit3创建表格怎么写

linux大本营

sqlite 数据库 C语言

@PathVariable 和 @RequestParam 的区别

linux大本营

arm m4 xpsr每一位的作用

linux大本营

寄存器 arm

ubuntu安装kernel-debuginfo

linux大本营

20道mysql数据库笔试题及答案

linux大本营

MySQL 数据库

AI大模型加速RPAxAI时代到来,谁会是RPA领域的杀手级应用?

王吉伟频道

RPA AI大模型 ChatGPT RPAxAI 企业级RPA

【Linux】iptables之防火墙概述及规则匹配+实例(1)

A-刘晨阳

Linux iptables 防火墙规则 三周年连更

C++grpc 服务器接收到请求后如何处理

linux大本营

gRPC 序列化 protobuf C++

什么叫函数的注册,用c++举个例子

linux大本营

c++ 函数

koal_dm8_crypto.so.1.0.9.x86.b6f523 怎么安装

linux大本营

Linux linux文件

stl中,cbegin,cend,crbegin,crend区别以及用途

linux大本营

容器 stl C++ STL

改变this指向的方法

linux大本营

指针 C语言 this指针

请详述c++中 lambda表达式使用

linux大本营

Lambda vector Function C++

delphi中TServerSocker使用stThreadBlocking模式的例子

linux大本营

缓解过拟合方法

linux大本营

winDbg 提示 Unable to verify checksum for IOCommModel.exe

linux大本营

网络安全 数字证书

leaflet加载聚合

linux大本营

linux tee命令

linux大本营

linux命令 TEE

火山引擎云原生数据仓库ByteHouse技术白皮书V1.0 (Ⅴ)

字节跳动数据平台

数据仓库 云原生 白皮书 企业号 4 月 PK 榜

/sbin/kexec参数说明

linux大本营

Linux 镜像 Linux内核

linux crash怎么分析

linux大本营

Crash Linux内核

fmt库c++

linux大本营

C++ fmt

uniapp配置基本的tabbar和动态修改内容

格斗家不爱在外太空沉思

uni-app 三周年连更

AWS Web Application Firewall:加固不安全Web网站的安全性_亚马逊云科技_Elton Stoneman_InfoQ精选文章