




已阅读5页,还剩45页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
移动代理系统安全技术研究 摘要: l 随着j a v a 语言的逐步推广和普及,移动代理技术作为未来数年内分步式计 算技术发展的潮流和方向,正在受到越来越多的重视。但是移动代理系统的安 全问题,却直接影响着该技术的发展,成为阻碍该技术被广泛接受的最大障 碍。鉴于这样的背景情况j 体文通过对前人提出的移动代理安全技术进行分 析,对n a p l e t 移动代理系统的安全性进行改进,提出了一个安全的移动代理系 统s - n a p l e t 。 : s - n a p t e t 的安全机制分成三个方面,依次是移动代理迁移及通信的安全, 保护主机平台免受恶意代理的入侵,以及移动代理自身的保护。首先,系统通 过安全套接层保护移动代理迁移及通信的安全。其次,为了保护主机平台免受 恶意代理的入侵,s - n a p l e t 将资源分成系统级资源和应用级的资源两类。f 结合安 t 全管理器与安全包裹层两种技术的优点,用安全管理器管理系统级的资源,用 安全包裹层管理应用级的资源,避免了所有的资源由安全管理器统一管理带来 的安全隐患。同时,s - n a p l e t 对安全管理器进行了改进,增加了安全监控部件, 、 采用基于行为规范的检测方法,对a g e n t 可疑的恶意行为进行监测。f 最后,为 了对移动代理自身进行保护,s - n a p l e t 构造了一个安全的移动代理结构,通过访 问控制密钥来防止恶意主机对a g e n t 代码、数据以及状态的窥探和窃取攻击: 通过历史记录来检测恶意主机对a g e n t 代码、数据以及状态的修改、操纵以及 ,、一 封杀等攻击方式,以此来保证移动代理的安全。 关键词: 移动代理、安全套接层? 安全管理器? 包裹层、安全监控? 访问控制? 历史t 己:) ( ) 录 移动代理系统安全技术研究 a b s t r a c t : w i t ht h ew i d eu s eo fj a v al a n g u a g e ,m o b i l ea g e n tt e c h n o l o g yh a sb e c o m eo n e o ft h em o s ti m p o r t a n ta n dp r o m i s i n gd i r e c t i o n so fd i s t r i b u t e dc o m p u t i n gr e s e a r c h d e s p i t ei t sm a n yp r a c t i c a lb e n e f i t s ,m o b i l ea g e n tt e c h n o l o g yr e s u l t si ns i g n i f i c a n t n e ws e c u r i t yt h r e a t sf r o mm a l i c i o u sa g e n t sa n dh o s t s i nf a c t ,s e c u r i t yi s s u e sa r e r e c o g n i z e da sc r i t i c a lt ot h ea c c e p t a b i l i t yo ft h et e c h n o l o g y i nt h i sa r t i c l e ,id e s i g n a n di m p l e m e n tas e c u r em o b i l ea g e n ts y s t e mn a m e ds - n a p l e ta f t e rt h es t u d yo ft h e s e c u r i t yt e c h n o l o g yi nm o b i l ea g e n ts y s t e m s - s - n a p l e tm a i n l ys o l v e st h r e et y p e so fs e c u r i t yp r o b l e m s t h e ya r es e c u r e c o m m u n i c a t i o nb e t w e e na g e n t sa n ds e c u r et r a n s f e r r i n go fa g e n t sb e t w e e ns y s t e m s , p r o t e c t i o no fa g e n t sa n dp r o t e c t i n go fh o s t s t os o l v et h es e c u r ec o m m u n i c a t i o na n d t r a n s f e r r i n gp r o b l e m ,s - n a p l e tu s e ss s l t op r o t e c th o s t s ,s - n a p l e tu s e ss e c u r i t y m a n a g e ra n dw r a p p e r t h er e s o u r c e so fah o s ta r ed i v i d e di n t ot w ot y p e s ,s y s t e m l e v e lr e s o u r c e sa n da p p l i c a t i o nl e v e lr e s o u r c e s s y s t e ml e v e lr e s o u r c e sa r ep r o t e c t e d b ys e c u r i t ym a n a g e ra n da p p l i c a t i o nl e v e lr e s o u r c e sa r ep r o t e c t e db yw r a p p e r f u r t h e rm o r et h es e c u r i t ym a n a g e ri se x t e n d e dt op r e v e n tv a r i o u sa t t a c k sf r o m m a l i c i o u sa g e n t s t op r o t e c ta g e n t s ,as e c u r i t ya g e n ts t r u c t u r ei sd e s i g n e d ,a n dt h e p r i n c i p a la n da r c h i t e c t u r eo f t h es t r u c t u r ei sd i s c u s s e di nd e t a i li nt h ea r t i c l e k e y w o r d s : m o b i l ea g e n t 、s e c u r es o c k e t sl a y e r 、s e c u r i t ym a n a g e r 、w r a p p e r 、s e c u r i t y a u d i t 、a c c e s sc o n t r o l 、h i s t o r yt r a c e 移动代理系统安全技术研究 第一章序言 随着j a v a 语言的逐步推广和普及,移动代理技术作为未来数年内分步式计 算技术发展的潮流和方向,正在受到越来越多的重视。但是移动代理系统的安 全问题,却直接影响着该技术的发展,成为阻碍该技术被广泛接受的最大障 碍。鉴于这样的背景情况,本文选取“移动代理系统安全技术研究”为题,无 论是从理论角度考虑,还是从实际应用出发,都具有深远的意义和研究价值。 移动代理系统安全技术研究的难点体现在两个方面:保护主机平台免受恶 意代理的入侵和移动代理自身的保护。尤其是移动代理自身的保护,目前还没 有非常理想的解决办法。虽然也有人提出了一些方法,比如移动加密、限时黑 盒保护、状态评估函数等,但这些方法都只是解决了问题的某一方面,需要进 一步研究。 文章的创新点主要体现以下两方面:首先,为了保护主机平台免受恶意代 理的入侵,作者将资源分成两类,分别交由安全管理器与包裹层来进行管理, 避免了所有的资源由安全管理器统一管理带来的安全隐患。同时,作者对安全 管理器进行了改进,增加了安全监控部件,对a g e m 可疑的恶意行为进行监 测。其次,为了对移动代理自身进行保护,作者构造了一个安全的移动代理结 构,通过访问控制密钥来防止恶意主机的窥探和窃取攻击;通过历史记录来检 测来自恶意主机的修改、操纵以及封杀等攻击方式,以此来保证移动代理的安 全。 就应用的广泛性而言,移动代理技术已经被应用在移动计算、分布式信息 检索、电信网络服务、网络管理、电子商务等领域,虽然这些应用大部分都是 带有研究性质的,但是这并不影响该技术的迅猛发展。随着i n t e m e t 的进一步发 展,大量的移动设备开始上网,网上用户个性化需求越来越多,网络的应用日 益复杂多变,要求能迅速定制各种服务。移动代理技术正好可以提供一个统一 的框架,满足这些发展要求。所以,随着移动代理系统安全技术的不断成熟, 移动代理技术的前景是光明的。 下面我们先简单回顾一下移动代理技术的背景、基本概念、以及主要优 点。 1 1 移动代理技术的背景 分布式计算是计算机网络时代的关键技术。当前的分布式计算大都基于传 统的客户f i e 务器( c l i e n t s e r v e r ) 模式,通过远程调用( r p c ) 或消息传递( m e s s a g e p a s s i n g ) 等方式实现跨平台的操作,比较适合稳定的网络环境和应用场合。随着 计算机网络的发展,尤其是因特网应用的高速增长,新型网络应用层出不穷, c l i e n t s e r v e r 模式的缺点日益明显。譬如客户机和服务器在计算过程中必须一直 持续连接,计算过程有大量的中间结果需要传输,浪费带宽,因而难以适应移 动计算的低带宽、高延迟、不稳定的网络环境。c l i e n t s e r v e r 模式的可维护性和 可扩充性也比较差,不利于当今快速多变的网络应用服务领域。基于这种情 况,移动代理( m o b i l ea g e n t ) 技术被提了出来。它集软件、通信、分布系统的技 3 移动代理系统安全技术研究 术于一体,弥补了传统c l i e n t s e r v e r 技术的不足,有着巨大的应用前景。特别 是随着j a v a 语言的逐步推广和普及,虚拟机技术的广泛采用,移动代理技术作 为未来数年内分步式计算技术发展的潮流和方向,正在受到越来越多的重视。 1 2 移动代理技术的基本概念 如下图所示,m o b i l ea g e n t 是一段程序,它代表人( 或者是用户) ,根据自己 的意愿,在一个异构的网络中,选择从一个系统迁移到另一个系统,完成相应 的功能。在每个系统,a g e n t 选择与系统提供的各种服务和接口进行交互,利 用系统的资源完成相关的工作,从而通过多次的迁移,最终完成生成时被赋予 的任务【l 】。 4 n c l i e n t 矗n s e r v i c e ij 石xx ) p 叫j 图1 移动代理的迁移 表示m o b i l ea g e n t 移动代理有两个特点:移动性( m o b i l i t y ) 和自主性( a u t o n o m y ) j 2 1 。移动性是 移动代理区别于一般代理的标志。移动代理的移动一般是在异质主机上的持续 移动。由于移动代理会在运动状态下挂起、移动,然后继续执行,因此移动的 对象除了程序外,还必须有代理的当前运行状态信息和相应的数据。移动代理 的特点之二是自主性。移动代理能在没有人或其他代理直接干涉和指导的情况 下持续运行,并能控制其内部状态和动作。代理的移动一般是由代理自主决定 进行的。 移动代理的这两个特点把它与其它相近的概念区分了开来。在c o d eo n d e m a n d 和j a v aa p p l e t 技术中,代码的移动是在代码运行前进行的,因此移动 的只有代码本身。而在分布式操作系统中,进程和对象迁移过程中虽然也包括 代码和状态信息的移动,但它的移动是被动的,而移动代理中的移动是由代理 自主决定的。 要完整的理解移动代理技术,则必须从移动代理系统的角度出发。移动代 理系统由移动代理( m a ) 和移动代理环境( m a e ) 两个部分组成。m a e 是一个分布 在网络各种计算设备上的软件系统,它也被称为移动代理服务器或移动代理平 台。它一般建立在操作系统之上,为m a 提供运行的环境。m a 则是只能存活 在m a e 中的软件实体。m a 的移动便是从一个m a e 移动到另一个m a e 。 4 移动代理系统安全技术研究 从抽象的角度来说,一个移动代理系统应该具有如下的基本模型【2 】: 代理模型( a g e n tm o d e l ) 这个模型定义移动代理的智能代理部分的内部结构,即移动代理作为代理 必须具有的一些特性,如代理的自治、学习、协商、协作、反应等性质。在移 动代理技术领域,研究人员关心的是提供一个代理移动的框架,因此其代理模 型主要和代理的自治性有关。 计算模型( c o m p u t a t i o nm o d e l ) 计算模型定义移动代理的运行方式,如m a 是编译运行还是解释运行,是 以线程方式还是以进程方式生存于运行环境中等。计算模型决定代理是以通信 还是以移动的方式来完成任务,以达到最佳的整体运行效率。 安全模型( s e c u r i t ym o d e l ) 移动代理系统本身是一个开放的系统,m a e 可能要接受不信任的移动代 理,移动代理也可能到不信任的m a e 中去执行,因此,必须要有安全措施。 移动代理的安全模型描述如何保证代理的完整性,防止代理携带的数据泄漏, 代理和服务器的相互认证,代理的授权和服务器资源存取控制策略等。 通信模型( c o m m u n i c a t i o nm o d e l ) 在基于移动代理系统的分布式应用中,存在着用户、静态代理、其它的移 动代理、其它的移动代理系统甚至是其它非移动代理系统( 如c o r b a ) 等实体, 移动代理为了实现特定的功能,必须具备与这些实体通信的能力,特别是为了 使代理具有协商、协作解决问题的能力,代理间的通信手段必须方便灵活,这 是通信模型所必须解决的。 迁移模型( m i g r a t i o nm o d e l ) 迁移模型定义代理如何移动的问题,包括3 个方面:代理要移动时怎样挂 起代理、俘获代理的运行状态并把代码及有关数据打包;以什么方式把代理传 送到目的地;如何接收代理并恢复代理的运行。 命名和定位模型( n a m i n g a n d l o c a t i n gm o d e l ) 移动代理系统中有很多移动代理,他们产生于不同的主机,有着不同的目 的,移动代理本身是动态的,不断在主机间移动。因此,必须要有代理的命名 和定位模型,保证代理名字的唯一性和方便查找代理当前地址。 服务定位模型( s e r v i c el o c a t i n gm o d e l ) 服务定位模型涉及提供a g e n t 查找所需服务的手段。当本地服务不能满足 时,a g e n t 将寻找能提供所需服务的站点,然后前往该地。 这些模型的实现构成了移动代理系统,不同的模型实现方法使得各个移动 代理系统之间有着很大的区别。 5 移动代理系统安全技术研究 1 3 移动代理技术的优点 和传统的分布式计算模型相比,移动代理的移动性和自治性带来了许多优 点,采用移动代理技术可以得到许多好处【3 】。 节约网络带宽:移动代理直接在数据端执行处理,和客户端没有中间数据 结果的传递,只返回最后的结果。因而,在要处理的数据量特别大、网络带宽 不足的情况下,移动代理可以有效的节约网络带宽。 提供实时的远程交互:在一些远程控制系统中,如外太空探测器的控制, 网络的时延使得远程实时变得非常困难,发送代理程序实行远端的本地控制可 以解决该问题。 支持离线计算:用户派遣出代理程序后,可以断开网络连接,而代理将在 网络上自主运行。代理完成任务后,当它发现用户设备重新连上网络时,就返 f 回计算结果。 实现载荷卸载:对于一些计算能力弱的设备,如个人数字助理,可以把计 算转化成移动代理程序,发送到计算能力强的设备上进行计算。 提供定制化服务:使用移动代理,客户端可以根据服务器端提供的底层操 作函数,编写满足自己特定需要的服务程序,然后发送到服务器端运行。这种 方式增加了分布式应用的伸缩性。 易于分发服务:在采用移动代理技术的分布式应用中,服务的更改变得非 常简单,比如在电信网的管理中,当业务需要改变时,只需把新的服务程序发 送到相应的服务节点上,用不着人力去一个个节点安装。 增加应用的强壮性:移动代理的工作方式减少了应用对网络连接可靠性的 要求,它的自主性又使它具备对环境的反应能力,因此能建立更容错的分布式 系统。 提供平台无关性:移动代理程序是跨平台运行的,移动代理应用编程不存 在程序的移植问题,便于应用的快速开发。 提供更自然的电子商务模式:用移动代理代表用户参与电子交易,买家可 在网上自由寻找卖家,查询商品种类,商谈价格,卖家也可以主动上门向买家 推荐商品,两者的交流可以采用自定义的协议,交易的方式很自然。 移动代理的这些优点使得它有重大的应用价值,它的应用范围包括:电子 商务、个人软件助理、分布式信息检索、电信网络服务、监视和通告、信息发 布、移动设备计算、网络管理、并行任务求解、工作流管理和协作、动态网络 等。 必须指出的是,上述的优点并不是移动代理技术所特有的,除了远程实时 交互外,其余几点用传统方法也可以实现,但唯有移动代理技术提供了一个能 满足全部要求的体系架构。 1 4 目前较有代表性的移动代理系统简介 移动代理系统的研究异常活跃。迄今为止,已有约6 0 多种移动代理系统存 在,绝大多数系统都是在j a v a 语言之后出现的,大部分系统都还只是原型系 6 移动代理系统安全技术研究 统。它们的针对性不同,实现方法也各有千秋。下面我们将讨论当前比较成熟 而具有代表性的一些移动代理系统。 a r a a r a 4 是移动代理的运行平台,它致力于把移动编程和当前的编程实践无缝 连接,即尽可能用现有的编程模型或语言来实现程序移动。为此,a r a 系统提 供了一个核,c , , ( c o r e ) ,它直接运行在未经任何修改的操作系统上。核心之上是一 个多语言的解释器。a r a 移动代理是一个能根据自己的选择移动的程序,其执 行不需要外部的干涉。代理可以用t c l ,c c + + ,j a v a 等语言编写,运行在解释 器内。c 语言传统上是编译型语言,a r a 专门设计了c 语言编译器,把c 语言 j 预编译成可移动的m a c e 解释字节码,然后在m a c e 解释器中运行。a r a 的核 心只提供一些最基本的服务,如资源管理、移动性、安全性等,一些高层服务 则由专门的服务代理提供。服务代理是静态编译的对象,分布在网络节点上。 在任何状态下,a r a 代理的移动只需调用一个g o 指令。代理在创建时,被 赋予全局a l l o w a n c e ,它用来限制a g e n t 的行为。a g e n t 移动后必须进入叫p l a c e 的虚拟位置。一个p l a c e 如果接受a g e n t ,它将赋予a g e n t 一个本地的 a l l o w a n c e ,它是一个系统资源访问权限向量,进一步对a g e n t 行为进行限制。在 同一p l a c e 中,a g e n t 间的通信采用一种类似c l i e n t s e r v e r 方式的消息交换。核 心为此提供服务节点的概念,一个a g e n t 可以用广播的方式公布服务点,扮演 服务a g e n t 的角色,其它的a g e n t 则以客户a g e n t 的身份和它交互。 和其它多语言系统不同的是整个a r a 系统运行时是一个多线程的进程,迁 移到系统内的a g e n t 也以线程的方式运行。这种方式有利于提高系统效率。 t e l e s c r i p t t e l e s c t i p t 2 i 南g e n e r a lm a g i c 公司开发,是第一个商品化的m a s ,首次应 用于a t & t 公司的p e r s o n a l l i n k 网络中。它是一个与平台无关的系统,包括面 向对象的移动代理语言及解释器。在t e l e s c r i p t 中,每个网络节点运行一个服务 器,管理着一个或多个虚拟的p l a c e ,也即代理运行环境。a g e n t 用g o 命令来 使自己移动,在进入p l a c e 前,a g e n t 要向p l a c e 提供加密证书,并被分配一定 的权限。a g e n t 用m e e t 指令和同一p l a c e 中的a g e n t 交互,用c o n n e c t 指令和不 同p l a c e 中的a g e n t 进行会话。t e l e s c r i p t 还提供基于设备的验证手段和复杂的 授权策略。 从技术角度讲,t e l e s c f i p t 已经是一个非常完整的移动代理系统,他的缺点 是消耗计算机资源太多,而且比较昂贵。随着基于j a v a 的m a s 出现,它已没 有了生命力。 7 移动代理系统安全技术研究 在t e l e s c t i p t 之后,g e n e r a lm a g i c 公司开发了纯j a v a 版的移动代理系统 o d y s s e y 。o d y s s e y 扩展了j a v a 的r m i ,提供了对c o r b a 的i l o p 和微软的 d c o m 的支持,是基于j a v a 的移动代理系统中唯一支持各种传输机制的系统。 d a g e n t d a g e n t 2 是由d a r t m o u t h 大学开发的移动代理系统,以前称为a g e n tt e l 。 d a g e n t 有类似t e l e s c r i p t 的服务器模型,它和a m 一样支持多语言,目前支持 t e l ,j a v a 和s c h e m e 。它的体系结构可分为5 层:最低层实现传送机制的a p i 。 第2 层是运行在各个网络节点的服务器,负责a g e n t 的管理和状态俘获、移 动、通信和a g e n t 的备份等功能。一些高层的服务如资源目录、网络检测、位 置无关命名、高层通信、访问控制等由其它a g e n t 提供。其中最重要的是资源 管理器a g e n t 。体系结构的第3 层是一个和语言无关的核心层,它在服务器的 协同下,实现a g e n t 的操作命令,如a g e n t 在服务器中注册或注销( b e g i na n d e n d ) 、移动( j u m p ) 、发送或接收消息( s e n da n dr e c e i v e ) 、查询其它a g e n t 的状态 f s t a t u s ) 等。第4 层是语言解释器,每一种支持语言各有一个解释器。每个解释 器有4 个组成部分:解释器本身、安全模块、状态模块及与核心的接口。安全 模块的作用是确保a g e n t 不违反资源管理器规定的访问限制。状态模块向核心 提供俘获和恢复a g e n t 内部状态的函数。在a m 中,a g e n t 作为线程运行,由解 释器调度时序和利用核心提供的函数来分配内存和访问系统。但在d a g e n t 中,每个a g e n t 有自己的进程,进程的调度依赖于操作系统。每种语言实现自 己的安全访问模块。这种方法的好处是对标准解释器的修改不多,只需增加状 态俘获函数,因此易于随着标准解释器版本升级。但随着支持语言的增多,解 释器的工作量很大,不如a r a 易于实现。 d a g e n t 提供两个层次的通信机制,低层的通信包括消息队列、字节流。高 层的通信如r v i i 则建立在a g e n t 层次上,由通信服务a g e n t 提供。 a g l e t a g l e t 5 是最早开发的基于j a v a 的移动代理系统,也是最受欢迎的移动代理 系统。它的设计非常简洁,仅仅追寻j a v a 模型。a g l e t 移动代理被视为一个移 动的j a v a 对象。一个a g e n t 包含核一t ;, ( c o r e ) 、代理( p r o x y ) 、路由计划( i t i n e r a r y ) 和 全球唯一的标识符( i d e n t i f i e r ) 。核心拥有a g e n t 所有的内部变量和方法,并提供 它与环境交互的接口。p r o x y 则封装了核心,防止对a g e n t 私有方法的直接读 取。在a g l e t 系统中,c o n t e x t 是a g e n t 工作场所,它是一个静态对象,维护和 管理a g e n t 的运行并保护主机系统不受恶意a g e n t 的攻击。 8 移动代理系统安全技术研究 a g l e t 对象支持的行为包括创建( c r e a t i o n ) 、克隆( c l o n i n g ) 、派遣 ( d i s p a t c h i n g ) 、回收( r e t r a c t i o n ) 、挂起( d e a c t i v a t i o n ) 、激活( a c t i v a t i o n ) 、终结 ( d i s p o s a lo o 和消息传递( m e s s a g i n g ) 。克隆将产生一个除标识符外和原a g e n t 完 全一样的对象。a g l e t 模型采用事件驱动方式。当一个a g e n t 要移动时,它将调 用d i s p a t c h 方法。a g l e t 系统通过代理传送协议( a t p ) 把a g e n t 传送到目的地, 每个a g e n t 有全局独一无二的名字。a g e n t 在迁移过程中并不去俘获自身线程的 状态,因此它到达目的地后将从特定的入口点开始重新运行程序。a g l e t 的移动 代理模型提供的是一个简单的框架结构,开发者可重写预定义的方法来增加所 需的功能。 a g l e t 利用一个消息类密封代理间的消息交换,它提供同步或异步的消息传 :递。它采用白板支持多a g e n t 间协作和信息共享。a g l e t 模型还提供一个简单的 持久化工具,允许代理把自身代码和状态写入辅助的存储设备。a g l e t 安全模型 建立在标准的j a v a 安全机制之上,通过访问权限的限制来保护主机和代理免受 恶意攻击,其规则和d a g e n t ,a r a 等系统相似。 c o n c o r d i a c o n c o r d i a 6 也是基于j a v a 的移动代理系统。在每个网络节点上,c o n c o r d i a 都有一个运行在j a v a 虚拟机上的服务器,它是一些称之为管理器的服务组件集 合,负责a g e n t 的移动、持久性、安全、通信等事项,是a g e n t 执行任务的环 境。在一个c o n c o r d i a 系统中,通常还单独存在一个叫a d m i n i s t r a t o r 的管理组 件,能对系统内的多个服务器进行远程集中管理,如启动或关闭服务器内的某 个组件,它还通过整个网络对a g e n t 进行监视,保留a g e n t 和系统的统计数 据。 c o n c o r d i a 非常注重系统的安全和容错性,提供了比较丰富的安全管理手 段。它的安全模型支持三种保护:a g e n t 存储保护、a g e n t 传送保护和服务器资 源保护。a g e n t 存储保护采用加密办法对a g e n t 的备份加以保护。a g e n t 传送保 护利用数字证书来进行用户鉴别,传送时对a g e n t 进行加密,通过对称密钥交 换来验证a g e n t 的发送者和接收者。资源保护则建立在对j a v a 安全模型的扩展 之上。c o n c o r d i a 对a g e n t 的权限限制主要是根据使用者决定,这是它和 a g l e t ,o d y s s e y 等系统的一个区别。 c o n c o r d i a 的通信利用现有的t c p i p 通信服务。在a g e n t 发送过程中,队列 管t 里器( q u e u em a n a g e r ) 将把它保存在本地的消息队列中直到确认被目的主机接 收。 t a c o m a 9 移动代理系统安全技术研究 t a c o m a 2 ( t r o m sa n dc o m e l lm o v i n ga g e n t s ) 的第一个原型系统1 9 9 4 年就 完成了,迄今已发布了4 个版本。t a c o m a 关注于操作系统对移动代理的支 持。移动代理可用c ,t e l ,p e r l ,p y t h o n ,v b ,s c h e m e 等编写,能运行在 w i n d o w s 平台和大多数u n i x 平台上,是已知系统中支持语言种类和平台最多的 系统。 t a c o m a 提出了公文包、文件夹、文件柜等抽象概念作为o s 的扩充。和 其它移动代理系统不同的是,它没有提供状态俘获功能。当a g e n t 要迁移到新 的机器中去时,a g e n t 创建一个f o l d e r ,然后该f o l d e r 移往新的机器。到达目的 地后,在一个特定的入口点重新运行a g e n t 。不提供状态俘获功能的好处是可 以快速集成新的语言到t a c o m a 系统中,因为几乎用不着改动现成的解释器 :或虚拟机。但给编程人员增添了麻烦,因为编程者必须明确规定要传送的程序 状态信息。 t a c o m a 用m e e t 命令来实现a g e n t 间通信。在m e e t 过程中,客户a g e n t 向服务a g e n t 发送一个有请求内容的公文包,服务a g e n t 则回应一个有结果的 f o l d e r 。t a c o m a 的高层服务都由其它的a g e n t 提供。 在t a c o m a 已发布的版本中,它的安全机制非常脆弱,它的开发者目前正 在解决系统的容错、安全性等问题。 m o l e m o l e 7 是德国s t u t t g a r t 大学开发的基于j a v a 的移动代理系统。模型的主要 概念是代理和场所( p l a c e ) 。代理分为移动代理和系统代理两种。移动代理是一 个封闭的j a v a 对象集合,不引用外部对象,这有利于简化代理的传递机制。移 动代理是多线程的实体,每个代理都有一个独一无二的标识符。系统代理是静 态代理,向移动代理提供各种服务,如资源访问、目录服务等。p l a c e 是移动代 理的驻留场所,一个节点可以有多个p l a c e 。 在m o l e 中,代理间的可靠通信机制由所谓的c o m 对象实现,c o m 对象包 括r m i 对象和m e s s a g i n g 对象两种。通信双方事先必须建立会话( s e s s i o n ) , c o m 对象和s e s s i o n 相联系。一般移动代理间采用r m i 对象通信,移动代理和 服务代理间用m e s s a g i n g 对象通信。但在同组的匿名a g e n t 间的通信则采用了 o m g 的事件模型( e v e n tm o d e l ) 。 m o l e 的移动代理通过和系统代理交互完成任务,移动代理只能和主机或其 它代理通信而没有直接访问资源的权限。一个p l a c e 也可以限制进入它的a g e n t 类型。值得一提的是,m o l e 研究人员在对如何保护a g e n t 不受主机的恶意攻击 进行研究。 1 0 移动代理系统安全技术研究 v o y a g e r v o y a g e r 2 是o b j e c t s p a c e 公司开发的系统,被称为a g e n t e n h a n c e do b j e c t r e q u e s tb r o k e r 。它不是一个纯粹的移动代理系统,因为它除了支持移动代理外 也支持传统的分布计算。在所有的基于j a v a 的系统中,v o y a g e r 和j a v a 结合的 最紧密。 v o y a g e r 由一个虚拟对象工具( v i r t u a lo b j e c tf a c i l i t y ) 用于把j a v a 对象包装成 虚拟对象。虚拟对象具有某些移动代理的特征,如可以在网络间移动、有自己 的生命周期。但虚拟对象不一定要有自己的线程,它们也可以是简单的对象。 v o y a g e r 采用一个轻量级的叫m e s s a n g e r 的代理来传送消息,有同步、异步 和将来三种消息类型。当a g e n t 移往其它节点时,会在原节点留下叫“秘书” 二的对象,该对象将把发给a g e n t 的消息传递到新的地址,也就是说可以给移动 中的a g e n t 发送消息。这是a g l e t ,o d y s s e y 等系统做不到的。v o y a g e r 的a g e n t 移动也和a g l e t 等系统有区别。v o y a g e r 虽然也提供a g e n t 服务器,但不需要每 个节点都运行一个服务器,因为a g e n t 不光在服务器间移动,它也可以移动到 其它虚拟对象空间。 n a p l e t n a p l e t 2 0 是美国w a y n e 大学开发的一个基于j a v a 的移动代理系统。该系统 由移动代理n a p l e t 和移动代理环境n a p l e ts e r v e r 两个部分组成。移动代理n a p l e t 是一个可以在不同的n a p l e ts e r v e r 之间移动的j a v a 对象,它的行为依赖于内部 属性以及运行环境( 由n a p l e ts e r v e r 提供) 。n a p l e t 有三个比较重要的内部属性: 标识符、路由计划( i t i n e r a r y ) 及状态对象。n a p l e ts e r v e r 是移动代理n a p l e t 的寄 居场所,它构建于j a v a 虚拟机之上,为n a p l e t 提供了一个运行环境。它使得 n a p l e t 能够方便的访问系统提供的资源,同时它还提供了一整套机制,用于组 织和管理n a p i e r 的迁移与通信。以上我们只对n a p l e t 作了简单的介绍,更为详 细的阐述放在第三章。 1 5 移动代理系统中存在的问题 移动代理系统发展到现在,其基本的体系结构已经建立起来,但是它的研 究仍处在初级阶段,仍有许多问题需要迸一步研究。 第一,移动代理的安全性有待提高。如果要建立一个基于移动代理的开放的 商业系统,接受第三方的移动代理,进行诸如电子商务等活动,移动 代理系统必须提供足够的安全保证。前文所述的几种典型的移动代理 移动代理系统安全技术研究 系统,到目前为止都不能提供这样的安全保证,这也是本文将在下面 的篇幅中着重论述的问题。 第二,移动代理的执行效率有待提高。出于平台无关性和安全的考虑,移动 代理系统采用的基本是解释型语言,和编译型语言相比,它无疑要慢 得多。而且移动代理运行时要执行和资源控制、安全有关的操作,额 外增加了运行负担。因此必须寻求相应的解决之道克服之。 第三,当前的移动代理系统的容错机制太简单。更高一级的容错研究应包括 对用户屏蔽错误、及时发现改正错误和确保错误发生后应用状态的一 致性等研究。 第四,移动代理技术缺乏大的应用场合试验,它的性能在大型分布应用情况 下究竟表现如何需要更深入的研究。 1 6 文章结构 本文针对移动代理系统中的安全技术问题进行研究。第一章对移动代理技 术的背景、概念、优点以及有代表性的移动代理系统进行介绍。第二章首先对 前人提出的移动代理安全技术进行比较,然后再对主流移动代理系统的安全性 进行分析。第三章对n a p l e t 移动代理系统的安全性进行改进,提出一个安全的 移动代理系统s - n a p l e t 并给出其设计方案。第四章给出s n a p l e t 重点部分的 实现。第五章是总结与展望。 1 2 移动代理系统安全技术研究 第二章移动代理系统安全问题的分析 移动代理系统的安全问题严重的影响了该技术在世界范围的推广。本章首 先对已有的移动代理安全技术进行比较,然后再对主流移动代理系统的安全性 进行分析。 2 1 已有的移动代理安全技术 我们可以把移动代理系统的安全问题归结于三个方面:移动代理迁移及通 信的安全,保护主机平台免受恶意代理的入侵,以及移动代理自身的保护。 2 1 。1 移动代理迁移及通信的安全 移动代理运行于开放的i n t e m e t 上,所以,代理与异地主机平台,代理与代 理之间进行通信时,不可避免会受到安全问题的困扰。同时,当代理在不同的 主机之间迁移时,它所携带的代码以及数据也会面临同样的问题。这些安全问 题可以分成两种类型:被动攻击( p a s s i v ea t t a c k s ) 和主动攻击( a c t i v ea t t a c k s ) 8 1 。 被动攻击:被动攻击时,入侵者在不干扰网络系统正常工作的情况下,监 视消息的传递过程,采取侦收、截获、窃取、破译等手段,企图从消息流中获 得有用信息。最简单的被动攻击方式是监听( e a v e s d r o p p i n g ) ,它企图读取消息包 的内容,会导致敏感信息从消息包中泄漏。另一种被动攻击方式叫做流量分 析。入侵者不必读取消息内容,只是通过对系统进行长期监视,利用统计分析 方法对诸如通信频度、通信的信息流向、通信总量的变化等参数进行研究,从 而对通信双方进行分析,获取有用信息。 主动攻击:另一种攻击方式是主动攻击,它也是最常见的攻击方式。主动 攻击以各种方式有选择地破坏信息,如修改、删除、伪造、添加、重放、乱 序、冒充等。它主要威胁信息的完整性、可用性和真实性。常见的主动攻击手 段有:( 1 ) 中断:截获消息包,打断通信双方正常的消息交换。( 2 ) 冒充:通过欺 骗通信系统( 或用户) 达到非法用户冒充成为合法用户,或者特权小的用户冒充 成为特权大的用户的目的。( 3 ) 篡改:改变消息内容,删除其中的部分内容,用 一条假消息去代替原始消息,或者将某些额外消息插入其中。( 4 ) 抵赖:这是一 1 3 移动代理系统安全技术研究 种来自合法用户的攻击。比如:否认自己曾经发布过的某条消息、伪造一份对 方来信、修改来信等。 被动攻击很难检测,但通常可以用加密的方法加以保护;主动攻击很容易 被发现,但完全杜绝这种攻击却不太容易,我们可以用身份验证、数据完整性 检查来使损失最小化。这样一来,为了保护移动代理迁移以及通信的安全,必 须具备三种功能:加密保护、认证保护和完整性保护。同时具备以上这三种功 能的安全机制有很多种,但是比较适合移动代理迁移以及通信保护的机制主要 包括以下几种: p g p p g p 9 是p r e t t yg o o dp r i v a c y 的简称,是一种长期一直在学术圈和技术圈内 j 得到广泛使用的安全邮件标准。其特点是通过单向散列算法对邮件内容进行签 名,以保证信件内容无法修改,使用公钥和私钥技术保证邮件内容保密且不可 否认。随着p g p2 0 的发布,这个程序开始在世界范围流行,而且它的用途已 经远远超出了保护电子邮件的安全,互联网上点对点的安全通信问题也可以用 它来解决。p g p 的简单性和易用性使其在各种不同程度的用户之间广为流行。 s s l 安全套接层协议( s e c u r es o c k e t sl a y e r ,s s l ) 1 0 是在i n t e m e t 基础上提供的 一种保证私密性的安全协议。它能使客户朋受务器应用之间的通信不被攻击者窃 听,并且始终对服务器进行认证,还可选择对客户进行认证。s s l 协议要求建 立在可靠的传输层协议之上,它主要是使用公开密钥体制和x 5 0 9 数字证书技 术保护信息传输的机密性和完整性,其优势在于它是与应用层协议独立无关 的。高层的应用层协议( 例如:h r r p ,f t p ,t e l n e t ) 能透明的建立于s s l 协 议之上。s s l 协议在应用层协议通信之前就已经完成加密算法、通信密钥的协 商以及服务器认证工作。在此之后应用层协议所传送的数据都会被加密,从而 保证通信的私密性。 自定义的安全机制 除了以上两种通用性较强的安全机制外,有些移动代理系统使用自己建立 的安全机制。这些安全机制通常利用已有的加密算法( 如d e s 、r s a ) 、数字签 名算法( 如o n e w a yh a s h 函数) 或认证机制,将其组合在一起形成自己的通信安 全机制,我们称之为自定义安全机制。 以上是几种典型机制,自定义安全机制的针对性比前两种通用安全机制更 强,所以运行效率往往更高。但是自定义安全机制缺乏广泛的应用,所以许多 安全漏洞并没有暴露出来,安全隐患比较大。而p g p 与s s l 由于已被广泛采 用,所以其安全性是值得信赖的。 1 4 移动代理系统安全技术研究 2 1 2 保护主机平台免受恶意代理的入侵 来自非信任域a g e n t 对迁移到的系统的可能的破坏作用是显而易见的。这 种破坏主要体现在以下几个方面: 窃取敏感信息:恶意代理访问主机文件系统,读取敏感信息,将其返回给 代理拥有者。 入侵系统、破坏资源:恶意代理通过删除文件、投放病毒等方法破坏
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 光伏专业笔试题库及答案
- 2026届黑龙江省大庆市高三第一次质量检测生物试题(解析版)
- 安徽省皖南八校2024-2025学年高二上学期期中考试生物试卷(含答案)
- 体育产业发展趋势预测报告
- 汽车租赁行业优惠活动方案
- 27届八年级上数学入学测试卷
- 焦作古建祠堂施工方案
- 建筑电气临时施工方案
- 婚俗改革联谊活动方案策划
- 湖南职工讲堂活动方案策划
- 十八项核心制度培训培训课件
- 幼儿园警察职业介绍课件
- GB/T 37642-2019聚己内酯(PCL)
- 国防科技大学介绍
- 校音乐厅设计方案
- 新视野大学英语读写教程Unit1教案(含和译文)
- 机电一体化设计
- 新教材教科版五年级上册科学 第二单元 地球表面的变化 单元全套课时练
- (中职中专)财经法规与会计职业道德课件完整版电子教案
- DB37T 5151-2019 园林绿化工程资料管理规程
- 贝多芬F大调浪漫曲—小提琴谱(带钢伴谱)
评论
0/150
提交评论