第13章移动代码安全(免费阅读).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第13章 移动代码安全 13.1 引言 13.2 移动代码安全技术 13.3 Java安全 13.1 引 言 移动代码又称移动代理、可下载代码、可执行内容、远程代码等等,它是指在本地执行的远程代码。传统系统中,执行的代码都是驻留在执行代码的主机上,而对于移动代码,执行的代码则是来自远程主机。 Carzaniga等人[1]将移动代码进行了分类并与传统的基于客户机—服务器技术的分布式系统作了比较: (1) 客户机—服务器模型:客户机和服务器位于不同的主机上,由客户机向服务器发送请求;处理请求所需的资源和代码都位于服务器端。 (2) 即时响应代码(Code-on-Demand):客户机拥有完成某项操作的资源,但没有如何完成这项操作的代码,客户机通过向远程服务器发送请求,由服务器将代码发送给客户机。这种类型的移动代码包括:Java应用程序、ActiveX控件、MIMI Tcl扩展和Postscript等。 (3) 远程计算:客户机拥有描述某项服务的代码,而执行代码所需的资源位于远程服务器上。客户机把代码发送到服务器上,由服务器执行代码并把结果回送到客户机。 (4) 移动代理:客户机进程在执行期间为了完成某项服务需要访问一些资源,而这些资源位于远程服务器上,于是客户机把客户机进程移植到服务器端并由服务器完成服务。客户机进程会一直停留在服务器上直到下一个客户机进程移植过来。 Java应用程序(Applet)和代理(Agent)是移动代码中的两种主要形式。Java应用程序是用户把代码从远程主机下载到本地执行。这种技术在Web浏览器中嵌入了Java虚拟机。这样,Web发布者就可以向用户提供动画、游戏等动态内容,而不仅仅提供静态的HTML页面或依赖于带宽的CGI交互式内容。而代理则相反,用户是把代码发送到网络上以完成用户所需的某项任务。最早的移动代理系统之一是Telescript。 从上面的讨论可以看出,移动代码是由一方生成,但在另一方控制的环境中运行的代码。这就会带来安全问题。如对于Java应用程序,用户在执行它来实现某些操作的同时要承担恶意代码破坏系统的风险,而代理则要保护其代码免受恶意主机的利用。 13.2 移动代码安全技术 移动代码会导致安全问题的本质在于在运行代码时需要访问系统资源,而代码却是来自于另一台,甚至是不可信的主机。即代码提供者和代码运行者之间可能是互不信任的。移动代码易受到以下几种类型的攻击[2]: (1) 泄漏用户或主机的机密信息; (2) 拒绝服务:使合法用户无法获得资源; (3) 破坏或修改数据; (4) 恶作剧攻击:如在用户屏幕上显示图片或在用户主机上播放音乐等。 移动代码安全需要考虑以下几个方面: (1) 访问控制:规定谁可以使用代码; (2) 用户认证:识别合法用户; (3) 数据完整性:保证代码在传输过程中未被修改过; (4) 不可抵赖:发送者和接收方不能否认使用过代码; (5) 数据机密性:保护敏感数据; (6) 审计:跟踪移动代码的使用。 在前面提到,移动代码安全可以从两个方面考虑:一是恶意代码对本地系统的破坏;二是远程恶意主机对代理的非法使用。接下来,我们将从恶意代码和恶意主机两个方面来讨论移动代码的安全技术[3]。 13.2.1 恶意代码 对于Java应用程序类的移动代码,一般的操作是用户下载可执行格式的二进制Applet然后运行。这就很容易带来安全问题:用户必须允许不可信的代码在本机运行,而这些代码可能会随机写内存,从而导致系统崩溃;代码甚至可以读、修改以至删除用户个人文件。 在运行Applet之前进行认证可以解决这个问题。通过认证,用户就可以确定它所运行的代码来自于特定的可信源。但是这种方法带来了两个问题: (1) 严重限制了用户可以运行的Applet(必须来自可信源),而不可信服务器也可提供有用的、好的代码; (2) 更重要的是来自可信源的代码可能存在bug,从而对用户系统带来恶劣的影响。 对这个问题的理想解决方法就是阻止不安全的行为。接下来讨论三种解决恶意代码问题的技术:安全解释器、故障隔离和代码验证。 1.安全解释器 直接运行二进制代码

文档评论(0)

tiangou + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档