《一种基于数字签名的网站安全保护方法及系统.pdf》由会员分享,可在线阅读,更多相关《一种基于数字签名的网站安全保护方法及系统.pdf(12页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN102111267A43申请公布日20110629CN102111267ACN102111267A21申请号200910244251322申请日20091228H04L9/32200601H04L9/30200601H04L29/06200601G06F17/3020060171申请人北京安码科技有限公司地址100876北京市海淀区学院南路34号72发明人赵晨辛阳杜晓峰包一兵54发明名称一种基于数字签名的网站安全保护方法及系统57摘要本发明公开了一种基于数字签名的网站安全保护方法,该方法包括将网站中的动态网页静态化;静态化的同时,向网页中嵌入隐藏的数字签名;通过设定机制检测数。
2、字签名,可以鉴别出网页是否被恶意篡改或删除,进而实施安全操作。通过本发明解决了现有技术中存在的网站主动防御能力不足,以及下载到其他环境的网页不再受到签名保护的问题。本发明同时公开了一种保护网站安全的系统。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书1页说明书6页附图4页CN102111271A1/1页21一种基于数字签名的网站安全保护方法,其特征在于,该方法包括将网站中动态网页静态化,同时将经过私钥加密后的长度信息、时间戳及数字摘要打包成为一个隐藏的TAG,作为数字签名嵌入原网页代码中;按设定机制监控网页,检测数字签名,判断网页是否被篡改、删除,网站是否被攻击,进而。
3、实施安全操作;监控网页的机制为设定多个网页监控警戒级别;正常状态下按检测间隔时间监控网页,发现网页被恶意篡改,则说明网站被攻击,立即记录在案,发出报警,并自动从网页数据库中重新生成该页面;恢复网页的同时,警戒级别提升,检测间隔时间缩短,若检测到攻击活动尚未停止,继续提升警戒级别,缩短检测时间,直至实时检测;一段时间内没有再次发现网页被篡改,则逐步降低检测警戒级别,恢复原检测间隔;判断网页是否被篡改、删除的方法为按照网页ID逐一检测网页,若发现某一ID的网页不存在,说明网页被攻击者删除,网站被攻击;提取网页中隐藏TAG,使用公钥解密,得到原网页长度信息、时间戳及数字摘要;计算现网页长度,与原网页。
4、长度对比,不相同时说明网页被篡改,相同时比较下一项;提取现网页时间戳,与原网页时间戳对比,不相同时说明网页被篡改,相同时比较下一项;使用相同的函数计算现网页数字摘要,与原网页数字摘要对比,不相同时说明网页被篡改,相同时说明网页安全,检测下一个网页。2一种基于数字签名的网站安全保护系统,其特征在于,该系统包括网页数据库,用于保存各种网页信息;维护终端,供企业内部工作人员对网站内容进行更新维护;动态网页服务器,用于生成动态页面;网页快照服务器,用于将动态页面转化为静态页面,同时向其中嵌入数字签名;静态网页服务器,用于对外发布静态页面;网页监控服务器,用于监控静态网页服务器中的网页是否被篡改删除;系。
5、统中各装置的工作流程包括使用维护终端更新网站信息,网站更新的内容存入网页数据库,动态网页服务器从数据库中提取数据,为企业内部提供实时的动态网页显示;网页快照服务器从数据库中提取更新数据,同时运用网页缓存快照程序,定期生成网页快照,把PHP等脚本动态产生的网页,以HTML静态页面的形式固定下来,每个静态页面的ID信息保存在网页数据库中;网页快照服务器同时在网页代码中嵌入了隐含的数字签名,含有数字签名的静态网页上传到静态服务器发布到外部网;监控服务器按设定机制检测静态网页,一旦发现网页被篡改,立即记录在案,发出报警,并自动从网页数据库中重新生成该页面。权利要求书CN102111267ACN1021。
6、11271A1/6页3一种基于数字签名的网站安全保护方法及系统技术领域0001本发明涉及网络安全技术,特别涉及一种保护网站安全的方法及系统。背景技术0002黑客网站通过SQL注入、跨站脚本攻击等手段入侵WEB服务器,非法篡改网页内容,影响企事业单位正常业务的展开,损害企事业单位声誉;或是植入恶意代码,使普通用户在访问网站时被自动植入木马和病毒,进而导致系统崩溃或是机密信息被攻击方窃取。0003现有的WEB站点安全防范技术主要体现在加强系统防御功能方面。安装系统补丁,更换更高强度的口令和密码;以及经常对网站进行风险评估,及时发现网页上的各种漏洞。0004目前比较常用的一种方法是使用WEB应用安全。
7、扫描系统。它的工作流程如图1所示。它以基于OWASP的10大漏洞分类建立的WEB应用漏洞特征库为依据,对WEB网站进行拓扑遍历和网页代码分析,找出页面中可能成为攻击目标的标记类型和标记数据。并与漏洞特征库相关联,得到相关漏洞类型,然后以此为根据针对性的构造攻击测试消息,实施模拟探测攻击,找出应用程序开发代码和WEB运行系统中存在的安全漏洞,为开发者的代码优化、管理者的安全配置和安全专家的安全分析提供报告。0005然而,这种技术属于被动防御技术,重点在于查找网站漏洞,增强网络的防御功能,而对于已经入侵的攻击检测无法实时高效的发现并采取相应的防御手段。0006还有些网站使用数字签名来鉴别网页是否被。
8、篡改,确认网站是否受到攻击。如图2所示。对于需要保护的网页,在上传发布给外界INTERNET时,为其生成加密的数字签名EKRSH。将这些数字签名以二元组的形式组织为链表存入内存安全区中,管理员每次更新网页重新计算数字签名更新链表。当用户申请访问页面时,监控程序依据网页FWEBPAGE的ID查询数字签名链表,将该网页的数字签名信息EKRSH解密,得到的页面真实的摘要信息与被访问文件进行HASH计算后的摘要信息相比较,判断网页是否原始,发现网页被篡改则采取报警、日志记录、阻断、恢复等措施。0007该技术计算出的数字签名保存在内存中,每次更新都需要更新数字签名链表,若用户通过浏览器下载的网页中不含数。
9、字签名,拷贝到其他环境则无法检测,而且若用户长时间没有申请访问被篡改的页面,则不能及时的发现网站已受到攻击。0008综上所述,目前的保护网站安全的方法多属于被动防御,对于一些可以运用数字签名主动防御的方法,监控机制也不完善,无法保证及时有效的发现并阻止网站受到的攻击,而且若网页被下载到其他环境,则会脱离数字签名的保护。发明内容0009本发明提供的一种保护网站安全的方法及系统,用来解决现有技术中存在的不能保证进行及时有效的主动防御的问题。0010一种基于数字签名的网站安全保护方法,包括说明书CN102111267ACN102111271A2/6页40011将网站中动态网页静态化,同时将经过私钥加。
10、密后的长度信息、时间戳及数字摘要打包成为一个隐藏的TAG,作为数字签名嵌入原网页代码中;0012按设定机制监控网页,检测数字签名,判断网页是否被篡改、删除,网站是否被攻击,进而实施安全操作;0013监控网页的机制为设定多个网页监控警戒级别;正常状态下按检测间隔时间监控网页,发现网页被恶意篡改,则说明网站被攻击,立即记录在案,发出报警,并自动从网页数据库中重新生成该页面;恢复网页的同时,警戒级别提升,检测间隔时间缩短,若检测到攻击活动尚未停止,继续提升警戒级别,缩短检测时间,直至实时检测;一段时间内没有再次发现网页被篡改,则逐步降低检测警戒级别,恢复原检测间隔;0014判断网页是否被篡改、删除的。
11、方法为按照网页ID逐一检测网页,若发现某一ID的网页不存在,说明网页被攻击者删除,网站被攻击;提取网页中隐藏TAG,使用公钥解密,得到原网页长度信息、时间戳及数字摘要;计算现网页长度,与原网页长度对比,不相同时说明网页被篡改,相同时比较下一项;提取现网页时间戳,与原网页时间戳对比,不相同时说明网页被篡改,相同时比较下一项;使用相同的函数计算现网页数字摘要,与原网页数字摘要对比,不相同时说明网页被篡改,相同时说明网页安全,检测下一个网页。0015一种基于数字签名的网站安全保护系统,包括0016网页数据库,用于保存各种网页信息;0017维护终端,供企业内部工作人员对网站内容进行更新维护;0018动。
12、态网页服务器,用于生成动态页面;0019网页快照服务器,用于将动态页面转化为静态页面,同时向其中嵌入数字签名;0020静态网页服务器,用于对外发布静态页面;0021网页监控服务器,用于监控静态网页服务器中的网页是否被篡改删除;0022系统中各装置的工作流程包括0023使用维护终端更新网站信息,网站更新的内容存入网页数据库,动态网页服务器从数据库中提取数据,为企业内部提供实时的动态网页显示;0024网页快照服务器从数据库中提取更新数据,同时运用网页缓存快照程序,定期生成网页快照,把PHP等脚本动态产生的网页,以HTML静态页面的形式固定下来,每个静态页面的ID信息保存在网页数据库中;0025网页。
13、快照服务器同时在网页代码中嵌入了隐含的数字签名,含有数字签名的静态网页上传到静态服务器发布到外部网;0026监控服务器按设定机制检测静态网页,一旦发现网页被篡改,立即记录在案,发出报警,并自动从网页数据库中重新生成该页面。0027本发明实施例通过对数字签名的监控机制,可以及时有效的发现哪些网页的代码被攻击者恶意篡改,并马上做出安全响应措施。而且本发明实施例采用的是将网页静态化后再发布的方法,不仅便于数字签名的嵌入,而且能够显著减轻网站负载,并充分发挥本地缓存、代理缓存的优势,因此还能有效提升动态网站性能。而且相应网页的数字签名不是存储在服务器中的某块区域,而是直接嵌入到静态网页中,即使改变系统。
14、,或是将网页拷贝到其他环境,仍然可以检查网页的安全性。说明书CN102111267ACN102111271A3/6页5附图说明0028图1为现有技术WEB应用安全扫描系统的方法流程示意图;0029图2为现有技术应用数字签名检测网页是否被篡改的方法流程示意图;0030图3为本发明实施例系统装置构架图;0031图4为本发明实施例静态网页中嵌入数字签名流程示意图;0032图5为本发明实施例带数字签名的网页检测流程示意图;0033图6为本发明实施例静态网页监控方法流程示意图。具体实施方式0034针对现有技术存在的不能及时有效的为网站安全进行主动防御的问题,本发明实施例在将网站中动态网页静态化的同时,向。
15、其中嵌入了隐藏的数字签名;通过本发明预先设定的监控机制检测网站中的网页,可以判断出网页是否被非法篡改、删除,即网站是否被攻击,若网站被攻击,则马上记录在案,发出报警,并自动从网页数据库中重新生成相应页面,从而解决了上述问题。0035如图3所示,本发明实施例提供的网站安全保护系统,包括维护终端、网页数据库、动态网页服务器、网页快照服务器、静态网页服务器及网页监控服务器。0036本系统中的服务器、数据库均指逻辑服务器,可以是物理机器、虚拟机或程序模块。0037维护终端、网页数据库、动态网页服务器、网页快照服务器及网页监控服务器均处于企业内部网中,采取隔离措施,避免被攻击者直接访问,以策安全。003。
16、8维护终端供企业内部工作人员对网站内容进行更新维护。0039网页数据库用于保存各种网页信息。如网站更新信息、静态网页ID等。0040动态网页服务器用于生成动态页面。0041网页快照服务器用于将动态页面转化为静态页面,同时向其中嵌入数字签名等信息。0042静态网页服务器用于对外发布静态页面。0043网页监控服务器用于监控静态网页服务器中的网页是否被篡改删除。0044网站安全保护系统工作流程包括0045内部网维护过程,企业内部工作人员使用维护终端更新网站信息,网站更新的内容存入网页数据库中,动态网页服务器从数据库中提取数据,为企业内部人员提供实时的动态网页显示,以方便管理员修改和查看。0046静态。
17、网页监控过程,网页快照服务器从数据库中提取更新数据,同时运用相应的网页缓存快照程序,通过定期生成网页快照的方式,把PHP等脚本动态产生的网页,以HTML静态页面的形式固定下来,并在网页代码中嵌入了隐含的数字签名。该数字签名与网页文件内容、大小、更新时间都有关。攻击者也许能够找到漏洞篡改网页,但无法伪造数字签名。监控服务器按一定机制检测静态网页,一旦发现网页被篡改,立即记录在案,发出报警,并自动从网页数据库中重新生成该页面。0047如图4所示,本发明实施例中向静态网页嵌入数字签名等加密信息的方法步骤包括说明书CN102111267ACN102111271A4/6页60048步骤401、网页快照服。
18、务器提取数据库中信息,翻译、解析PHP等动态网页文件,将生成的结果存入静态HTML文件中,令生成的文件为FWEB。具体的网页静态化过程属于公知技术,不再叙述。0049步骤402、对生成的HTML文件选用某一HASH函数进行运算,生成唯一的数字摘要H,即HHFWEB。计算网页的长度,得到FWEB的长度信息L,同时提取网页时间戳T。0050步骤403、将数字摘要H、FWEB的长度信息L和时间戳T分别使用私钥加密,得到加密后的数字签名EH,EL,ET。数字签名加密属于公知技术,不再详述。0051步骤404、将数字签名EH、EL、ET打包作为一个TAG嵌入到静态网页FWEB中,得到带数字签名的静态网页。
19、SIGNFWEB,数字签名是网页SIGNFWEB中的隐藏信息。0052步骤405、将带有数字签名的静态网页SIGNFWEB上传到静态服务器以供发布,同时在网页数据库中保存SIGNFWEB的ID记录,以便检测网页缺失。0053其中,步骤402中,针对网站的具体情况,如网页大小,服务器运算能力等,确定具体的HASH算法。比如,在综合考虑摘要位数、算法安全性、运算速度等的基础上,10M以下的网页采用SHA1算法,10M以上的网页采用MD5算法,在速度与安全性中保持一个均衡。0054步骤403后,将与加密用私钥对应的公钥通过安全途径发送至网页监控服务器中。0055假设加密后的网页长度EL为846723。
20、66,加密后的时间戳信息ET为65275046947032,加密后的数字签名EH为02A7C58B1EBD22A96554879694B091E60411CC4DEA8652BB807234FA06BBFB20E71ECF525F29DF58E28F3D9BF541F7EBCEF62B89FDE4D8E7BA1E6CC9EA24850478C11742F5CFA1D23FE22FE8BFBAB5E。则在原静态网页HTML代码后添加如下隐藏代码0056005884672366005965275046947032006002A7C58B1EBD22A96554879694B091E60411CC4。
21、DEA8652BB807234FA06BBFB20E71ECF525F29DF58E28F3D9BF541F7EBCEF62B89FDE4D8E7BA1E6CC9EA24850478C11742F5CFA1D23FE22FE8BFBAB5E006100620063得到类似如下形式的静态网页00640065静态网页标题00660067网页内容00680069007184672366说明书CN102111267ACN102111271A5/6页7007265275046947032007302A7C58B1EBD22A96554879694B091E60411CC4DEA8652BB807234F。
22、A06BBFB20E71ECF525F29DF58E28F3D9BF541F7EBCEF62B89FDE4D8E7BA1E6CC9EA24850478C11742F5CFA1D23FE22FE8BFBAB5E007400750076在监控过程中,则采取相应程序根据标签的内容将加密后的网页长度、时间戳和数字摘要信息相应提取出来。0077如图5所示,本发明实施例中检测静态网页是否为原网页的方法步骤包括0078步骤501、检测用户请求的HTML文件SIGNFWEB,将文件中的嵌入的隐藏TAG分离出来,得到静态HTML文件FWEB与数字签名。0079步骤502、使用安全接收的公钥对提取出来的加密TAG。
23、解密,得到原本的数字摘要H,原始网页长度L,原始网页时间戳T。0080步骤503、计算HTML文件FWEB的大小,得到文件长度L。比较L与L,若两者相等,则继续比较下一项;若两者不等,则抛弃该网页,重新生成安全页面。0081步骤504、提取HTML文件FWEB的时间戳T,与隐藏TAG中的时间戳T相比较,若两者相等,则继续比较下一项;若两者不等,则抛弃该网页,重新生成安全页面。0082步骤505、对得到的静态HTML文件FWEB进行与上传过程中相同的HASH运算,得到新的数字摘要HHFWEB。0083步骤506、检测H与H是否相等。若HH,说明网页还是快照服务器生成的原始网页,没有被攻击者恶意篡。
24、改过,可以安全发布给用户。若HH,则说明网页已经被修改,代码中含有不安全的内容,马上丢弃该网页并记录在案,加强警戒级别,同时重新生成该网页。0084如图6所示,本发明实施例中网页监控服务器监控网页的具体流程为0085正常状态下,监控服务器按照存储的网页ID记录每隔5分钟检测一次网页。一旦发现网页被篡改,立即记录在案,发出报警,并自动从网页数据库中重新生成该页面。若发现相应ID的网页不存在,则说明网页被攻击者删除,同样记录并报警,重新生成页面;0086恢复网页的同时,监控服务器的警戒级别会提升,检测间隔从5分钟缩短为1分钟。而一旦再有发现,表明攻击活动尚未停止,警戒级别会逐步提升,检测间隔缩短为。
25、30秒、10秒、直至实时,从而能够迅速恢复网页;0087如果一段时间内没有再次发现网页被篡改,又会自动恢复前一警戒级别,检测间隔也延长为前一级检测间隔,检测间隔逐步增长,在攻击活动停止的情况下,最终恢复到5分钟的间隔。0088其中,监控的警戒等级及监控时间间隔可根据实际情况自行设定。0089举例说明几种可能的攻击场景0090场景1、攻击者篡改网页内容,静态网页检测程序计算现网页数字摘要,与原网页的数字摘要进行对比。数字摘要与网页的大小、内容都有关,HASH函数生成的散列值具有唯一性,哪怕只改变了页面中一个字符,生成的散列值也不相同。0091场景2、如果攻击者将网页中的数字签名分离,用相同的HA。
26、SH函数生成数字摘要说明书CN102111267ACN102111271A6/6页8嵌入文件伪装数字签名,也是不成功的。因为攻击者没有给数字签名加密用的私钥,这样在私钥公钥不对称的情况下,解密出的数字摘要也不会与伪装的数字摘要相同,同样说明网页已经被篡改。所以攻击者也许能够找到漏洞篡改网页,但无法伪造数字签名。0092场景3、攻击者直接删除网页。因为每个生成的静态网页在上传到静态网页服务器的过程中都在监控服务器中保留了一个相应的ID,若监控服务器找不到与该ID对应的网页,则说明它被攻击者删除,同样记录在案,提高警戒并重新生成该页面。说明书CN102111267ACN102111271A1/4页9图1图2图3说明书附图CN102111267ACN102111271A2/4页10图4说明书附图CN102111267ACN102111271A3/4页11图5说明书附图CN102111267ACN102111271A4/4页12图6说明书附图CN102111267A。