[發明專利]基于代碼語義分析的電力信息系統安全防護方法及裝置在審
| 申請號: | 202110539306.4 | 申請日: | 2021-05-18 |
| 公開(公告)號: | CN113297580A | 公開(公告)日: | 2021-08-24 |
| 發明(設計)人: | 沈伍強;溫柏堅;沈桂泉;裴求根;陳敏;何明東;黃小強;龍震岳;黃敬志;張小陸;劉曄 | 申請(專利權)人: | 廣東電網有限責任公司 |
| 主分類號: | G06F21/57 | 分類號: | G06F21/57;G06F8/41;G06F40/253;G06F40/284;G06F40/30;G06K9/62;G06Q50/06 |
| 代理公司: | 南京蘇高專利商標事務所(普通合伙) 32204 | 代理人: | 李淑靜 |
| 地址: | 510600 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 代碼 語義 分析 電力 信息系統安全 防護 方法 裝置 | ||
1.一種基于代碼語義分析的電力信息系統安全防護方法,其特征在于,所述方法包括以下步驟:
采集電網信息系統的運行代碼和相關的運行態信息,并提取關鍵信息的信息;
對采集的關鍵信息進行詞法分析和語法分析,得到抽象語法樹;
根據預設的安全模型對預處理后的抽象語法樹的代碼邏輯進行判斷檢測,識別代碼漏洞;
根據漏洞攻擊行為判定情況,對源代碼進行語義修復。
2.根據權利要求1所述的基于代碼語義分析的電力信息系統安全防護方法,其特征在于,所述對采集的關鍵信息進行詞法分析和語法分析包括:詞法分析器依次讀取包含代碼關鍵信息的用戶請求信息文件中的字符,進行字符集合分析,按照預定的規則將字符合并成標記token,將整個用戶請求信息文件分割進一個token列表,并選取當前Web解釋器使用的分析器,提取解釋器標準定義規則文件;語法分析器根據標準定義語法規則還原語法中的程序邏輯,構建完整的抽象語法樹AST。
3.根據權利要求1所述的基于代碼語義分析的電力信息系統安全防護方法,其特征在于,所述根據預設的安全模型對預處理后的抽象語法樹的代碼邏輯進行判斷檢測,識別代碼漏洞包括:根據Adaboost算法得到最佳的單層決策樹,再利用FP-growth算法基于所述最佳的單層決策樹進行關聯分析,實現通過上下邏輯的分析,檢測出是否存在SQL注入攻擊行為。
4.根據權利要求3所述的基于代碼語義分析的電力信息系統安全防護方法,其特征在于,所述根據Adaboost算法得到最佳的單層決策樹包括:
基于建立的常規抽象語法樹,利用深度優先遍歷進一步得到序列化AST;
對代碼文件進行向量轉化,所述代碼文件指的是用戶輸入的經過預處理后的數據;
通過數字映射與填充、詞嵌入方法獲取代碼的深層語義,實現代碼的深度表示;
通過深度優先遍歷方法遍歷抽象語法樹將其映射為向量,并通過構建映射的方式,將向量的元素轉換為整數形式,該部分整數作為向量元素的唯一標識;
通過Adaboost算法得到一個最佳的單層決策樹。
5.根據權利要求3所述的基于代碼語義分析的電力信息系統安全防護方法,其特征在于,所述利用FP-growth算法基于所述最佳的單層決策樹進行關聯分析,實現通過上下邏輯的分析,檢測出是否存在SQL注入攻擊行為包括:
掃描電力信息系統中用戶輸入的經過預處理后的數據,得到所有頻繁項集的的計數;
刪除支持度低于閾值的項,將頻繁項集放入項頭表,并按照支持度降序排列;
將讀到的用戶輸入的經過預處理后的數據剔除非頻繁項集,并按照支持度降序排列,循環掃描信息,查找滿足最小支持度的關聯項集;
讀入排序后的數據集,插入基于Adaboost算法得到的最佳的單層決策樹,插入時按照排序后的順序插入樹中,其中排序靠前的節點是祖先節點,而靠后的是子孫節點。如果有共用的祖先,則對應的公用祖先節點計數加1,插入后,如果有新節點出現,則項頭表對應的節點會通過節點鏈表鏈接上新節點,直到所有的數據都插入到樹中;
從項頭表的底部項依次向上找到項頭表項對應的條件模式基;
從條件模式基遞歸挖掘得到項頭表項項的頻繁項集;
如果不限制頻繁項集的項數,則返回之前的所有的頻繁項集,否則只返回滿足項數要求的頻繁項集;
篩選出其中最小支持度的關項集,最終達到所有關聯項集都被挖掘出,得出關聯規則,進行排序更新樹,最終輸出漏洞攻擊行為的檢測結果。
6.根據權利要求1所述的基于代碼語義分析的電力信息系統安全防護方法,其特征在于,所述根據漏洞攻擊行為判定情況,對源代碼進行語義修復包括:
從歷史代碼庫中搜索與源程序相似的bug代碼,并找到與其相關的修復代碼;
將修復代碼轉換為抽象語法樹,生成候選補丁;
使用基于給定測試用例的適應度函數來驗證候選補丁是否有效;
根據通過驗證的補丁生成輸出補丁修復源錯誤代碼。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣東電網有限責任公司,未經廣東電網有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110539306.4/1.html,轉載請聲明來源鉆瓜專利網。





