1. Web安全的过去
Web安全,是网络安全的一个重要分支。过去提到Web安全, 更多的是关注Web漏洞的工作原理、与如何利用漏洞进行攻击。
在没有网络安全法,大多数的甲方没有成立应急响应中心,安全的相关工作,很多是由IT、甚至是程序开发自己来运维, 很多漏洞存在于各种业务系统里,而业务开发更专注的是自己业务功能的开发,而没有考虑到在业务之外,被开发出来的系统是否存在安全漏洞、开发系统使用依赖的第三库和开源框架,是否存在安全漏洞。
1.1 Web安全漏洞
自己开发的系统是否有漏洞,最典型的就是程序员开发的Web系统使用了数据库,而这个系统是否有暴露SQL注入这些问题。
开发系统使用框架的漏洞,就是比如 Spring、Struts本身是否存在一些安全隐患,比如序列化这种比较典型的安全问题。
在没有形成一个很强的安全防守意识之前,安全的相关书籍,是向大家传播,如果发现网络存在的Web漏洞,如果得用漏洞进行利用攻击,服务器提权,取得肉鸡等操作。
2. Web安全的现在
当人们有意识的安全加固防护自己的Web业务系统时,Web的漏洞的Web攻击与防御手段都发生了变化,那种粗放式,将自己Web业务的漏洞直接暴露在外网情况,会随着对We系统安全的重视变少。
2.1 Web安全系统体系架构
今天,我们在访问一个Web系统时,可能要经过DNS解析、CDN、LVS(负载均衡)、WAF(Web防火墙)、WEB IDS系统、Web攻击威胁智能分析、 WEB攻击语义分析等等系统。甚至还会在WEB业务系统与蜜罐系统进行配合,诱导攻击者攻击,收集攻击的数据、攻击者的攻击手段与风格特征。
随着WEB安全系统防御手段增加, 发现漏洞与完成攻击,不再在过去那么简单,而学习对于一个学习WEB安全的人来说,“攻“与”防”,要同时进行了解。在了解系统漏洞之外,还要了解系统的工作原理与防御手段。
市场上有很多Web安全相关的书籍,《墨守之道-Web安全架构与实践》这本书中, 在攻击与防御两个角度,向大家介绍Web系统工作的原理、Web防御系统的工作原理、让大家了解什么是Web系统,Web系统的组织构成、什么是SQL注入、XSS注入漏洞、WAF(Web防火墙)是如何发现防御这些漏洞的、 如何通过神经网络算法对攻击进行智能化的分析、用语义分析攻击的原理是什么、如何构建自己的Web靶机,搭建本地环境,完成Web Shell攻击,介绍系统是如何通过动态跟踪发现这种Web Shell攻击, 如果通过蜜罐和Web日志分析系统 发现攻击威胁。
墨守之道,是站在攻击与防御两个角度,进行适时的“攻”、“防”角度切换,更全面的了解Web安全当中涉及到的攻击与防御原理,并给出的实践的方案,通过“读‘与”做“结合,增加Web安全学习效果。
2.2 攻击与防御的较量
在安全领域,基于OpenResty Lua技术实现的WAF(Web防火墙)层出不穷。对于WAF系统,主机检测系统,面向安全运维人员,构建安全策略的遍历性与防御系统的性能是很重要的主题,这本书在过去基于Lua构建的WAF系统之外,引入了DSL小语言,同样的运行OpenResty系统之上的EdgeLang、基于Agent工作模式的动态跟踪分析,利用YSQL这种云原生的语言发现Web Shell攻击过程中的证据痕迹,站在一个新的技术角度,展现攻击与防御技术的较量。
以上这些,是积累Web安全知识成长的一个土壤环境,在这个环境下,Web安全的学习就是从零开始的,由浅入深。