你的网站安全吗?WEB应用安全总结


  本文标签:网站安全

利用安全越来越主要 —— 互联网上看到的大多数安全事件 根本都和 利用安全,尤其是 WEB 利用安全有关( 随便翻翻 wooyun 之类的就晓得了)  。近期几年的工作 根本都和 利用安全有关系,借着这个机会也总结一下自己的一些观点  。

WEB 利用安全的常见思路

这篇文章不包括 DDoS 和业务 有关的问题 —— DDoS 主要是网络层解决的问题,我没有把放到 WEB 利用安全这个领域 探讨;业务 有关的安全,特殊是业务 特点或者业务 规定带来的安全问题也不在这个 探讨 规模之内  。

下面只不过大约的分类,并不 谨严  。

通过工具来 加强 WEB 利用的安全

工具一般对 利用开发过程影响十分小, 惟独求在部署的时候做些配置通常即可起到防护作用  。工具主要以防火墙、WAF 和各类扫描产品为主  。这些产品通常基于 特色,很难做到 深刻 了解被防护的 WEB 利用,这类产品通常会遇到众多 挑战  。

因为被 掩护的 WEB 利用对这些传统工具而言属于“黑盒”,要做到有效防护的代价很高  。个人认为当前传统的产品更 合适做大 规模、 方便、 统一的操纵,作为 根底设施提供无差异的防护;也 比较 合适做应急措施,用来缩小 Heartbleed、Struts2 远程代码执行 这类 漏洞的响应 工夫,为彻底修复赢取足够的 工夫窗口  。

误报率和漏报率:这个大家都懂的,从防病毒软件到 IDS、IPS 到扫描器到 WAF, 惟独是基于 特色库, 根本都走在这个“ 均衡木”上,很难做到既误报低又漏报少  。

0day:WEB 利用的 0day 太方便发现,WEB 利用数量又是海量,真正 充足考量到安全的 WEB 利用更是 百里挑一  。 因此, 无奈做到发现 0day 甚至是 快捷响应 0day,会十分难受,而 方便基于 规定很难做到发现“未知”  。

普适和定制: 利用的数量远多于操作系统、数据库这些通用组件, 利用层的安全 审查或者防护工具 无奈做到 遮蔽所有的 利用(例如:wordpress 和企业 ERP 便是 彻底不同的 利用)  。

难以 铲除的 漏洞: 惟独不 批改代码、不打补丁,这个 利用就始终存在安全 漏洞  。一旦浮现盲点,招致 突击者 可以直接 拜访到被 掩护的 WEB 利用,安全防护措施都失去 意思(现在的业务系统都是 分布式系统,十分方便浮现盲点;尤其是各种 CloudWAF,被绕过的可能性更大)  。

通过开发流程操纵 加强 WEB 利用的安全

SDLC 是 Secure Software Development Life Cycle 的简写,有时候也被称作 SDL 或 SSDLC   。SDLC 的特色是在软件开发的生命周期中都“嵌入”了安全的“基因”,对软件产品的安全性有 性质上的 普及  。业界最 顺利的案例便是 Microsoft 通过 10 多年 连续的 施行 SDL 让其 Windows 产品的安全性有了极大地 普及  。

 

你的网站安全吗?WEB
利用安全总结 

SDLC 需求安全 彻底嵌入到软件开发的所有 运动中,十分依赖于人员和工具( 漏洞扫描、代码审计、……),也遇到了一些 挑战  。

从某种 意思上来说,SDLC 仅仅 实用于 部分公司,这类公司一般有 巩固的开发组织、流程;业务 变迁没有那么快, 绝对 比较 巩固;业务十分依赖于 IT 或者软件开发  。 扩大浏览:如何在你的组织内采纳 SDL  。

工夫:业务 特点 本身的进展十分快,业务 特点的开发一般是整个开发团队产出的核心度量指标(特殊是互联网公司)  。新增的安全 特点会延缓产品开发进度, 因此开发团队会 偏向于事后修复;而 连续的业务压力又会让历史遗留问题修复很难 获得高优先级  。 性质上是个“技术债”的问题  。

专业 常识:开发团队的核心 威力并不是安全  。 即便是 SDLC 中的培训,也是仅以解决常见、通用 突击 模式为 指标,在面临新型 突击或复杂 突击时,需求对安全领域有全面和 深刻的了解  。很难有开发人员在跟上开发领域技术进展的同时,还能补上安全领域 常识,而且跟上安全领域的进展  。

资源:大型组织所开发 使用的 利用一般十分 宏大,在开发流程中构建 完全的 SDLC 无论是在组织还是技术层面会让大多数的组织难以 承受  。

误报:SDLC 中 使用了十分多的工具,这些工具通常都会产生误报,这些误报十分方便 构成开发人员抵御 SDLC 的缘由  。

流程:SDLC 性质上是让开发人员 重视安全,越多开发人员有安全意识公司开发出来的产品就越安全  。但 害处是,大多数状况下很难有人能评估安全是不是已经足够了(甚至做过头了)  。特殊是在 工夫压力很大且不足专业 常识的状况下,SDLC 十分方便流于 模式  。

通过 加强对 利用感知和 连续监控 加强 WEB 利用安全

核心思路便是在开发过程中引入安全 有关的 SDK 或 Plugin  。通过这些 Plugin 或 SDK 让 利 器具备缺省的安全 性能,且让安全人员 连续的对 利用进行 监督、响应( 可以更 深刻到 利用的运行时)  。

这个思路中 要害的一项技术当前被 Gartner 定义为 RASP  。RASP 是 Runtime Application Self-Protection 的缩写,通过嵌入 Application 的代码让 利用程序 本身具备 定然的 挟制感知和防护 威力  。通常 RASP 天生就 可以与 其余安全产品集成  。Gartner 总结了这个定义,而且在 Hype Cycle for Application Security, 2014 中给把他列入到了 On the Rise 阶段(属于被关注的新技术,但并没有大 规模地被验证和 承受)  。而 Gartner 早在 2012 年就在 Runtime Application Self-Protection: A Must-Have, Emerging Security Technology 介绍过,并估计 2017 年 25% 的 利用会具备这个这个 威力  。当前已经有多家厂商推出了产品,开源社区也有相应的实现  。

HP: HP Application Defender

Prevoty: Prevoty Runtime Application Security

waratek: Application Security for Java

OWASP: AppSensor 是一个开源 方案  。

Shandowd: Shadowd 是一个开源 方案  。