System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 久久久久琪琪去精品色无码,亚洲AV无码乱码国产麻豆,无码久久精品国产亚洲Av影片
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種面向區塊鏈代碼生態漏洞識別方法及系統技術方案

    技術編號:44353177 閱讀:9 留言:0更新日期:2025-02-25 09:37
    本發明專利技術公開一種面向區塊鏈代碼生態漏洞識別方法及系統,該方法包括:抓取公有鏈項目錯誤信息和代碼提交信息包含鏈代碼問題與代碼提交信息之間映射關系;對映射關系進行過濾,獲取漏洞關聯的代碼提交信息;從漏洞關聯的代碼提交信息提取漏洞代碼、補丁代碼以及補丁代碼標題,并基于補丁代碼標題獲取對應的漏洞類型;對漏洞代碼抽象化,并根據漏洞代碼和補丁代碼生成補丁模式;對于待檢測鏈代碼,依據抽象化漏洞代碼獲取存在潛在漏洞的相關代碼,并通過計算代碼相似度,獲取存在潛在漏洞的相關代碼對應的源項目中的補丁代碼;基于補丁模式,在源項目中的補丁代碼中確定修復待檢測鏈代碼的補丁代碼。本發明專利技術可以保護區塊鏈上用戶的財產安全。

    【技術實現步驟摘要】

    本專利技術屬于區塊鏈,提出了一種面向區塊鏈代碼生態漏洞識別方法及系統。


    技術介紹

    1、作為一種分布式賬本技術,區塊鏈越來越受歡迎,特別是在實現有價值的加密貨幣和智能合約方面。然而,區塊鏈軟件系統不可避免地存在許多漏洞。盡管智能合約中的漏洞已經得到普遍研究,但底層區塊鏈系統的安全漏洞卻很少被探索。在2022年的一項研究中顯示,在幾個主流的區塊鏈安全補丁的修復記錄中,區塊鏈系統層漏洞修復占所有區塊鏈漏洞事件的62%-78%,但在高達2000余次修復中,具有cve編號的以太坊公開漏洞只有33個,比特幣漏洞只有4個,這意味著大量的區塊鏈漏洞是在攻擊事件發生后才得到修復,設計一種區塊鏈系統層的漏洞分析與識別方案刻不容緩。

    2、由于區塊鏈生態系統的開源特性,新的區塊鏈常常會分叉或部分重用經典區塊鏈的代碼。已有的研究表明,區塊鏈的系統級漏洞常集中在與共識、錢包和網絡相關的高度敏感模塊中,與驗證、交易關聯、區塊關聯、節點關聯、錢包密鑰相關的模塊更容易受到影響。經調查,這些模塊的漏洞往往使用相同或近似的漏洞代碼模式,這就為利用分叉傳播和代碼相似性設計漏洞檢測方式提供可能性。


    技術實現思路

    1、為了克服現有檢測技術在區塊鏈系統層漏洞檢測方面的不足,本專利技術提供一種面向區塊鏈代碼生態漏洞識別方法及系統,用于分析區塊鏈所使用的基礎庫和重用代碼中潛在的內生安全風險,有效地保護區塊鏈上用戶的財產安全。

    2、為實現上述目的,本專利技術的技術方案包括以下內容。

    3、一種面向區塊鏈代碼生態漏洞識別方法,所述方法包括:

    4、抓取公有鏈項目錯誤信息和代碼提交信息,建立包含鏈代碼問題與代碼提交信息之間映射關系的原始數據庫;

    5、對鏈代碼問題與代碼提交信息之間的映射關系進行過濾,獲取漏洞關聯的代碼提交信息;

    6、從所述漏洞關聯的代碼提交信息提取漏洞代碼、補丁代碼以及補丁代碼標題,并基于所述補丁代碼標題獲取對應的漏洞類型后,生成包含漏洞類型、漏洞代碼和補丁代碼的集合;

    7、對漏洞代碼抽象化,并根據漏洞代碼和補丁代碼生成補丁模式后,生成包含漏洞類型、抽象化漏洞代碼和補丁模式的最終漏洞數據庫;

    8、對于一待檢測鏈代碼,依據抽象化漏洞代碼獲取存在潛在漏洞的相關代碼,并通過計算代碼相似度,獲取該存在潛在漏洞的相關代碼對應的源項目中的補丁代碼;

    9、基于所述補丁模式,在該源項目中的補丁代碼中確定修復所述待檢測鏈代碼的補丁代碼。

    10、進一步地,所述抓取公有鏈項目錯誤信息和代碼提交信息,建立包含鏈代碼問題與代碼提交信息之間映射關系的原始數據庫,包括:

    11、使用github?api,收集公有鏈項目錯誤信息中每個已關閉問題/pr的信息;其中,所述已關閉問題/pr的信息包括:問題標題、問題主體、評論、事件和錯誤類別標簽;

    12、爬取一個倉庫的所有代碼提交信息,并在所有代碼提交信息中確定與錯誤有關的代碼提交信息之后,提取與錯誤有關的代碼提交信息;其中,所述代碼提交信息包括:提交標題、提交消息、受影響的文件和id/url;

    13、篩選掉沒有補丁提交信息的已關閉問題/pr;

    14、基于已關閉問題頁面的事件信息、pr的提交列表、以及在提交標題與提交消息中識別出問題/pr編號,建立鏈代碼問題與代碼提交信息之間的映射關系;

    15、建立原始數據庫,所述原始數據庫包含鏈代碼問題與代碼提交信息之間的映射關系,以及該鏈代碼問題與代碼提交信息之間的映射關系所涉及到的鏈代碼問題與代碼提交信息。

    16、進一步地,所述對鏈代碼問題與代碼提交信息之間的映射關系進行過濾,獲取漏洞關聯的代碼提交信息,包括:

    17、根據安全問題相關的關鍵字對原始數據庫的鏈代碼問題的進行篩選,得到篩選后的鏈代碼問題與代碼提交信息之間的映射關系;

    18、對于篩選后的鏈代碼問題與代碼提交信息之間的映射關系,通過提交過濾、文件過濾、標簽過濾和關鍵詞過濾,篩選掉包含普通問題的鏈代碼問題與代碼提交信息,以得到漏洞關聯的代碼提交信息;其中,

    19、所述提交過濾是通過代碼提交信息中必須包含代碼更改,對代碼提交信息進行過濾;

    20、所述文件過濾是基于代碼提交信息中對應源代碼的文件類型,對代碼提交信息進行過濾;

    21、所述標簽過濾是基于鏈代碼問題/pr的標簽和代碼提交信息的標簽,對鏈代碼問題與代碼提交信息進行過濾;

    22、所述關鍵詞過濾是基于問題/pr的標題和正文中的關鍵詞,對鏈代碼問題進行過濾。

    23、進一步地,所述基于所述補丁代碼標題獲取對應的漏洞類型,包括:

    24、刪除所述補丁代碼標題中的無用詞,得到補丁代碼標題中的關鍵詞;其中,所述無用詞包括:模塊信息、版本信息、特殊詞匯和形容詞;

    25、在補丁代碼標題中的關鍵詞中定位漏洞類型關鍵詞;

    26、使用word2vec將所有漏洞類型關鍵詞嵌入向量空間,并通過wmd文本相似度度量對漏洞類型關鍵詞向量進行聚類,得到該代碼提交信息對應的區塊鏈代碼漏洞類型。

    27、進一步地,所述在補丁代碼標題中的關鍵詞中定位漏洞類型關鍵詞,包括:

    28、對于含有介詞和動詞的補丁代碼標題,所述在補丁代碼標題中的關鍵詞中定位漏洞類型關鍵詞,包括:

    29、如果補丁代碼標題只有一個動詞和一個介詞存在,并且介詞出現在動詞之后,該動詞和介詞是漏洞類型關鍵詞;

    30、如果補丁代碼標題沒有動詞但是存在介詞,或者沒有介詞但是存在動詞,則確定介詞或動詞為漏洞類型關鍵詞;

    31、如果補丁代碼標題中出現多個動詞,將具有最高頻率的動詞視為漏洞類型關鍵詞;如果標題中出現多個介詞,則確定目標介詞為在目標動詞之后首次出現的介詞為漏洞類型關鍵詞;

    32、對于不同時含有介詞和動詞的漏洞標題,所述在補丁代碼標題中的關鍵詞中定位漏洞類型關鍵詞,包括:

    33、如果只有目標動詞存在,則目標動詞之后的所有詞都將被視為漏洞類型關鍵詞;

    34、如果只有目標介詞存在,則目標介詞之前的所有詞都將被視為漏洞類型關鍵詞;

    35、如果沒有目標詞存在,則將補丁代碼標題作為漏洞類型關鍵詞。

    36、進一步地,對漏洞代碼抽象化,包括:

    37、保留關鍵字識別的控制流語句,并保留特定的數據類型和運算符;

    38、和,

    39、去除函數的參數和調用者變量;

    40、和,

    41、抽象化變量名和變量值。

    42、進一步地,根據漏洞代碼和補丁代碼生成補丁模式,包括:

    43、保留補丁代碼中的diff代碼塊,并通過連續的+行和-行將diff代碼塊分成單獨片段;

    44、對于每一個+行和-行,計算與漏洞代碼中代碼塊的相似度;

    45、當相似度大于設定閾值時,該+行或-行為修改行;

    本文檔來自技高網...

    【技術保護點】

    1.一種面向區塊鏈代碼生態漏洞識別方法,其特征在于,所述方法包括:

    2.根據權利要求1所述的方法,其特征在于,所述抓取公有鏈項目錯誤信息和代碼提交信息,建立包含鏈代碼問題與代碼提交信息之間映射關系的原始數據庫,包括:

    3.根據權利要求1所述的方法,其特征在于,所述對鏈代碼問題與代碼提交信息之間的映射關系進行過濾,獲取漏洞關聯的代碼提交信息,包括:

    4.根據權利要求1所述的方法,其特征在于,所述基于所述補丁代碼標題獲取對應的漏洞類型,包括:

    5.根據權利要求4所述的方法,其特征在于,所述在補丁代碼標題中的關鍵詞中定位漏洞類型關鍵詞,包括:

    6.根據權利要求1所述的方法,其特征在于,對漏洞代碼抽象化,包括:

    7.根據權利要求1所述的方法,其特征在于,根據漏洞代碼和補丁代碼生成補丁模式,包括:

    8.根據權利要求1所述的方法,其特征在于,對于一待檢測鏈代碼,依據抽象化漏洞代碼獲取存在潛在漏洞的相關代碼,并通過計算代碼相似度,獲取該存在潛在漏洞的相關代碼對應的源項目中的補丁代碼,包括:

    9.根據權利要求1所述的方法,其特征在于,所述基于所述補丁模式,判斷該源項目中的補丁代碼是否可以修復所述待檢測鏈代碼的潛在漏洞,包括:

    10.一種面向區塊鏈代碼生態漏洞識別系統,其特征在于,所述系統包括:

    ...

    【技術特征摘要】

    1.一種面向區塊鏈代碼生態漏洞識別方法,其特征在于,所述方法包括:

    2.根據權利要求1所述的方法,其特征在于,所述抓取公有鏈項目錯誤信息和代碼提交信息,建立包含鏈代碼問題與代碼提交信息之間映射關系的原始數據庫,包括:

    3.根據權利要求1所述的方法,其特征在于,所述對鏈代碼問題與代碼提交信息之間的映射關系進行過濾,獲取漏洞關聯的代碼提交信息,包括:

    4.根據權利要求1所述的方法,其特征在于,所述基于所述補丁代碼標題獲取對應的漏洞類型,包括:

    5.根據權利要求4所述的方法,其特征在于,所述在補丁代碼標題中的關鍵詞中定位漏洞類型關鍵詞,包括:

    【專利技術屬性】
    技術研發人員:程宥霖,宋冬梅蘆翔,范婷,
    申請(專利權)人:中國科學院信息工程研究所
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 国产在线无码视频一区| 中文字幕乱码无码人妻系列蜜桃| 国产精品无码不卡一区二区三区| 国产av无码久久精品| 亚洲AV永久无码精品水牛影视| 乱人伦人妻中文字幕无码| 亚洲AV无码一区二区三区DV| 免费无遮挡无码视频网站| 亚洲AV中文无码乱人伦下载| YW尤物AV无码国产在线观看| 精品国产v无码大片在线观看| 国产精品无码永久免费888| 亚洲一区二区三区无码国产| 人妻丰满熟妇AV无码区HD| 久久水蜜桃亚洲AV无码精品| 未满小14洗澡无码视频网站| 国产亚洲精久久久久久无码| 亚洲AV无码一区二区三区国产 | 无码精品日韩中文字幕| 免费无遮挡无码视频网站| 无码丰满熟妇juliaann与黑人| 亚洲真人无码永久在线| 亚洲精品无码日韩国产不卡?V| 久久精品无码中文字幕| 亚洲人成无码网站在线观看| 熟妇人妻无码中文字幕| 亚洲精品午夜无码专区| 久久伊人中文无码| 亚洲AV无码乱码精品国产| 日韩成人无码影院| YY111111少妇无码理论片| 欧洲黑大粗无码免费| 激情无码亚洲一区二区三区| 亚洲AV无码成人精品区狼人影院| 精品人妻系列无码天堂| 无码不卡av东京热毛片| 人妻在线无码一区二区三区 | 国产成人无码AV片在线观看| 中文午夜人妻无码看片| 亚洲精品无码你懂的| 亚洲av无码有乱码在线观看|