iguardwhitepaper.docx
- 文档编号:9115158
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:32
- 大小:357.61KB
iguardwhitepaper.docx
《iguardwhitepaper.docx》由会员分享,可在线阅读,更多相关《iguardwhitepaper.docx(32页珍藏版)》请在冰豆网上搜索。
iguardwhitepaper
iGuard网页防篡改系统
技术白皮书
目录
第1章产品概述1
1.1什么是iGuard1
1.2谁需要iGuard2
1.3谁在用iGuard3
1.4iGuard的历史4
1.5iGuard资质和许可证4
第2章技术原理5
2.1PKI公开密钥体系5
2.2Web系统核心内嵌技术6
第3章产品规格9
3.1产品组成9
3.2平台支持10
3.3产品型号11
第4章产品部署12
4.1标准部署12
4.2冗余部署14
第5章技术实现17
5.1内部结构17
5.2核心技术18
5.3双引擎防护21
5.4安全技术22
第6章功能和性能23
6.1功能列表23
6.2性能指标-Windows24
6.3性能指标-Linux25
6.4性能指标-Solaris27
图表目录
图表21Web服务器的体系结构6
图表22Web系统核心内嵌模块的位置6
图表23应用防护模块7
图表24篡改检测模块8
图表31iGuard两台服务器9
图表41标准部署图12
图表42基本网站结构13
图表43部署iGuard后的网站结构13
图表44冗余部署示意图15
图表51系统部件示意图17
表格目录
表格31产品型号11
表格51核心内嵌技术与其他技术比较19
表格61性能指标数据-Windows25
表格62性能指标结论-Windows25
表格63性能指标数据-Linux26
表格64性能指标数据-Solaris27
第1章产品概述
1.1什么是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、resin等;保护所有常用的数据库系统,包括:
SQLServer、Oracle、MySQL、Access等。
1.2谁需要iGuard
1.2.1网页篡改事件
据国家计算机网络应急技术处理协调中心(CNCERT/CC)2005年统计:
⏹全年接报8130件网页篡改事件,占所有接报事件的90%。
⏹全年监测到有13653个境内站点遭受篡改攻击。
1.2.2网站篡改原因
网站的网页之所以存在被篡改的可能性,有客观和主观两方面的原因。
就客观而言,因为存在以下原因,现有技术架构下网站漏洞将长期存在:
⏹操作系统复杂性:
已公布超过1万多个系统漏洞。
⏹漏洞与补丁:
系统漏洞从发现到被利用为5天,补丁的发布时间为47天。
⏹应用系统漏洞:
各种注入式攻击,多个应用系统不同的开发者。
就主观而言,过于苛刻的安全管理要求,通常网络管理员难以完全实现:
⏹密码管理:
合格密码需要8位以上复杂字符并定期改变。
⏹漏洞补丁:
操作系统、中间件、应用系统的定期更新。
⏹上网控制:
钓鱼、木马、间谍软件。
1.2.3传统安全设备
大部分网站系统都使用了防火墙和入侵检测系统等网络安全设备来保护自身的安全。
防火墙是一种成熟和应用广泛的网络安全设备,但是,Web服务器通常是部署在防火墙的DMZ区域,防火墙完全向外部网络开放Web应用端口,这种方式对与Web应用没有任何的保护作用。
即使使用http代理型的防火墙,防火墙也只是验证http协议本身的合法性,完全不能理解http协议所承载的数据,也无从判断对http服务器的访问行为是否合法。
入侵检测技术同样工作在网络层上,对应用协议的理解和作用存在相当的局限性,对于复杂的http会话和协议更是不能完整处理。
由于需要预先构造攻击特征库来匹配网络数据,入侵检测系统不能检测和防御未知攻击和不能有效提取攻击特征的攻击。
一个最简单的例子就是在请求中包含SQL注入代码,或者提交可以完成获取他人用户认证信息的跨站脚本,这些数据不管是在传统防火墙所处理的网络层和传输层,还是在代理型防火墙所处理的协议会话层,或者是常规的入侵检测系统和增强的入侵防护系统,都会认为是合法的,无法被阻挡或检出。
1.2.4专业网页防篡改系统
由前面的描述可以看出,所有的Web网站和Web应用系统除了使用一般的网络安全设备外,需要有效的网页防篡改系统来专门对页面内容进行保护,防止来自外部或内部的非授权人员对页面和内容进行篡改和非法添加。
在所有网站中,高权威性、高更新率和高访问量的政府和媒体网站更经常性地受到黑客关注和攻击。
据国家计算机网络应急技术处理协调中心统计,2005年在被篡改的网站中,有22%是政府网站,明显大于我国.cn域名下的政府网站所占的2.2%比例。
因此,为巩固各类网站和Web应用的安全,特别是保证我国电子政务网站和电子媒体网站内容的完整性及尊严,有必要使用专业的网页防篡改系统。
1.3谁在用iGuard
iGuard网页防篡改系统自2002年起,在国内150多家大型政府和媒体网站超过450台服务器上7*24小时稳定运行,保护的网页数超过30,000,000页,保护的网页日访问量超过60,000,000PV。
典型用户包括:
1.4iGuard的历史
⏹2000.06国家密码管理委员会同意研制《SWP01通用Web安全平台》。
⏹2000.08《PSP高强度安全Web平台》项目入选国家863计划信息安全应急项目。
⏹2001.02发布PSP安全Web服务器1.0,支持高强度密码算法和网页防篡改功能。
⏹2001.03863项目《PSP高强度安全Web平台》参加国家863计划十五周年成就展。
⏹2002.06国家密码管理委员会批准《SWP01通用Web安全平台》通过安全性审查。
⏹2001.10PSP安全Web服务器1.2版本通过300小时大访问量安全性能压力测试。
⏹2002.01研究PSP安全Web服务器防篡改模块与通用Web服务器结合。
⏹2002.04发布iGuard1.0版本,成功研制基于IIS/Apache的防篡改核心内嵌模块。
⏹2002.06国家密码管理委员会批准《SWP01通用Web安全平台》通过技术鉴定。
⏹2002.07发布iGuard2.0版本,支持多虚拟主机发布。
⏹2002.11发布iGuard2.1版本,支持多服务器发布。
⏹2002.12广州市人民政府(中国广州)采用iGuard。
⏹2003.01中国互联网新闻中心(中国网)采用iGuard。
⏹2003.02发布iGuard2.15版本,支持Linux和Solaris,支持iPlanet/SunONE。
⏹2003.09发布iGuard2.2版本,支持HP-UX,支持J2EE应用服务器。
⏹2004.02全国人民代表大会(中国人大网)采用iGuard。
⏹2004.09发布iGuard2.3版本,支持IBMAIX。
⏹2004.10上海市人民政府(中国上海)采用iGuard。
⏹2005.02全国人民代表大会(中国人大网)正式开通运行。
⏹2005.05发布iGuard2.4版本,支持发布服务器双机,支持ItaniumII平台。
⏹2005.08中国中央政府门户网站(中国政府网)采用iGuard。
⏹2005.12北京市人民政府(首都之窗)采用iGuard。
⏹2006.01中国中央政府门户网站(中国政府网)正式开通运行。
⏹2006.02发布iGuard2.5版本,新增基础版和企业级模块,支持FreeBSD平台。
⏹2006.10发布应用防护模块。
1.5iGuard资质和许可证
iGuard获得国家信息安全测评认证中心的信息安全产品认证,并获得公安部计算机信息系统安全专用产品销售许可证。
第2章技术原理
2.1PKI公开密钥体系
2.1.1PKI
PKI(PublicKeyInfrastructure)即“公开密钥体系”,是一种基于公开密钥密码技术的安全通信和服务体系,它能够为所有网络应用提供包括机密性、数据完整性、数据源认证、数字签名等多种安全服务,是网络安全应用的基础。
iGuard网页防篡改系统的整体安全性建立在以PKI为核心的密码学体系上。
2.1.2防篡改
iGuard对所有的原始网页元素(包括静态页面、动态脚本、图像文件、多媒体文件以及所有能以URL形式访问的实体)在发布时进行128位密钥的HMAC-MD5(RFC2104)计算,生成唯一的、不可逆转和不可伪造的数字水印。
浏览者请求访问任一网页元素时,iGuard的篡改检测模块(作为Web系统的一部分)读出网页元素的内容重新计算数字水印,并与之前存储的数字水印进行比对,网页元素的任何篡改都能够被可靠地计算出来。
2.1.3防窃听
iGuard任何通信实体(包括发布服务器和Web服务器、控制台和发布服务器)之间采用工业标准的SSL3.0/TLS1.0安全通讯协议(RFC2246),确保网页元素文件和(特别是)数字水印数据流在通信过程中不被黑客窃取和分析。
此外,HMAC的128位密钥以加密形式存在于操作系统的安全存储区内。
2.1.4身份鉴别
iGuard通信实体间进行强身份鉴别。
首先,Web服务器要确保上传文件的发布服务器的身份真实性,不能接受伪造的发布服务器上传的文件;其次,发布服务器要确保是在与Web服务器通信,确保发送的文件能够到Web服务器上。
因此,双方彼此都进了身份鉴别。
亦即:
发布服务器采用客户端数字证书与Web服务器通讯,同时也验证Web服务器数字证书的真实性。
2.2Web系统核心内嵌技术
2.2.1核心内嵌模块的位置
一个标准的Web服务器的体系结构如图表2-1所示:
图表21Web服务器的体系结构
Web系统核心内嵌技术(以下简称核心内嵌技术)是指将安全模块内嵌在Web系统软件(IIS/Apache/Weblogic/Websphere/…)中,这个模块针对不同的Web系统使用相应的核心内嵌技术实现,例如:
ISAPI、Apache-module、NSAPI、JAVA-filter等,如图表2-2所示。
硬件平台(X86/sparc/ItaniumII/PowerPC/PA-RISC)
操作系统(Windows/Linux/FreeBSD/Solaris/AIX/HP-UX)
Web系统
核心内嵌模块
(ISAPI/Apache-module/NSAPI/JAVA-filter)
图表22Web系统核心内嵌模块的位置
安全模块内嵌于Web系统即与Web系统完全整合,其优点在于:
⏹不存在独立的安全模块运行进程,入侵者无法找到和中止安全模块的运行。
⏹精准理解和分析Web服务传入和传出的数据,进行充分可靠的安全检查。
⏹完全与Web服务的运行进程融合,处理效率高,稳定性和兼容性强。
⏹与操作系统及硬件无关,全面控制Web系统软件和服务。
iGuard的核心内嵌模块包含了应用防护模块(防注入攻击)和篡改检测模块(数字水印)两项技术,分别针对动态网页和静态网页进行保护。
2.2.2应用防护模块
应用防护模块对来自于客户的Web访问请求进行分析,检查其中的表单输入和URL输入中是否含有非法字符/关键字构成注入式攻击,如图表2-3所示。
图表23应用防护模块
检查点为:
⏹用户提交的http请求(request)到达Web服务器,尚未进行其他处理时。
检查对象为:
⏹GET数据(URL和表单)。
⏹POST数据(表单)。
检查方式为:
⏹与注入式攻击特征库比对检查。
小知识:
什么是注入式攻击?
注入式攻击的全称是“SQL注入式攻击”,它是指攻击者利用网站动态网页程序设计上的漏洞,在目标的Web服务器上运行SQL命令以及进行其他方式的攻击,攻击的目的包括:
绕过登录身份检查、获得系统管理员密码、非法获取数据、非法篡改数据、生成非法文件、非法执行命令等。
动态生成SQL命令时没有对用户输入的数据进行验证是SQL注入攻击得逞的主要原因。
如果没有专用产品防护,每个应用系统的开发者都必须在服务器端对表单输入进行详尽的字符检查。
2.2.3
篡改检测技术
篡改检测技术是指Web服务器在对外发送网页时,利用数字水印技术对其进行完整性检查,如图表2-4所示。
图表24篡改检测模块
检查点为:
⏹Web服务器准备向用户发送网页时(网页文件已读入,尚未投放到网络上)。
检查对象为:
⏹静态网页文件(HTML/CSS文件)。
⏹图像文件(GIF/JPG/PNG/BMP文件)。
⏹动态脚本文件(ASP/JSP/PL/PHP文件)
⏹多媒体文件(WAV/MP3/FLS/MPEG文件)
⏹二进制可执行实体(CGI/DLL/EXE文件)。
⏹其他所有可以在URL中访问/下载的文件。
检查方式为:
⏹计算对象的数字水印,与水印库中的数据进行比较。
第3章产品规格
3.1产品组成
3.1.1两台服务器
部署iGuard至少需要两台服务器:
⏹发布服务器:
位于内网中,本身处在相对安全的环境中,其上部署iGuard的发布服务器软件。
⏹Web服务器:
位于公网/DMZ中,本身处在不安全的环境中,其上部署iGuard的Web服务器端软件。
它们之间的关系如图表3-1,后续小节详细描述它们。
图表31iGuard两台服务器
3.1.2发布服务器
发布服务器上运行iGuard的“发布服务器软件”(StagingServer)。
所有网页的合法变更(包括增加、修改、删除、重命名)都在发布服务器上进行。
发布服务器上具有与Web服务器上的网页文件完全相同的目录结构,发布服务器上的任何文件/目录的变化都会自动和立即地反映到Web服务器的相应位置上,文件/目录变更的方法可以是任意方式的(例如:
FTP、SFTP、RCP、NFS、文件共享等)。
网页变更后,发布服务器软件将其同步到Web服务器上。
发布服务器是部署iGuard时新增添的机器,原则需要一台独立的服务器;对于网页更新不太频繁的网站,也可以用普通PC机或者与担任其他工作的服务器共用。
发布服务器为PC服务器,其本身的硬件配置无特定要求,操作系统可选择Windows(一般网站)或Linux(大型网站,需选加Linux企业发布模块)。
3.1.3Web服务器
Web服务器上除了原本运行的Web系统(如IIS、Apache、SunONE、Weblogic、Websphere等)外,还运行有iGuard的“Web服务器端软件”(由“同步服务器”和“核心内嵌模块”组成)。
iGuard同步服务器负责与iGuard发布服务器通信,将发布服务器上的所有网页文件变更同步到Web服务器本地;iGuard核心内嵌模块作为Web系统的一个插件运行。
需要对Web系统作适当配置,以使其生效。
Web服务器是用户网站原有的机器,iGuard可适应于任何操作系统。
3.2平台支持
3.2.1发布服务器端
支持如下软硬件:
⏹CPU:
IntelPIII或以上
⏹内存:
256M或以上
⏹硬盘:
整个网站容量+5G
⏹操作系统:
Windows2000/Windows2003/Linux
3.2.2Web服务器端
支持以下操作系统:
⏹Microsoft/WindowsNT/2000/XP/2003
⏹Linux
⏹FreeBSD
⏹Solaris
⏹HP-UX
⏹AIX
支持以下Web服务器:
⏹IIS
⏹Apache
⏹iPlanet
⏹SunONE
⏹Weblogic
⏹WebSphere
⏹resin
⏹tomcat
⏹HP-AS
支持以下后台数据库:
⏹SQLServer
⏹Oracle
⏹MySQL
⏹Access
3.3产品型号
iGuard分为基础版、标准版和动态标准版,在标准版和动态标准版上可选加企业发布模块。
所有版本均使用了数字水印技术对所有发送出去的网页都进行完整性检查。
基础版和标准版的差别在于发布功能和适用的网站规模,而动态标准版还对注入式攻击进行防护。
表格3-1列出了它们的适用范围和特性:
型号名称
基础版
标准版
标准动态版
适用情形
内容更新频度低;
且:
单Web服务器;
且:
Intel/x86架构。
(小规模网站)
内容更新频度正常;
或:
多Web服务器;
或:
Unix小型机架构。
以静态页面为主
以动态页面为主
多Web服务器支持
不支持
支持
多虚拟主机支持
不支持
支持
Web服务器操作系统
Windows/Linux
Windows/Linux/Unix
发布功能
手动
自动/手动
选加企业发布模块
不可
可以
防止注入式攻击
不可
不可
可以
表格31产品型号
第4章产品部署
4.1标准部署
4.1.1内容管理系统
图表41标准部署图
目前,大部分网站都使用了内容管理系统(CMS)来管理网页产生的全过程,包括网页的编辑、审核、签发和合成等。
在网站的网络拓扑中,发布服务器部署在原有的内容管理系统和Web服务器之间,图表4-1表明了三者之间的关系。
为一个已有的Web站点部署iGuard时,Web服务器和内容管理系统(CMS)都沿用原来的机器,而需要在其间增加一台发布服务器。
iGuard的自动同步机制完全与内容管理系统无关的,适合与所有的内容管理系统协同工作,而内容管理系统本身无须作任何变动。
发布服务器上具有与Web服务器上的网站文件完全相同的目录结构,任何文件/目录的变化都会自动映射到Web服务器的相应位置上。
网页的合法变更(包括增加、修改、删除、重命名)都在发布服务器上进行,变更的手段可以是任意方式的(例如:
FTP、SFTP、RCP、NFS、文件共享等)。
网页变更后,由自动发布子系统将其同步到Web服务器上。
无论什么情况下,不允许直接变更Web服务器上的页面文件。
iGuard一般情况下与内容管理系统分开部署,当然它也可以与内容管理系统部署在一台机器上,在这种情形下,iGuard还可以提供接口,与内容管理系统进行互相的功能调用,以实现整合性更强的功能。
4.1.2部署示例
图表4-2是一个标准的网站架构示意图。
图表42基本网站结构
在图中,内容管理系统将合成的网页通过FTP或者RCP或者其他方式上传到Web服务器上。
部署iGuard后的网站结构图见图表4-3。
图表43部署iGuard后的网站结构
由上图可以看出,为一个标准的Web站点部署iGuard时,Web服务器和内容管理系统都完全沿用原来的机器,而需要在其间增加一台发布服务器。
iGuard的自动同步机制与内容管理系统无关的,适合与所有的内容管理系统协同工作。
对内容管理系统唯一需要做的只是改变它的设置,将发布的目标服务器地址由Web服务器地址改为发布服务器地址即可,无须安装iGuard任何组件。
当然,根据内容管理系统所采用协议,发布服务器上需要对应安装这些协议的服务器端,例如:
FTP/sftp服务器、rcp服务器或打开文件共享等。
Web服务器使用SSL服务和特定端口(默认为38888,可修改配置选择其他端口)来接收上传的网页文件,无须再开放内容管理系统所需的端口(例如FTP端口)。
为安全起见,强烈建议Web服务器仅开放Web服务端口和iGuard端口,关闭其他所有端口。
4.1.3无内容管理系统
一些简单的网站可能没有使用任何内容管理系统,而仅仅使用诸如Dreamweaver制作和管理网站甚至直接编辑html文件。
这种情形下,iGuard也完全适用,网页制作人员无须改变原来的工作方式,仅仅只是由原来直接修改Web服务器上的文件,改为修改发布服务器上的文件。
4.2复杂部署
更复杂的部署情形包括:
⏹多虚拟主机/Web服务器部署
⏹本地内容管理系统
⏹Web服务器托管
⏹同机部署
这些情形下的iGuard的部署见《iGuard网页防篡改系统部署指南》(W-008-0202-D)。
4.3集群和冗余部署
4.3.1概况
Web站点运行的稳定性是最关键的。
iGuard支持所有部件的多机工作和热备:
可以有多台安装了iGuard防篡改模块和同步服务软件的Web服务器,也可以有两台安装了iGuard发布服务软件的发布服务器,如图表4-4所示。
它实现了2Xn的同步机制(2为发布服务器,n为Web服务器),当2或n的单点失效完全不影响系统的正常运行,且在修复后自动工作。
图表44冗余部署示意图
4.3.2Web服务器多机和集群
iGuard发布服务器支持1对多达64台Web服务器的内容同步,这些Web服务器的操作系统、Web服务器系统软件、应用脚本及网页内容既可以相同也可以不同。
iGuard实现了异种系统架构下对不同内容的统一管理。
当多台Web服务器作镜像集群时,iGuard对于能够严格保证多台Web服务器内容相同。
当单台Web服务器失效时,由于Web服务器集群前端通常有负载均衡设备,因此,它并不影响公众访问网站。
同时,它的失效也不影响iGuard发布服务器向其他正常工作的Web服务器提供内容同步。
在失效期间,iGuard发布服务器会尝试连接这台Web服务器,一旦它修复后重新工作,即可自动进行连接,并自动进行内容同步。
因此,Web服务器的单点失效不影响系统的完整性,并且在系统恢复时不需要对其余机器作任何手工操作。
注意:
iGuard基础版中不包含此功能,iGuard标准版支持Web服务器多机和集群。
4.3.3发布服务器双机
iGuard支持发布服务器双机协同工作,即一台主发布服务器和一台热备发布服务器。
在这种部署情形下,内容管理系统(CMS)需要将内容同时发布到两台iGuard服务器上。
在正常状态下,iGuard主
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- iguardwhitepaper
![提示](https://static.bdocx.com/images/bang_tan.gif)