一種基于漏洞攻擊的安全協議驗證方法,方法采用安全協議一致性目標來描述安全協議的認證性與秘密性安全屬性,使用基于進程狀態變遷規則定義與數據類型映射模式的方式實現對安全協議的建模。本方法將對安全協議的驗證轉換成攻擊者基于會話消息的性質約束,求解目標會話數據,攻擊協議會話,發現安全協議漏洞的過程。本方法通過對安全協議的建模,實現攻擊者由安全協議規則約束出發,通過拆分約束形成求解目標,并由求解過程形成求解域,最終實現對安全協議漏洞的搜索與驗證。實驗證明,本方法針對規則安全協議具備可終止性。
【技術實現步驟摘要】
本專利技術屬于計算機網絡安全領域,具體涉及一種基于漏洞攻擊的安全協議驗證方 法。
技術介紹
安全協議能否實現其期望的安全目標對于信息安全來說是至關重要的。現有的 安全協議驗證方法,主要分為二類,一類是采用數理邏輯的證明方式,這種方式需要人工進 行,效率低,對于復雜的安全協議驗證十分困難;另外一類采用的是形式化工具方法進行驗 證,如模型檢驗工具等方法,這類方法可以實現對加密協議的自動化驗證,且能給出相應的 漏洞攻擊方法,但是由于安全協議的并發性以及無窮的協議會話空間,這類方法在驗證中 往往要加設條件來限制協議會話的空間,否則驗證過程可能會無法結束,從而無法得到有 效的驗證結果。
技術實現思路
為了解決現有技術中存在的上述問題,本專利技術提出一種基于漏洞攻擊的安全協議 驗證方法。本方法是一種安全協議漏洞的發現和驗證的實現技術,是通過安全協議攻擊者 的角度,求解所需會話消息驗證安全漏洞的技術,其中采用安全協議形式化建模,利用遞歸 求解目標數據以及遞歸求解的終止性條件判斷來驗證安全協議是否存在有漏洞。具體技術 方案如下,其特征是采用注入攻擊實現對安全協議 漏洞的驗證,步驟包括1)對安全協議的會話數據類型的建立數據類型映射模式,創建進程狀態變遷規 則,實現對安全協議的建模,并確認安全協議的一致性目標;所述建模的內容包括二個部分,一部分是安全協議中使用到的數據類型,另一部 分即是表述安全協議交互過程的進程狀態變遷規則;建模的過程首先對安全協議的非形式化表述中的會話數據類型進行確認,并采用遞歸函數 實現對會話數據映射形成的數據模式表述數據類型;進程狀態變遷規則是由進程狀態發生變遷時所需滿足的條件約束、進程狀態變遷 過程中的實參替代變量的替代集、以及表述協議當前狀態、變遷后狀態的謂詞來組成的;通 過變遷規則與協議交互數據類型結合來建立安全協議的模型;2)生成安全協議會話空間包括生成安全協議參與者、和參與者掌握的知識集合 以及安全協議攻擊者掌握的知識集合;3)對安全協議會話空間中執行的會話,生成注入消息求解目標,來實現對求解目 標的解析,形成求解目標邏輯表達式;4)對求解目標邏輯表達式中的每個子式,生成求解數據集,由求解目標子式和求解數據集生成求解域;5)判斷當前求解域所位于的求解路徑;若當前求解域所位于的求解路徑上存在 其它求解域,并且其它求解域與當前求解域具備相似求解域關系,則終止當前求解域求解, 直接進入步驟7),反之進入步驟6);6)對當前求解域,調用模型校驗技術中的基于約束求解算法(現有成熟算法,在 此不進一步加以限制),實現遞歸方式的求解;7)若步驟6)中求解成功,則表示攻擊者采用求解的會話消息已注入被攻擊會話, 此時判斷被攻擊的安全協議會話的進程狀態是否為結束,若不是結束,則回到步驟4),求解 下一個會話消息;若會話的進程狀態為結束,則進入步驟8);8)分析攻擊者的注入攻擊是否造成安全協議一致性目標的破壞,若是則說明發現 安全協議的漏洞,對安全協議實現了驗證。所述步驟1)中,對于安全協議模型的進程變遷規則中定義的會話消息約束,采用 邏輯命題表達式形成將會話消息約束表述成安全協議攻擊者的求解會話消息目標;由求解會話消息目標的拆分生成攻擊者的求解子目標,即可求解子目標,根據攻 擊者掌握的會話數據集,生成可用于求解子目標的數據集,結合子目標與數據集生成求解 域。所述步驟5)中,相似求解域關系是指若兩個求解域 1、 2中的約束T1、T2關 于某個求解子目標N 0,有彡N。T2且T2彡N。I\,則稱T1、T2具有相似求解域約束關系。所述步驟5)中,由于對于滿足相似求解域關系的、同一求解路徑中的兩個不同求 解域,求解路徑的排序在后的求解域不需求解,所以直接進入步驟7)。所述步驟6)中,對于某安全協議,若該協議P每一會話消息s的約束No進行拆 分操作,任一子約束有且僅有一個會話數據變量X,X屬于會話消息變量、且X屬于臨時性的 會話數據,則該協議P采用本方法驗證時一定是可以終止。采用所述步驟4) 7)的遞歸實現求解域的求解終止后,即可由求解的成功與否, 實現對目標會話的注入攻擊,再通過對會話的一致性目標破壞判斷是否發現安全協議漏 洞,實現對安全協議的驗證。1、本專利技術通過遞歸映射函數實現對安全協議會話數據映射成數據模式的方式,在 安全協議建模中弓I入數據類型系統。本建模方法與其它同類建模方法相比,能提供更多的安全協議分析支持,數據類 型的判斷與推理能力,具有良好的擴展性。該數據類型系統在本文所實現的安全協議驗證 工具中,作為協議建模、代碼映射與驗證的基礎。2、本專利技術采用安全協議一致性目標來描述安全協議的認證性與秘密性安全屬性, 原理分析如下基于國際公認的攻擊者D-Y攻擊者模型以及完美加密機制,可知注入攻擊是D-Y 攻擊者實現攻擊的必然手段。由于注入攻擊會造成被攻擊會話執行受阻,因此攻擊者必須 在其掌握的會話數據中求解出滿足協議進一步執行的會話數據。由此,采用把加密協議的 驗證轉換成攻擊者基于約束求解目標會話數據的過程。本方法基于攻擊者,由約束出發,通過拆分約束形成求解目標,并由求解過程形成 求解域,從而實現對加密協議的驗證。本方法引用了相似會話關系、相似求解域關系及強相似求解域關系等概念,證明 了構建可行攻擊路徑的參與者最多需要N個普通參與者與攻擊者,并由求解域的強相似 性,證明了本專利技術的算法對于規則加密協議的可終止性。本專利技術針對用戶提交的安全協議模型,采用基于數據模式的數據類型系統建立的 類型系統推理與判斷規則,來校驗用戶提交的協議角色會話文檔及數據類型定義文檔,從 而實現安全協議模型的代碼映射與自動化驗證。本專利技術采用獨立的通道模塊、加/解密機制、會話狀態機設計,并由安全協議定義 文檔實現協議模型的自動化映射,使得本專利技術具有很高的易用性與自動化程度。本專利技術實現了安全協議自動化驗證技術,使安全協議的驗證具有更高的效率,同 時本專利技術對于規則安全協議的可終止性,也使安全協議能獲得更好的驗證效果。本專利技術提 出的安全協議形式化建模手段能夠實現協議模型的可重用性,用戶只要使用本專利技術中已有 數據類型定義待驗證模型的會話消息數據類型,以此為基礎,通過安全協議進程定義就可 以實現對特定安全協議的建模,降低了用戶建模的復雜度。與其它基于模型檢測等方法相比,本專利技術的特點是通過算法實現了安全協議的自 動化驗證,并且對于規則安全協議,本專利技術的驗證過程一定可終止,而大部分安全協議都滿 足本方法的規則安全協議要求,因此本專利技術相較于其它方法更具實用性。附圖說明圖1本專利技術中包含的已定義數據類型圖。圖2協議進程模型的執行流程圖。圖3本專利技術的安全協議驗證流程圖。 圖4是求解算法中的第二階段。 具體實施例方式在本方法的使用中,1、首先用戶要定義安全協議的數據類型和定義安全協議的會話進程。具體來說, 用戶可以使用圖1和下述的進程定義模擬代碼中的本方法所包含的數據類型定義和會話 協議進程模擬,來實現對待校驗安全協議的會話數據類型定義以及安全進程定義文檔;2、用戶對定義的安全協議會話中的進程定義文檔、數據類型定義文檔以及安全協 議描述文檔進行裝載。其中安全協議描述文檔是對驗證加密協議的總體上的描述文檔,該 描述文檔包括加密協議的相關描述,加密協議中角色個數,采本文檔來自技高網...
【技術保護點】
【技術特征摘要】
CN 2010-6-8 201010194423.3一種基于漏洞攻擊的安全協議驗證方法,其特征是采用注入攻擊實現對安全協議漏洞的驗證,步驟包括1)對安全協議的會話數據類型的建立數據類型映射模式,創建進程狀態變遷規則,實現對安全協議的建模,并確認安全協議的一致性目標;所述建模的內容包括二個部分,一部分是安全協議中使用到的數據類型,另一部分即是表述安全協議交互過程的進程狀態變遷規則;建模的過程首先對安全協議的非形式化表述中的會話數據類型進行確認,并采用遞歸函數實現對會話數據映射形成的數據模式表述數據類型;進程狀態變遷規則是由進程狀態發生變遷時所需滿足的條件約束、進程狀態變遷過程中的實參替代變量的替代集、以及表述協議當前狀態、變遷后狀態的謂詞來組成的;通過變遷規則與協議交互數據類型結合來建立安全協議的模型;2)生成安全協議會話空間包括生成安全協議參與者、和參與者掌握的知識集合以及安全協議攻擊者掌握的知識集合;3)對安全協議會話空間中執行的會話,生成注入消息求解目標,來實現對求解目標的解析,形成求解目標邏輯表達式;4)對求解目標邏輯表達式中的每個子式,生成求解數據集,由求解目標子式和求解數據集生成求解域;5)判斷當前求解域所位于的求解路徑;若當前求解域所位于的求解路徑上存在其它求解域,并且其它求解域與當前求解域具備相似求解域關系,則終止當前求解域求解,直接進入步驟7)...
【專利技術屬性】
技術研發人員:韓進,蔡圣聞,王珺,謝俊元,
申請(專利權)人:南京大學,江蘇南大蘇富特科技股份有限公司,
類型:發明
國別省市:84
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。