论文部分内容阅读
SOA作为企业应用系统集成架构,具有异构平台互操作性、构件松耦合与动态可组合等特点,因而得到广泛的实践与应用。随着SOA与Web应用的深入,使Web服务与SOA平台的安全问题却变得更加复杂。Web服务间消息机密性与不可篡改性、架构平台的安全性已成为SOA应用成功与否的关键。由于SOA与Web服务机制建立在各种跨平台协议之上,Web服务不仅会受到针对传统互联网协议的攻击,还会受到针对XML解析、SOAP消息、服务引擎等方面新型的攻击。本文研究围绕基于Web服务的SOA应用系统集成所面临的安全问题与风险展开,提出该安全问题应作为一个与应用系统功能需求独立的领域单独分析研究。认为Web服务的安全并不是单个标准与协议就可以实现的,它至少包括服务平台安全性、服务信息的安全性与服务资产的安全性三个层面。提出一个实现Web服务应用系统安全的多层安全架构模型,分析了每层所应具备的功能,提出建立基于Web服务安全需求模型的多层的安全资产库。在Web服务的多层安全架构模型的基础上,重点研究了Web服务防火墙的实现技术、提出了部分攻击的预防算法。这部分的研究集中于两个方面:一是XML注入攻击,另一个是SOAP消息过度加密攻击。针对XML注入攻击,本文深入研究了XML元素嵌套攻击产生、SOAP消息的攻击特征。通过WSDL文档的消息模式生成SOAP消息验证树,构造相应的XML注入检测算法,对服务请求端发送过来的SOAP消息进行攻击检测。对于SOAP消息过度加密攻击,本文创建一个过度加密攻击的场景,分析了针对WS-Security加密标准的过度加密攻击的特点。根据过度加密时SOAP消息的header元素组成与特征,提出了过度加密检测算法。该算法能在Web服务器进行SOAP消息解密之前,检测出是否存在过度加密攻击。针对Web服务资产的使用授权、权限验证与数据访问安全问题,提出了适合SOA环境的细粒度Web服务访问权限控制机制。该机制将基于角色和业务状态的访问控制模型与扩展SOAP消息相结合,能够根据调用者的身份信息、状态信息,判断本Web服务访问请求的访问权限。通过对服务操作调用的权限的判断,保证了服务端机密数据的安全。该方法弥补了WS-Security中身份验证与授权的不足。