[發明專利]用于確定軟件代碼中的缺陷和漏洞的方法在審
| 申請號: | 201780038210.1 | 申請日: | 2017-04-21 |
| 公開(公告)號: | CN109416719A | 公開(公告)日: | 2019-03-01 |
| 發明(設計)人: | 譚琳;王松;南載昌 | 申請(專利權)人: | 譚琳;王松;南載昌 |
| 主分類號: | G06F21/57 | 分類號: | G06F21/57 |
| 代理公司: | 北京德琦知識產權代理有限公司 11018 | 代理人: | 康泉;宋志強 |
| 地址: | 加拿大*** | 國省代碼: | 加拿大;CA |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 軟件代碼 安全漏洞 測試代碼 代碼集 置信 漏洞 評估 網絡 | ||
本公開涉及一種用于確定軟件代碼中的缺陷和安全漏洞的方法。該方法包括:基于由程序員產生的訓練代碼集來生成深度置信網絡(DBN),并根據相對于DBN的測試代碼集來評估DBN的性能。
相關申請交叉引用
本申請要求于2016年4月22日提交的美國專利申請第62/391,166號的權益,其通過引用并入本文。
技術領域
本公開涉及發現缺陷和漏洞,并且更具體地,本公開涉及用于確定軟件代碼中的缺陷和安全漏洞的方法。
背景技術
隨著技術不斷發展,軟件開發仍處于這種發展的最前沿。然而,攻擊軟件的企圖也在上升。為了保護軟件免受攻擊,在開發周期期間定期執行軟件測試,以便發現錯誤、軟件漏洞等。任何軟件開發的測試和質量保證檢查都不是新鮮事務。只要軟件已被開發出來,就已經進行了測試,但是,所開發的軟件仍然存在瑕疵。
在當前一些解決方案中,無法對具有不同語義的不同軟件代碼區域加以區分。例如,軟件程序文件內的一些代碼區域具有帶有相同值的傳統特征,并且因此,由這些特征生成的特征向量是相同的,并且沒有辦法對語義差異加以區分。
軟件漏洞可被視為一種特殊的缺陷。根據應用程序的不同,這些軟件漏洞可能比錯誤更為重要,并且要求與缺陷完全不同的識別過程。而且,相比于漏洞而言存在著更多的錯誤(至少每年都報告許多錯誤)。此外,漏洞是至關重要的,而一些錯誤并非如此,以至于它們永遠不會被修復。最后,大多數開發人員更好地理解如何識別和處理缺陷而不是漏洞。
因此,發現漏洞是一個艱難且昂貴的過程。為了支持這一過程,研究人員已經基于軟件度量、文本挖掘和函數調用而開發出了基于機器學習的漏洞預測模型。遺憾的是,以前的研究并未針對軟件安全漏洞進行可靠且有效的預測。在這種方法中,我們建議使用深度學習來生成新的語義特征,以幫助構建更準確的安全漏洞預測模型。
因此,提供了一種用于確定軟件代碼中的缺陷和安全漏洞的新穎方法。
發明內容
本公開涉及一種用于確定軟件代碼中的缺陷和安全漏洞的方法。該方法包括:基于由程序員產生的訓練代碼集來生成深度置信網絡(DBN);以及根據相對于DBN的測試代碼集來評估DBN的性能。
在本公開的一個方面,提供了一種識別軟件缺陷和漏洞的方法,該方法包括:基于由程序員產生的訓練代碼集來生成深度置信網絡(DBN);以及相對于DBN來評估測試代碼集的性能。
在另一方面,生成DBN包括:從訓練代碼集中獲取令牌;以及基于來自訓練代碼集的令牌來構建DBN。在可替代方面,構建DBN還包括:構建整型向量與令牌之間的映射;將來自訓練代碼集的令牌向量轉換為訓練代碼整型向量;以及經由訓練代碼整型向量來實現DBN。
在另一方面,評估性能包括:使用訓練代碼整型向量來生成語義特征;根據訓練代碼集來構建預測模型;以及相對于語義特征和預測模型來評估測試代碼集的性能。
在再一方面,獲取令牌包括:從訓練代碼集中提取句法信息。在又一方面,提取句法信息包括:從訓練代碼集中提取抽象語法樹(AST)節點作為令牌。在又一方面,生成DBN包括:對DBN進行訓練。在一方面,對DBN進行訓練包括:將每層中的節點數設置為相等;重構訓練代碼集;以及將數據向量歸一化。在另一方面,在設置節點之前,對預定參數集進行訓練。在可替代方面,參數之一是隱藏層中的節點數。
在又一方面,整型向量與令牌之間的映射包括:執行編輯距離函數;移除具有不正確標簽的數據;過濾掉不常見的節點;以及收集錯誤變化。在另一方面,顯示軟件缺陷和漏洞的報告。
附圖說明
現在將參考附圖并且僅通過示例的方式來描述本公開的實施例。
圖1是概述確定軟件代碼中的缺陷和安全漏洞的方法的流程圖;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于譚琳;王松;南載昌,未經譚琳;王松;南載昌許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201780038210.1/2.html,轉載請聲明來源鉆瓜專利網。





