iguard网页防篡改白皮书
错误:未指定书签。
错误:未指定书签。
www.tcxa.com.cn
W-008-0103-D
目 录
第1章 产品概述 .................................................................................. 1
1.1 什么是IGUARD ........................................................................... 1
1.2 谁需要IGUARD ........................................................................... 2
1.3 谁在用IGUARD ........................................................................... 4
1.4 IGUARD资质和许可证 .................................................................. 4
1.5 IGUARD的研发历史...................................................................... 5 第2章 技术原理 .................................................................................. 6
2.1 PKI公开密钥体系........................................................................ 6
2.2 WEB服务器核心内嵌技术............................................................. 7 第3章 产品规格 .................................................................................11
3.1 产品组成...................................................................................11
3.2 平台支持...................................................................................12
3.3 产品型号...................................................................................14 第4章 产品部署 .................................................................................17
4.1
部署...................................................................................17
4.2 复杂部署...................................................................................20
4.3 集群和冗余部署.........................................................................20 第5章 技术实现 .................................................................................23
5.1 内部结构...................................................................................23
错误:未指定书签。 错误:未指定书签。 ii
5.2 核心技术...................................................................................24 5.3 双引擎防护 ...............................................................................29 5.4 安全技术...................................................................................30 第6章 系统功能 .................................................................................31 6.1 篡改
和恢复.........................................................................31 6.2 自动发布和同步.........................................................................32 第7章 系统性能 .................................................................................33 7.1 测试环境和样本.........................................................................33 7.2 指标-WINDOWS ..........................................................................35 7.3 指标-LINUX ................................................................................37
错误:未指定书签。 错误:未指定书签。 iii
图示目录
图示 1-1 2003-2007年网页篡改事件...................................................... 2 图示 1-2 传统网络安全设备 .................................................................. 3 图示 2-1 WEB服务器的体系结构............................................................ 7 图示 2-2 核心内嵌模块的位臵 ............................................................... 8 图示 2-3 应用防护模块 ......................................................................... 9 图示 2-4 篡改检测模块 ........................................................................10 图示 3-1 IGUARD两台服务器 ................................................................11 图示 4-1 标准部署图 ...........................................................................17 图示 4-2 基本网站结构 ........................................................................18 图示 4-3 部署IGUARD后的网站结构.....................................................19 图示 4-4 集群和双机部署示意图 ..........................................................21 图示 5-1 系统部件示意图 ....................................................................23
表格目录
表格 1-1 IGUARD研发历史..................................................................... 5 表格 3-1 产品型号 ..............................................................................14 表格 3-2 企业发布模块 ........................................................................15 表格 5-1 防篡改技术比较 ....................................................................25 表格 7-1 测试样本数据 ........................................................................34 表格 7-2 发布性能-WINDOWS ...............................................................35 表格 7-3 访问性能-WINDOWS ...............................................................36
错误:未指定书签。 错误:未指定书签。 iv
表格 7-4 发布性能-LINUX .....................................................................37
表格 7-5 访问性能-LINUX .....................................................................38
错误:未指定书签。 错误:未指定书签。 v
产品概述
什么是iGuard
iGuard网页防篡改系统是完全保护Web网站不发送被篡改内容并进行自动恢复的Web页面保护软件。
iGuard网页防篡改系统,以下简称iGuard,采用先进的Web服务器核心内嵌技术~将篡改检测模块,数字水印技术,和应用防护模块,防注入攻击,内嵌于Web服务器内部~并辅助以增强型事件触发检测技术~不仅实现了对静态网页和脚本的实时检测和恢复~更可以保护数据库中的动态内容免受来自于Web的攻击和篡改~彻底解决网页防篡改问题。
iGuard的篡改检测模块使用密码技术~为网页对象计算出唯一性的数字水印。公众每次访问网页时~都将网页内容与数字水印进行对比,一旦发现网页被非法修改~即进行自动恢复~保证非法网页内容不被公众浏览。同时~iGuard的应用防护模块也对用户输入的URL地址和提交的表单内容进行检查~任何对数据库的注入式攻击都能够被实时阻断。
iGuard以国家863项目技术为基础~全面保护网站的静态网页和动态网页。iGuard支持网页的自动发布、篡改检测、应用保护、警告和自动恢复~保证传输、鉴别、完整性检查、地址访问、表单提交、审计等各个环节的安全~完全实时地杜绝篡改后的网页被访问的可能性~也杜绝任何使用Web方式对后台数据库的篡改。
iGuard支持所有主流的操作系统~包括:Windows、Linux、FreeBSD、Unix,Solaris、HP-UX、AIX,,支持常用的Web服务器软件~包括:IIS、Apache、SunONE、Weblogic、WebSphere等,保护所有常用的数据库系统~包括:SQL Server、Oracle、MySQL、Access等。
错误:未指定书签。 错误:未指定书签。 1/39
谁需要iGuard
网页篡改事件
据国家计算机网络应急技术处理协调中心,CNCERT/CC,统计,图示1-1,:
2) 2006年全年度监测到有24,477个大陆境内站点遭受篡改攻击~网页
篡改时间占所有接报事件的92%,
3) 2007年上半年监测到有61,228个大陆境内站点遭受篡改攻击~比前
一年增长150%。
7000061228
60000
50000
40000
2447730000
1365320000
2059115710000
02003年2004年2005年2006年2007年
图示 0-1 2003-2007年网页篡改事件
网站篡改原因
网站的网页之所以存在被篡改的可能性~有客观和主观两方面的原因。 就客观而言~因为存在以下原因~现有技术架构下网站漏洞将长期存在:
4) 操作系统复杂性:已公布超过2万多个系统漏洞。一个漏洞从发现到
被利用平均为5天~而相应补丁的发布时间平均为47天。
5) 应用系统漏洞:各种注入式攻击漏洞~多个应用系统不同的开发者。 就主观而言~过于苛刻的安全管理要求~通常网络管理员难以完全实现:
6) 密码管理:合格密码需要8位以上复杂字符并定期改变。
7) 漏洞补丁:操作系统、中间件、应用系统的定期更新。
8) 上网控制:钓鱼、木马、间谍软件。
错误:未指定书签。 错误:未指定书签。 2/39
传统安全设备
Web网站通常使用了防火墙和IDS/IPS等网络安全设备来保护自身的安全~如图示1-2所示。
防火墙 IDS/IPS Web应用
网页篡改
已知Web
DoS攻击 服务器漏洞 上传木马
端口扫描 恶意执行 网络层
应用服务器 模式攻击
注入式攻击
Web服务器 数据库服务器
图示 0-2 传统网络安全设备
网络防火墙提供网络层访问控制和攻击保护服务~它们统一部署在网络边界和企业内部重要资源,例如Web应用,的前端~提供必要的保护以防御网络层黑客攻击。但是~网络防火墙规则集必须允许重要协议,如HTTP/HTTPS,不受限制地访问Web应用~即完全向外部网络开放HTTP/HTTPS应用端口。如果攻击代码被嵌入到Web通信中~则从协议角度来看这些通信是完全合法的~而此时网络防火墙对此类攻击没有任何的保护作用。 IDS/IPS入侵检测系统/入侵防御系统作为防火墙的有利补充~加强了网络的安全防御能力。入侵检测技术同样工作在网络层上~对应用协议的理解和作用存在相当的局限性~对于复杂的http会话和协议更是不能完整处理。如果需要防御更多的攻击~那么就需要很多的规则~但是随着规则的增多~系统出现的虚假报告率,对于入侵防御系统来说~会产生中断正常连接的问题,会上升~同时~系统的效率会降低。
错误:未指定书签。 错误:未指定书签。 3/39
一个最简单的例子就是在请求中包含SQL注入代码~这些数据不管是在传统防火墙所处理的网络层和传输层~还是在代理型防火墙所处理的协议会话层~或者是常规的入侵检测系统和增强的入侵防护系统~都会认为是合法的~无法被阻挡或检出。
专业网页防篡改系统
由前面的描述可以看出~Web网站和Web应用系统除了使用一般的网络安全设备外~需要有效的网页防篡改系统来专门对页面内容进行保护~防止来自外部或内部的非授权人员对页面和内容进行篡改和非法添加。
谁在用iGuard
iGuard网页防篡改系统自2002年10月首次商业部署以来~已在国内31个省、市、自治区的400多家政府、媒体和大型企业网站超过1,200台Web服务器上7*24小时稳定运行~保护的网页数超过60,000,000页~保护的网页日访问量超过110,000,000PV。典型用户包括:
9) 政府门户:中华人民共和国中央人民政府网站、北京市人民政府、天
津市人民政府、上海市人民政府、广州市人民政府、……
10) 职能部门:国家发改委、交通部、铁道部、质检总局、安监总局、工
商总局、北京市交通委、上海市财税局、广州市公安局、……
11) 媒体:中国互联网新闻中心、解放日报、羊城晚报、福建广电、……
12) 文教:中国美术馆、上海博物馆、中国地质大学、北京语言大学、……
13) 金融:中国银联、国家开发银行、中国太平洋保险、太平人寿、……
14) 电信:中国网通、江苏电信、泉州电信、北京移动、山西移动、……
15) 电力:东北电网、西北电网、南方电网、广州电力、新疆电力、……
16) 其他企业:宝钢、广州地铁、宁波机场、上海洋山港、中海集、……
iGuard资质和许可证
iGuard 获得国家信息安全测评认证中心的信息安全产品认证~并获得公安部计算机信息系统安全专用产品销售许可证。
错误:未指定书签。 错误:未指定书签。 4/39
iGuard的研发历史
iGuard的基础研究工作开始于2000年~其研发历史见表格1-1。 时间 项目
2000.06 国家密码管理委员会同意研制《SWP01通用Web安全平台》。 2000.08 《PSP高强度安全Web平台》入选国家863
信息安全应急项目。 2001.02 发布PSP安全Web服务器1.0~支持高强度密码算法和网页防篡改
功能。
2001.03 《PSP高强度安全Web平台》参加国家863计划十五周年成就展。 2001.06 《SWP01通用Web安全平台》通过国家密码管理委员会安全审查。 2001.10 PSP安全Web服务器1.2版本通过300小时大访问量安全压力测试。 2002.01 研究PSP安全Web服务器防篡改模块与通用Web服务器结合。 2002.04 发布iGuard 1.0版本~成功基于IIS/Apache的防篡改核心内嵌模块。 2002.06 《SWP01通用Web安全平台》通过国家密码管理委员会技术鉴定。 2002.07 发布iGuard 2.0版本~支持多虚拟主机发布。
2002.11 发布iGuard 2.1版本~支持多服务器发布。
2003.02 发布iGuard 2.15版本~支持Linux和Solaris~支持iPlanet/SunONE。 2003.09 发布iGuard 2.2版本~支持HP-UX~支持J2EE应用服务器。 2004.09 发布iGuard 2.3版本~支持IBM AIX。
2005.05 发布iGuard 2.4版本~支持发布服务器双机~支持ItaniumII平台。 2006.02 发布iGuard 2.5版本~新增企业级模块~支持FreeBSD平台。 2006.10 发布iGuard 2.5a版本~新增应用防护模块,防注入攻击,。 2007.04 发布iGuard 3.0版本~新增标准动态版~增加对动态数据内容保护。
表格 0-1 iGuard研发历史
错误:未指定书签。 错误:未指定书签。 5/39
技术原理
PKI公开密钥体系
PKI
PKI,Public Key Infrastructure,即“公开密钥体系”,ITU-T X.509,~是一种基于公开密钥密码技术的安全通信和服务体系~它能够为所有网络应用提供包括机密性、完整性、身份鉴别、数字签名等多种安全服务~是网络安全应用的基础。
iGuard网页防篡改系统的整体安全性建立在以PKI为核心的密码学体系上。
防篡改
iGuard对所有网页元素,包括静态页面、动态脚本、图像文件、多媒体文件以及所有能以URL形式访问的实体,在发布时进行128位密钥的HMAC-MD5,RFC2104,计算~生成唯一的、不可逆转的和不可伪造的数字水印。 浏览者请求访问任一网页元素时~iGuard 的篡改检测模块,作为Web服务器软件的一部分,读出网页元素的内容重新计算数字水印~并与之前存储的数字水印进行比对~网页元素的任何篡改都能够被可靠地计算出来。
防窃听
iGuard任何通信实体,包括发布服务器和Web服务器、控制台和发布服务器,之间采用工业标准的SSL3.0/TLS1.0安全通讯协议,RFC2246,~确保网页元素文件和,特别是,数字水印数据流在通信过程中不被黑客窃取和分析。 此外~HMAC的128位密钥以加密形式存在于操作系统的安全存储区内。
错误:未指定书签。 错误:未指定书签。 6/39
身份鉴别
iGuard通信实体间进行强身份鉴别。首先~Web服务器要确保上传文件的发布服务器的身份真实性~不能接受伪造的发布服务器上传的文件,其次~发布服务器要确保是在与Web服务器通信~确保发送的文件能够到Web服务器上。因此~双方彼此都进了身份鉴别。亦即:发布服务器采用客户端数字证书与Web服务器通讯~同时也验证Web服务器数字证书的真实性。
Web服务器核心内嵌技术
核心内嵌模块的位臵
一个标准的Web服务器的体系结构如图示2-1所示。
Web服务器软件 ,IIS/Apache/Weblogic/Websphere/Tomcat ,
图示 0-1 Web服务器的体系结构
Web服务器核心内嵌技术,以下简称核心内嵌技术,是指将安全模块内嵌在Web服务器软件,IIS/Apache/Weblogic/Websphere/…,中~这个模块针对不同的Web服务器软件使用相应的核心内嵌技术实现~例如:ISAPI、Apache-module、NSAPI、JAVA-filter等~如图示2-2所示。
错误:未指定书签。 错误:未指定书签。 7/39
Web服务器软件 安全核心内嵌模块
图示 0-2 核心内嵌模块的位置
安全模块内嵌于Web服务器软件与Web服务器软件完全整合~其优点在于:
18) 不存在独立的安全模块运行进程~入侵者无法找到和中止安全模块的
运行。
19) 精准理解和分析Web服务传入和传出的数据~进行充分可靠的安全
检查。
20) 完全与Web服务的运行进程融合~处理效率高~稳定性和兼容性强。
21) 与操作系统及硬件无关~全面控制Web服务器软件软件和服务。 iGuard的核心内嵌模块包含了应用防护模块,防注入攻击,和篡改检测模块,数字水印,两项技术~分别针对动态网页和静态网页进行保护。
应用防护模块
应用防护模块对来自于客户的Web访问请求进行分析~检查其中的表单输入和URL输入中是否含有非法字符/关键字构成注入式攻击~如图示2-3所示。
错误:未指定书签。 错误:未指定书签。 8/39
request
Web服务器软件 应用防护模块
特征库
图示 0-3 应用防护模块
检查点为:
22) 用户提交的http请求,request,到达Web服务器~尚未进行其他处
理时。
检查对象为:
23) GET数据,URL和表单,,
24) POST数据,表单,。
检查方式为:
25) 与注入式攻击特征库比对检查。
小知识:什么是注入式攻击,
注入式攻击指攻击者利用网站动态网页程序
上的漏洞~在目标的Web服务器上运行SQL命令以及进行其他方式的攻击~攻击的目的包括:绕过登录身份检查、获得系统管理员密码、非法获取数据、非法篡改数据、生成非法文件、非法执行命令等。动态生成SQL命令时没有对用户输入的数据进行验证是SQL注入攻击得逞的主要原因。如果没有专用产品防护~每个应用系统的开发者都必须在服务器端对表单输入进行详尽的字符检查。
错误:未指定书签。 错误:未指定书签。 9/39
篡改检测技术
篡改检测模块在Web服务器对外发送网页时~利用数字水印技术对其进行完整性检查~如图示2-4所示。
response
Web服务器软件 篡改检测模块
水印库
图示 0-4 篡改检测模块 检查点为:
26) Web服务器准备向用户发送网页时,网页文件已读入~尚未投放到
网络上,。
检查对象为:
27) 静态网页文件,HTML/CSS文件,,
28) 图像文件,GIF/JPG/PNG/BMP文件,,
29) 动态脚本文件,ASP/JSP/PL/PHP文件,,
30) 多媒体文件,WAV/MP3/ FLS/MPEG文件,,
31) 二进制可执行实体,CGI/DLL/EXE文件,,
32) 其他所有可以在URL中访问/下载的文件。 检查方式为:
33) 计算对象的数字水印~与水印库中的数据进行比较。
错误:未指定书签。 错误:未指定书签。 10/39
产品规格
产品组成
两台服务器
部署iGuard至少需要两台服务器:
35) 发布服务器:位于内网中~本身处在相对安全的环境中~其上部署
iGuard的发布服务器软件。
36) Web服务器:位于公网/DMZ中~本身处在不安全的环境中~其上部
署iGuard的Web服务器端软件。
它们之间的关系如图示3-1所示。
iGuard iGuard
发布服务器软件 HTTP SSL Web服务器端软件 FTP…
Web服务器 发布服务器
Internet DMZ Intranet
图示 0-1 iGuard两台服务器
Interne
发布服务器 t 发布服务器上运行iGuard的“发布服务器软件”,Staging Server,。所有网页的合法变更,包括增加、修改、删除、重命名,都在发布服务器上进行。 发布服务器上具有与Web服务器上的网页文件完全相同的目录结构~发布服务器上的任何文件/目录的变化都会自动和立即地反映到Web服务器的相应
错误:未指定书签。 错误:未指定书签。 11/39
位臵上~文件/目录变更的方法可以是任意方式的,例如:FTP、SFTP、RCP、NFS、文件共享等,。网页变更后~“发布服务器软件”将其同步到Web服务器上。
发布服务器是部署iGuard时新增添的机器~原则需要一台独立的服务器,对于网页更新不太频繁的网站~也可以用普通PC机或者与担任其他工作的服务器共用。
发布服务器为PC服务器~其本身的硬件配臵无特定要求~操作系统可选择Windows,一般网站,或Linux,大型网站~需选加Linux企业发布模块,。
Web服务器
Web服务器上除了原本运行的Web服务器软件,如IIS、Apache、SunONE、Weblogic、Websphere等,外~还运行有iGuard的“Web服务器端软件”~“Web服务器端软件”由“同步服务器”和“防篡改模块”组成。 “iGuard同步服务器”负责与iGuard发布服务器通信~将发布服务器上的所有网页文件变更同步到Web服务器本地,“iGuard防篡改模块”作为Web服务器软件的一个插件运行~负责对Web请求进行检查和对网页进行完整性检查~需要对Web服务器软件作适当配臵~以使其生效。
Web服务器是用户网站原有的机器~iGuard可适应于任何硬件和操作系统。
平台支持
发布服务器
支持如下软硬件:
37) CPU:Intel PIII或以上,
38) 内存:256M或以上,
39) 硬盘:整个网站容量 + 5G。
40) 操作系统:Windows 2000 / Windows 2003 / Linux。
错误:未指定书签。 错误:未指定书签。 12/39
Web服务器
支持以下操作系统: 41) Microsoft Windows NT/2000/XP/2003,
42) Linux,
43) FreeBSD,
44) Solaris,
45) HP-UX,
46) AIX。
支持以下Web服务器: 47) IIS,
48) Apache,
49) iPlanet,
50) SunONE,
51) Weblogic,
52) WebSphere, 53) Resin,
54) Tomcat,
55) HP-AS。
支持以下后台数据库: 56) SQL Server, 57) Oracle,
58) MySQL,
59) Access。
错误:未指定书签。 错误:未指定书签。 13/39
产品型号
基本产品
iGuard分为基础版、标准版和动态标准版~在标准版和动态标准版上可选加企业发布模块。所有版本均使用了数字水印技术对所有发送出去的网页都进行完整性检查。
基础版和标准版的差别在于发布功能和适用的网站规模~而动态标准版还对注入式攻击进行防护。表格3-1列出了它们的适用范围和特性。 型号名称 基础版 标准版 标准动态版 适用情形 内容更新频度低, 内容更新频度正常,
且:单Web服务器, 或:多Web服务器,
且:Intel/x86架构。 或:Unix小型机架构。
,即:小规模网站, 静态页面为主 动态页面为主 多Web服务器支持 不支持 支持
多虚拟主机支持 不支持 支持
Windows/Linux Windows/Linux/Unix Web服务器操作系统
发布功能 手动 自动/手动 选加企业发布模块 不可 可以
防止注入式攻击 不可 不可 可以
表格 0-1 产品型号
基本产品中已包含有单CPU /单线程的Windows平台发布服务器。
企业发布模块
在高更新率和高可靠性要求的网站中~可以增加企业发布模块以提高发布性能、提高发布可靠性及辅助进行发布管理和配臵。
错误:未指定书签。 错误:未指定书签。 14/39
企业发布模块部署在发布服务器上~须在标准版或标准动态版基础上使用。表格3-2列出了企业发布模块的名称和功能。
项目 功能 作用
多CPU支持 支持多处理器水印计算 提高发布速度15%-35% 多线程发布 支持最多8线程发布 提高发布速度80%-200% Linux 采用Linux发布系统 提高可靠性 双机 双机主备工作 冗余发布提供容错能力~避
,无须第三方软件支持, 免单点失效
*发布权限管理器 统一发布权限管理和配多用户多站点环境下简化管
臵工具 理和配臵工作
* 目前仅支持Windows平台。
表格 0-2 企业发布模块
发布权限管理器介绍
什么是iGuard发布权限管理器
iGuard发布权限管理器,以下简称“权限管理器”,是协助iGuard在多站点、多主机及多编辑环境下进行统一发布权限管理和配臵的工具。
什么情形下需要iGuard发布权限管理器
大型机构的网站通常有多个站点、多个主机,Web服务器,和多个内容发布人员,编辑,~这些网站在部署iGuard后~内容发布模式从分散发布变成统一发布~此时需要权限管理器。
部署iGuad前~权限管理和内容发布都是在各自Web服务器上独立进行的~即:管理员在Web服务器上为编辑分配帐号、编辑用自己的帐号维护Web服务器上的文件。部署iGuard后~所有的发布都由统一的iGuard发布服务器进行~即:不同站点的管理员都需要在同一发布服务器上管理编辑、不同站点的编辑也需要在同一发布服务器上维护文件~这样就涉及到对以上人员
错误:未指定书签。 错误:未指定书签。 15/39
的权限管理和账号设臵,例如:不能让站点A的管理员去修改站点B的发布配臵~不能让站点A和站点B的FTP帐户重名,。权限管理器就是协助进行这方面管理的。
最直观的判断是:原网站有2个,或以上,人员分别登录到2个,或以上,Web服务器上进行发布~部署iGuard时可以使用发布权限管理器。
iGuard发布权限管理器能做什么
60) 两级授权:系统管理员->站点管理员->网站编辑。
61) FTP隔离:站点管理员只能管理本站点所属FTP空间,站点编辑只
能管理自己的FTP空间。
62) 上传隔离:站点管理员只能设臵本站点FTP空间到本站点关联主机
的自动上传映射关系。
63) 人员隔离:站点管理员只能管理本站点的编辑。
64) 系统隔离:站点管理员不能直接操作iGuard发布服务器,系统管理
员无须直接操作主机,Web服务器,。
65) 自动配臵:自动为iGuard生成配臵文件,上传映射,,自动为FTP
服务生成配臵文件,FTP用户,。
支持平台
目前仅支持Windows2000/2003的发布服务器。
错误:未指定书签。 错误:未指定书签。 16/39
产品部署
标准部署
内容管理系统
目前~大部分网站都使用了内容管理系统,CMS,来管理网页产生的全过程~包括网页的编辑、审核、签发和合成等。在网站的网络拓扑中~发布服务器部署在原有的内容管理系统和Web服务器之间~图示4-1表明了三者之间的关系。
Internet 发布服务器 内容管理系统 Web服务器
(iGuard) (iGuard) (第三方软件)
图示 0-1 标准部署图
为一个已有的Web站点部署iGuard时~Web服务器和内容管理系统都沿用原来的机器~而需要在其间增加一台发布服务器。iGuard的自动同步机制完全与内容管理系统无关的~适合与所有的内容管理系统协同工作~而内容管理系统本身无须作任何变动。
发布服务器上具有与Web服务器上的网站文件完全相同的目录结构~任何文件/目录的变化都会自动映射到Web服务器的相应位臵上。 网页的合法变更,包括增加、修改、删除、重命名,都在发布服务器上进行~变更的手段可以是任意方式的,例如:FTP、SFTP、RCP、NFS、文件共享等,。网页变更后~发布服务器将其同步到Web服务器上。无论什么情况下~不允许直接变更Web服务器上的页面文件。
iGuard一般情况下与内容管理系统分开部署~当然它也可以与内容管理系统
错误:未指定书签。 错误:未指定书签。 17/39
部署在一台机器上~在这种情形下~iGuard还可以提供接口~与内容管理系统进行互相的功能调用~以实现整合性更强的功能。
部署示例
一个标准的网站架构示意图如图示4-2所示。
Web服务器软件 内容管理系统
HTTP FTP…
Web服务器
数据库
Internet DMZ Intranet
图示 0-2 基本网站结构
在图中~内容管理系统将合成的网页通过FTP或者其他方式上传到Web服务器上。部署iGuard后的网站结构图见图示4-3。
错误:未指定书签。 错误:未指定书签。 18/39
Web服务器软件
同步服务器 发布服务器 内容管理系统 防篡改模块 HTTP SSL FTP…
Web服务器 发布服务器
数据库 Internet DMZ Intranet
图示 0-3 部署iGuard后的网站结构
由上图可以看出~为一个标准的Web站点部署iGuard时~Web服务器和内容管理系统都完全沿用原来的机器~而需要在其间增加一台发布服务器。iGuard的自动同步机制与内容管理系统无关的~适合与所有的内容管理系统协同工作。
对内容管理系统唯一需要做的只是改变它的设臵~将发布的目标服务器地址由Web服务器地址改为发布服务器地址即可~无须安装iGuard任何组件。 当然~根据内容管理系统所采用协议~发布服务器上需要对应安装这些协议的服务器端~例如:FTP/sftp服务器、rcp服务器或打开文件共享等。 Web服务器使用SSL服务和特定端口,默认为38888~可修改配臵选择其他端口,来接收上传的网页文件~无须再开放内容管理系统所需的端口,例如FTP端口,。为安全起见~强烈建议Web服务器仅开放Web服务端口和iGuard端口~关闭其他所有端口。
错误:未指定书签。 错误:未指定书签。 19/39
无内容管理系统
一些简单的网站可能没有使用任何内容管理系统~而仅仅使用诸如
Dreamweaver制作和管理网站甚至直接编辑html文件。这种情形下~iGuard也完全适用~网页制作人员无须改变原来的工作方式~仅仅只是由原来直接修改Web服务器上的文件~改为修改发布服务器上的文件。
复杂部署
更复杂的部署情形包括:
67) 多虚拟主机/Web服务器部署,
68) 本地内容管理系统,
69) Web服务器托管,
70) 同机部署。
这些情形下的iGuard的部署见《iGuard网页防篡改系统部署指南》,W-008-0203-D,。
集群和冗余部署
概况
Web站点运行的稳定性是最关键的。iGuard支持所有部件的多机工作和热备:可以有多台安装了iGuard防篡改模块和同步服务软件的Web服务器~也可以有两台安装了iGuard发布服务软件的发布服务器~如图示4-4所示。它实现了2Xn的同步机制,2为发布服务器~n为Web服务器,~当2或n的单点失效完全不影响系统的正常运行~且在修复后自动工作。
错误:未指定书签。 错误:未指定书签。 20/39
Web服务器1
iGuard CMS
内容管理系统 发布服务器(主) ……
主备通信
……
iGuard Web服务器n 发布服务器(备)
DMZ Intranet
图示 0-4 集群和双机部署示意图
Web服务器多机和集群
iGuard发布服务器支持1对多达64台Web服务器的内容同步~这些Web服务器的操作系统、Web服务器系统软件、应用脚本及网页内容既可以相同也可以不同。iGuard实现了异种系统架构下对不同内容的统一管理。 当多台Web服务器作镜像集群时~iGuard对于能够严格保证多台Web服务器内容相同。当单台Web服务器失效时~由于Web服务器集群前端通常有负载均衡设备~因此~它并不影响公众访问网站。同时~它的失效也不影响iGuard发布服务器向其他正常工作的Web服务器提供内容同步。在失效期
错误:未指定书签。 错误:未指定书签。 21/39
间~iGuard发布服务器会尝试连接这台Web服务器~一旦它修复后重新工作~即可自动进行连接~并自动进行内容同步。
因此~Web服务器的单点失效不影响系统的完整性~并且在系统恢复时不需要对其余机器作任何手工操作。
注意:基础版中不包含此功能~标准版支持Web服务器多机和集群。
发布服务器双机
iGuard支持发布服务器双机协同工作~即一台主发布服务器和一台热备发布服务器。在这种部署情形下~内容管理系统,CMS,需要将内容同时发布到两台iGuard服务器上。在正常状态下~iGuard主发布服务器工作~由它对所有Web服务器进行内容同步。显然~热备发布服务器失效不影响系统运作~一旦在它修复后可以从主发布服务器恢复数据~进入正常热备状态。主发布服务器如果失效,即不发心跳信号,~热备发布服务器会接管工作~由它对所有Web服务器进行内容同步。当主发布服务器修复后~两机同时工作~经过一段时间的数据交接时间~热备发布服务器重新进入热备状态。
因此~iGuard发布服务器的单点失效也不影响系统的完整性~并且在系统恢复时不需要对其余机器作任何手工操作。
注意:为实现发布服务器双机~需选加iGuard双机企业发布模块。
错误:未指定书签。 错误:未指定书签。 22/39
技术实现
内部结构
逻辑组成
从逻辑上~iGuard由页面保护子系统、自动发布子系统和监控管理子系统组成~三部分的关系如图示5-1所示。
自动发布子系统 自动发布子系统
(同步服务器) (自动发布程序)
页面保护子系统 管理和监控子系统
(应用防护/篡改检测)
发布服务器 Web服务器软件
(第三方软件)
Web服务器
图示 0-1 系统部件示意图
页面保护子系统
页面保护子系统是系统的核心~内嵌在Web服务器软件里,即前述的核心内嵌模块,~包含应用防护模块和篡改检测模块。
应用防护模块对每个用户的请求进行安全性检查:如果正常则发送给Web服务器软件,如果发现有攻击特征码~即刻中止此次请求并进行报警。 篡改检测模块对每个发送的网页进行即时的完整性检查:如果网页正常则对
错误:未指定书签。 错误:未指定书签。 23/39
外发送,如果被篡改则阻断对外发送~并依照一定策略进行报警和恢复。 对于Windows系统~页面保护子系统还包括一个增强型事件触发式检测模块~该模块驻留于操作系统内核~阻止大部分常规篡改手段。
自动发布子系统
自动发布子系统负责页面的自动发布~由发送端和接收端组成:发送端位于发布服务器上~称之为自动发布程序~它监测到文件系统变化即进行计算该文件水印~并进行SSL发送,接收端位于Web服务器上~称之为同步服务器~它接收到网页和水印后~将网页存放在文件系统中~将水印存放在安全数据库里。所有合法网页的增加、修改和删除都通过自动发布子系统进行。 注意:基础版不支持自动发布子系统。
监控管理子系统
负责篡改后自动恢复~也提供系统管理员的使用界面。其功能包括:手工上传、查看警告、检测系统运行情况、修改配臵、查看和处理日志等。 日志记录所有系统、发布、篡改检测和自动恢复等信息~可以分类分日期查看~并根据管理员的要求实现转储。日志记录还支持syslog~以实现与安全管理平台的接口。
核心技术
实现原理
我们将篡改检测的核心内嵌到Web服务器中~仅在网页信息流出Web服务器时进行检测~而非采用其他产品通常使用的外挂式的轮询方式或单独采用的事件触发方式~使其运行性能和检测有效性都达到最高的水准。 另外~对于大量的针对Windows系统的常规篡改攻击~我们也提供了增强型事件触发检测方式~进一步加强检测和防范的实时性。
在具体计算上~我们使用安全散列函数为每个网页产生一个数字水印~此数
错误:未指定书签。 错误:未指定书签。 24/39
字水印与网页内容相关联~并且无法伪造。检测时比对数字水印~无须比较整个网页文件~进一步提高了效率。
核心优势
不同于一些文件轮询扫描式或事件触发式的页面防篡改软件~iGuard的页面防篡改模块是与Web服务器紧密结合的。它在Web服务器对外发送网页时进行网页防篡改检测~这样做不仅完全杜绝了在轮询扫描间隔和事件触发处理过程中被篡改内容被用户访问的可能性~也减少了轮询Web服务器文件系统所占用的网络带宽和CPU利用率。
几种防篡改技术的比较如表格5-1所示。
外挂轮询 事件触发 核心内嵌 访问被篡改网页 可能 可能 不可能 防护动态内容 不能 仅脚本 脚本和内容 Web服务器负载 中 低 极低 带宽占用 中 无 无 检测时间 分钟级 接近实时 实时 绕过检测机制 不可能 可能 不可能 防范连续篡改攻击 不能 不支持 支持 保护所有网页 不能 能 能 适用操作系统 所有 受限 所有 上传时检测 不能 受限 能 断线时保护 不能 不能 能
表格 0-1 防篡改技术比较
完全杜绝篡改内容流出
采用核心内嵌技术后~用户每次访问每个受保护网页时~Web服务器在发送
错误:未指定书签。 错误:未指定书签。 25/39
之前都进行完整性检查~保证网页的真实性。核心内嵌技术可以彻底杜绝篡改后的网页被访问的可能性~全面和实时地保护网站的所有网页文件。 采用外挂轮询式的网页防篡改系统~对每个网页来说~轮询扫描存在着时间间隔~一般为数十分钟~在这数十分钟的间隔中~黑客可以攻击系统并使访问者访问到被篡改的网页。
单独采用事件触发式的网页防篡改系统~仍是一种被动式的策略~不能保证外界看不到篡改后的网页。如果黑客采用大规模的篡改活动~这种响应机制将变得很慢而不可取。
更重要的是~事件触发方式并不能确保捕获对文件的所有方式的修改,例如直接写磁盘、直接写内核驱动程序、利用操作系统漏洞等,~非常容易被专业黑客很容易绕过,而且一旦成功~它没有任何手段来察觉和恢复。它的技术特点决定了它类似于防病毒工具,以黑防黑,而不是专门针对网站保护的系统~这也是它不能支持Unix平台的原因。
连续篡改攻击保护
有意进行恶意攻击的黑客可以利用其他技术的扫描间隔来进行连续的篡改攻击~即在网页被恢复后立即重新篡改网页。
由于重篡改过程可以利用程序自动和连续进行~并只针对一个重要网页,例如网站首页,进行~因此即使外挂轮询技术的扫描时间间隔设臵得再小,例如1分钟,~也无法阻止篡改后的网页被公众访问到,例如重新篡改网页需要1秒钟~则公众在1分钟内的59秒里看到的都是篡改后的网页,。 这个过程往复下去~使公众只能看到被篡改的网页~而总是看不到真实的网页。除非管理者能够很快修补系统漏洞或停止提供Web服务~否则外挂轮询技术是无法阻止这种恶意的连续攻击。
事件触发技术对Web服务器软件没有控制能力~它发现篡改后没有办法去协调Web服务器工作~对于大规模或精心策划的攻击是无能为力的。例如:如果黑客中断了Web服务器和备份网页服务器的连接~这个被篡改的网页就没
错误:未指定书签。 错误:未指定书签。 26/39
法即时恢复~而与此同时~大量的公众可能已经访问到了这个网页~造成严重后果。
而采用核心内嵌技术的系统在每次输出网页时都进行完整性检查~如有变化则阻断发送。因此~无论连续攻击多么迅速和频繁~都无法使公众看到被篡改的网页。
动态网页全面保护
目前的网站越来越多地使用动态技术,例如:ASP、JSP、PHP,来输出网页。动态网页由网页脚本和内容组成:网页脚本以文件形式存在于Web服务器上,网页内容则取自于数据库。
采用核心内嵌技术的系统~可以直接从Web服务器上得到动态网页脚本~不受变化的内容影响~因而能够象静态网页一样保护动态网页脚本。进一步地~它还能通过阻挡对数据库的注入式攻击来保护动态网页内容的安全~从脚本到内容全面保护动态网页安全。
采用事件触发技术的系统~虽然可以对网页脚本提供一定的防护功能~但是由于它仅工作在操作系统层面上~未和Web服务器软件发生关联~因此根本无法检测到用户非法请求~对动态内容的篡改则是完全无能为力的。 采用外挂轮询技术的系统~所监测到的动态网页是网页脚本和内容混合后的结果~而网页内容是根据访问情况时时在变化的~外挂轮询技术又无法区分网页脚本和内容~因此无法实现对动态网页的防篡改保护。
关键流程
,系统部件图请参见图示2-1,
正常上传网页
72) 用户使用自己的内容管理系统将网页上传到发布服务器上,
73) 自动发布程序监测到文件系统的变化,
74) 自动发布程序使用安全散列函数HMAC计算网页的数字水印,
75) 自动发布程序对Web服务器进行身份鉴别,
错误:未指定书签。 错误:未指定书签。 27/39
76) 同步服务器对发布服务器进行身份鉴别,
77) 自动发布程序将网页和数字水印使用SSL协议安全传输到同步服务
器,
78) 同步服务器将数字水印存放在安全数据库里~并在文件系统中完成网
页的更新。
注意:iGuard基础版中不包含2)功能~需要手工发出上传指令。
内容保护过程
79) 公众发出网页浏览请求。
80) 应用防护模块得到请求内容~与攻击特征库中的特征相比对。
i.如果比对成功,即符合攻击模式,~即是企图进行注入式攻击的用户
请求。终止Web服务器软件对该会话的处理~中断该用户的连
接~并进行报警。
81) Web服务器将网页内容取得后~交给篡改检测模块进行检测。
82) 篡改检测模块使用安全散列函数HMAC-MD5计算出欲发出的网页的
数字水印~并与安全数据库中的数字水印相比对。
i.如果没找到数字水印或数字水印比对失败~即是可疑或被非法篡改的
网页~系统调用管理子系统进行自动恢复的同时向监管者报警。
83) Web服务器将正确的网页发送给网页浏览者。
报警方式
内臵报警方式为控制台报警邮件报警~另外~它可以支持执行用户自定义的外部命令或程序~实现诸如短信报警、电话报警、服务器联动等功能。
错误:未指定书签。 错误:未指定书签。 28/39
双引擎防护
如前所述~单独的事件触发式技术是无法对网页篡改做到完全防护的~但是~对于Windows系统来说~它也是一种有益的补充检测方式。对于常规黑客攻击手段~事件触发式技术能够及时检测到这种攻击并发出警告。 iGuard使用了增强型事件触发式技术~截获所有写文件调用~对于其中的非法写行为实施了实时阻断~让常规黑客的篡改行为即时落空~同时发出报警。比起一般的“检测-恢复”方式的事件触发式技术~它对于网站保护的有效性有了更大的提高。
需要说明的是~由于事件触发式技术没有和Web服务器软件绑定~因此~它本身的弱点非常多~只能作为网页防篡改的补充技术~守住Web服务最后一道关口的仍是Web服务器核心内嵌技术。
错误:未指定书签。 错误:未指定书签。 29/39
安全技术
安全传输
合法网页的安全传输是系统安全的一个重要环节~iGuard使用了高安全强度的工业标准的SSL协议~保证了信息传输过程中完整性和私密性~用先进的密码技术防止来自内部和外部的篡改和偷窃。
身份鉴别
系统各部分通信时需要对实体身份进行鉴别~iGuard使用PKI数字证书技术~对通信实体的身份提供了高安全强度的鉴别方式。鉴别包括:服务器防篡改模块的真实性、页面自动发布服务器的真实性、系统监管员身份的真实性。
自动同步
为高效网页的内容扫描、发布和恢复~iGuard使用了页面自动发布服务器。该服务器采用先进的算法检查本身文件系统的变化~自动将其同步到一台或多台安装了防篡改模块的目标Web服务器上~同时也能作为网页恢复时的基准内容~减少人工干预。
部署方便
由于使用了自动发布服务器~iGuard可以很好地与已运行网站的原有的网站发布系统协同工作。清晰的系统结构有利于系统的部署、使用和维护~并且用户的原有系统和使用习惯也不必作任何改变。
硬件支持
为达到高程度的安全~产生网页水印的密钥应该臵于硬件中~iGuard支持PKCS#11和CSP两种接口形式的任何密码设备~从而为提供系统安全强度提供保证。
错误:未指定书签。 错误:未指定书签。 30/39
系统功能
篡改检测和恢复
iGuard支持以下篡改检测和恢复功能: 85) 支持安全散列检测方法,
86) 可检测静态页面/动态脚本/二进制实体, 87) 支持对注入式攻击的防护,
88) 网页发布同时自动更新水印值, 89) 网页发送时比较网页和水印值, 90) 支持断线/连线状态下篡改检测, 91) 支持连线状态下网页恢复,
92) 网页篡改时多种方式报警,
93) 网页篡改时可执行外部程序或命令, 94) 可以按不同容器选择待检测的网页, 95) 支持增强型事件触发检测技术, 96) 加密存放水印值数据库,
97) 支持各种私钥的硬件存储,
98) 支持使用外接安全密码算法。
错误:未指定书签。 错误:未指定书签。 31/39
自动发布和同步
iGuard支持以下自动发布和同步功能:
99) 自动检测发布服务器上文件系统任何变化, 100) 文件变化自动同步到多个Web服务器, 101) 支持文件/目录的增加/删除/修改/更名, 102) 支持任何内容管理系统,
103) 支持虚拟目录/虚拟主机,
104) 支持页面包含文件,
105) 支持双机方式的冗余部署,
106) 断线后自动重联,
107) 上传失败后自动重试,
108) 使用SSL安全协议进行通信, 109) 保证通信过程不被篡改和不被窃听, 110) 通信实体使用数字证书进行身份鉴别, 111) 所有过程有详细的审计。
错误:未指定书签。 错误:未指定书签。 32/39
系统性能
测试环境和样本
测试环境
Web服务器
113) CPU:Intel Pentium D 925 3.0GHz处理器,
114) 内存:1GB ECC PC2-5300内存,
115) 硬盘:160GB 7200rpm SATA硬盘。
发布服务器
116) CPU:Intel Core 2 Duo CPU 2.2GHz处理器,
117) 内存:1G DDR2 667 内存,
118) 硬盘:160GB 7200rpm SATA硬盘。
测试客户端
119) CPU:Intel(R) Celeron(R) CPU 2.53GHz,
120) 内存:512M DDR PC-3200内存,
121) 操作系统:Microsoft Windows XP Professional,
122) 压力工具:Microsoft Web Application Stress Tools。
网络
123) 100M Ethernet LAN。
错误:未指定书签。 错误:未指定书签。 33/39
测试样本
用来测试的网页文件样本如表格7-1所示。
序号 样本A 样本B
来源 某新闻网站部分的网页内容 某综合网站部分网页内容 文件类型 html、gif、jpg html、gif、jpg、mp3、zip
10,000 10,000 文件数
1,023 160 目录数
13K 88K 平均文件尺寸
718K 8M 最大文件尺寸
10K 6K 最小文件尺寸
133M 881M 总文件尺寸
表格 0-1 测试样本数据
错误:未指定书签。 错误:未指定书签。 34/39
测试结果-Windows
软件环境
Web服务器
124) 操作系统:Microsoft Windows 2003 Enterprise SP2,
125) Web系统:IIS 6.0,
126) 防篡改软件:iGuard 3.0同步服务器和防篡改模块For
Windows/IIS。
发布服务器
127) 操作系统:Microsoft Windows 2000 SP4,
128) 发布服务:iGuard 3.0发布服务器 For Windows。
发布性能
iGuard在Windows下的文件发布性能见表格7-2。
样本 测试序号 所用时间 发布速率指标1 发布速率指标2
,秒, ,字节数, ,文件数,
1 1.22MB/s 109秒 91.7个/秒
2 1.02MB/s 130秒 76.9个/秒 样本A
3 1.06MB/s 125秒 80.0个/秒
1.10MB/s 平均 121秒 82.4个/秒
1 4.61MB/s 191秒 52.4个/秒
2 4.10MB/s 215秒 46.5个/秒 样本B
3 4.16MB/s 212秒 47.2个/秒
4.28MB/s 平均 206秒 48.5个/秒
表格 0-2 发布性能-Windows
错误:未指定书签。 错误:未指定书签。 35/39
访问性能
在前述的环境下~我们对样本A中的网页施加不同的访问压力~测试出停止和启用iGuard的系统性能~如表格7-3。
压力 条件 每秒 接收网页篡改检篡改恢
响应 平均时间测时间复时间
,毫秒, ,秒, ,秒,
37.9 2.25 N/A N/A 4客户端线程 停止iGuard
37.3 2.32 0 0.12 间隔50-150ms 启用iGuard
73.6 3.03 N/A N/A 8客户端线程 停止iGuard
71.6 3.15 0 0.16 间隔50-150ms 启用iGuard
118.6 3.40 N/A N/A 停止iGuard 16客户端线程
116.1 3.51 0 0.21 间隔100-150ms 启用iGuard
186.9 6.22 N/A N/A 停止iGuard 32客户端线程
间隔100-200ms 182.2 6.54 0 0.28 启用iGuard
表格 0-3 访问性能-Windows 以上数据表明~在启用iGuard时~Web服务器的“每秒响应”减少在4%以内~“接收网页平均时间”的增加在5%以内。
错误:未指定书签。 错误:未指定书签。 36/39
指标-Linux
软件环境
Web服务器
129) 操作系统:RedHat Linux Advance Server 4.0,
130) Web系统:Apache 2.0.54,
131) 防篡改软件:iGuard 3.0同步服务器和防篡改模块For
Linux/Apache。
发布服务器
132) 操作系统:RedHat Linux Advance Server 4.0,
133) 发布服务:iGuard 3.0发布服务器 For Linux。
发布性能
iGuard在Linux下的文件发布性能见表格7-4。
样本 测试序号 所用时间 发布速率指标1 发布速率指标2
,秒, ,字节数, ,文件数,
1 1.22MB/s 109秒 91.7个/秒
2 1.04MB/s 128秒 78.1个/秒 样本A
3 1.06MB/s 126秒 79.3个/秒
1.11MB/s 平均 121秒 83.0个/秒
1 4.69MB/s 188秒 53.2个/秒
2 4.18MB/s 211秒 47.4个/秒 样本B
3 4.22MB/s 209秒 47.8个/秒
4.36MB/s 平均 203秒 49.5个/秒
表格 0-4 发布性能-Linux
错误:未指定书签。 错误:未指定书签。 37/39
访问性能
在前述的环境下~我们对样本A的网页施加不同的访问压力~测试出停止和启用iGuard的系统性能~如表格7-5。
压力 条件 每秒 接收网页篡改检篡改恢
响应 平均时间测时间复时间
,毫秒, ,秒, ,秒,
36.9 2.26 N/A N/A 4客户端线程 停止iGuard
36.1 2.34 0 0.11 间隔50-150ms 启用iGuard
74.5 3.04 N/A N/A 8客户端线程 停止iGuard
71.6 3.17 0 0.14 间隔50-150ms 启用iGuard
116.6 3.42 N/A N/A 停止iGuard 16客户端线程
114.3 3.55 0 0.21 间隔100-150ms 启用iGuard
184.9 6.23 N/A N/A 停止iGuard 32客户端线程
间隔100-200ms 181.7 6.58 0 0.26 启用iGuard
表格 0-5 访问性能-Linux
以上数据表明~在启用iGuard时~Web服务器的“每秒响应”减少在4%以内~“接收网页平均时间”的增加在5%以内。
错误:未指定书签。 错误:未指定书签。 38/39
版权声明
上海天存信息技术有限公司,以下简称天存公司,拥有本文档,包括所涉及的主题,的专利、专利申请、商标、版权及其他知识产权。天存公司授予您阅读本文档的权利,但是~除非有天存公司明确提供的书面特许协议~本文档的提供并不意味着授予您相关专(
利、商标、版权或其他任何知识产权的特许。
复制与传播 遵守所有生效的版权法是用户的责任。在未经天存公司明确书面许可的情况下~不得对本文档的任何部分进行复制,备份目的除外,~不得将其保存于或引进到((((
公开的检索系统中~不得以任何形式和任何方式,电子、影印、录制、机械或其他任何((
此处未指明的方式,进行传播或用于任何目的。
示例 如果本文档有示例部分~则在示例部分中所描述的公司、组织、产品、人及事件均属虚构~与真实的公司、组织、产品、人及事件无任何关系。
变更 本文档的参考资料中所提及的包括Web站点、Internet资源、第三方的技术标准与
等在内的信息~如在本文档交付后有变更~恕不另行通知。 版权所有者 ?版权所有 上海天存信息技术有限公司(Shanghai Tercel Info Tech.
Co.,Ltd.)~2015。地址为:上海市定西路1016号银统北楼1308室 (200050)。所有权利均予保留。
商标Tercel、iGuard、iWall、Webit、天存逸网、Big5Channel和/或其他本文档中提及的天存公司产品~是天存公司的商标或注册商标。本文档所提到的真实的公司和产品的名称可能是其各自所有者的商标。
联系人 如有任何疑问或问题~请致电:400-880-8292,或邮件至:info@tcxa.com.cn,或访问:。
未经本使用规定明确授予的任何权利均予保留。
错误:未指定书签。 错误:未指定书签。 39/39