嚴威 張明
[摘要]大氣、水質環境自動監測中的自動化系統通過互聯網傳輸環境質量數據,實現環境質量的實時監督,系統中的數據已成為判斷環境好壞的重要依據;網絡傳輸是自動監測信息系統的重要一環,其安全性直接影響環境監測數據的真實性和準確性。而網絡安全風險檢測是保證網絡安全的基礎工作,探討在環境監測系統中如何引入自動化的安全風險分析及驗證技術,發現環境自動監測系統中的網絡安全隱患。
[關鍵詞]環境自動監測;網絡安全風險檢測;網絡安全風險驗證;漏洞自動化分析;漏洞自動化驗證
[中圖分類號]X834
[文獻標識碼]A
生態環境良好是國家有序發展的重要前提和保障,是人民生活幸福感和獲得感的的源泉。正是基于此,有系統地建立全國到地方的多層級的生態環境監測體系顯得尤為重要。為此各省、市建立了由若干個監測子站和一個中心監測站組成的環境自動監測系統,各監測子站采用自動監測儀器和技術,經計算機等數據處理和信息傳輸手段,將監測結果與數據匯總到中心監測站進行數據處理、統計和顯示,并向環境保護行政主管部門報告環境質量狀況和向社會發布環境質量信息。隨著這些系統的持續使用,它的網絡安全問題也暴露出來。據國家信息安全漏洞共享平臺(CNVD)公布的數據顯示,2016年收到1117個物聯網設備漏洞,而到2017年達到2440個,增長了118.4%。網絡攝像頭、路由器、手機設備發現的漏洞數量最多。所有IoT(Internet of Things,物聯網)終端中,不少設備存在各種代碼漏洞風險,弱密碼、web界面存在漏洞、未使用傳輸加密技術等問題。這些系統安全漏洞嚴重威脅物聯網安全。黑客登錄這些設備,利用webshell,種植木馬等技術手段竊取信息系統數據等敏感信息,為物聯網帶來嚴重的安全隱患。
1 基于自動化分析的風險檢測驗證系統主要的技術
智能環境監測系統,涉及環境監測系統中物聯網設備傳感器的數據傳輸安全,傳感器自身系統安全問題,這一系列問題亟需使用自動化技術檢測及驗證,以便提高后續的問題處理工作效率,保證環境監測系統的安全。基于自動化分析的風險檢測驗證系統主要涉及以下技術:1)基于靜態分析、動態分析及混合分析的漏洞自動化挖掘技術,該項技術目的是發現安全漏洞及安全風險;2)分布式系統協同計算集群的構建方法及技術,該技術是為了提高自動化檢測的效率;3)機器學習在PPDR模型下的實際應用以及基于機器學習優化策略的漏洞檢測技術,該技術是在檢測到漏洞及安全威脅之后,科學有效地對漏洞及安全風險進行高效管理。
2 基于靜態分析、動態分析及混合分析的漏洞自動化挖掘技術研究
靜態分析技術是在程序未運行時,對程序的源代碼進行分析,直接發現程序邏輯中的潛在漏洞,包括基于源代碼和二進制文件兩種漏洞分析技術。基于源碼的漏洞挖掘分析技術是指對程序的源碼通過人工或者運用半自動化、自動化工具進行閱讀分析,檢測程序中可能存在的安全漏洞的關鍵點。詞法分析、控制流分析和數據流分析是目前廣泛使用的方法。詞法分析的核心是特征數據庫,特征數據庫的功能可能會從形態,語法,語義(例如strcpy,get,malloc等)等方面挖掘引起問題函數。然后,在特征數據庫的基礎上分析程序,尤其是包含函數的位置。基于二進制文件的檢測方式是通過二進制補丁比對技術,通常,一般軟件漏洞中不會披露該漏洞的確切位置,也不會指出該漏洞的具體原因。因此,有關已發布漏洞的信息實際上相對較少,通過補丁比較和分析,可以找到補丁的具體修改,找到漏洞代碼,然后進行分析,以確定造成漏洞的原因,找出并獲得有關該漏洞的更多信息。
動態分析技術是將目標程序加載到動態跟蹤調試器中以動態運行程序,分析動態調試器中的程序阿存,狀態和調試器寄存器以及其他信息,然后修復潛在的安全漏洞。有一種典型的環境故障注入方法,開發程序時,通常不會完全考慮運行該程序的環境,始終假定該程序將在理想的安全和穩定情況下運行。因此,如果程序的運行環境發生人為或非人為的變化,則不知道程序是否可以正常運行,因此輸入半有效數據是檢查容錯性和可靠性的有效方法。Fuzzing技術是一種自動或半自動的漏洞挖掘和分析技術。它可以通過向目標輸入半有效數據(如文件格式、網絡協議、API等)來發現軟件的潛在漏洞,即提供意外的輸人數據,并監控系統的異常情況.所謂半有效數據是指大部分數據是有效的,所以應用程序認為是有效數據,但同時其余數據是無效的。
混合分析技術便是同時對一個系統進行靜態的源碼分析檢測,動態的環境帶人運行檢測,通過靜態分析、動態分析、混合分析相結合,可高效地發現智能環境監測系統中的漏洞問題,并可將這些技術集成到工具中,使用工具進行自動化的漏洞挖掘。
3 分布式系統協同計算集群的構建方法及技術研究
分布式Matlab計算集群可以實現建立一次任務,對大量的設備同時進行漏洞挖掘及安全風險檢測。
通過構建CORBA集群,該功能可以提高系統的處理速度。CORBA的一個重要優點是它可以跨平臺和語言進行處理,當使用Java調用Matlab時,分布式手段是打破檢測過程速度瓶頸的重要手段,我們依賴于服務器(Matlab Motor)具有強大處理能力的物理終端。使用者通過分布式系統訪問服務器,可以最大程度地提高速度并提高檢測速度,通過分析服務器集群中每個服務器的空閑和繁忙狀態,可以進行最佳的任務配置,以確保大型復雜項目中系統的最佳處理速度,突破了傳統系統處理速度的瓶頸,提高了系統性能。
通過CORBA和Matlab引擎,將Matlab函數調用模型的應用用Java語言實現。由于測試數據處理要求的特殊性,在系統模塊中加入Matlab,將大大提高系統開發的效率,提高系統的魯棒性,使設計人員能夠更好地關注測控系統的模塊化和數據處理算法。數據定制在系統中非常重要。我們需要通過眾所周知的經驗方程來擬合數據,以達到去除異常值和預測數據的目的。IDL是類C語言的一種。IDL和C最大的區別就是它只有定義部分,沒有具體的實現,它是一種純描述性語言,只描述接口,不描述實現。IDL文件的構成是整個調用過程成功的關鍵,因為客戶端和服務器程序的編寫依賴于IDL文件生成的存根和框架文件。在創建IDL文件之間,我們需要做好系統調用分析,特別是在兩個方面,變量和方法的定義。在我們的數據擬合例子中(為了更好地說明問題,我們用最小二次方程的二階多項式擬合來代替實踐中晦澀難懂的經驗公式)。我們需要定義兩個浮點型數組,一個代表應用中的實際數據,比如無人機數據,另一個代表時間坐標,只定義了一種方法,就是用浮點數擬合最小平方二階多項式數據。并畫出有序的圖形。經過分析,我們可以定義數據擬合的IDL。
4 機器學習在PPDR模型下的實際應用以及基于機器學習優化策略的漏洞檢測技術研究
Gartner提出要“管理風險、建立信任、擁抱變化”,這意味著在新的安全環境下,如果系統受到攻擊和破壞,可以快速恢復,具有“彈簧一伸就恢復”的能力。自適應PPDR安全模型被業界廣泛接受,包括四個層次:預測、預防、檢測和應對;這種安全模式在不同階段引入了威脅情報、大數據分析等新技術和新服務,打造了一個能夠持續、智能、協同應對威脅的安全體系。將PPDR模型應用到漏洞的檢測及管理便對應著漏洞的發現,漏洞的分析,漏洞跟進處置,漏洞的復測驗證。
4.1 漏洞發現
為了識別自動環境監控系統中的漏洞,我們可以在事件發生之前、之中和之后從不同的角度進行查看,例如,預先,我們可以通過在線前安全評估,受信訪問評估,分析和識別漏洞情報來識別漏洞。查找威脅和攻擊事件分析以及標準化的攻擊和防御訓練分析;在這種情況下,我們可以通過每日漏洞掃描,安全配置測試,滲透測試或第三方組織來檢測在線系統漏洞,事件發生后,發現的漏洞包括第三方發布的漏洞和互聯網發布的漏洞,監督可以被黑客利用的漏洞。
4.2 漏洞的分析
漏洞分析的第一步是對漏洞掃描結果進行分析,以消除誤報,保證掃描結果的準確性,消除誤報的方法主要包括交叉驗證、人工驗證、表格分析等,漏洞是一種不活躍的威脅。除了消除誤報,環境自動監測系統還必須明確如何處理漏洞。這也是安全人員面臨的一個難題,所以漏洞分析的另一個關鍵任務是確定漏洞等級。結合漏洞攻擊代碼出現、漏洞資產位置、漏洞修復收入等信息,我們可以利用動態漏洞風險等級影響系統的可用性,以獲得現階段的完整性和保密性,并通過明確的漏洞風險分類指導后續的漏洞。工作進行處置。掃描器給出的漏洞修復建議往往簡單、過時或不協調。因此,有必要對漏洞修復方案進行分析和審核,并提出合理的建議,完善漏洞分析。
分析漏洞可以從四個方面來看,第一是看漏洞的本身,就看漏洞到底嚴不嚴重,看代碼有沒有公開,如果沒有公開,那么風險就不高;第二是看攻擊路徑,就比如說一個路徑只在服務器本地開放,那么就不會把端口暴露在互聯網,就不會達成遠程攻擊,此時認為是本地漏洞;第三是看權限的要求,現在很多業務系統要使用里面的功能是需要登錄的,此時產生的漏洞造成的危害一般不嚴重。除此之外,還要看利用復雜度、影響范圍、披露時間以及威脅程度,同時判斷漏洞的優先級還需要關注供給面暴露情況(進程是否啟動、端口是否監聽、網絡是否開放)。
4.3 漏洞的跟進處置
漏洞監控主要包括通知漏洞負責人以處理漏洞,根據漏洞級別跟蹤漏洞的修復以及監視過期漏洞;關鍵連接包括記錄漏洞帳戶以及報告,跟蹤和監視漏洞。
在漏洞跟進中,有必要與漏洞消除部門保持良好而一致的溝通,進一步明確漏洞風險水平,漏洞修復責任等事項;對于可能影響指標完成的漏洞,例如早已逾期且尚未在維修計劃中恢復且未經監管機構修復的漏洞,應將其提交給管理層以進行特殊實施和解決。漏洞處置是指負責修復漏洞的人員對漏洞進行處理,包括漏洞修復,補償控制,臨時脫機和漏洞容忍。
在消除漏洞的過程中,負責漏洞修復的部門應首先根據漏洞修復提案評估實際漏洞情況,制定漏洞修復系統,然后根據商定的漏洞風險級別制定相應的漏洞修復流程。
基于以上分析跟進,以威脅為中心的漏洞管理方法,此方法發現漏洞后,會結合評分的算法,接著算出哪些漏洞影響最大,哪些漏洞是沒有影響的,最后優先修復漏洞大的,修復完后持續關注黑客活動,若發現還有黑客在活動就說明修復是無效的,如果沒有發現黑客在活動就說明修復是有效的。
4.4 漏洞的復測驗證
漏洞修復后,需要對漏洞進行重新測試,以驗證漏洞是否仍然存在。漏洞重測包括掃描驗證和人工確認。對于未能通過重測的漏洞,應按照漏洞后續處理流程繼續推進修復,并將其加入到漏洞修復時間中。對于多次復測仍未修復的漏洞,應分析原因,定期進行整體評估分析。
將機器學習的技術引入漏洞的全生命周期管理中,可對漏洞管理模型進行訓練,設備可根據管理員的管理情況進行機器深度學習,對資產及漏洞賦值,給管理人員提供漏洞管理的相關意見。
[參考文獻]
[1]和亮,蘇璞睿.軟件漏洞自動利用研究進展[J].中國教育網絡,2016(Z1).
[2]吳世忠.軟件漏洞分析技術[M].科學出版社,2014.
[3]周鵬.軟件FUZZ中代碼分支檢測算法研究與實現[D].北京郵電大學,2019.
[4]劉慶之.基于CORBA的服務器集群系統負載均衡的設計與應用[D].西安電子科技大學,2008.