[發明專利]一種數據庫審計方法、裝置、電子設備及可讀存儲介質在審
| 申請號: | 202210825362.9 | 申請日: | 2022-07-14 |
| 公開(公告)號: | CN115328934A | 公開(公告)日: | 2022-11-11 |
| 發明(設計)人: | 孟雷 | 申請(專利權)人: | 阿里云計算有限公司 |
| 主分類號: | G06F16/242 | 分類號: | G06F16/242;G06F16/21;G06F17/18;G06N20/00 |
| 代理公司: | 北京辰權知識產權代理有限公司 11619 | 代理人: | 鞠永帥 |
| 地址: | 310000 浙江省*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據庫 審計 方法 裝置 電子設備 可讀 存儲 介質 | ||
1.一種數據庫審計方法,其特征在于,包括:
基于進行了當前環境的數據庫操作的SQL語句構建訓練樣本,訓練用于對待審計SQL語句進行檢測的檢測模型,所述檢測模型至少包括基于監督學習的SQL注入檢測模型;
響應于接收到的用于操作該數據庫的所述待審計SQL語句,通過所述檢測模型檢測所述待審計SQL語句。
2.根據權利要求1所述的方法,其特征在于,所述檢測模型還包括SQL基線檢測模型,所述通過所述檢測模型檢測所述待審計SQL語句,包括:
通過所述SQL基線檢測模型檢測所述待審計SQL語句,將檢測通過的所述待審計SQL語句確定為安全SQL語句;
基于所述SQL注入檢測模型檢測篩除所述安全SQL語句后的所述待審計SQL語句,將檢測未通過的所述待審計SQL語句確定為攻擊SQL語句。
3.根據權利要求2所述的方法,其特征在于,所述檢測模型還包括用于抽取并檢測SQL語句中的輸出參數的框架參數模型,所述通過所述檢測模型檢測所述待審計SQL語句,還包括:
基于所述框架參數模型檢測篩除所述安全SQL語句后的所述待審計SQL語句,將檢測未通過的所述待審計SQL語句確定為攻擊SQL語句。
4.根據權利要求1所述的方法,其特征在于,所述SQL注入檢測模型的訓練樣本包括攻擊樣本和安全樣本;通過如下步驟構建用于訓練所述SQL注入檢測模型的訓練樣本:
對進行了該數據庫操作的所述SQL語句進行解析,并轉化為預設格式的SQL模板;
基于獲取的攻擊載荷和所述SQL模板構造所述攻擊樣本,將所述SQL語句中的安全SQL語句作為所述安全樣本。
5.根據權利要求4所述的方法,其特征在于,所述SQL模板的輸出參數上具有標注,所述基于攻擊載荷和所述SQL模板構造所述攻擊樣本中,通過將所述模板的輸出參數替換為所述攻擊載荷的方式構造所述攻擊樣本。
6.根據權利要求4所述的方法,其特征在于,所述攻擊載荷的獲取步驟為:獲取所述SQL語句中的攻擊SQL語句,將所述攻擊SQL語句的輸出參數作為所述攻擊載荷。
7.根據權利要求1所述的方法,其特征在于,通過如下步驟訓練所述SQL基線檢測模型:
對進行了該數據庫操作的所述SQL語句進行解析,并拆解所述SQL語句的結構特征、行為特征和環境特征;
統計分析所述結構特征、所述行為特征和所述環境特征,并基于統計分析結果剔除異常的SQL語句;
通過剔除后的所述SQL語句的所述結構特征、所述行為特征和所述環境特征,構建所述SQL基線檢測模型。
8.根據權利要求1所述的方法,其特征在于,所述框架參數模型包含多個由進行了該數據庫操作的所述SQL語句轉化的SQL模板,所述基于所述框架參數模型檢測所述待審計SQL語句,包括:
從所述SQL模板中選取與所述待審計SQL語句相似度最高的所述SQL模板;
基于選取的所述SQL模板抽取所述待審計SQL語句的輸出參數;
對所述輸出參數進行惡意參數檢測,在該輸出參數為惡意參數的情況下,將該待審計SQL語句確定為攻擊SQL語句。
9.根據權利要求1所述的方法,其特征在于,接收到的用于操作該數據庫的所述待審計SQL語句后,基于預設的攔截規則集合對所述待審計SQL語句進行攔截,通過所述檢測模型檢測未被攔截的所述待審計SQL語句。
10.根據權利要求9所述的方法,其特征在于,所述方法還包括:
基于預設的規則生成策略將所述檢測模型檢測出的所述待審計SQL語句中的攻擊SQL語句生成攔截規則,并將所述攔截規則添加到所述攔截規則集合中。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里云計算有限公司,未經阿里云計算有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210825362.9/1.html,轉載請聲明來源鉆瓜專利網。





