System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 午夜无码一区二区三区在线观看,亚无码乱人伦一区二区,无码专区—VA亚洲V天堂
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    代碼可達性分析方法、裝置、電子設備、產品及存儲介質制造方法及圖紙

    技術編號:44365242 閱讀:2 留言:0更新日期:2025-02-25 09:45
    本發明專利技術提供一種代碼可達性分析方法、裝置、電子設備、產品及存儲介質,涉及代碼分析技術領域。其中方法包括:將源代碼進行編譯,得到中間表達指令集;從中間表達指令集中確定出函數指令集,將函數指令集中各函數指令的抽象變量名稱替換為實際類名,以得到具體化函數指令集;基于具體化函數指令集中各具體化函數指令的調用信息,得到具體化函數指令信息集;基于具體化函數指令信息集中各具體化函數指令信息分別與預設危險函數指令信息集中各預設危險函數指令信息的匹配結果,確定源代碼中各函數的可達性。本發明專利技術能夠解決現有的分析方法在面對現代編程語言中復雜的語言特性時,無法提供高精度、高效率的代碼可達性分析的缺陷。

    【技術實現步驟摘要】

    本專利技術涉及代碼分析,尤其涉及一種代碼可達性分析方法、裝置、電子設備、產品及存儲介質


    技術介紹

    1、在現代軟件開發中,隨著面向對象編程語言的廣泛應用,編程語言中引入了許多高級特性,如繼承、多態、泛型等,這意味著程序越來越復雜,若沒有對這些高級特性進行深入的分析,可能導致在代碼存在潛在的安全風險和邏輯錯誤。現有技術通常依賴于控制流圖分析技術、數據流分析技術和符號執行分析技術等靜態分析技術來分析編程語言中的高級特性。

    2、然而,這些現有技術也存在一定的缺陷。例如,控制流圖分析技術在處理多態和間接調用時精度較低;數據流分析技術難以應對復雜的引用關系,特別是動態類型和多態性;符號執行分析技術在路徑爆炸和狀態空間膨脹問題上,無法應對大規模項目的分析需求。由此可見,現有技術在面對現代編程語言中復雜的語言特性時,無法提供高精度、高效率的代碼可達性分析,進而可能導致程序中存在的潛在漏洞無法被及時發現。


    技術實現思路

    1、本專利技術提供一種代碼可達性分析方法、裝置、電子設備、產品及存儲介質,用以解決現有技術在面對現代編程語言中復雜的語言特性時,無法提供高精度、高效率的代碼可達性分析的缺陷。

    2、本專利技術提供一種代碼可達性分析方法,包括:

    3、獲取源代碼,將所述源代碼進行編譯,得到中間表達指令集;

    4、從所述中間表達指令集中確定出函數指令集,將所述函數指令集中各函數指令的抽象變量名稱替換為實際類名,以得到具體化函數指令集;所述函數指令集中任一條函數指令表征所述源代碼中函數的執行邏輯;

    5、基于所述具體化函數指令集中各具體化函數指令的調用信息,得到具體化函數指令信息集,所述具體化函數指令信息集中任一條具體化函數指令信息表征所述源代碼中函數的執行邏輯及所述函數的調用信息;

    6、基于所述具體化函數指令信息集中各具體化函數指令信息分別與預設危險函數指令信息集中各預設危險函數指令信息的匹配結果,確定所述源代碼中各函數的可達性。

    7、根據本專利技術提供的一種代碼可達性分析方法,在所述基于所述具體化函數指令集中各具體化函數指令的調用信息,得到具體化函數指令信息集之前,所述方法包括:

    8、基于所述具體化函數指令集中各具體化函數指令的類型信息和參數傳遞路徑,確定所述具體化函數指令集中各具體化函數指令的調用信息。

    9、根據本專利技術提供的一種代碼可達性分析方法,所述具體化函數指令的類型信息包括本地函數類型、繼承函數類型或重載函數類型;所述具體化函數指令的調用信息包括獨立調用信息、繼承鏈調用信息或多態調用信息;

    10、任一所述具體化函數指令的調用信息基于如下方式確定:

    11、若所述具體化函數指令的類型信息為本地函數類型,則將所述具體化函數指令的調用信息確定為獨立調用信息;

    12、若所述具體化函數指令的類型信息為繼承函數類型,則將所述具體化函數指令的調用信息確定為繼承鏈調用信息;

    13、若所述具體化函數指令的類型信息為重載函數類型,則將所述具體化函數指令的調用信息確定為多態調用信息。

    14、根據本專利技術提供的一種代碼可達性分析方法,在所述確定所述具體化函數指令集中各具體化函數指令的調用信息之后,所述方法還包括:

    15、基于所述具體化函數指令集中各具體化函數指令的調用信息對所述具體化函數指令集中各具體化函數指令進行分類標記。

    16、根據本專利技術提供的一種代碼可達性分析方法,所述基于所述具體化函數指令信息集中各具體化函數指令信息分別與預設危險函數指令信息集中各預設危險函數指令信息的匹配結果,確定所述源代碼中各函數的可達性,包括:

    17、若所述具體化函數指令信息集中的具體化函數指令信息與預設危險函數指令信息集中的預設危險函數指令信息匹配成功,則確定出待分析的具體化函數指令信息;

    18、對所述待分析的具體化函數指令信息進行分析,得到可達性分析結果;

    19、其中,所述可達性分析結果用于確定所述待分析的具體化函數指令信息在所述源代碼中所表征的函數的可達性。

    20、根據本專利技術提供的一種代碼可達性分析方法,所述可達性分析結果包括所述待分析的具體化函數指令信息在所述源代碼中所表征的函數的位置信息、執行邏輯風險提示和調用信息風險提示。

    21、本專利技術還提供一種代碼可達性分析裝置,包括:

    22、編譯模塊,其用于獲取源代碼,將所述源代碼進行編譯,得到中間表達指令集;

    23、具體化函數指令集確定模塊,其用于從所述中間表達指令集中確定出函數指令集,將所述函數指令集中各函數指令的抽象變量名稱替換為實際類名,以得到具體化函數指令集;所述函數指令集中任一條函數指令表征所述源代碼中函數的執行邏輯;

    24、具體化函數指令信息集確定模塊,其用于基于所述具體化函數指令集中各具體化函數指令的調用信息,得到具體化函數指令信息集,所述具體化函數指令信息集中任一條具體化函數指令信息表征所述源代碼中函數的執行邏輯及所述函數的調用信息;

    25、可達性分析模塊,其用于基于所述具體化函數指令信息集中各具體化函數指令信息分別與預設危險函數指令信息集中各預設危險函數指令信息的匹配結果,確定所述源代碼中各函數的可達性。

    26、本專利技術還提供一種電子設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執行所述計算機程序時實現如上述任一種所述代碼可達性分析方法。

    27、本專利技術還提供一種非暫態計算機可讀存儲介質,其上存儲有計算機程序,該計算機程序被處理器執行時實現如上述任一種所述代碼可達性分析方法。

    28、本專利技術還提供一種計算機程序產品,包括計算機程序,所述計算機程序被處理器執行時實現如上述任一種所述代碼可達性分析方法。

    29、本專利技術提供的代碼可達性分析方法、裝置、電子設備、產品及存儲介質,所述方法包括獲取源代碼,將所述源代碼進行編譯,得到中間表達指令集;從所述中間表達指令集中確定出函數指令集,將所述函數指令集中各函數指令的抽象變量名稱替換為實際類名,以得到具體化函數指令集;所述函數指令集中任一條函數指令表征所述源代碼中函數的執行邏輯;基于所述具體化函數指令集中各具體化函數指令的調用信息,得到具體化函數指令信息集,所述具體化函數指令信息集中任一條具體化函數指令信息表征所述源代碼中函數的執行邏輯及所述函數的調用信息;基于所述具體化函數指令信息集中各具體化函數指令信息分別與預設危險函數指令信息集中各預設危險函數指令信息的匹配結果,確定所述源代碼中各函數的可達性。本專利技術通過引入中間表達技術,將復雜的代碼結構轉化為便于分析的中間層數據結構,針對現有代碼可達性分析技術在處理現代編程語言高級特性時精度不足的問題,提供了有效解決方案。具體而言,本專利技術通過將中間表達中的函數指令集具體化,即將各函數指令的抽象變量名稱替換為實際類名,消除了由動態類型和多態性引發的不確定性,明確了函數的實際調本文檔來自技高網...

    【技術保護點】

    1.一種代碼可達性分析方法,其特征在于,包括:

    2.根據權利要求1所述的代碼可達性分析方法,其特征在于,在所述基于所述具體化函數指令集中各具體化函數指令的調用信息,得到具體化函數指令信息集之前,所述方法包括:

    3.根據權利要求2所述的代碼可達性分析方法,其特征在于,所述具體化函數指令的類型信息包括本地函數類型、繼承函數類型或重載函數類型;所述具體化函數指令的調用信息包括獨立調用信息、繼承鏈調用信息或多態調用信息;

    4.根據權利要求2所述的代碼可達性分析方法,其特征在于,在所述確定所述具體化函數指令集中各具體化函數指令的調用信息之后,所述方法還包括:

    5.根據權利要求1所述的代碼可達性分析方法,其特征在于,所述基于所述具體化函數指令信息集中各具體化函數指令信息分別與預設危險函數指令信息集中各預設危險函數指令信息的匹配結果,確定所述源代碼中各函數的可達性,包括:

    6.根據權利要求5所述的代碼可達性分析方法,其特征在于,所述可達性分析結果包括所述待分析的具體化函數指令信息在所述源代碼中所表征的函數的位置信息、執行邏輯風險提示和調用信息風險提示。

    7.一種代碼可達性分析裝置,其特征在于,包括:

    8.一種電子設備,包括存儲器、處理器及存儲在所述存儲器上并在所述處理器上運行的計算機程序,其特征在于,所述處理器執行所述計算機程序時實現如權利要求1至6任一項所述的代碼可達性分析方法。

    9.一種非暫態計算機可讀存儲介質,其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現如權利要求1至6任一項所述的代碼可達性分析方法。

    10.一種計算機程序產品,包括計算機程序,其特征在于,所述計算機程序被處理器執行時實現如權利要求1至6任一項所述的代碼可達性分析方法。

    ...

    【技術特征摘要】

    1.一種代碼可達性分析方法,其特征在于,包括:

    2.根據權利要求1所述的代碼可達性分析方法,其特征在于,在所述基于所述具體化函數指令集中各具體化函數指令的調用信息,得到具體化函數指令信息集之前,所述方法包括:

    3.根據權利要求2所述的代碼可達性分析方法,其特征在于,所述具體化函數指令的類型信息包括本地函數類型、繼承函數類型或重載函數類型;所述具體化函數指令的調用信息包括獨立調用信息、繼承鏈調用信息或多態調用信息;

    4.根據權利要求2所述的代碼可達性分析方法,其特征在于,在所述確定所述具體化函數指令集中各具體化函數指令的調用信息之后,所述方法還包括:

    5.根據權利要求1所述的代碼可達性分析方法,其特征在于,所述基于所述具體化函數指令信息集中各具體化函數指令信息分別與預設危險函數指令信息集中各預設危險函數指令信息的匹配結果,確定所述源代...

    【專利技術屬性】
    技術研發人員:屈晟陳馳皓武延軍
    申請(專利權)人:中國科學院軟件研究所
    類型:發明
    國別省市:

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

    1
    主站蜘蛛池模板: 午夜寂寞视频无码专区| 久99久无码精品视频免费播放| 免费人妻av无码专区| 国产成人无码网站| 亚洲AV无码乱码在线观看富二代| 无码中文字幕日韩专区| yy111111少妇影院无码| 久久久久亚洲av无码专区喷水| 粉嫩大学生无套内射无码卡视频 | 成年轻人电影www无码| 狠狠躁天天躁无码中文字幕 | AV无码小缝喷白浆在线观看 | 中文字幕无码免费久久| 亚洲AV成人无码网天堂| 亚洲中文字幕无码爆乳av中文 | 日韩人妻无码一区二区三区99 | 伊人久久精品无码二区麻豆| 白嫩少妇激情无码| 亚洲国产精品无码专区| 中文字幕无码日韩专区免费| 亚洲AV无码成H人在线观看 | 亚洲人成无码久久电影网站| 无码人妻精品一区二区三区久久久 | 无码免费又爽又高潮喷水的视频| 熟妇无码乱子成人精品| 亚洲成av人片在线观看无码不卡| 无码国产亚洲日韩国精品视频一区二区三区| 人妻丰满AV无码久久不卡| 亚洲AV日韩AV永久无码久久| 亚洲精品无码不卡在线播HE | 无码人妻精品一区二区三区蜜桃| 无码人妻精品一区二区三区66| 亚洲中文久久精品无码| 国产精品无码素人福利| 国产色综合久久无码有码| 国产丝袜无码一区二区三区视频 | 少妇久久久久久人妻无码| 无码一区二区三区AV免费| 人妻少妇精品无码专区| 无码视频在线播放一二三区| 自慰系列无码专区|