亚洲综合极品香蕉久久网,久久夜精品综合缴情五月 ,亚洲动漫成人一区二区,国产在线不卡视频,国产丝袜精品不卡,亚洲乱码日产精品bd,久久久久久国产精品免费网站,亚洲综合av一区二区三区
×
新網 > 虛擬主機 > 正文

類裝載器實現JAVA虛擬機的安全

  • 作者:新網
  • 來源:新網
  • 瀏覽:100
  • 2018-05-12 10:59:26

類裝載器中的類裝載器體系結構守護了被信任類庫的邊界,因為加載器的類型不同,裝載以后分別放入不同的包里,包與包之間一般情況下是不能訪問的。

        類裝載器中的類裝載器體系結構守護了被信任類庫的邊界,因為加載器的類型不同,裝載以后分別放入不同的包里,包與包之間一般情況下是不能訪問的。

8587306230441712901.jpg

<div>  在版本1.2開始,除了啟動類裝載器以外的每一個類裝載器,都有一個“雙親”類裝載器,在某個特定的類裝載器試圖以常用方式裝載類型以前,它都會以默認的方式,把這個類委托給它的雙親來處理——請求雙親來裝載這個類型。這個雙親再依次請求它自己的雙親類來處理,依次類推,直到到達啟動類裝載器,因為啟動類裝載器是沒有雙親的,處于最頂層了。在這個傳遞過程中,如果有一個雙親類裝載器有能力裝載這個類型,則這個類型的類裝載器返回這個類型,否則,這個類裝載器試圖自己來裝載這個類型。
  啟動類裝載器只負責加載那些核心的Java API的class文件,因為核心Java API的class文件是用于“啟動”Java虛擬機的class文件,所以,啟動類裝載器的名字也因此而得。
  用戶自定義的類裝載器來負責其他class文件的裝載,在應用程序啟動以前,它至少創建一個用戶自定義類裝載器,也可能創建多個,所有這些類裝載器被連接在一個雙親-孩子的關系鏈中,在這條鏈的頂端是啟動類裝載器,末端是系統類裝載器,它是由Java應用程序創建的,新的用戶定義類裝載器的默認委派雙親。
  這里就簡要敘述一下一般用戶自定義類加載器的工作流程吧:
  1、首先檢查請求的類型是否已經被這個類裝載器裝載到命名空間中了,如果已經裝載,直接返回;否則轉入步驟2;
  2、委派類加載請求給父類加載器(更準確的說應該是雙親類加載器,真實虛擬機中各種類加載器最終會呈現樹狀結構),如果父類加載器能夠完成,則返回父類加載器加載的Class實例;否則轉入步驟3;
  3、調用本類加載器的findClass(…)方法,試圖獲取對應的字節碼,如果獲取的到,則調用defineClass(…)導入類型到方法區;如果獲取不到對應的字節碼或者其他原因失敗,返回異常給loadClass(…), loadClass(…)轉而拋異常,終止加載過程(注意:這里的異常種類不止一種)。
  這里就不在細說了,一般熟悉類加載器這部分知識應該都比較熟悉,我們來繼續將,類加載器怎么實現安全的!
  類裝載器的體系結構是通過剔除裝作被信任的不可靠的類,來保護那些可信任類庫的邊界,如果某個惡意的類可以成功的欺騙Java虛擬機,使得Java虛擬機相信它是一個來自可靠源的可信類,那么,這個惡意類就可能突破沙箱的阻隔,為了防止這樣的情況,類裝載器體系結構阻塞了危機Java虛擬機運行時安全的潛在途徑。
  在雙親委派的情況下,啟動類裝載器會在最可信的類庫-核心Java API-中檢查每個被裝載的類型,然后,才依次到標準擴展,類路徑上的本地類文件中檢查,所以,如果網絡類裝載器裝載的某個代碼執行時,想要從網絡上下載一個和Java API中某個類型同名的類,例如Java.lang.Integer,它將不能成功,如果Java.lang.Integer的class文件已經存在,將不會再裝載,它只能使用由它的雙親委派返回的類,這個類是由啟動類裝載器裝載的,用這種方法,類裝載器的體系結構就可以防止不可靠的代碼用自己的版本來替代可信任的類。
  還有一種可能,就是,我不是去替代你這個被信任的類,我是要在你被信任的類庫里插入一個全新的類型,會怎么樣?
  比如我們下載了一個類Java.lang.virus,這個請求一路向上委派給啟動裝載器,但它無法找到這個成員,同時在已擴展以及本地類路徑中也找不到,你的類裝載器將試圖從網絡上下載這個類。
  Java允許同一個包里面的類擁有相同的權限,而包外面的類則沒有這個權限,你的類加載進Java.lang 包,那么也就擁有這個包的所有權限,它就可以其中被信任的類,這樣的一個不可靠的類的存在太可怕了!
  Java虛擬機是這樣布置的,不同的類加載器加載的類放在不同的包里,于是,這個從網絡上下載的類所屬于的包跟啟動類裝載的類并不是在一個包里面,這樣,它就得不到其他可信任類的信息。而兩個包之間要允許可見,必須滿足同一個類裝載器裝載,這樣就可以避免不可靠類的侵犯。

免責聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,也不承認相關法律責任。如果您發現本社區中有涉嫌抄襲的內容,請發送郵件至:operations@xinnet.com進行舉報,并提供相關證據,一經查實,本站將立刻刪除涉嫌侵權內容。

免費咨詢獲取折扣

Loading
主站蜘蛛池模板: 久久国产精品二国产精品| 成人片黄网站色大片免费观看cn| 最新亚洲国产手机在线| av大片在线无码永久免费网址 | 26uuu在线亚洲欧美| 久久精品国产只有精品2020 | 亚洲中文久久精品无码99| 午夜亚洲精品久久一区二区| 成人啪精品视频网站午夜| 人妻忍着娇喘被中进中出视频| 日韩高清亚洲日韩精品一区二区| 在线麻豆精东9制片厂av影现网| 最新国产麻豆aⅴ精品无码| 成人国产精品免费视频| 人妻无码一区二区三区av| 亚洲欭美日韩颜射在线| 久久国产乱子伦精品免费乳及| 国产精品a免费一区久久电影| 天天摸日日摸狠狠添| 无码精品日韩专区| 日韩爆乳一区二区无码| 亚洲国产成人无码专区| 国产av国内精品jk制服| 国产成人av在线免播放观看新| 国产亚洲视频在线观看网址| 欧美人与禽zozo性伦交视频 | 亚洲性夜夜综合久久7777| 国产精品自在在线午夜| 综合自拍亚洲综合图区高清| 国产成人精品日本亚洲网站| av无码天一区二区一三区| 国产极品久久久久久久久| 亚洲欧美精品综合在线观看| 99爱精品成人免费观看| 亚洲精品国产综合麻豆久久99| 久久99精品久久久久免费| 人妻无二区码区三区免费| 日日噜噜夜夜狠狠视频免费| 国产九九99久久99大香伊| 成年午夜精品久久久精品| 亚洲乱码一区二三四区ava|