动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Java教程 ]的信息

本月文章推荐
.手把手教你:安装Opldap历险记.
.一个JAVA写的背单词程序.
.hasOwnProperty 方法.
.EJB轻松进阶之五.
.利用Socket进行Java网络编程(一.
.JScript 语法错误.
.Eclipse Form程序设计快速入门.
.Javascript实例教程(20) OLE Aut.
.Hibernate的简单Read性能测试.
.JavaBean 实例.
.javaweb三层架构配置.
.java程序,保存csdn blog的文章.
.JBuilderX初体验.
.JAVA与数据库连接方法(二).
.DataGrid Web Control 基本操作.
.初始化接口中的字段.
.Java学习过程的一些重点(二).
.Spring XML配置十二个最佳实.
.JAVA几个常见错误简析.
.Vector类在Java编程中的应用.

安全的代价

发表日期:2008-1-5 |



内容:

安全模型
安全准则
关于作者

Java的力量是不容置疑的,但安全问题也是开发者的关注焦点. 本文将权衡其益处与随之而来的危险.
如今,Internet正在显著的改变着我们的生活与工作方式.

即使那些最狂热的愤世嫉俗者也会承认,在不远的将来,我们的指尖将控制这个世界。然而,对于生活的各个方面,新的自由并不会毫无代价的就可获得。所以,随之而来的问题会让人相当头痛的。对于那些在网上冲浪的人和不断扩大网上业务的公司来说,安全已经成为他们的一个按语。在Internet上,只要有一扇开着的门,我们便要找到一把防止各种恶意攻击的钥匙。下面是一些很普遍的例子:

一种毁坏硬盘数据的病毒。.
一个落入恶人之手的信用卡号码.
被窃取的客户清单.
一些新的Internet执行模式正逐渐为人所关注:下载程序的时代已经到来。是的,从表面上看,理智的个人从未知的站点下载他们未见过的程序,使他们的系统有勿庸置疑的访问权限。

Java作为一种为Web而产生的语言,正冲在计算浪潮的最前沿。applet已被添加到计算机科学词汇中,这充分说明了Java的巨大成功。一个Java applet正如它听上去那样:一个从远程主机处下载,并在本地机器上执行的小程序。 这种新结构无疑会有很多功能,但安全问题也随之而来。

任何一个人假如在使用浏览器,并在浏览一个包含applet的网页,他便在使用Java。而且,applet会将你暴露在更加复杂的攻击之下,如:

黑客编写一个似乎是本地的、可信赖的applet。这种漏洞需要两个技巧:黑客要设法将程序放到用户的本地硬盘上(利用一般浏览器的特点:文件缓冲) ,并骗过浏览器使之以一个applet调入。
黑客利用Java DNS翻译处理的弱点:黑客设法骗过 runtime环境,使之认为他的系统是一个可信赖的主机。然后初始化一个突破牺牲品的防火墙网路连接。

若基于applet的计算已成为Internet生活的一个实事,那么重要的问题应该为:

好的安全保障由什么构成
对执行环境的依靠程度到底应多大?
充分的安全保障的成本有多大?

让我们从显而易见的问题开始:真正安全的系统是没有任何外部访问能力 (如电话线、 LAN连接等) 并在一封闭环境中保持锁定和警戒。显然,这样的系统对用户的价值相当有限。所以,安全问题归根到底是对一种危险的分析,是Internet访问带来的益处和疏漏导致的后果的权衡。但是,权衡危险必须建立在理解安全模型的基础之上。这对下载环境尤为重要:因为你不知道一个applet会干些什么,你毫无办法,只有依靠Java内置的安全特性。但你能这么放心吗?

安全模型
Java的安全模型被分为三个主要的防范区域: Byte-code验证器、 类装人器和安全治理器。虽然我们将逐个的讨论,但注重到这三个部分是Java运行环境执行模式的一个整体是非常重要的。也就是说,它们在Java设计时是相当重要的,而不是一种追思。

编译后,Java原代码被转换成为独立与平台的字节代码。applet安全便开始与Byte-code验证器,它将:

保证编译后的代码格式正确。
对每个成员函数进行检查以确保其字节代码不会违犯访问类型限制和指针寻址规则(见下文)。

通过验证后,以下几点将得到保证:

Internet堆栈不会发生溢出或下溢。 (若两种情况中的一种发生,系统的稳定程度下降,黑客也将得到“混水摸鱼”的机会。) 这种类型的攻击都是针对一些很闻名的安全疏漏的。
不会发生非法数据转换 (验证器不答应整数作为指针来处理)。这点保证了变量不会访问限制访问的内存区域。
字节代码指令将有正确类型的参数 (与上面的原因相同)。
在一个对象的内部,只有公共数据和函数才可被访问。限制对所有部件的访问,所以属性数据保持为私有的。
另一个防范领域, Java类装入器,决定了类(代码)将如何(和何时)被调入。它许多重要功能中的一项就是要确保在运行环境中正在执行的applet不会取代系统级的部件。这个部分是由浏览器生产商提供---通常它是基于由Sun Microsystems公司提供的模板。

Java安全模型的第三个,同时也是最重要的部分便是安全治理器。它的任务对所有所谓“危险方法”(要求文件输入/输出、网络访问或想要定义一个心得类装入器)进行 runtime验证。其中包括:

治理所有的socket操作。
控制对操作系统线程的创建和访问。
阻止新的类装入器的安装。
治理对文件的访问 (显然,我们不想让applet随便阅读文件l)。

为保证安全,基本Java类库(由Sun提供的)中的所有的方法必须在执行任何危险操作之前得到安全治理器的许可。安全治理器对任何请求都有否决权。

在未来的日子里,Java的安全模型还会不断的发展---堵住已被发现的缺口同时不断支持新的语言特点。这些特点包括:

数字签名,这样你便可以放心执行的applet确实是你想要执行的。
答应站点互相识别的有验证能力的证书。
安全 Sockets, 通过加密来确保相互协作的构件间的私有和互相信任的通讯。

安全准则
Java用户目前所经历的问题中,绝大多数都应被划分到实现方面的欠缺,而不是安全模型本身的错误。 (例如,上文所提到的两个漏洞已经被改正)。但是,为了增加Internet上的经验,用户和系统治理圆应遵循以下的准则:

只使用网络软件的最新版本,非凡是浏览器。较早版本将存在更多的错误。
能被你的系统所识别。例如,你是通过你的个人笔记本电脑或企业网络系统访问Net吗?
警惕并调查最小的可疑之处。一次“文件丢失”很可能由一次攻击所导致。

本文只是对Java安全模型的简略描述。还有很多的问题和计策需要治理员(和用户)去了解与探究(如防火墙、企业内部网等等)。但到此为止,你应该思考一下这两个问题:

Java applets确实安全吗?
你应该使用 Java吗?当然 --假如你能持之以恒,益处会远远多于危险。要害就在于要先于黑客一步。

关于作者
Charles F. Bowman 是一位精通关系型数据库、GUI和面向对象技术的独立的顾问、作家和演说家。可以通过cfb@panix.com和71700. 3570@compuserve.com与他联系。

--摘自IBM网站
http://www-900.ibm.com/developerWorks/cn/java/security/index.sHtml
上一篇:安全的基础----学习java安全之前的准备 人气:1020
下一篇:按屏幕比例重新设定窗口的大小 人气:507
浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-10-13 爬爬思特新闻管理系统 v2.0 Beta1
2008-10-13 Pligg v9.9.5 Beta
2008-10-13 广优邮件发送系统 v2.1
2008-10-13 缤纷互动视频交友 v3.1 RC
2008-10-13 MyShop网络商城 build 081005
2008-10-13 Chyrp 超轻量级开源博客引擎 v2.
2008-10-13 162100静态(论坛/文章)系统 v2.4
2008-10-13 金博人才招聘求职网黄金版 v4.2
2008-10-13 愚人笔记 v4.0
2008-10-11 联系人分组工具 v1.1 中文破解版
2008-10-11 FaceMelter变脸 v2.0 汉化破解版
2008-10-11 PathTracker道路跟踪仪 v1.2 破解
2008-10-11 Rooms手机聊天室 v0.6.7 破解版
2008-10-11 RemoteDesktop远程桌面 v1.0 破解
2008-10-11 ProRemote远程调音台 v1.0.1 破解
2008-10-11 PicShare照片共享 v1.0.0 破解版
2008-10-11 Photogene照片编辑器 v1.5 汉化破
2008-10-11 WriteRoom共享文档 v1.0 破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成