Signal Sciences 下一代WAF

上月,Gartner 刚发布了 WAF 魔力象限报告1。美国初创公司Signal Sciences进入到远见者象限,这也是它首次入选。Signal Sciences是下一代WAF的倡导者,今天在此就其WAF产品做一简单分享,内容均取自官网。

产品概念

下一代的概念,于安全行业并不罕见,用在技术推陈出新和颠覆市场的领域,比如业界最为成功的案例之一—Palo Alto的下一代防火墙,以及现今热词“下一代SIEM”。那么首先让我们看看 Signal Sciences 是如何阐释它对下一代的理解。它立足于当前web应用架构和开发模式发生的变革。架构上来说,从传统的三层架构(web服务器-应用服务器-数据库)向微服务架构变迁。软件开发模式从传统的瀑布到敏捷再到DevOps,版本上线频次从月到周、也可能是天。最后是基础架构的变化,应用异构混合运行于传统机架服务器上、云上或者容器中。Web应用防护也需要对应做出改变,主要有如下两点考量:

  1. 安全能力:传统WAF的检测技术通常基于特征匹配和静态签名/规则,误报和漏报是一对较难调和的矛盾,通常的经验是上线过程或者应用变更时花费大量时间进行规则调优。而由于误报问题,在生产环境中可能仅启用相对有限的检测规则,这导致WAF被绕过的概率增加,或者有的企业会采用仅检测和告警但不阻断的工作模式。其后发展出的动态建模和自学习(代表厂商Imperva)试图通过对大量正常请求样本进行训练,生成正常请求的模型描述。这种检测技术往往需要一定的学习周期(周或月),很难适用于DevOps开发模式下的版本快速迭代周期。因此,相较传统WAF检测技术,需要有更优的技术方案提升检测精度、解决误报问题并降低对应的维护成本。
  2. 对云原生以及传统架构应用多场景的适配和可扩展性:能够为运行于各类云平台、容器平台、传统机架web服务器、API网关上的web应用和服务提供防护。

产品架构

Signal Sciences提供了一个混合的SaaS解决方案,产品架构有两个主要的组件:部署在服务器/应用侧的代理和模块(Signal Sciences Agents and Modules ),以及云端的分析引擎和管理平台(Signal Sciences Cloud Engine )。


产品架构.png

Module是可选的,部署于Web服务器软件(IIS/Apache/NGINX)上,负责将HTTP请求转发到Agent上。Agent是一个小于10M的安装包、基于SmartParse技术进行安全检测和决策。Module和Agent协同,提供一种fail-open可靠性保障机制,也即如果Module在默认可配的100ms内接收不到任何Agent响应,它就会把请求直接传递给应用。

Cloud Engine部署在AWS上,负责收集Agent侧提供的与攻击相关或者异常的元数据(包括UA、IP、URI、path、X-Forwarded-For等字段)、外部IP情报数据(Geo IP、TOR、SANS恶意IP列表以及其他第三方数据)以及内部威胁研究数据(如CVE跟踪),并做关联分析形成自身的IP情报(称为Signal Sciences NLX)。同时作为统一配置管理console,提供仪表盘、告警监控;提供API接口与第三方SIEM产品集成;与通用的DevOps工具集成(Slack、Jira等),提供完整的告警信息详情给开发和运维团队;云端Power Rules的配置管理。

Agent会每30秒轮询Cloud Engine获取新的恶意IP列表以及Power Rule的配置。

从架构来看,不同于传统WAF产品,Signal Sciences在用户侧更加轻量化,重云端的安全分析能力。

安全能力

Signal Sciences下一代WAF主要应用了3种技术:用户侧Agent应用的SmartParse检测技术、云端运营的Power Rules以及NLX(Signal Sciences 自身生产和运营的IP情报)。且得益于前面介绍的架构,通过本地和云端结合,提供整合型的防护方案,提升整体安全检测防护能力。

SmartParse提供了一种无签名检测机制,Signal Sciences 宣称相较传统检测提供更低的误报,其95%的客户将产品运行在完全自动阻断模式下。从披露的公开材料来看,它是一种基于词法分析的检测技术,分析请求参数以确定代码实际是否可执行,令牌化/标记(tokenize)其结果,并在runtime层分析该请求的标记化表示形式,用于检测注入和XSS攻击,示例如下。(注:词法分析在2005、2012以及2014黑帽大会上均有相关技术的介绍,国内WAF厂商长亭也应用了词法和语法分析检测技术。)。


SmartParse.png

Power Rules则是云端提供的防护规则,检测业务逻辑层面的安全问题(如账号接管攻击ATO/身份凭证填充攻击Credential Stuffing、API滥用等)以及CVE漏洞利用。以身份凭证填充攻击为例,它会监控可能的攻击指标并进行分析,如:与用户正常地理位置不同的登录尝试、所有用户不断增加的登录尝试失败次数、来自可疑IP地址的成功登录等。

Signal Sciences NLX,也即Network Learning Exchange,基于用户侧Agent的数据收集、关联分析形成IP情报。Signal Sciences博客披露的信息2,目前它防护有27000个应用,每月检测1万亿次web请求并阻断掉1.5亿次恶意请求。不同于传统WAF单纯基于规则检测针对单个请求进行检测,Signal Sciences下一代WAF还会随着时间推移(设定时间阈值)并根据上下文查看可疑的载荷,降低误报,也可能帮助发现新的攻击。具体实现上,Agent检测到进入请求包含攻击时,会将该请求摘要发送给云端。 当基于使用大数据分析建立的预定义且可自定义的阈值判断,看到来自潜在攻击者足够多的恶意活动,Cloud Engine会将该用户/IP标记为阻断。下图是30天事件报告样例,汇总了阻断的攻击(左列)、来自被标记IP地址被阻断的恶意请求数(右上)。 时间轴视图帮助了解Signal Sciences如何阻止来自已知恶意IP地址的请求以及当前状态(当前活跃的或过去的事件)。

blog_30dayEventsReport.jpg

部署场景

部署场景上, Signal Sciences 考虑了适配不同架构下的web应用,传统架构和云原生的。

  1. Module运行于Web服务器软件(IIS/Apache/NGINX)或者作为RASP语言模块运行在Java, Go, Python, .NET, Node.js, or PHP应用程序中,用于转发请求给Agent。
  2. 可以不需要Module,Agent作为独立的反向代理,部署在web应用前端,这种方式适用于传统架构的web应用,也是主流/传统WAF逻辑上的部署位置。
  3. 今年5月,新发布的云WAF,可以不用在用户侧安装Agent。


    部署模式.png

针对容器环境的部署,也有多种方式,可以部署于容器中,也可以作为独立的sidecar。


Kubernetes部署方式.png

今年5月,发布版本支持Envoy集成,部署上,由Envoy扮演Module的角色,负责转发请求给Agent,从而实现微服务间南北向流量和东西向流量的防护。


Envoy集成.png

小结

前面就Signal Sciences下一代WAF产品做了简单介绍。它的下一代WAF概念围绕安全技术的变化以及对云原生与传统架构应用多场景的适配。

结合近两年Gartner的报告以及主流厂商的动态来看,针对web应用安全,大家更多在拓展原有WAF产品的外延,叠加更多的安全能力试图解决更多技术场景问题,比如Gartner近两年在提的云WAAP(cloud web application and API protection)服务,包括抗DDoS、bot缓解、API防护以及WAF。厂商也在重点投入bot 缓解、API防护(包括营销以及产品投入上),如Imperva今年上半年收购了Distill Networks,迅速扩充其bot管理上的技术能力。而Signal Sciences则试图通过无签名检测机制、IP情报、云端分析能力来提升检测和防护能力,并且更多去理解web应用,确保开发、运维以及安全团队目标一致,了解开发生命周期中的安全要求。那么,是否如Signal Sciences所描述的愿景:“我们正在变革web应用安全”,它能另辟蹊径,发展出下一代WAF的新市场?或者另一个问题,未来独立WAF市场是否会继续存在?

  1. “Magic Quadrant for Web Application Firewalls”,Jeremy D'Hoinne, Adam Hils, Claudio Neiva, Rajpreet Kaur,Gartner,2019年9月17日
  2. https://www.signalsciences.com/blog/gartner-magic-quadrant-top-waf-vendor/
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,362评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,330评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,247评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,560评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,580评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,569评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,929评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,587评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,840评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,596评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,678评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,366评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,945评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,929评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,165评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,271评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,403评论 2 342

推荐阅读更多精彩内容