公務員期刊網 精選范文 糧食安全措施及對策范文

糧食安全措施及對策精選(九篇)

前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的糧食安全措施及對策主題范文,僅供參考,歡迎閱讀并收藏。

糧食安全措施及對策

第1篇:糧食安全措施及對策范文

>> 關于云計算應用安全問題的探討 糧食安全問題的探討 探討WLAN中的安全問題 變電運行安全問題的探討 體育教學安全問題的探討 有關網絡應用中的安全問題及其應對策略的探討 放射源在煤田測井應用中的安全問題探討 計算機網絡應用安全問題及防范措施的探討 對于移動互聯(lián)網應用安全問題的探討 基于“互聯(lián)網+”的醫(yī)院無線應用安全問題探討 新加坡的安全問題 網絡背景下的信息安全問題探討 論云計算及其安全問題的分析探討 建筑安全問題的分析與探討 對水閘混凝土結構安全問題的探討 對建筑工程安全問題的探討 基于食品質量安全問題的探討 探討深基坑支護存在的安全問題 WLAN在商務運用中安全問題的探討 探討雙匯食品安全問題背后的原因 常見問題解答 當前所在位置:,*.html)中插入Java程序段和JSP標記,從而形成JSP文件(*.JSP)。JSP技術使用Java編程語言編寫類XML的tags和scriptlets,來封裝產生動態(tài)網頁的處理邏輯。網頁還能通過tags和scriptlets訪問存在于服務端的資源的應用邏輯。JSP將網頁邏輯與網頁設計和顯示分離,支持可重用的基于組件的設計,使基于Web的應用程序的開發(fā)變得迅速和容易。JSP是在服務器端執(zhí)行的,通常返回該客戶端的就是一個HTML文本,因此客戶端只要有瀏覽器就能瀏覽。

JSP技術以利用現存的工具和技巧,并且能擴展到支持企業(yè)級的分布式應用中。作為采用Java技術家族的一部分,以及Java 2的一個組成部分,JSP技術能夠支持高度復雜的基于Web的應用。 由于JSP頁面的內置腳本語言是基于Java的,而且所有的JSP頁面都被編譯成為Java Servlets,所以JSP頁面具有Java技術的所有好處,包括健壯的存儲管理和安全性。作為Java平臺的一部分,JSP擁有Java編程語言“一次編寫,各處運行”的特點。

JSP頁面通常被編譯成為Java Servlets,這是一個標準的Java擴展。頁面開發(fā)人員能夠訪問全部的Java應用環(huán)境,以利用Java技術的擴展性和可移植性。當JSP頁面第一次被調用時,如果它還不存在,就會被編譯成為一個Java Servlets類,并且存儲在服務器的內存中。這就使得在接下來的對該頁面的調用中,服務器會有非??斓捻憫?。

2 JSP應用的安全問題

由于完全開放了對服務器資源的訪問,從JSP頁面轉換得到的不安全Servlet可能給服務器、服務器所在的網絡、訪問頁面的客戶機之中的任意一個或全體帶來威脅,甚至通過DDoS或蠕蟲分布式攻擊,還可能影響到整個Internet。特別是對編寫Servlet來說。驗證輸入和控制對資源的訪問是始終必須關注的問題。JSP的體系結構相當復雜,其中包含許多相互協(xié)作的子系統(tǒng)。這些子系統(tǒng)之間的交互常常是安全隱患的根源。

Cookie是服務器保存到客戶端的少量信息,服務器提取這些信息以維持會話狀態(tài)或跟蹤客戶端瀏覽器的活動。由于兩個原因,如果把敏感數據保存到Cookie,安全受到了威脅:第一,Cookie的全部內容對客戶端來說都是可見的;第二,雖然瀏覽器一般不提供偽造Cookie的能力,但沒有任何東西能夠阻止用戶用完全偽造的Cookie應答服務器。

1)中嵌入惡意標記

CERT Advisory CA-2000-02描述了客戶在請求中嵌入惡意HTML標記的問題。這個問題一般被稱為“cross site scripting”問題,這種攻擊通常包含一個由用戶提交的病態(tài)腳本,或者包含惡意的HTML標記,JSP引擎會把這些內容引入到動態(tài)生成的頁面。這種攻擊可能針對其他用戶進行,也可能針對服務器,但后者不太常見。“cross site scripting”攻擊的典型例子可以在論壇服務器上看到,因為這些服務器允許用戶在自己提交的文章中嵌入格式化標記。通常,被濫用的標記是那些能夠把代碼嵌入到頁面的標記,比如、、和。另外還有一些標記也會帶來危險,特別地,可能被用于欺騙瀏覽者暴露敏感信息。要防止出現這種問題當然要靠輸入檢查和輸出過濾。這類檢查必須在服務器端進行,不應依賴于客戶端腳本,因為沒有任何東西能夠阻止用戶逃避客戶端檢驗過程。

2)守好JavaBean的入口

JSP組件技術的核心是被稱為bean的java組件。在程序中可把邏輯控制、數據庫操作放在javabeans組件中,然后在JSP文件中調用它,這樣可增加程序的清晰度及程序的可重用性。和傳統(tǒng)的ASP或PHP頁面相比,JSP頁面是非常簡潔的,因為許多動態(tài)頁面處理過程可以封裝到JavaBean中。每個JavaBean組件封裝了一些可以不依賴于調用環(huán)境而獨立使用的數據和功能。Bean包含數據成員(屬性),并通過Get和Set方法實現訪問這些屬性的標準API。為快速初始化指定Bean的所有屬性,JSP提供了一種快捷方式,即在查詢字符串中提供name=value對,并讓它匹配目標屬性的名字。考慮下面這個使用Bean的例子(以XML格式顯示):

你的購物籃

你已經把商品: 加入到購物籃

金額是$ 準備付款

正常情況下,HTML表單構造的查詢字符串就是這種形式。但問題在于,沒有任何東西能夠防止用戶設置balance屬性:server/addToBasket.JSP? newItem=ITEM0105342&balance=0 ;處理頁面的標記時,JSP容器會把這個參數映射到Bean中具有同樣名字的balance屬性,并嘗試把該屬性設置為0。為避免出現這種問題,JSP開發(fā)者必須在Bean的Set和Get方法中實現某種安全措施,同時,在使用的通配符時也應該小心謹慎。

3)Cookie中的敏感數據

CGI協(xié)議是把請求數據從客戶端傳輸到服務器端,最簡單的方法是GET請求方法。使用GET請求方法時,輸入數據附加到請求URL之后,格式如下:

URL[name=value[&name=value[&...]]]

對于傳輸敏感數據來說,這種編碼方式是不合適的,因為通常情況下,整個URL和請求字符串都以明文方式通過通信通道。所有路由設備都可以和服務器一樣記錄這些信息。如果要在客戶請求中傳輸敏感數據,應該使用POST方法,再加上一種合適的加密機制。

3 漏洞與源代碼安全

JSP實現,在一定的階段都會出現給系統(tǒng)帶來危險的安全隱患。根據目前已經發(fā)現的JSP安全問題,主要有源代碼暴露類、遠程程序執(zhí)行類。

1)源代碼暴露類

源代碼暴露類別主要指的是程序源代碼會以明文的方式返回給訪問者。JSP動態(tài)程序在服務器端執(zhí)行的,執(zhí)行后只會返回給訪問者標準的html等代碼。這是理論上的東西,實際運行起來由于服務器內部機制的問題就有可能引起源代碼暴露的漏洞。

下面主要介紹一下引起JSP源代碼暴漏的主要原因:

①特殊后綴的添加

JSP是大小寫敏感的,Tomcat只會將小寫的JSP后綴的文件當作是正常的JSP文件來執(zhí)行,在JSP中就會存在著JSP文件后綴大寫漏洞;JSP 文件后加特殊字符如Resin1.2的%82、../漏洞;ServletExec的%2E、+漏洞等等。如果大寫了就會引起Tomcat將index.jsp當作是一個可以下載的文件讓客戶下載。

解決辦法是在服務器軟件的網站上下載補丁;因為以前用過asp一段時間,接觸了很多IIS的漏洞,它的有效解決方法是去掉不必要的映射如htr、htx等,在JSP中我們同樣可以參考IIS的解決方法,不同的是不是去掉而是添加映射,方法為在服務器設置中添加一些映射如.JSP 、.JSP、.JSP%2E等,將他們映射到一個自己寫的servlet,這個Servlet的唯一功能就是將請求導向一個自定義的類似404 not found的出錯頁面,不同的服務器設置的地方也不同,請參考相應的文檔。第二種解決方法可以在沒有補丁的時候采用。

②特殊字符串的插入

IBM WebSphere 3.0.2是調用不同的servlets對不同的頁面進行處理,如果一個請求的文件是未進行注冊管理的,WebSphere 會使用一個默認的servlet調用。特殊字符串的插入引起的漏洞,BEA WebLogic Enterprise 5.1文件路徑開頭為 "/file/" 的漏洞、IBM WebSphere 3.0.2的"/servlet/file/"文件開頭漏洞等等。如果文件路徑以"/servlet/file/"作開頭這個默認的servlet會被調用這個請求的文件會未被分析或編譯就顯示出來。解決方法是在服務器軟件的網站下載最新的補丁。

③路徑權限引起的文件JSP源代碼暴露

大部分的JSP應用程序在當前目錄下都會有一個WEB-INF目錄,這個目錄通常存放的是JavaBeans編譯后的class文件,如果不給這個目錄設置正常的權限,所有的class就會曝光。安全問題更大的就是,把數據庫的用戶名密碼都寫在了Java代碼中,現在一反編譯誰都能看到數據庫的重要信息。通過數據庫的遠程連接功能,可以輕松的進入到你的數據庫中,所有信息全部在他手中。附帶說一句,如果用戶能獲得SQL Server的用戶名口令,進入數據庫中可以執(zhí)行任意的dos命令如查看c:文件、建立和刪除目錄等,那樣整個Windows系統(tǒng)都不安全了。

解決方法是將asp程序單獨放置一個目錄,目錄設置上用戶權限只能執(zhí)行不能讀取。在JSP環(huán)境下同樣可以通過設置服務器的環(huán)境來解決這個問題,簡單的說,就是將一些比較重要的目錄如WEB-INF、classes等設置上訪問的權限,不允許讀而取只允許執(zhí)行。以apache下解決為例,可以在httpd.conf文件中添加一目錄WEB-INF并設置Deny from all等屬性。更為重要的是密碼的保存問題。在JSP中可以寫一個property文件,放置在WINNT系統(tǒng)目錄下,然后用Bean來讀取數據庫信息,這樣就算源代碼被人知道起碼數據庫是安全的。(下轉第1143頁)

(上接第1127頁)

④文件不存在引起的絕對路徑暴露問題

這個問題相信大家都比較熟悉了,因為微軟IIS中也有比較多的類似問題。如微軟IIS5.0中的*.idc暴露絕對路徑漏洞。同樣的這些問題現在也轉到了JSP環(huán)境中,這個漏洞暴露了web程序的絕對硬盤地址,和其他漏洞結合就具有比較大的危害了。因為負責JSP執(zhí)行的相關Servlet中處理異常的時候沒有過濾掉這種情況。解決方法是下載最新的補丁;如果當時的web服務器軟件沒有這個補丁,可以找到服務器軟件的JSP執(zhí)行映射Servlet文件,將它用JAD軟件反編譯,在反編譯后的源代碼中找到處理Exception的方法,然后將方法中的處理部分全部注釋掉,并將請求導向到一個自定義的出錯頁面中,這樣問題就解決了。

2)遠程程序執(zhí)行類

遠程程序執(zhí)行類通過url 地址在瀏覽器中執(zhí)行任意服務器上的命令和程序,從而引起安全問題。遠程執(zhí)行任意命令漏洞、iPlanet Web Server 4.x存在一個緩沖區(qū)溢出漏洞等等。如果URL請求的目標文件使用了前綴/servlet/,則JSP解釋執(zhí)行功能被激活。這時在用戶請求的目標文件路徑中使用../,就有可能訪問到WEB服務器上根目錄以外的文件。目標主機上利用該漏洞請求用戶輸入產生的一個文件,將嚴重威脅到目標主機系統(tǒng)的安全。解決方法是安裝最新的補丁。

4 總結

JSP應用安全和數據保護這些防范措施都有一定的限度,并不是越安全就越可靠,JSP存在著很多安全上的問題的,客觀的說,服務器軟件的開發(fā)商在內部測試中不可能將系統(tǒng)中的所有bug找出來,即使了軟件后,被發(fā)現的漏洞也只會是其中的很小一部分,將來還會不斷的有新的安全問題出現,所以我們必須時刻提高警惕,并注意自己網站的安全,在看一個JSP網站是否安全時不僅要考察其技術手段,更重要的是對該網站所采取的各種安全措施,從而保證網站的安全性。

參考文獻:

[1] 張國祥.基于Apache的Web安全技術的應用研究[J].武漢理工大學學報,2004(3).

[2] 單歐.SSL在web安全中的應用[J].信息網絡安全,2004.

[3] 王勇.嵌入式Internet的技術實現及其安全問題的研究[D].浙江大學,2002.

相關熱門標簽