国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

安全的代價(jià)

2019-11-18 15:12:48
字體:
供稿:網(wǎng)友

內(nèi)容:

安全模型
安全準(zhǔn)則
關(guān)于作者

java的力量是不容置疑的,但安全問題也是開發(fā)者的關(guān)注焦點(diǎn). 本文將權(quán)衡其益處與隨之而來的危險(xiǎn).
如今,Internet正在顯著的改變著我們的生活與工作方式.

即使那些最狂熱的憤世嫉俗者也會(huì)承認(rèn),在不遠(yuǎn)的將來,我們的指尖將控制這個(gè)世界。然而,對(duì)于生活的各個(gè)方面,新的自由并不會(huì)毫無代價(jià)的就可獲得。所以,隨之而來的問題會(huì)讓人相當(dāng)頭痛的。對(duì)于那些在網(wǎng)上沖浪的人和不斷擴(kuò)大網(wǎng)上業(yè)務(wù)的公司來說,安全已經(jīng)成為他們的一個(gè)按語。在Internet上,只要有一扇開著的門,我們便要找到一把防止各種惡意攻擊的鑰匙。下面是一些很普遍的例子:

一種毀壞硬盤數(shù)據(jù)的病毒。.
一個(gè)落入惡人之手的信用卡號(hào)碼.
被竊取的客戶清單.
一些新的Internet執(zhí)行模式正逐漸為人所關(guān)注:下載程序的時(shí)代已經(jīng)到來。是的,從表面上看,理智的個(gè)人從未知的站點(diǎn)下載他們未見過的程序,使他們的系統(tǒng)有勿庸置疑的訪問權(quán)限。

Java作為一種為Web而產(chǎn)生的語言,正沖在計(jì)算浪潮的最前沿。applet已被添加到計(jì)算機(jī)科學(xué)詞匯中,這充分說明了Java的巨大成功。一個(gè)Java applet正如它聽上去那樣:一個(gè)從遠(yuǎn)程主機(jī)處下載,并在本地機(jī)器上執(zhí)行的小程序。 這種新結(jié)構(gòu)無疑會(huì)有很多功能,但安全問題也隨之而來。

任何一個(gè)人假如在使用瀏覽器,并在瀏覽一個(gè)包含applet的網(wǎng)頁,他便在使用Java。而且,applet會(huì)將你暴露在更加復(fù)雜的攻擊之下,如:

黑客編寫一個(gè)似乎是本地的、可信賴的applet。這種漏洞需要兩個(gè)技巧:黑客要設(shè)法將程序放到用戶的本地硬盤上(利用一般瀏覽器的特點(diǎn):文件緩沖) ,并騙過瀏覽器使之以一個(gè)applet調(diào)入。
黑客利用Java DNS翻譯處理的弱點(diǎn):黑客設(shè)法騙過 runtime環(huán)境,使之認(rèn)為他的系統(tǒng)是一個(gè)可信賴的主機(jī)。然后初始化一個(gè)突破犧牲品的防火墻網(wǎng)路連接。

若基于applet的計(jì)算已成為Internet生活的一個(gè)實(shí)事,那么重要的問題應(yīng)該為:

好的安全保障由什么構(gòu)成
對(duì)執(zhí)行環(huán)境的依靠程度到底應(yīng)多大?
充分的安全保障的成本有多大?

讓我們從顯而易見的問題開始:真正安全的系統(tǒng)是沒有任何外部訪問能力 (如電話線、 LAN連接等) 并在一封閉環(huán)境中保持鎖定和警戒。顯然,這樣的系統(tǒng)對(duì)用戶的價(jià)值相當(dāng)有限。所以,安全問題歸根到底是對(duì)一種危險(xiǎn)的分析,是Internet訪問帶來的益處和疏漏導(dǎo)致的后果的權(quán)衡。但是,權(quán)衡危險(xiǎn)必須建立在理解安全模型的基礎(chǔ)之上。這對(duì)下載環(huán)境尤為重要:因?yàn)槟悴恢酪粋€(gè)applet會(huì)干些什么,你毫無辦法,只有依靠Java內(nèi)置的安全特性。但你能這么放心嗎?

安全模型
Java的安全模型被分為三個(gè)主要的防范區(qū)域: Byte-code驗(yàn)證器、 類裝人器和安全治理器。雖然我們將逐個(gè)的討論,但注重到這三個(gè)部分是Java運(yùn)行環(huán)境執(zhí)行模式的一個(gè)整體是非常重要的。也就是說,它們?cè)贘ava設(shè)計(jì)時(shí)是相當(dāng)重要的,而不是一種追思。

編譯后,Java原代碼被轉(zhuǎn)換成為獨(dú)立與平臺(tái)的字節(jié)代碼。applet安全便開始與Byte-code驗(yàn)證器,它將:

保證編譯后的代碼格式正確。
對(duì)每個(gè)成員函數(shù)進(jìn)行檢查以確保其字節(jié)代碼不會(huì)違犯訪問類型限制和指針尋址規(guī)則(見下文)。

通過驗(yàn)證后,以下幾點(diǎn)將得到保證:

Internet堆棧不會(huì)發(fā)生溢出或下溢。 (若兩種情況中的一種發(fā)生,系統(tǒng)的穩(wěn)定程度下降,黑客也將得到“混水摸魚”的機(jī)會(huì)。) 這種類型的攻擊都是針對(duì)一些很聞名的安全疏漏的。
不會(huì)發(fā)生非法數(shù)據(jù)轉(zhuǎn)換 (驗(yàn)證器不答應(yīng)整數(shù)作為指針來處理)。這點(diǎn)保證了變量不會(huì)訪問限制訪問的內(nèi)存區(qū)域。
字節(jié)代碼指令將有正確類型的參數(shù) (與上面的原因相同)。
在一個(gè)對(duì)象的內(nèi)部,只有公共數(shù)據(jù)和函數(shù)才可被訪問。限制對(duì)所有部件的訪問,所以屬性數(shù)據(jù)保持為私有的。
另一個(gè)防范領(lǐng)域, Java類裝入器,決定了類(代碼)將如何(和何時(shí))被調(diào)入。它許多重要功能中的一項(xiàng)就是要確保在運(yùn)行環(huán)境中正在執(zhí)行的applet不會(huì)取代系統(tǒng)級(jí)的部件。這個(gè)部分是由瀏覽器生產(chǎn)商提供---通常它是基于由Sun Microsystems公司提供的模板

Java安全模型的第三個(gè),同時(shí)也是最重要的部分便是安全治理器。它的任務(wù)對(duì)所有所謂“危險(xiǎn)方法”(要求文件輸入/輸出、網(wǎng)絡(luò)訪問或想要定義一個(gè)心得類裝入器)進(jìn)行 runtime驗(yàn)證。其中包括:

治理所有的socket操作。
控制對(duì)操作系統(tǒng)線程的創(chuàng)建和訪問。
阻止新的類裝入器的安裝。
治理對(duì)文件的訪問 (顯然,我們不想讓applet隨便閱讀文件l)。

為保證安全,基本Java類庫(由Sun提供的)中的所有的方法必須在執(zhí)行任何危險(xiǎn)操作之前得到安全治理器的許可。安全治理器對(duì)任何請(qǐng)求都有否決權(quán)。

在未來的日子里,Java的安全模型還會(huì)不斷的發(fā)展---堵住已被發(fā)現(xiàn)的缺口同時(shí)不斷支持新的語言特點(diǎn)。這些特點(diǎn)包括:

數(shù)字簽名,這樣你便可以放心執(zhí)行的applet確實(shí)是你想要執(zhí)行的。
答應(yīng)站點(diǎn)互相識(shí)別的有驗(yàn)證能力的證書。
安全 Sockets, 通過加密來確保相互協(xié)作的構(gòu)件間的私有和互相信任的通訊。

安全準(zhǔn)則
Java用戶目前所經(jīng)歷的問題中,絕大多數(shù)都應(yīng)被劃分到實(shí)現(xiàn)方面的欠缺,而不是安全模型本身的錯(cuò)誤。 (例如,上文所提到的兩個(gè)漏洞已經(jīng)被改正)。但是,為了增加Internet上的經(jīng)驗(yàn),用戶和系統(tǒng)治理圓應(yīng)遵循以下的準(zhǔn)則:

只使用網(wǎng)絡(luò)軟件的最新版本,非凡是瀏覽器。較早版本將存在更多的錯(cuò)誤。
能被你的系統(tǒng)所識(shí)別。例如,你是通過你的個(gè)人筆記本電腦或企業(yè)網(wǎng)絡(luò)系統(tǒng)訪問Net嗎?
警惕并調(diào)查最小的可疑之處。一次“文件丟失”很可能由一次攻擊所導(dǎo)致。

本文只是對(duì)Java安全模型的簡(jiǎn)略描述。還有很多的問題和計(jì)策需要治理員(和用戶)去了解與探究(如防火墻、企業(yè)內(nèi)部網(wǎng)等等)。但到此為止,你應(yīng)該思考一下這兩個(gè)問題:

Java applets確實(shí)安全嗎?
你應(yīng)該使用 Java嗎?當(dāng)然 --假如你能持之以恒,益處會(huì)遠(yuǎn)遠(yuǎn)多于危險(xiǎn)。要害就在于要先于黑客一步。

關(guān)于作者
Charles F. Bowman 是一位精通關(guān)系型數(shù)據(jù)庫、GUI和面向?qū)ο蠹夹g(shù)的獨(dú)立的顧問、作家和演說家。可以通過cfb@panix.com和71700. 3570@compuserve.com與他聯(lián)系。

--摘自IBM網(wǎng)站
http://www-900.ibm.com/developerWorks/cn/java/security/index.sHtml

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 榕江县| 昭平县| 广宁县| 扎兰屯市| 铜鼓县| 定结县| 铁岭县| 义乌市| 渑池县| 大渡口区| 栾城县| 神农架林区| 河南省| 沭阳县| 吕梁市| 石楼县| 安西县| 舒城县| 正定县| 克什克腾旗| 肇东市| 菏泽市| 江北区| 阿拉善右旗| 梅州市| 渑池县| 宣城市| 黄骅市| 乐平市| 郧西县| 望都县| 卢氏县| 什邡市| 上饶县| 张北县| 牡丹江市| 崇州市| 神农架林区| 贡嘎县| 谷城县| 黄山市|