999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺談JAVA語言環境下安全策略的實施

2011-12-30 22:29:57
中國新技術新產品 2011年7期
關鍵詞:進程程序系統

王 暢

(杭州國際服務工程學院,浙江 杭州 310000)

1 安全策略形式定義

基于規范的入侵檢測技術在描述和實施安全策略方面起著指導性作用,本文把安全策略看做是監控一個程序的執行使其行為不會破壞系統安全的準則。從執行的角度看,Java程序的行為可以粗略的看成是方法調用序列,有些方法可能是本地方法,會調用C語言函數庫,某些C庫函數又可能調用系統調用,這些都構成系統的潛在威脅。為了消除一些不正當的調用序列可能給系統帶來的威脅,一個基于模式的檢測方法被應用到系統安全領域當中,這一方法的核心是如何定義和實施安全策略。以系統調用為例,如果將系統調用抽象為事件,那么系統調用的參數就成了事件參數,在系統調用序列中,一些系統調用的規律性出現將被理解成一種模式。反過來,這樣的模式就能夠匹配許許多多這樣的系統調用序列,以檢查這些系統調用序列是否安全。這便是基于模式的檢測方法的核心思想。安全策略可以定義在系統調用上,也可以定義在 JNC上,然而無論是定義在哪一級,都和安全策略的組織形式無關,下面從事件開始討論安全策略的組織形式。事件:是安全策略中最基本概念,是模式的組成部分,也是最簡單的模式,是某一事件集中的元素,包括事件名和參數,可以將 JNC調用或系統調用以及它們的返回看成事件。當被監控程序的執行匹配了為其定制的某一模式,監控程序將采取包括終止其執行在內的手段來保護系統安全,這便是規則。

2 程序整體結構

通過修改Kaffe源碼實現Java代碼的執行監控,改進了安全策略實施框架:安全策略首先用SPDL語言定義出來,然后經過編譯轉換成擴展自動機EFSA的中間表示,最后在監控程序的輔助下強制實施。進程級的監視對于在Java層面所看不到的Linux系統調用部分仍然是有效的。整個安全策略的實施過程分為兩種情況,第一種情況:監視進程(父進程 moni)首先啟動,在讀取安全策略之后把它編譯成擴展有限自動機 (EFSA)的形式,利用 fork()和 exec()系統調用啟動經過修改的 Kaffe。此時,監視進程和 Kaffe進程同時工作:Kaffe的作用是解釋 Java字節碼,處理可能來自用戶的輸入和輸出;父進程的作用是監視子進程的運行,實施安全策略,可能對子進程發出強制措施的指令,并寫入監控記錄,直到子進程終止,父進程退出。父子進程互通消息是通過信號實現的。在另一種情形下,也就是安全策略的事件集為 JNC調用的情形,父進程在編譯完安全策略后,就進入等待狀態,直到子進程退出。這時,Kaffe在解釋主函數之前載入安全策略的 EFSA模型,安全策略的實施引擎將作為動態鏈接庫的形式在 Kaffe上執行。整個程序的模塊組成主要有四大部分:(1)支持模塊:主要有Hash表,雙向鏈表,數組,讀寫文件緩沖區等。讀寫文件緩沖主要是為了提高讀寫速度,提高程序效率,其中寫緩沖可以寫入文件,也可以寫入屏幕緩沖區,或管道等,根據程序具體情況或有不同,給程序帶來極大靈活性。(2)安全策略分析模塊:包括詞法分析,語法分析和語義分析。(3)EFSA內部表示:包括 EFSA內部表示的各種表結構和將這些結構寫入或讀出文件的方法。表結構包括變量表,事件表,轉換表和終止狀態表,當需要寫入文件時,把這些表數據安順序寫入寫緩存;當需要讀出文件內容時,通過詞法分析程序,按照EFSA文件格式順序讀取內容到內部表示。(4)安全策略實施模塊:通過一種實施機制實施 EFSA模型。在本文看來,實施模塊與實施機制是不一樣的,實施機制是具體到與系統相關的情況,或是進程級的監視,或是進程內部實現,包括派生 kaffe進程,注冊信號和監視系統調用等,是面向系統調用或 JNC調用的。

3 安全策略的編譯分析過程

安全策略語言經過編譯以后,得到一種EFSA形式的內部表示,這種內部表示不僅要包含安全策略語言提供全部信息,還要求實施過程的效率要高。分析過程包括詞法分析,語法分析和語義分析。詞法分析的另一個作用是將字符串常量轉換為字符串內部數據,存入 Hash表中,獲得字符串的句柄。無論是模式子樹還是表達式子樹,它們都是已經按照操作符的優先級順序表示的,模式子樹將在語義分析時轉化為自動機,表達式子樹將在語義分析時轉換為可執行的二叉樹表示。語義分析是分析過程中最關鍵的一環,因為它要將語法樹轉換為 EFSA內部表示。轉換過程包括三個主要方面:一是在構造變量表的過程中,要解決變量類型,重名和初始化等問題;二是將用正則表達式表示的模式轉化為自動機的過程;三是將可執行的表達式轉化為二叉樹的表示形式,以方便執行。下面分別討論三個方面。1.在構造變量表時,作如下規定:(1)規定全局變量聲明或在事件參數表中出現的變量為變量的定義性出現,在表達式或語句中出現的變量為變量的使用性出現,定義性出現的變量需要解決類型,重名問題,使用性出現的變量需要解決類型相容性的問題。(2)全局變量需要聲明,指定類型,且不能重名。(3)局部變量(又稱規則變量)根據事件集中事件的描述確定其類型。(4)用變量名和規則編號的二元結構標識一個變量,指定全局變量的規則編號可以為任意,這樣規則變量之間可以互相不影響,若全局變量和局部變量重名,則認為是全局變量。2.實際上,構造自動機的過程,是確定狀態轉換矩陣和事件表兩個過程。3.主要是將樹形結構的表達式轉換為二叉樹形式。表達式子樹在一般情況下每個節點之多有兩個子節點,但序列運算符除外(如函數調用實參和語句序列),這時只需要將序列運算符下多個子節點順序的轉成二叉樹即可。

4 監控程序的實現細節

在實施之前,還需要將內部表示中的狀態轉換矩陣變成圖結構,因為用稀疏矩陣表示的狀態轉換表很不利于查找,所有將其轉換為鄰接表表示。本文最終要實現的是一個監控程序,是基于Linux操作系統上的用戶級的一個進程監視另一個進程。監控程序的實現分三步:第一步,修改 Kaffe源碼,重新編譯 Kaffe。Kaffe在解釋執行 Java主方法前,根據命令行參數中的最后一個參數決定是由監視進程實施安全策略,還是由自己,若是由監視進程實施,則發送一個開始監視的信號給監視進程;若是由自己實施,則需要載入 EFSA模型和實施引擎。主要的監視工作應該在 Kaffe中 sysdepCallMethod()函數之前和之后插入代碼完成。第二步,用 ptrace()系統調用進行進程監視機制,因為 Java語言提供的本地方法調用,使得連Kaffe自己也不知道它所要解釋的Java方法有沒有進行系統調用,所以必須用進程級的監視,這才是監視進程的工作重點。

監視進程在fork()調用和exec(kaffe)調用之間要進行ptrace(PTRACE_TRACEME)調用,使Kaffe處于被監視狀態,之后監視進程的每次ptrace(PTRACE_SYSCALL)中斷說明Kaffe進行系統調用或返回。其中,ptrace(PTRACE_PEEKUSER可以獲得系統調用號,用參數 ptrace(PTRACE_GETREGS,®s)可以獲得系統調用的相關參數信息,用ptrace(PTRACE_PEEKUSER)可以獲得系統調用返回值的信息。第三步,給出實施細節。從事件發生開始,首先查找從當前狀態表出發的是否有與之匹配的邊,再匹配參數類型,給變量賦值,檢查條件表達式是否為真,然后更新當前狀態表,更新環境,最后如果當前狀態表與終止狀態表有交,則執行終止狀態所對應的動作函數。

[1]金成植.程序理論和技術[M],吉林大學出版社,1997

[2]劉磊等.編譯程序的設計與實現[M],高等教育出版社,2004

猜你喜歡
進程程序系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
債券市場對外開放的進程與展望
中國外匯(2019年20期)2019-11-25 09:54:58
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
“程序猿”的生活什么樣
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
社會進程中的新聞學探尋
民主與科學(2014年3期)2014-02-28 11:23:03
主站蜘蛛池模板: 精品国产自在现线看久久| 毛片基地美国正在播放亚洲 | 99视频精品全国免费品| 999精品视频在线| 美女一级免费毛片| 欧美激情第一欧美在线| 第一页亚洲| 91小视频在线观看| 999国产精品永久免费视频精品久久 | 在线免费a视频| 狠狠色丁香婷婷| 亚洲成网站| 欧美 国产 人人视频| 九色视频一区| 国产激爽爽爽大片在线观看| 人妻91无码色偷偷色噜噜噜| 丁香婷婷激情综合激情| 亚洲婷婷在线视频| 久草视频精品| 欧美视频二区| 国产呦视频免费视频在线观看| 亚洲av综合网| 日韩午夜福利在线观看| 国产成人精品视频一区二区电影| 国产成人无码Av在线播放无广告| 免费看av在线网站网址| 青青草原偷拍视频| 日本午夜精品一本在线观看| 色天天综合| 久久精品欧美一区二区| 久久精品国产999大香线焦| 久久久久久久久久国产精品| 18禁色诱爆乳网站| 亚洲人成色在线观看| 亚洲成人黄色网址| 国产无码网站在线观看| 国产91精品调教在线播放| 日本五区在线不卡精品| 亚洲天堂视频在线播放| 无码专区国产精品一区| 国产理论一区| 日韩激情成人| 亚洲成a人片| 综合久久五月天| 久久国产高清视频| 国产超薄肉色丝袜网站| 中国国产一级毛片| 精品三级网站| 国产大全韩国亚洲一区二区三区| a级毛片免费网站| 久久夜色精品国产嚕嚕亚洲av| 亚洲三级电影在线播放| 国产特级毛片aaaaaa| 日韩国产一区二区三区无码| 日韩不卡免费视频| 一本色道久久88综合日韩精品| 亚洲国产精品美女| 在线观看无码av五月花| 国产成人a在线观看视频| 久久久黄色片| 国产乱人视频免费观看| 亚洲专区一区二区在线观看| 青青草原国产免费av观看| 亚洲欧美成人影院| 国产91精品久久| 亚洲第一福利视频导航| 欧美中文字幕第一页线路一| 91在线播放免费不卡无毒| 曰韩人妻一区二区三区| AV无码无在线观看免费| 国产精品一区二区久久精品无码| 免费国产好深啊好涨好硬视频| 2021国产在线视频| 国产免费a级片| 欧美日韩一区二区在线免费观看 | 欧美在线导航| 亚洲天堂在线视频| 熟妇丰满人妻| 97久久精品人人做人人爽| 久久毛片免费基地| 看av免费毛片手机播放| 高清不卡毛片|