四、Web安全产品分析
围绕Web服务的安全,产品可以说五花八门,最基本的是接入网入口的UTM网关,其中IPS功能与防DDOS功能是Web服务器系统级入侵的直接防护,但UTM是通用的边界安全网关,非“专业的”Web入侵防护,一般作为安全的入门级防护,这里不细说。这里主要分析专为Web服务开发的安全产品,大概有下面几方面的产品:
1、网页防篡改产品:
防护未知攻击是难的,但看好我自己的“家底”是相对容易的。因此,人们最先想到的就是网页防篡改技术,保持自己的“纯洁”,起码对社会不会造成大危害。网页被篡改产品出现在Web早期,几经风雨,各厂家技术逐渐统一。网页防篡改技术的基本原理:是对Web服务器上的页面文件(目录下文件)进行监控,发现有更改及时恢复。所以该产品实际是一个“修补”的工具,不能阻止攻击者的篡改,就来个守株待兔,专人看守,减少损失是目标,防篡改属于典型的被动防护技术。
网页防篡改产品的部署:建立一台单独的管理服务器(Web服务器数量少可以省略),然后在每台Web服务器上安装一个Agent程序,负责该服务器的“网页文件看护”,管理服务器是管理这些Agent看护策略的。
我们先分析一下“页面文件看护”技术的变迁:
a)第一代技术,把Web服务器主目录下的文件做一个备份,用一个定时循环进程,把备份的文件与服务使用的文件逐个进行比较,不一样的就用备份去覆盖。网站更新发布时,则同时更新主目录与备份。这种方法在网站大的情况下,网页数量巨大,扫描一遍的时间太长,并且对Web服务器性能也是挤占。
b)第二代技术,采用了Hash算法,对主目录下的每个文件做Hash,生成该文件的“指纹”,定时循环进程直接计算服务用文件的Hash指纹,然后进行指纹核对,指纹一般比较小,比较方便;指纹具有不可逆的特点,不怕仿制。
c)第三代技术,既然网站上页面太多,三级以下页面的访问量,一般使用呈指数级下降,没人访问当然也不会被篡改,在这些页面重复扫描是不划算的。改变一下思路:对文件读取应该没有危险,危险的是对文件的改写操作。若只对文件被改变时才做检查,就可以大大降低对服务器资源的占用;具体做法是:开启一个看守进程,对Web服务器的主目录文件删改操作进行监控,发现有此操作,判断是否有合法身份,是否为授权的维护操作,否则阻断其执行,文件不被改写,也就起到了网页防篡改的目的。这个技术也称为事件触发防篡改。
这种技术需要考验对服务器操作系统的熟悉程度,但黑客也是高手,你的看护进程是用户级的,黑客可以获得高级权限,绕过你的“消息钩子”,监控就成了摆设。
d)第四代技术,既然是比谁的进程权限高,让操作系统干这个活儿,应该是最合适的,黑客再牛也不可能越过操作系统自己“干活”。因此,在Windows系统中,提供系统级的目录文件修改看护进程(系统调用),防篡改产品直接调用就可以了,或者利用操作系统自身的文件安全保护功能,对主目录文件进行锁定(Windows对自己系统的重要文件也采取了类似的防篡改保护,避免病毒的侵扰),只允许网站发布系统(网页升级更新)才可以修改文件,其他系统进程也不允许删改。
这个方法应该说比较彻底,但可以看出,以后防篡改技术将成为操作系统的“专利”了,安全厂家实在是不愿意看到的。好在目前Linux还没有支持。
网页防篡改系统可以用于Web服务器,也可以用于中间件服务器,其目的都是保障网页文件的完整性。
网页防篡改对保护静态页面有很好的效果,但对于动态页面就没有办法了,因为页面是用户访问时生成的,内容与数据库相关。很多SQL注入就是利用这个漏洞,可以继续入侵Web服务器。
到目前为止,很多网页防篡改产品中都提供了一个IPS软件模块,用来阻止来针对Web服务的SQL注入、XML注入攻击。如国内厂家的WebGuard、iGuard、InforGuard等产品。
2、Web防火墙产品:
防止网页被篡改是被动的,能阻断入侵行为才是主动型的,前边提到的IPS/UTM等产品是安全通用的网关,也有专门针对Web的硬件安全网关,国内的如:绿盟的Web防火墙,启明的WIPS(web IPS),国外的有imperva的WAF(Web Application Firewall)等。
Web防火墙,主要是对Web特有入侵方式的加强防护,如DDOS防护、SQL注入、XML注入、XSS等。由于是应用层而非网络层的入侵,从技术角度都应该称为Web IPS,而不是Web防火墙。这里之所以叫做Web防火墙,是因为大家比较好理解,业界流行的称呼而已。由于重点是防SQL注入,也有人称为SQL防火墙。
Web防火墙产品部署在Web服务器的前面,串行接入,不仅在硬件性能上要求高,而且不能影响Web服务,所以HA功能、Bypass功能都是必须的,而且还要与负载均衡、Web Cache等Web服务器前的常见的产品协调部署。
Web防火墙的主要技术的对入侵的检测能力,尤其是对Web服务入侵的检测,不同的厂家技术差别很大,不能以厂家特征库大小来衡量,主要的还是看测试效果,从厂家技术特点来说,有下面几种方式:?
- 代理服务:代理方式本身就是一种安全网关,基于会话的双向代理,中断了用户与服务器的直接连接,适用于各种加密协议,这也是Web的Cache应用中最常用的技术。代理方式防止了入侵者的直接进入,对DDOS攻击可以抑制,对非预料的“特别”行为也有所抑制。Netcontinuum公司的WAF就是这种技术的代表。?
- 特征识别:识别出入侵者是防护他的前提。特征就是攻击者的“指纹”,如缓冲区溢出时的Shellcode,SQL注入中常见的“真表达(1=1)”…应用信息没有“标准”,但每个软件、行为都有自己的特有属性,病毒与蠕虫的识别就采用此方式,麻烦的就是每种攻击都自己的特征,数量比较庞大,多了也容易相象,误报的可能性也大。虽然目前恶意代码的特征指数型地增长,安全界声言要淘汰此项技术,但目前应用层的识别还没有特别好的方式。?
- 算法识别:特征识别有缺点,人们在寻求新的方式。对攻击类型进行归类,相同类的特征进行模式化,不再是单个特征的比较,算法识别有些类似模式识别,但对攻击方式依赖性很强,如SQL注入、DDOS、XSS等都开发了相应的识别算法。算法识别是进行语义理解,而不是靠“长相”识别。?
- 模式匹配:是IDS中“古老”的技术,把攻击行为归纳成一定模式,匹配后能确定是入侵行为,当然模式的定义有很深的学问,各厂家都隐秘为“专利”。协议模式是其中简单的,是按标准协议的规程来定义模式;行为模式就复杂一些。
Web防火墙最大的挑战是识别率,这并不是一个容易测量的指标,因为漏网进去的入侵者,并非都大肆张扬,比如给网页挂马,你很难察觉进来的是那一个,不知道当然也无法统计。对于已知的攻击方式,可以谈识别率;对未知的攻击方式,你也只好等他自己“跳”出来才知道。
“自学习”功能的发展:
Imperva公司的WAF产品在提供入侵防护的同时,还提供了另外一个安全防护技术,就是对Web应用网页的自动学习功能,由于不同的网站不可能一样,所以网站自身页面的特性没有办法提前定义,所以imperva采用设备自动预学习方式,从而总结出本网站的页面的特点。具体的做法是这样的:
通过一段时间的用户访问,WAF记录了常用网页的访问模式,如一个网页中有几个输入点,输入的是什么类型的内容,通常情况的长度是多少……学习完毕后,定义出一个网页的正常使用模式,当今后有用户突破了这个模式,如一般的帐号输入不应该有特殊字符,而XML注入时需要有“<”之类的语言标记,WAF就会根据你预先定义的方式预警或阻断;再如密码长度一般不超过20位,在SQL注入时加入代码会很长,同样突破了网页访问的模式。
网页自学习技术,从Web服务自身的业务特定角度入手,不符合我的常规就是异常的,也是入侵检测技术的一种,比起单纯的Web防火墙来,不仅给入侵者“下通缉令”,而且建立进入自家的内部“规矩”,这一种双向的控制,显然比单向的要好。
Citrix公司收购了Teros后,推出的应用防火墙通过分析双向流量来学习Web服务的用户行为模式,建立了若干用户行为模型,一但匹配上你是某个行为,就按该模式行为去衡量你的行为做法,有“越轨”企图立即给予阻断。这个自适应学习引擎与Imperva公司的网页自学习有些类似,不过一个重点是学习网页特点,一个是学习用户访问的规律。
从安全角度来说,网业自学习技术与入侵防护结合使用,是理想的选择。
Web防火墙的未来出路:
有一种说法:因为Web服务器前的负载均衡设备、Web 加速设备是不可缺少的,又是Web服务器群的出口必经之路,所以Web防火墙的功能有可能与这些设备合并。这种发展趋势有些象网关UTM与单独的FW、IPS、AV、VPN等设备进化发展一样,UTM就是这些网关的集合产品。
但我有一个不同的看法:UTM部署于网络的外连接出口,一般是互联网出口,其网络安全隔离作用,这里的带宽价格昂贵,所以拥有大带宽的用户很有限,而Web服务器群是与网络主交换机连接的,提供的是应用处理能力,要求的参数常是并发用户的数量与在线用户的数量,服务器一般都是千兆接口,目前的交换机就可达到几十个TB的交换能力,在大流量链路上做多功能的安全产品,又是应用层的检测,对产品的硬件压力是巨大的,能达到“线性”流量的产品一定价格昂贵,因此Web防火墙的这种合并思路是有待商榷的。
3、Web数据库审计产品:
有效恢复是安全保障的一个很重要的理念。我们提到动态网页的防护难点是用数据库现场生成的,因此对数据库的修改就变得很关键, Web数据库审计产品的目的就是对数据的所有操作进行记录,当发现问题时,这些操作可以回溯。打个比方,你在游戏中的装备被别人给“划走”了,过了一周,你发现了,但一周中,游戏在继续,你的装备有很多新动态,合理与不合理变化交织在一起。此时,若管理人员知道确定是“某人”的篡改,就可以把他的动作进行“逆向”操作,你的游戏仍可以继续,不受影响;若通过协商,需要恢复到篡改前的某个状态,则在数据库中先取得篡改前最近一次的备份数据,再使用数据库的审计记录,一直“操作”到篡改前的状态,游戏就可以继续了。这种技术与数据库的实时同步备份技术是类似的。
当然数据库的操作量很大,全部记录需要很大的数据空间,所以,Web服务中重要数据库操作才进行详细审计,审计的目的是为了运营状态的可恢复。常见的Web审计数据:?
- 帐户操作:涉及权限的改变?
- 运营操作:涉及“财与物”的变化?
- 维护操作:涉及“特殊权限”人的动作
Web数据库审计产品一般采用旁路部署,不影响数据库的业务效率。若在业务流量不很大的情况下,可以采用Agent的软件方式,但是不建议完全依靠数据库自身的日志功能,因为,入侵者破坏后一定有“抹去痕迹”的步骤,痕迹一般就是系统本身的日志,单独的审计机制保障了日志的完整性。
4、Web木马检查工具:
Web安全不仅是维护网站自己安全,通过网站入侵用户电脑的危害也十分棘手。网页容易被挂上木马,或被XSS攻击利用,是否有工具可以对所有的网页进行安全检查呢?这里用到了“爬虫”技术。
“爬虫”技术最早是搜索引擎“发明”的,搜索网站放出N个小“爬虫”,在世界各地的网站上循环扫描,收集网站上的新信息,建立供世界人民查找的数据库,这样大家就可以从Google、百度等搜索门户上搜到你想要的任何东东。由于“爬虫”来自网站外部,所以可以模拟用户打开网站的实际效果,所以“爬虫”很快被网站用来测试自身性能的“用户体验”工具,比如网页打开的速度,用户互动的等待时间等。作为用户体验工具,“爬虫”很快也在企业内部网络上开始流行,关注用户感受,是08年开始IT领域内最流行的开发理念。
所谓“爬虫”就是这样一些进程,按照一定的规则(横向优先搜索、纵向优先搜索),将网站上所有的页面打开一遍,(你知道很多网站的点击率飞涨的原因了吧,是有无数的小爬虫在工作…),在对网页上关心的事情进行检查。由于是以用户的身份“浏览”网页,所以没有静态与动态页面的差别。Web木马检查工具就是基于这个原理开发的,不同于搜索爬虫的是,在网页检查时,重点查看网页是否被挂木马,或被XSS利用。因为网站内的URL链接去向应该可追溯的,所以对XSS的检查是很有效的。(“爬虫”有些象网页防篡改的文件检查进程是吧,不过一个是在Web服务器的内部,另一个是在web服务器的外部。)
Web木马检查工具一般作为安全服务检查使用,也可以单独部署一台服务器,定期对网站检查,发现问题及时报警。该工具目前市场上的产品化很少,一般不销售,网上有些免费的类似软件可以试用,随着Web服务在企业内的应用增多,该工具应该象防病毒检查工具一样流行。
五、新的想法——主机Web网关
Web服务是从互联网技术发展起来,互联网是“草根”文化的集大成者。在互联网中,共享智慧是追求,简捷实用是方法。
很常见的现象,Web服务的处理能力采用集群技术、云计算技术,都是利用物美价廉的PC服务器集成在一起,而不是选用“庞大”的巨型机。P2P技术、CDN技术都是网民降低Web服务中心压力,而又能支持大用户、实时流媒体业务的“互联网Web技术”。但这也为Web业务的安全防护带来问题—网络结构问题。为了提供处理能力,众多的服务器“网”一样地接在核心交换机上,在服务器前没有汇聚点,web防火墙的部署就成了问题。
草根文化的特点就是系统避免过渡依赖某一个点(大家都是重要的)。Web服务不同于传统银行模式的集中处理,服务器是PCServer组成的群,由于加入与离开群,对群的服务没有影响,只是服务处理能力的动态变化而已,所以服务器群中的每个服务器的处理能力相对不是那么宝贵,某个服务器的异常宕机也只是对个别的用户服务有些“临时影响”,在服务器中安装Agent的“恐惧”,Web服务管理者应该是没有的。
为了与“群”或“云”等Web新型网状结构相适应,Web服务应用层的防护,可以与网页防篡改合起来(尤其是OS提供底层的文件修改监控),我们给它一个新的名字——主机Web网关(Host Web Gateway)。
主机Web网关的部署与防篡改产品一样,以Agent的形式嵌入到Web服务器中,不需要再关心Web服务的网络结构,同时,也避免了在Web服务使用加密协议时,网关安全设备对应用层攻击无能为力的弊端。
主机Web网关的主要功能:?
- Web应用入侵防护(SQL注入、XSS等)?
- 页面文件防篡改?
- Web网页自动学习功能?
- Web用户访问行为的自学习功能
至于系统级的入侵防护与DDOS防护,放在UTM/IPS中解决,Web服务的网络结构就灵活多了。主机Web网关采用软件形式,没有了串行设备的性能要求,部署的成本也会大大下降。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
VMware收购Shavlik 针对漏洞和配置管理
虚拟化安全巨人VMware公司,日前宣布收购Shavlik Technologies公司,将其安全产品延伸到补丁和配置管理方面。
-
你该怎么办?当安全产品遭遇安全威胁时
当安全产品企业本身也需要利用种种途径来购买其产品的漏洞描述时,事态到底会变成什么样?大多数人都会误以为我们的安全保障工具本身是安全的,但实际情况却不是这样。
-
深耕服务持续创新 专访梭子鱼中国区技术总监谷新
面对安全局势的变化及不同安全产品的推陈出新,企业用户该如何甄别不同的产品概念选择出真正适合自己的安全产品?记者就此采访了梭子鱼中国区技术总监谷新,请他为我们解答。
-
智领信息可控 护航网络安全
8月26日,由国内信息安全领军企业——网御神州主办的2010年安全产品全国巡展登陆杭州。此次展会的主题为“安全可控——面向业务保障的新技术发展趋势”。