(通信与信息系统专业论文)基于脚本安全的防御技术研究.pdf_第1页
(通信与信息系统专业论文)基于脚本安全的防御技术研究.pdf_第2页
(通信与信息系统专业论文)基于脚本安全的防御技术研究.pdf_第3页
(通信与信息系统专业论文)基于脚本安全的防御技术研究.pdf_第4页
(通信与信息系统专业论文)基于脚本安全的防御技术研究.pdf_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

杭州电子科技人学硕:t 学位论文 摘要 目前,针对w e b 应用的恶意攻击行为层出不穷并有愈演愈烈的趋势。而针对w e b 攻击的 防御和检测技术还不够完善,主要的问题是缺乏针对新型攻击的检测和防范、检测不够全面、 检测准确性不高等。因此,研究针对w e b 攻击的检测方法和针对新型攻击手段的防御技术具 有重要意义。 在分析w e b 攻击和漏洞检测原理的基础上,以脚本安全为研究对象,研究w e b 攻击的最 新防御技术和检测方法,所作的主要工作和取得的结论如下: 1 介绍w e b 应用攻击的概念、特点和发展现状。详细分析w e b 安全的攻击技术和防御 研究现状,重点剖析s q l 注入、x s s 跨站、c s r f 攻击和拒绝服务攻击产生的原因、攻击方 式及其防御措施。 2 提出一种依据反向匹配原则和模糊测试的防御拒绝服务攻击方法。该方法针对较新型 的基于脚本页面的d o s 攻击方式一正则表达式拒绝服务攻击,依据正则表达式引擎的反向匹 配原则构造随机的攻击测试用例,使用模糊测试方法对可疑正则表达式子进行迭代测试,计 算匹配时间来校验正则表达式子的安全性。测试并分析结果表明,该方法以较低的误报率和 漏报率校验正则表达式子的安全性,完成对正则表达式子拒绝服务攻击的防范。 3 设计基于代理的被动式w e b 漏洞扫描系统。系统使用被动式的扫描方式,基于代理监 视客户端与服务器之间的通信,分析并检测数据包来获取服务器端的状态,设计针对信息泄 露、字符编码问题、跨域引用、h ”f p 头部和反射型x s s 等安全问题的检测模块,扩展针对 c s r f 漏洞的检测模块并介绍核心模块的每一个子模块实现细节,挖掘w e b 系统存在的漏洞。 相比于主动式的扫描方式,被动式的扫描对服务器端的扫描负载相对较小。同时,系统提供 的抽象设计接口提供了良好地功能扩展。测试结果表明该系统以良好的扩展性、可接受的误 报率和漏报率完成w e b 漏洞的扫描。 关键词:w e b 应用安全,r e d o s 攻击,模糊测试,代理,漏洞扫描 杭州电子科技大学硕士学位论文 a b s t r a c t r e c e n t l y ,am a s so f n e t w o r ka t t a c k st o w a r dw e b a p p l i c a t i o n sa r ef r e q u e n t l yr e p o r t e da n dt u r n o u tt ob em o r es e r i o u s h o w e v e r ,c o u n t e r m e a s u r e sa g a i n s tm a l i c i o u sa t t a c ka r en o tp e r f e c te n o u g h b e c a u s eo fl o wd e t e c t i o na c c u r a c ya n dal a c ko fd e t e c t i n gn e wt y p eo fw e ba t t a c k s t h e r e f o r e , r e s e a r c ho nt h ed e t e c t i o nm e t h o da n dc o u n t e r m e a s u r ea g a i n s tn e wv u l n e r a b i l i t ya r eo fg r e a t s i g n i f i c a n c e t h ep a p e rf o c u s e so nt h es c r i p ts e c u r i t y ,d i s c u s s e sw e ba p p l i c a t i o nv u l n e r a b i l i t i e sa n d d e t a i l so fw o r k a r o u n d ,r e s e a r c h e s p r i n c i p l e s a n d k e yt e c h n o l o g i e s o fd e t e c t i n gt h e v u l n e r a b i l i t i e s n e w t y p eo fw 曲v u l n e r a b i l i t ya n di t sd e f e n s i v em e a s u r ea r ea l s oa n a l y z e d t h e m a i nc o n t r i b u t i o na n dc o n c l u s i o na r ed e s c r i b e da sf o l l o w s 1 k i n d so fw e bv u l n e r a b i l i t i e sa r ei n v e s t i g a t e di nd e t a i l ,s u c ha ss q li n j e c t i o n ,x s s v u l n e r a b i l i t y ,c s r fv u l n e r a b i l i t ya n dd e n i a lo fs e r v i c e ,i n c l u d i n gt h e i rc a u s e ,c u r r e n tr e s e a r c h e s a n dc o r r e s p o n d i n gc o u n t e r m e a s u r e s ,e t c 2 ad e t e c tm e c h a n i s ma g a i n s tn e wf o r mo fw e bv u l n e r a b i l i t yi sp r e s e n t e d r e g u l a re x p r e s s d e n i a lo fs e r v i c ei sc o n s i d e r e da so n eo fw 曲a t t a c k sb a s e do ns c r i p tp a g e a t t a c kt e s t i n gc a s e s b a s e do nt h er u l eo f n e g a t i v em a t c hi nn f ae n g i n ea r ec o n s t r u c t e da n df u z zt e s t i n gi si n t r o d u c e dt o c h e c kt h ea v a i l a b i l i t ya n dr e l i a b i l i t yo f r e g u l a re x p r e s s i o nd e p l o y e db yw 曲a p p l i c a t i o n s 1 1 1 er e s u l t s h o w st h a ti ti sa v a i l a b l et oc h e c kt h ee f f i c i e n to fr e g u l a re x p r e s s i o na n dt od e t e c tr e g u l a re x p r e s s d e n i a lo fs e r v i c ew i t ha c c e p t a b l er a t eo ff a l s ea l a r ma n dr a t eo ff a l s en e g a t i v e 3 ap a s s i v ew e bs c a n n i n gt o o lb a s e do np r o x yi sd e s i g n e d i ti sb u i l tt oc a p t u r et h et r a f f i c b e t w e e nb r o w s e ra n dw e bs e r v e rw i t ht h eh e l po f p r o x ya n dt oi n s p e c tt h ep a c k e tt og e tt h es t a t eo f s e r v e ri nap a s s i v ew a ys oa st od e t e c tt h ep o t e n t i a lv u l n e r a b i l i t y s c a n n i n gm o d u l e sa g a i n s tt h e i n f o r m a t i o nd i s c l o s u r e ,c h a r e s t - e n c o d i n g ,c r o s s - d o m a i n ,h 兀ph e a d e ra n dr e f l e c t i v ex s sa r e d e s i g n e da n dam o d u l ea i m i n g a td e t e c t i n gc s r fv u l n e r a b i l i t yi sa d d e d a f t e rt h a t ,t h e i m p l e m e n t a t i o no fe a c hp a r ti nt h ec o r em o d u l ei si n t r o d u c e d c o m p a r e dt ot h ea c t i v eo n e ,t h e s c a n n e rc a u s e sr e l a t i v e l yf e w e rs y s t e ml o a d m e a n w h i l e ,i t p r o v i d e sa b s t r a c td e s i g ni n t e r f a c et o g a i ng o o de x p a n s i b i l i t y t h ee x p e r i m e n t a lr e s u l ts h o w st h a ti ti sa v a i l a b l et od e t e c tk i n g so fw e b v u l n e r a b i l i t i e sw i t hh i g hs c a l a b i l i t ya n da na c c e p t a b l er a t eo ff a l s ea l a r ma n do ff a l s en e g a t i v e k e y w o r d s :w e b a p p l i c a t i o ns e c u r i t y ,r e g u l a re x p r e s s i o nd e n i a lo f s e r v i c e ,f u z zt e s t i n g , p r o x y ,v u l n e r a b i l i t ys c a n n i n g h 杭州电子科技大学硕士学位论文 第1 章绪论 随着社交网站和电子商务的兴起,w e b 应用安全得到广泛的关注。针对w e b 安全的应用 和研究取得了深入的发展。无论是政府部门、企业还是其他组织机构,都通过网站建立信息 发布平台和业务应用。因此,网站的安全是信息化建设和运行过程中应充分考虑的问题。 1 1 研究背景 目前,许多网站安全性较低,存在极大的信息安全风险和隐患。2 0 1 1 年3 月入侵c o m o d o 凭证机构的伊朗黑客宣布,其入侵的凭证机构包括d i g i n o t a r 、s t a r t c o m 与g l o b a l s i g n 。2 0 1 0 年4 月,r s a 公司遭到了黑客攻击,4 0 0 0 万企业政府和终端用户的资料被泄露。而包括苹果 手机在内的智能终端将因为其应用程序的漏洞而遭受黑客攻击。在2 0 1 1 年4 月份发生的“索 尼被黑”事件导致黑客从索尼在线p l a y s t a t i o n 网络中窃取了7 7 0 0 万客户的信息,其中就包括 信用卡账号。这一黑客攻击事件导致索尼被迫关闭了该服务,其导致的经济损失高达1 7 亿 美元。如何防范数字海啸的网络安全方舟已经成为各国政府和运营商所头疼的问题。 目前针对信息系统的的攻击方法有:拒绝服务攻击、网页篡改攻击、病毒木马攻击、网 络监听攻击、缓冲区溢出攻击、会话劫持攻击、解码攻击等。此外,还有点击劫持攻击【l 】, 信息泄露和不恰当的错误处理,不充分的记录和审计,入侵检测与响应措施缺乏等。攻击者 对w e b 应用实施攻击行为的过程:首先找出w e b 应用系统中存在的漏洞,被称为信息收集; 然后根据收集的漏洞信息类型采取有效的攻击手段实施恶意攻击;最后分析攻击的结果,以 获取想要的权限或者系统信息和数据。目前,信息系统的安全问题主要分为几类: ( 1 ) 服务器的信息( 如口令、密匙等) 被窃取,最终导致攻击者成功入侵系统。浏览器的功 能非常强大并可以以多种形式访问w e b 数据,实现用户与服务器之间的动态交互。浏览器为 正常用户提供服务的同时,也为攻击者提供的一个攻击窗口。黑客们试图在内部网络嗅探信 息,窃取数据,控制或者破坏计算机资源。 ( 2 ) w e b 服务器的文件或者数据被未经授权的个人或组织访问,严重损害数据的隐私性、 机密性和完整性。出于商业机密和隐私保护考虑,相关文件数据仅对有限范围内的个人或组 织公开。但在i n t e m e t 上保护隐私比现实生活中困难得多。 ( 3 ) 远程用户向服务器传输信息和交换数据的过程,交易( 例如银行数据或信用卡信息) 信 息处理不当导致交易信息被截获,使得交易双方的身份被攻击者冒充并实施非法操作,严重 影响网站交易的可靠性和安全性,损害用户与服务提供商的利益。 ( 4 ) 系统中大量存在的b u g ( 程序缺陷) ,使攻击者可以对w e b 服务器发出远程恶意指令。 这导致黑客对信息系统进行恶意篡改和破坏,通过缓存溢出攻击等来提升整个系统的权限, 从而控制整个信息系统,也包括无限制地向服务器发出大量虚假连接恶意指令,以至于服务 器无法对外提供正常的服务,最终导致整个服务器的崩溃。 杭州电子科技大学硕:上学位论文 作为网站的系统管理人员必须充分了解操作系统、数据库、网站应用程序和其他客户端 应用漏洞带来的威胁,掌握各类安全技术,减少或避免网站的安全性风险。例如,使用应用 层防火墙和数据加密技术对w e b 服务器和其数据进行保护和加固,增强其自身的防御能力, 减少任何可能的受攻击面,使不法分子没有可乘之机。 1 2 课题研究现状与意义 1 2 1w e b 应用十大安全风险 o w a s p 2 1 ( o p e nw 曲a p p l i c a t i o ns e c u r i t yp r o j e c t ) 作为国际上公认的w 曲应用安全方面的 开放性组织,提出1 0 大w e b 应用程序安全风险和相关的技术研究方案。 第一种是注入漏洞。如果不信任数据未经验证和过滤而直接发送至服务器端执行,则会 引起针对后端数据库的s q l 注入、针对服务器的o s 命令注入和针对l d a p 服务的l d a p 命 令注入等。攻击者提交的恶意数据迫使服务器执行非本意的命令或者访问未经过授权的数据 第二种是跨站漏洞。未经合理校验的用户数据发送并存储于w e b 服务器,这将导致x s s 脚本攻击。x s s 使得攻击者可以在用户的浏览器上执行一些危险的脚本来窃取用户的私密信 息、破坏客户端系统或者将用户定向到第三方恶意网站。 第三种为无效的验证和会话管理。如果认证和会话管理模块没有正确实现,那么攻击者 可以窃取到用户的密码、密钥、会话令牌等来获取用户的身份信息。 第四种是对资源不安全的直接引用。如果w e b 应用程序在未经校验的情况下直接引用系 统的内部资源,比如文件,目录或者数据库,那么黑客将获得便利途径。黑客可以修改内部 对象的引用来访问未经授权的数据。 第五种为跨站请求伪造。c s r f 攻击是一种针对认证用户的欺骗攻击。攻击者诱骗用户 往存在c s r f 漏洞的网站发送一个伪造的请求,而用户对此却全然不知。 第六种为错误的安全配置。数据库服务器、w e b 服务器、w e b 应用程序和平台之间需要 合理的安全配置才能保证整个系统的安全运行。某个模块出现配置缺陷将会影响到其他模块 的正常运作和安全。 第七种为不安全的加密存储方式。对于重要的敏感数据,比如信用卡号码、社保号码、 认证凭据等,都应进行适当的加密处理,防止攻击者直接获取敏感数据来伪造用户的身份或 者进行其他的非法操作。 第八种为未限定对特定u r l 的访问。用户在访问w e b 应用中的链接或者其他页面时, 需要分配不同的权限,否则攻击者可以访问一些隐藏的页面,比如系统后台页面。 第九种为脆弱的传输层保护。w e b 应用程序没有进行合理的认证和加密,导致敏感的网 络通信机密性和完整性受到破坏,比如使用了不安全的加密方式或者无效的证书等。 第十种为未经验证的跳转和重定向。w e b 应用经常将用户跳转或者重定向到其他页面或 者网站。如果没有对跳转或者重定向的地址进行校验,则攻击者有机会诱骗用户调转至钓鱼 网站或者恶意网站。 2 杭州电子科技大学硕士学位论文 c w e 3 ( c o m m o nw e a k n e s se n u m e r a t i o n ) 发布了最危险的2 5 个软件安全漏洞,其中针对 w e b 安全的漏洞风险和缺陷占据了一大部分。针对w e b 安全的风险,o w a s p 开发并维护了 e s a p i t 4 】项目。e s a p i 是一个免费、开源的w e b 应用程序安全控制组件,可以帮助编程人员 开发低风险应用程序。e s a p i 具有一个安全接口集,并可进行自定义的实现方法。针对越来 越严峻的安全形势,m i c r o s o r 公司设计基于n e t 平台的安全代码库a n t i x s s l 5 j 类库。 a n t i x s s 类库主要是用于防御跨站脚本请求攻击,其防范效果和性能还有待进一步验证。 1 2 2w 曲安全研究现状 w e b 安全渗透测试【6 - 9 1 ( p e n e t r a t i o nt e s t ) 是w 曲安全防护技术的一个重要组成部分。不 同于部署于服务器端的安全产品等被动防御措施,它是积极的、主动的安全评估技术。w e b 安全测试就是使用多种工具模拟和使用w e b 应用的过程,包括手动工具和自动化工具。通用 的方式是从攻击者的角度出发,模拟攻击者的攻击方式,依据相关安全标准,对目标系统可 能存在的漏洞进行全面的安全检查,对最终的测试结果进行分析,以便发现系统存在的漏洞。 安全渗透测试可以分为黑盒测试,白盒测试二种。 黑盒测试把w e b 应用程序看作一个完全对外保密的黑盆子,在不提供任何应用程序的内 部结构和部署细节的情况下,针对w e b 站点的界面和功能进行全面的测试,模拟正常用户和 黑客的行为对w e b 应用程序进行安全性测试。 白盒测试在了解w e b 工作过程之后,检查程序源代码,按预定要求正确工作,通过测试 来检测程序内部动作是否按照要求正常进行。常见的w e b 渗透测试方法主要有以下几种。 ( 1 ) 搜索引擎技术如百度,g o o g l eh a c k i n g 1 0 1 。通过利用搜索引擎强大的搜索功能,完 成对目标站点的信息搜集。搜索引擎对互联网强大的爬虫功能可以用来对挖掘出目标w e b 站 点的一些隐藏信息。如果站点对相关的数据库、配置文件和敏感文件处理不当,黑客无需其 他的工具操作就能直接获取到此站点的敏感数据,从而造成数据的泄露。 ( 2 ) 安全扫描评估技术。安全扫描也称脆弱性评估,其工作方式为采用一般的黑客攻击 手法,也就是模拟实际的黑客攻击,对测试站点可能存在的安全问题进行逐项渗透测试,以 便能够对w e b 站点的结构和状态进行合理地安全评估。漏洞扫描技术依据使用范围,可以分 为基于网络和基于主机的扫描技术。也可以按照扫描过程将安全扫描技术分为四种:p i n g 扫 描技术、端口扫描技术、操作系统探测技术和已知漏洞扫描技术】【1 2 】。按照扫描方式的不同 可以分为基于主动式和基于被动式的扫描技术。通过网络安全扫描,系统管理员能够发现w e b 服务器的各种配置、开放的服务、系统信息和数据库版本等。网络安全扫描技术采用积极的、 非破坏的方法来检查系统是否有可能存在已知的漏洞。它利用一系列的脚本来模拟对系统进 行攻击,并依据系统返回的信息来判断系统可能存在的漏洞。这种技术常常用于模拟实验攻 击和安全审计。各种扫描工具基本上是基于此原理进行的。 目前的安全防御方法有如下几种: ( 1 ) 基于主机的防范。针对w e b 安全的防御主要涉及到w e b 服务器端。基于服务器的 3 杭州电子科技大学硕士学位论文 防篡改保护【l 孓1 5 】涉及到对w e b 应用程序源文件的保护与防破坏。使用基于文件过滤驱动技术 和事件触发技术,将防篡改监测的核心程序通过微软文件底层驱动技术应用到w e b 服务器中, 通过事件触发方式进行自动监测,对文件夹的所有文件内容,对照其底层文件属性,经过内 置散列快速算法,实时进行监测,若发现属性变更,将备份路径文件夹内容拷贝到监测文件 夹相应文件位置。 ( 2 ) 防火墙访问控制。传统的防火墙作为访问控制设备,一般工作于o s i 七层协议的第 三、四层,不能处理8 0 或4 4 3 端口的h t r p 数据流量。为了在处理w e b 通信流量上的不足, 安全厂商推出了各自的w a f ( w e b a p p l i c a t i o n sf i r e w o r k ) ,也就是基于w e b 的防火墙。w e b 应 用防火墙是通过执行一系列针对h t t p h t t p s 流量的安全策略来专门为w e b 应用提供保护的 一款产品。w a f 一般包括异常检测协议、增强的输入验证、基于规则的保护和基于异常的保 护等功能。国内比较著名的w a f 产品有绿盟科技的n s f o c u sw a f 、启明星辰的天清w a g 、 安恒信息的明御w e b 应用防火墙等。 在防范会话劫持攻击【l 睨2 】方面,将对称加密算法运用到c o o k e 中,设计一种用户控制下 的安全c o o k i e 协议。将一条哈希码附加于c o o k i e 中来保护会话信息的安全,但是攻击者依 然能够截获到通信过程中的h r r p 头信息。使用u r l 分段标识符和时间戳技术在每一个请求 中添加秘密会话令牌【1 7 】来保护会话是一种比较好的保护方式。但是该方法要求严格的时间同 步,实际部署会存在一定的难度。由一次性密码发展而来的一次性c o o k i e 方案【2 3 】基于哈希链 和非对称加密技术,对用户的会话令牌进行实时的更新,保证每一次的请求和和响应携带的 会话令牌是不同而且不可预测和可破解的。每一个会话令牌中都包含一个哈希链计数器,浏 览器与服务器都会影响到计数器的值,每一次的请求与响应,计数器都会被增加一个单位。 该方法使得攻击者进行会话劫持和会话重放攻击的难度加大,能够很好的保护会话令牌的安 全,但是也存在不少缺点:服务器与客户端之间需要协同并进行密钥协商;服务器端需要进 行额外的验证工作,对服务器的性能有影响;客户端浏览器需要添加额外的辅助功能。 在防范s q l t 2 4 - 2 8 】注入方面,基于改进的语法分析来检测s q l i 攻击的方法需要根据s q l 语言来构建s q l 语句的语法树,通过对比用户输入前后的语法树的结构来判断是否发生s q l i 攻击。基于h t t p 请求分析来构建h t t p 解析器并动态处理用户的请求,h t t p 请求先保存 至当前存贮器,然后由h r r p 解析器解析s q l 查询语句并提交至s q l i 检测模块。检测模块 依据一定的规则作出判断。 在脚本攻击【2 9 】【3 0 】防范方面,研究者从代码界别入手,在代码级别加入检测函数,挖掘可 能存在的s q l 注入,跨站脚本和命令行攻击。基于反向代理技术的w 曲解决方案【3 1 】【3 2 】,在 s s l v p n 设备上的反向代理功能添加新的w 曲安全检测模块来防范网络攻击。 在w e b 漏洞检测方面,针对特定的安全漏洞所使用的检测方法和规则也不同。基于有限 状态机的的检测【3 4 】通过分析脚本函数调用序列来判断恶意攻击。将j s 脚本函数调用序列构成 有限状态机来描述程序的行为,有限状态机的每一个状态记录着当前程序所处的状态并通过 特定函数调用跳转至另一个状态。基于客户端的恶意攻击防御【3 6 通过抓取页面并分析页面恶 4 杭州电子科技大学硕士学位论文 意代码特征,设定相关规则和算法将相关的恶意代码信息页面存入数据库完成恶意代码库的 收集;基于数据挖掘的服务端攻击检测【37 】通过分析服务器日志并归一化处理后建立数据挖掘 模型来检测恶意攻击行为。一般来说,正常用户访问的u r l 和攻击者使用的u r l 字符串之 间有很大大差别,攻击字符串会带有特定的攻击符号,如n u l l ,i d a ,c m d 等,利用这种 差异就可以鉴别出攻击u r l 。该数据挖掘模型以l e v e n s h t e i nd i s t a n c e 字符串相似系数算法为 基础,对用户访问的u r l 集进行异常检测。基于网络爬虫的漏洞挖掘检测【3 8 枷】对在对w e b 应用程序进行拓扑遍历和网页h t m l 源代码分析的基础上,以基于x m l 的w e b 应用程序漏 洞特征库为依据,对可能的注入点,如动态u r l 和动态交互节点等,构造有针对性的攻击测 试信息,实施模拟攻击。基于代理的漏洞收集系统【4 3 】使用客户端代理获取浏览器与服务器 双方的通信并发送包含测试数据的请求,根据服务器应答信息判断存在的w e b 漏洞。该系统 包含一个检测的代理服务器和一个收集漏洞的数据库服务器。代理服务器运行着程序分别检 查反射型x s s 攻击和存储型x s s 攻击。数据库服务器对攻击行为进行收集。 以上检测方法并不能彻底地检测w e b 应用漏洞:数据库收集到的信息也不是完全正确的, 会存在一定程度的警告;针对特定的攻击比较有效,但检测其他恶意攻击的准确性不理想; 缺乏对一些不重要但影响系统安全的漏洞的检测机制;漏洞检测系统对客户端系统性能和服 务器负载需要进一步优化;仅限于对已知的安全漏洞的检测,无法智能的挖掘未知的攻击, 这是一个难点。 1 2 3 课题研究意义 当前的w e b 应用程序存在普遍的安全问题,数据校验不彻底和数据保护不当带来多种安 全隐患。针对w e b 应用的安全漏洞,一方面在w e b 应用开发过程中通过提高编码校验和过滤 能力来抵御风险,另一方面需要在开发完成后采取必要的防护措施和评估手段来提高w e b 应 用程序的防御能力。分析基于脚本安全的加固技术和漏洞扫描技术,研究针对新型w e b 攻击 的检测和技术防范,针对潜在的w e b 漏洞问题,比如信息泄露问题、字符编码问题、c s r f 漏洞、x s s 漏洞和拒绝服务攻击,研究扫描功能更广泛、扫描误报率和漏报率更小、更高效 的漏洞挖掘技术,进一步提高w e b 应用程序的防御能力,从而保障w e b 应用系统的可用性、 机密性和完整性。 1 3 论文的主要工作及内容安排 论文总结目前的w e b 应用攻击方式和防御措施,研究针对新型攻击方式的检测和防御手 段,探讨w e b 应用漏洞的扫描技术研究。完成的工作如下: 1 总结目前针对w e b 应用安全的攻击类型、方式、防御技术和发展现状。重点介绍s q l 注入攻击、x s s 攻击、c s r f 攻击方式和基于脚本页面的拒绝服务攻击检测与防御研究。 2 提出一种依据反向匹配原则和模糊测试的防御拒绝服务攻击方法。依据匹配引擎的反 向匹配原则构造攻击测试用例并使用模糊测试方法检测基于正则表达式的拒绝服务攻击,构 建针对r e d o s 攻击的检测模型,测试并分析模糊测试算法的有效性和准确性。 杭州电子科技大学硕士学位论文 3 设计并改进基于代理的被动式w e b 漏洞扫描软件。软件采用被动式色扫描方式,分析 代理工具和h t m l 解析器的原理和功能设计,针对信息泄露、h t t p 头部安全问题、跨域引 用问题、字符编码问题、x s s 漏洞等安全问题,设计相应的检测算法,完成针对各个安全问 题的模块设计。 1 针对c s r f 漏洞,设计一个半自动化的测试模块。该模块通过监视浏览器发出的请求, 自动构造相应的请求来对服务器进行安全测试,实施c s r f 漏洞测试。 本文共分5 章,结构安排如下: 第1 章叙述w e b 应用攻击的概念和特点。简述目前国内外针对w e b 安全的攻击技术和防 御研究现状。 第2 章阐述针对w e b 应用的安全分析。分析客户端浏览器和服务器端应用的安全攻击及 防御技术研究。重点分析针对s q l 注入攻击、x s s 攻击、c s r f 攻击的最新防御技术研究。 第3 章介绍正则表达式拒绝服务攻击的特点、形成原因并提出一种防御防御方法。首先, 介绍基于脚本的拒绝服务攻击方式:然后依据正则表达式匹配引擎的反向匹配原则构造随机 的攻击测试用例,使用模糊测试方法对正则表达式拒绝服务攻击进行检测;最后测试并分析 检测算法的合理性和准确性。这部分成果己发表于杭州电子科技大学学报。 第4 章针对信息泄露问题、跨域引用问题、字符编码问题、h t t p 头部安全问题、x s s 漏洞和c s r f 漏洞问题,阐述基于代理的被动式w e b 漏洞扫描系统的设计与测试分析。采用 被动式的扫描方式,基于代理监视客户端与服务器之间的通信,分解并检测数据包来获取服 务器的状态,从而挖掘系统存在的潜在漏洞。首先介绍代理工具的和h t m l 解析器的原理和 设计。然后针对以上安全问题设计相应的扫描算法,完成针对各个安全问题的模块设计。最 后搭建测试环境,将漏洞扫描系统运用于安全测试中,验证扫描系统的有效性和检测效果。 这部分成果已经写成论文形式并发表于杭州电子科技大学学报。 第5 章为全文的总结并指出研究中的不足和下一步的工作。 6 杭州电子科技大学硕士学位论文 第2 章w e b 应用安全分析 w e b 应用系统包括w e b 服务器和浏览器。浏览器作为访问外部资源的接口,提供用户与 服务器之间的交互功能。w e b 服务器系统处理用户的请求,将自身的数据和资源返回给客户 端。因此,w e b 应用安全包括两个层面:客户端浏览器安全和w e b 服务器安全。本章主要介 绍浏览器和w e b 服务器的结构、对象和常见安全威胁和漏洞以及防御措施研究。 2 1 浏览器端安全威胁 浏览器作为b s 系统重要的客户端应用程序,是用户与w e b 服务器之间的通信接口,由 于其内在的安全问题引起了恶意攻击者和安全人员的广泛关注。用户点击浏览器的交互界面 之后,浏览器向w e b 服务器触发一个或多个h 下r p 请求,服务器处理用户的请求并向后台系 统检索数据之后返回给用户一张张h t m l 文件、j s 文件和c s s 文件。通用的b s 模式如图 2 1 所示。 :1 西磊立f 一一一一一 lr - - - - - 1i x m l 。j s o n 数据 图2 1b s 通信模型 w e b 应 用程序 数据库 文件 系统 ii l j 2 1 1 浏览器结构与对象 2 1 1 1h t t p 协议 h t t p 协议是一个应用层的、无状态的、分布式的超文本传输协议。它是请求和解析w e b 通信的核心协议。h t t p 协议采用b s 模式,也就是请求响应模型。浏览器每向站点发送一 个请求,请求的方法、查询参数、协议版本、以及请求修饰符、用户查询参数和数据的类似 于m i m e 的消息结构封装于该请求的h r r p 头部。w e b 服务器返回一个响应状态码,将协议 版本、服务器状态信息、服务器指令设置、实体元信息封装于响应头部,用户查询的数据和 服务器实体内容封装于响应主体。1 日版本的h t t p l 0 只支持短暂的连接。浏览器的每一次请 求都需要建立一个t c p 连接,服务器处理完后立即断开连接,并且服务器不跟踪也不记录每 个用户过去的请求。为了克服h t t p l 0 的缺陷,目前广泛采用h t t p l 1 版本。h t t p l 1 版本 支持持久连接,在一个t c p 连接上可以传送多个h 丁r p 请求和响应。此外,h r r p l 1 还提供 与身份认证、状态管理和c a c h e 缓存等机制的请求头和响应头。h t t p 状态码及其含义如下。: 7 杭州电子科技大学硕士学位论文 l x x :信息响应类,服务端接收到请求并继续处理。 2 x x :处理成功响应类,客户端的动作被成功处理。 3 x x :重定向响应类,需进一步处理的动作。 4 x x :客户端错误,客户端的请求包含语法错误或无法执行。 5 ) 【) 【:服务端错误,服务器无法正确执行客户端的请求。 h t r p l 1 定义八种方法( 也叫动作) 表明请求资源的方式。图2 2 和图2 3 显示一次完整 的请求与响应过程。o p t i o n s 返回服务器针对特定资源所支持的h t t p 请求方法。一般通过 向服务器发送川请求来测试服务器的功能性。h e a d 向服务器获取与g e t 请求相一致的响应, 只是其响应主体不会被返回。如果某个请求无需获取整个响应内容,可使用h e a d 方法来获 取包含在响应消息头中元信息。g e t 向特定的资源发出请求。一般情况下,直接在w e b 页面 点击某个按钮或者图片的动作就是一次g e t 方式的请求。p o s t 向指定资源提交数据进行处 理( 例如提交表单数据或者上传文件) ,而数据被包含在请求体中。p o s t 请求可能会创建新 的资源或者更新现有资源。p u t 向指定资源位置上传并更新内容。d e l e t e 请求服务器删除 r e q u e s t u r i 所标识的资源。t r a c e 回显服务器收到的请求,用于测试或诊断。c o n n e c t 是 h t t p 1 1 协议中预留给能够将连接改为管道方式的代理服务器。 请求标头困嚣殛嚣函藏延圃妥嚣l 一一 键 值 请求 曼c t j p 敬酢i 3 2 3 6 9 6 7 6 2 7 3 1 t z u i 器咄d 砖8 卿描删4 蚴酝瓣l 麟7 矧 a c c e p t 蛳 r e f e r e r h t t p :1 2 3 z o g o n 嘞| k c e e p t - l a a z & g e 玉c n l l s e r - k g e a t h e z i l l a ,4 0 ( c o m p a t i b l e :慨7 t 良t i m o w s n t5 :0 :t r i 螂,铋i $ i f c l ;搬c i 卫2 0 a c c e p t , x n c o d i n g弘溉d e q a t e h o s t2 2 d 1 8 1 1 9 1 舛:孵弱 c o n n e c t io n k e e p n i r e 图2 2h t r p 请求 医豆匮囊基匦垂翻响应标头医囊亘蚕蚕医荔嚣夏隧委薹羹薹囡 键值 噙菇,j :j ;囊。;菱纛戮豢j 戮瀵i ? j ;| i i _ 囊薯一鬻滋誊鬻 | | j i ; | j 薹p l l , 攀:2 0 0 h r r p 1 , :2 0 0 自o k o ,j , n 嘲霞 j 鬈j 鬻鍪甏i 荔。 i 萋蔓荔 缀| | 薅? + i _ 1 1 i 童i 萋曩磊毫_ 黧i j i j 蠹警 ,j _ j 童c j o ;n 确t 篱蠢羡l 藏篱j 瑟荔鬻薹霪i i 囊! _ ,l 叠专蔓j 蔫j 篓j 篓,董,ij 薯i m a g e j 。p e g 董z 一- 誓誓1 | a c e e 蕾l ? 爱鲁毹g 垂薹碧? 。i 曩耋i 篓 置o i _ j 童毫i 1 _ b y t e s 曩川 z t 蠢一鬣曩善j 。叠| :j 蔫誊j 篝 。 i7 i 、一 j o “1 1 2 7 1 9 2 7 1 l a s t 。- m o d i 翻:f i :等dr i j ,囊j 薹鬻;叠 j ? ? 。一 。, s 鲁t0 3 3 锄x 2 0 0 9 4 1 : c o n t e n t - l e n g t 】 i l i g 熬i 巍。移i7 ,i j o 。i?0 j 蔓鼍t ;电i j i ,蠢蓬;j 差羹j 薹冀囊i 荔翥蠢。 j 。:|m o b :1 2d e c2 0 1 l - 1 3 :3 2 :4 6g m t 。 s e r v e r - 一i i 蠢羹囊麓黧誊? 鬃薹囊? j l i 珠t t p 妙l ,k 1 0 图2 3h t r p 响应 2 1 1 2 统一资源定位符u r l w e b 应用中的每一个资源都有一个相应的地址,称为统一资源定位符( u r l ) 。用户请求 此资源,如果资源可用,则服务器返回该资源。h t r p 的统一资源定位符将从因特网获取信 杭州电子科技大学硕士学位论文 息的五个基本元素包括在一个简单的地址中。u r l 的形式为:协议类型:服务器地址 :端口 号】路径【参数】【? 查询语句】。 2 1 1 3 文档对象模型d o m 文档对象模型( d o c u m e n to b j e c tm o d e l ,简称d o m ) ,是w 3 c 组织推荐的处理可扩展置 标语言的标准编程接口。它提供独立的应用程序接口,任何平台和语言都可以与d o m 兼容 使用,并可以动态地访问应用程序和脚本代码,修改其数据信息、结构和w w w 文档的样式 ( h t m l 和x m l 文档是通过说明部分定义的) 。文档可以进一步被修改或者更新并将结果直接 添加到当前的页面。d o m 是一种基于树的a p i 文档,它要求处理过程中整个文档都表示在 存储器中。d o m 分为h t m l 型和x m l 型两种。它们分别定义访问和操作h t m l x m l 文档 的标准方法,并将对应的文档呈现为带有元素、属性和文本的树结构( 节点树) 。 2 1 1 4 客户端j a v a s c r i p t j a v a s e r i p t 是i n t e r a c t 上最流行的脚本语言之一,它兼容于所有w e b 浏览器版本,能够增 强用户与w e b 站点和w e b 应用程序之间的交互。它是一种广泛应用于客户端网页开发的脚本 语言,用来给h t m l 网页添加动态的功能。j a v a s c r i p t 除了用于客户端的功能,比如客户端 的数据校验,也可以用于服务器端编程。完整的j a v a s c r i p t 实现包含三个部分:e c m a s c r i p t , 文档对象模型( d o c u m e n to b j e c tm o d e l ,d o m ) ,浏览器对象模型( b r o w s e ro b j e c tm o d e l ,b o m ) 。 e c m a s c r i p t 描述j a v a s c r i p t 语言的语法和基本对象;d o m 描述处理网页内容的方法和接口; b o m 描述与浏览器进行交互的方法和接口。e c m a s c r i p t 仅仅是一个描述,定义脚本语言的 所有属性、方法和对象。其他语言可以实现e c m a s c r i p t 来作为功能的基准。简单地说, e c m a s c r i p t 描述了以下内容:语法;类型;语句;关键字;保留字;运算符对象。d o m 把 整个页面规划成由节点层级构成的文档。h t m l 或x m l 页面的每个部分都是一个节点的衍 生物。b o m 用于移动窗口、改变状态栏中的文本以及执行其他与页面内容不直接相关的动作。 它只是j a v a s c r i p t 的一个部分,没有任何相关的标准。b o m 主要处理浏览器窗口和框架,通 常浏览器特定的j a v a s c r i p t 扩展都被看做b o m 的一部分。这些扩展包括:弹出新的浏览器窗 口;移动、关闭浏览器窗口以及调整窗口大j x ;提供w e b 浏览器详细信息的定位对象;提供 用户屏幕分辨率详细信息的屏幕对象;对c o o k i e 的支持;i e 扩展b o m ,加入了a c t i v e x o b j e c t 类,可以通过j a v a s c r i p t 实例化a c t i v e x 对象。 2 1 1 5 层叠式样式表c s s 层叠式样式表( c a s c a d i n gs t y l es h e e t ,c s s ) ,又称为“风格样式表( s t y l es h e e t ) ”,专门 用于w e b 页面风格设计的。例如,网站为纪念某项活动而在当天将整个网站的页面背景颜色 设置为某种颜色,这就是一种风格。通过设置样式表,可以有效地、统一地设定h m t l 页面 中各标签的显示属性。也就是说,级联样式表可以使网站管理员更有效地控制网页外观。使 用级联样式表,可以扩充精确指定网页元素位置,外观以及创建特殊效果的能力。c s s 最主 要的目的是将文件的结构( 用h t m l 或其他相关的语言写的) 与文件的显示(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论