[發明專利]一種容器完整性校驗方法有效
| 申請號: | 202010740943.3 | 申請日: | 2020-07-29 |
| 公開(公告)號: | CN111857967B | 公開(公告)日: | 2022-04-12 |
| 發明(設計)人: | 郭亮;侯瑋瑋;逯璐 | 申請(專利權)人: | 中科方德軟件有限公司 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455;G06F21/64 |
| 代理公司: | 北京市海問律師事務所 11792 | 代理人: | 王磊;沈驍 |
| 地址: | 100190 北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 容器 完整性 校驗 方法 | ||
本發明公開了一種容器完整性校驗方法,具體涉及Linux系統運行容器中文件的完整性度量領域,校驗方法包括:S1:建立鉤子函數監控mount系統調用;S2:啟動docker服務,調用docker create或docker run創建容器;S3:docker創建容器過程中,在執行容器目錄掛載時mount系統調用將被調用。本發明能夠在啟用完整性度量的操作系統中,不需要對docker函數代碼進行修改,即可通過建立對mount系統調用的鉤子函數監控docker動態創建的容器掛載其文件系統過程,主動給容器中的可執行文件、so文件和ko文件生成和保存完整性度量值,使容器中這些文件在運行時能夠通過操作系統正常的完整性度量而無需規避,從而不會影響系統的安全性。
技術領域
本發明涉及Linux系統運行完整性度量領域,更具體地說,本發明涉及一種容器完整性校驗方法。
背景技術
完整性度量是指將文件內容和文件的屬性/擴展屬性,通過加密哈希生成對應的IMA/EVM串完整性度量值,以擴展屬性方式保存在文件系統節點中;系統運行時在文件被訪問前,內核IMA/EVM模塊通過校驗文件的完整性度量值,判斷文件是否被離線非法篡改過;如果有,返回非法結果給系統,從而阻止訪問或運行該文件。docker創建容器時,其掛載目錄是動態確定的,無法靜態生成容器中可執行文件的完整性度量值,導致這些文件在運行時無法通過完整性度量從而被判斷為非法,從而不能正常運行。
現有的技術方案:目前并沒有相關方面的技術方案,我們之前想到的一個方案是,通過修改內核完整性度量模塊,使其在校驗文件前,判斷文件所屬的namespace,從namespace判斷其是否是docker進程,若是,則不對其進行完整性校驗,直接判定為合法文件,規避系統完整性度量,但這有可能對系統進行破壞,使得沒有通過完整性度量的容器應用運行,安全性不高。
在所述背景技術部分公開的上述信息僅用于加強對本公開的背景的理解,因此它可以包括不構成對本領域普通技術人員已知的現有技術的信息。
發明內容
為了克服現有技術的上述缺陷,本發明的實施例提供一種容器完整性校驗方法,本發明所要解決的技術問題是:如何動態生成docker容器可執行文件、.so文件和.ko文件的完整性度量值,使得容器文件能夠通過完整性度量值校驗,保證了系統的安全性。
為實現上述目的,本發明提供如下技術方案:一種容器完整性校驗方法,所述校驗方法包括:
S1:建立鉤子函數監控mount系統調用;
S2:啟動docker服務,調用docker create或docker run創建容器;S3:容器被創建過程中掛載容器文件系統時,mount系統調用將被調用;S4:鉤子函數運行,分析其參數,獲得容器文件系統掛載目錄,執行mount系統調用原功能;
S5:遍歷容器掛載目錄,找出可執行文件、so文件和ko文件,根據文件內容和文件路徑,計算出文件完整性度量值并保存在該文件的擴展屬性里;S6:在容器中運行可執行文件、so文件和ko文件時,會啟動系統的完整性度量功能,判斷文件能否通過度量,通過校驗則執行,否則報錯;
S7:停止docker服務,執行完畢之后容器被終止。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中科方德軟件有限公司,未經中科方德軟件有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010740943.3/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種雙系統無縫切換方法
- 下一篇:一種水葫蘆制備氧化鎳納米顆粒的方法及應用





