JP2020154861A - Container image verification device, container image verification method, and container image verification program - Google Patents
Container image verification device, container image verification method, and container image verification program Download PDFInfo
- Publication number
- JP2020154861A JP2020154861A JP2019053705A JP2019053705A JP2020154861A JP 2020154861 A JP2020154861 A JP 2020154861A JP 2019053705 A JP2019053705 A JP 2019053705A JP 2019053705 A JP2019053705 A JP 2019053705A JP 2020154861 A JP2020154861 A JP 2020154861A
- Authority
- JP
- Japan
- Prior art keywords
- container image
- verification
- container
- package
- detailed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、コンテナイメージ検証装置、コンテナイメージ検証方法、およびコンテナイメージ検証プログラムに関する。 The present invention relates to a container image verification device, a container image verification method, and a container image verification program.
コンテナ環境で利用するコンテナイメージをパブリックレジストリから取得する場合、脆弱性のあるイメージをダウンロードしてしまうリスクがある。また、当初は安全であっても、コンテナ環境にて、脆弱性のあるパッケージを追加したコンテナイメージを作成する可能性がある。そのような脆弱性を持つコンテナイメージがインターネット向けに公開されるシステム上に展開された場合、サイバー攻撃を受け、システムに被害をもたらすリスクがある。 When acquiring the container image used in the container environment from the public registry, there is a risk of downloading the vulnerable image. Also, even if it is initially safe, there is a possibility to create a container image with vulnerable packages added in the container environment. If a container image with such a vulnerability is deployed on a system that is open to the Internet, there is a risk of being attacked by a cyber attack and causing damage to the system.
特許文献1は、コンテナイメージの取得装置と配信装置で構成される。取得装置は、コンテナイメージのバージョンを特定する情報の入力を受け付け、バージョンを特定し、配信装置に通知する。配信装置は、該当するバージョンのコンテナイメージを取得装置に対して送信する。
特許文献1では、配信装置が配信するコンテナイメージには脆弱性を持つソフトウェアパッケージが含まれる可能性がある。しかし、そのような脆弱性を検証し、コンテナイメージの安全性を担保する仕組みがない。コンテナイメージを実行することにより脆弱性を検証できるが、全てのコンテナイメージを実行して脆弱性を検証するので計算資源の消費量が高くなる。
In
本発明では、脆弱性を検証する処理による計算資源の消費量を低減しつつ、コンテナイメージの安全性を担保することを目的とする。 An object of the present invention is to ensure the safety of the container image while reducing the consumption of computational resources by the process of verifying the vulnerability.
本発明に係るコンテナイメージ検証装置は、コンテナイメージの脆弱性を検証するコンテナイメージ検証装置において、
前記コンテナイメージの生成手順を表すコンテナ構成ファイルが格納されたコンテナイメージデータベースから、前記コンテナ構成ファイルを取得し、前記コンテナイメージに含まれるパッケージのバージョンを特定する簡易情報取得部と、
前記コンテナイメージに含まれるパッケージのバージョンと脆弱性の有無とが対応付けられた脆弱性情報に基づいて、前記コンテナイメージに含まれるパッケージの脆弱性の有無を判定する簡易検証を行う簡易照合部と、
前記簡易検証により脆弱性有りと判定されたコンテナイメージを詳細検証対象コンテナイメージとして実行し、前記詳細検証対象コンテナイメージに含まれるパッケージ情報を取得する詳細情報取得部と、
前記脆弱性情報に基づいて、前記詳細検証対象コンテナイメージに含まれるパッケージの脆弱性の有無を判定する詳細検証を行う詳細照合部と
を備えた。
The container image verification device according to the present invention is a container image verification device that verifies the vulnerability of a container image.
A simple information acquisition unit that acquires the container configuration file from the container image database that stores the container configuration file that represents the procedure for generating the container image, and specifies the version of the package included in the container image.
A simple collation unit that performs simple verification to determine the presence or absence of vulnerabilities in the package included in the container image based on the vulnerability information associated with the version of the package included in the container image and the presence or absence of vulnerabilities. ,
A detailed information acquisition unit that executes a container image determined to be vulnerable by the simple verification as a container image subject to detailed verification and acquires package information included in the container image subject to detailed verification.
Based on the vulnerability information, it is provided with a detailed collation unit that performs detailed verification for determining the presence or absence of vulnerabilities in the package included in the detailed verification target container image.
前記簡易情報取得部は、
前記コンテナ構成ファイルから前記生成手順を構成するパッケージインストールコマンドを抽出し、前記パッケージのバージョンが指定されているパッケージインストールコマンドに基づいて前記パッケージのバージョンを特定する。
The simple information acquisition unit
The package installation command that constitutes the generation procedure is extracted from the container configuration file, and the version of the package is specified based on the package installation command in which the version of the package is specified.
前記コンテナイメージデータベースは、前記コンテナイメージの更新日時を含み、
前記脆弱性情報は、最新の更新日付を含み、
前記簡易照合部は、前記パッケージのバージョンが特定できない場合、前記コンテナイメージデータベースに含まれる前記コンテナイメージの更新日時と、前記脆弱性情報の最新の更新日付とを比較し、前記コンテナイメージの更新日時以降に前記脆弱性情報が更新されている場合に、前記コンテナイメージに含まれるパッケージに脆弱性有りと判定する。
The container image database includes the modification date and time of the container image.
The vulnerability information includes the latest update date.
When the version of the package cannot be specified, the simple collation unit compares the update date and time of the container image included in the container image database with the latest update date and time of the vulnerability information, and the update date and time of the container image. If the vulnerability information is subsequently updated, it is determined that the package included in the container image is vulnerable.
前記簡易照合部は、前記コンテナイメージデータベースに前記簡易検証の結果を記憶し、
前記詳細照合部は、前記コンテナイメージデータベースに前記詳細検証の結果を記憶し、
前記コンテナイメージ検証装置は、
前記コンテナイメージデータベースに基づいて、脆弱性有りと判定されたコンテナイメージを脆弱性コンテナイメージとして更新の可否を判定し、更新可能であれば前記脆弱性コンテナイメージを更新するコンテナイメージ選択部を備えた。
The simple collation unit stores the result of the simple verification in the container image database, and stores the result of the simple verification.
The detailed collation unit stores the result of the detailed verification in the container image database, and stores the result of the detailed verification.
The container image verification device is
Based on the container image database, it is provided with a container image selection unit that determines whether or not the container image determined to be vulnerable can be updated as a vulnerable container image and updates the vulnerable container image if it can be updated. ..
前記コンテナイメージ選択部は、
前記脆弱性コンテナイメージについて更新不可と判定された場合は、インターネットに公開された本番環境への配布するコンテナイメージを格納するパブリック向けレジストリから前記脆弱性コンテナイメージを削除する。
The container image selection unit
If it is determined that the vulnerability container image cannot be updated, the vulnerability container image is deleted from the public registry that stores the container image to be distributed to the production environment published on the Internet.
本実施の形態に係るコンテナイメージ検証方法は、コンテナイメージの脆弱性を検証するコンテナイメージ検証装置のコンテナイメージ検証方法において、
簡易情報取得部が、前記コンテナイメージの生成手順を表すコンテナ構成ファイルが格納されたコンテナイメージデータベースから、前記コンテナ構成ファイルを取得し、前記コンテナイメージに含まれるパッケージのバージョンを特定し、
簡易照合部が、前記コンテナイメージに含まれるパッケージのバージョンと脆弱性の有無とが対応付けられた脆弱性情報に基づいて、前記コンテナイメージに含まれるパッケージの脆弱性の有無を判定する簡易検証を行い、
詳細情報取得部が、前記簡易検証により脆弱性有りと判定されたコンテナイメージを詳細検証対象コンテナイメージとして実行し、前記詳細検証対象コンテナイメージに含まれるパッケージ情報を取得し、
詳細照合部が、前記脆弱性情報に基づいて、前記詳細検証対象コンテナイメージに含まれるパッケージの脆弱性の有無を判定する詳細検証を行う。
The container image verification method according to the present embodiment is the container image verification method of the container image verification device for verifying the vulnerability of the container image.
The simple information acquisition unit acquires the container configuration file from the container image database in which the container configuration file representing the container image generation procedure is stored, identifies the version of the package included in the container image, and determines the version of the package.
The simple collation unit performs a simple verification to determine the presence or absence of vulnerabilities in the package included in the container image based on the vulnerability information associated with the version of the package included in the container image and the presence or absence of vulnerabilities. Do,
The detailed information acquisition unit executes the container image determined to be vulnerable by the simple verification as the detailed verification target container image, acquires the package information included in the detailed verification target container image, and obtains the package information.
Based on the vulnerability information, the detailed collation unit performs detailed verification for determining the presence or absence of vulnerabilities in the package included in the detailed verification target container image.
本実施の形態に係るコンテナイメージ検証プログラムは、コンテナイメージの脆弱性を検証するコンテナイメージ検証装置のコンテナイメージ検証プログラムにおいて、
前記コンテナイメージの生成手順を表すコンテナ構成ファイルが格納されたコンテナイメージデータベースから、前記コンテナ構成ファイルを取得し、前記コンテナイメージに含まれるパッケージのバージョンを特定する簡易情報取得処理と、
前記コンテナイメージに含まれるパッケージのバージョンと脆弱性の有無とが対応付けられた脆弱性情報に基づいて、前記コンテナイメージに含まれるパッケージの脆弱性の有無を判定する簡易検証を行う簡易照合処理と、
前記簡易検証により脆弱性有りと判定されたコンテナイメージを詳細検証対象コンテナイメージとして実行し、前記詳細検証対象コンテナイメージに含まれるパッケージ情報を取得する詳細情報取得処理と、
前記脆弱性情報に基づいて、前記詳細検証対象コンテナイメージに含まれるパッケージの脆弱性の有無を判定する詳細検証を行う詳細照合処理と
をコンピュータである前記コンテナイメージ検証装置に実行させる。
The container image verification program according to this embodiment is used in the container image verification program of the container image verification device that verifies the vulnerability of the container image.
A simple information acquisition process that acquires the container configuration file from the container image database that stores the container configuration file that represents the procedure for generating the container image and specifies the version of the package included in the container image.
Based on the vulnerability information associated with the version of the package included in the container image and the presence or absence of vulnerabilities, a simple collation process for performing simple verification to determine the presence or absence of vulnerabilities in the package included in the container image. ,
The detailed information acquisition process of executing the container image determined to be vulnerable by the simple verification as the detailed verification target container image and acquiring the package information included in the detailed verification target container image, and
Based on the vulnerability information, the container image verification device, which is a computer, is made to execute a detailed collation process for performing detailed verification for determining the presence or absence of vulnerabilities in the package included in the detailed verification target container image.
本発明に係るコンテナイメージ検証装置では、簡易情報取得部が、コンテナイメージデータベースからコンテナ構成ファイルを取得し、コンテナイメージに含まれるパッケージのバージョンを特定する。簡易照合部が、脆弱性情報に基づいて、コンテナイメージに含まれるパッケージの脆弱性の有無を判定する簡易検証を行う。そして、詳細照合部は、簡易検証により脆弱性有りと判定された詳細検証対象コンテナイメージに対して、詳細検証を行う。よって、本発明に係るコンテナイメージ検証装置によれば、簡易検証により脆弱性有りと判定された詳細検証対象コンテナイメージに対してのみ詳細検証を行うので、コンテナイメージの検証処理による計算資源の消費量を軽減することができるという効果がある。 In the container image verification device according to the present invention, the simple information acquisition unit acquires the container configuration file from the container image database and specifies the version of the package included in the container image. Based on the vulnerability information, the simple collation unit performs simple verification to determine the presence or absence of vulnerabilities in the package included in the container image. Then, the detailed collation unit performs detailed verification on the container image to be detailed verification that is determined to be vulnerable by simple verification. Therefore, according to the container image verification device according to the present invention, detailed verification is performed only on the container image subject to detailed verification determined to be vulnerable by simple verification, so that the amount of computational resources consumed by the container image verification process is consumed. Has the effect of being able to reduce.
以下、本実施の形態について、図を用いて説明する。各図中、同一または相当する部分には、同一符号を付している。実施の形態の説明において、同一または相当する部分については、説明を適宜省略または簡略化する。 Hereinafter, the present embodiment will be described with reference to the drawings. In each figure, the same or corresponding parts are designated by the same reference numerals. In the description of the embodiment, the description will be omitted or simplified as appropriate for the same or corresponding parts.
実施の形態1.
***構成の説明***
図1は、本実施の形態に係るコンテナイメージ検証システム500の全体構成図である。
コンテナイメージ検証システム500は、コンテナイメージ検証装置100、ローカルレジストリ200、およびコンテナイメージ配布装置300を備える。
ここでは、コンテナイメージ検証システム500の各構成要素の機能の概要について説明する。
*** Explanation of configuration ***
FIG. 1 is an overall configuration diagram of the container image verification system 500 according to the present embodiment.
The container image verification system 500 includes a container
Here, the outline of the function of each component of the container image verification system 500 will be described.
ローカルレジストリ200は、インターネット上に公開されたコンテナイメージ210を格納する。ローカルレジストリ200には、インターネットを介して予めパブリックレジストリから取得したコンテナイメージ、あるいは、開発環境50で変更を加えたコンテナイメージが格納される。ローカルレジストリ200は、コンテナイメージ210を開発環境50に配布する。
パッケージ管理システム220は、コンテナイメージ内部のパッケージを管理するシステムである。
The
The
コンテナイメージ検証装置100は、コンテナイメージの脆弱性を検証する。すなわち、コンテナイメージ検証装置100は、コンテナイメージに脆弱性が含まれるかどうかの判定、および、脆弱性が含まれるコンテナイメージの削除を行う。
コンテナイメージ検証装置100は、簡易検証部120、詳細検証部130、コンテナイメージ選択部150、コンテナイメージデータベース160、脆弱性情報170を備える。簡易検証部120は、簡易情報取得部121、脆弱性情報取得部122、および簡易照合部123を備える。詳細検証部130は、詳細情報取得部131、および詳細照合部132を備える。
コンテナイメージ検証装置100は、ローカルレジストリ200に格納されたコンテナイメージ210の脆弱性有無の検証を行い、結果をコンテナイメージデータベース160に保存する。また、コンテナイメージ検証装置100は、コンテナイメージ選択部150により、コンテナイメージ配布装置300複製するコンテナイメージを選択する。
The container
The container
The container
コンテナイメージデータベース160は、コンテナイメージの以下の情報を管理する。
・コンテナイメージID
・コンテナイメージ更新日時
・コンテナイメージ簡易検証結果
・コンテナイメージ更新可否
・コンテナ構成ファイル
・コンテナイメージ詳細検証結果
・パッケージ情報
・脆弱性のあるパッケージ名
The
・ Container image ID
・ Container image update date and time ・ Container image simple verification result ・ Container image update availability ・ Container configuration file ・ Container image detailed verification result ・ Package information ・ Vulnerable package name
簡易情報取得部121は、コンテナイメージの生成手順を表すコンテナ構成ファイルが格納されたコンテナイメージデータベース160から、コンテナ構成ファイルを取得する。そして、簡易情報取得部121は、コンテナイメージに含まれるパッケージのバージョンを特定する。簡易情報取得部121は、簡易パッケージ情報取得部ともいう。
The simple
詳細情報取得部131は、簡易検証により脆弱性有りと判定されたコンテナイメージを詳細検証対象コンテナイメージとして実行する。そして、詳細情報取得部131は、詳細検証対象コンテナイメージに含まれるパッケージ情報を取得する。詳細情報取得部131は、パッケージ管理システム220からコンテナイメージを実行し、インストールされたパッケージ一覧を取得し、次の情報をコンテナイメージデータベース160に保存する。
・パッケージ名
・バージョン情報
The detailed
・ Package name ・ Version information
脆弱性情報取得部122は、インターネット上に存在する脆弱性情報データベースから脆弱性情報170を取得し、次の情報をローカルの脆弱性情報データベースに保存する。
・脆弱性情報ID
・パッケージ名
・バージョン情報
Vulnerability
・ Vulnerability information ID
・ Package name ・ Version information
脆弱性情報170は、コンテナイメージ検証装置100に存在する。脆弱性情報170は、コンテナイメージに含まれるパッケージのバージョンと脆弱性の有無とが対応付けられた情報である。脆弱性情報170には、パッケージの脆弱性情報および最新の更新日付が含まれる。
簡易照合部123は、脆弱性情報170に基づいて、コンテナイメージに含まれるパッケージの脆弱性の有無を判定する簡易検証を行う。簡易照合部123は、コンテナイメージデータベース160の情報と脆弱性情報170を照合する。簡易照合部123は、コンテナイメージのパッケージ情報と脆弱性情報170を照合し、合致するパッケージがあれば脆弱性有り、合致するパッケージがなければ脆弱性無し、と判定する。
The
詳細照合部132は、簡易検証により脆弱性有りとされたコンテナイメージ(詳細検証対象コンテナイメージ)の脆弱性有無の有無を判定し、コンテナイメージデータベース160にコンテナイメージ名およびその詳細検証結果を入力する。
The
コンテナイメージ選択部150は、コンテナイメージデータベース160に保存された簡易検証結果および詳細検証結果に基づき、ローカルレジストリ200およびコンテナイメージ配布装置300のコンテナイメージの更新および削除処理を実施する。脆弱性有りのコンテナイメージには、ローカルレジストリ200のコンテナイメージの更新を試みる。更新が不可であれば、コンテナイメージをローカル向けレジストリ310にのみ配布し、パブリック向けレジストリ320からは削除する。
The container
コンテナイメージ配布装置300は、コンテナイメージを本番環境に対して配布する。コンテナイメージ配布装置300は、ローカル向けレジストリ310と、パブリック向けレジストリ320から構成される。ローカル向けレジストリ310とパブリック向けレジストリ320には異なるIPアドレスを割り当て、ファイアウォール70でアクセス制御する。
The container
ローカル向けレジストリ310は、本番環境(ローカル)90にのみコンテナイメージを配布する。ローカルレジストリ200のコンテナイメージがすべて複製され、格納される。
パブリック向けレジストリ320は、本番環境(ローカル)90および本番環境(パブリック)80に対してコンテナイメージを配布する。ローカルレジストリ200のコンテナイメージのうち、コンテナイメージ検証装置100で安全と判定されたコンテナイメージのみが複製され、格納される。
The
The
本番環境(ローカル)90は、インターネット30からの接続を受け付けないネットワークセグメントに存在する本番環境である。一方、本番環境(パブリック)80は、インターネット30からの接続を受け付けるネットワークセグメントに存在する本番環境である。
The production environment (local) 90 is a production environment existing in a network segment that does not accept connections from the
***動作の説明***
本実施の形態に係るコンテナイメージ検証システム500によるコンテナイメージ検証処理について説明する。
*** Explanation of operation ***
The container image verification process by the container image verification system 500 according to the present embodiment will be described.
図2は、本実施の形態に係るコンテナイメージ取得処理のフロー図である。
コンテナイメージ検証システム500の利用形態としては、管理者がパブリックレジストリからのコンテナイメージの新規取得を行い、開発者がそのコンテナイメージを利用して開発を行うことを想定している。以下、管理者がパブリックレジストリからコンテナイメージを都度取得するコンテナイメージ取得処理について説明する。
FIG. 2 is a flow chart of the container image acquisition process according to the present embodiment.
As a usage pattern of the container image verification system 500, it is assumed that the administrator acquires a new container image from the public registry and the developer develops using the container image. The container image acquisition process in which the administrator acquires the container image from the public registry each time will be described below.
ステップS101において、パブリックレジストリからのコンテナイメージ取得が開始される。
ステップS102において、パブリックレジストリよりコンテナイメージがダウンロードされる。
ステップS103において、コンテナイメージデータベース登録処理が実施される。
ステップS104において、コンテナイメージ検証処理が実施される。
In step S101, the container image acquisition from the public registry is started.
In step S102, the container image is downloaded from the public registry.
In step S103, the container image database registration process is executed.
In step S104, the container image verification process is performed.
図3は、本実施の形態に係るコンテナイメージデータベース登録処理のフロー図である。
ステップS201において、コンテナイメージの以下情報がコンテナイメージデータベースに登録される。
・コンテナイメージID
・コンテナイメージ更新日時
・コンテナ構成ファイル
FIG. 3 is a flow chart of the container image database registration process according to the present embodiment.
In step S201, the following information of the container image is registered in the container image database.
・ Container image ID
-Container image update date and time-Container configuration file
図4は、本実施の形態に係るコンテナイメージ利用処理のフロー図である。
コンテナイメージ利用処理は、取得したコンテナイメージを開発者が利用する処理である。
ステップS301において、コンテナイメージ利用処理が開始される。
ステップS302において、ローカルレジストリ200からコンテナイメージが開発環境50に展開される。
ステップS303において、展開したコンテナイメージに必要な変更が加えられる。
ステップS304において、コンテナイメージをコミットしてローカルレジストリ200に保存する。
ステップS305において、コンテナイメージデータベース登録処理が実施される。
ステップS306において、コンテナイメージ検証処理が実施される。
FIG. 4 is a flow chart of the container image utilization process according to the present embodiment.
The container image utilization process is a process in which the developer uses the acquired container image.
In step S301, the container image utilization process is started.
In step S302, the container image is expanded from the
In step S303, the necessary changes are made to the expanded container image.
In step S304, the container image is committed and saved in the
In step S305, the container image database registration process is executed.
In step S306, the container image verification process is performed.
図5は、本実施の形態に係るコンテナイメージ定期検証処理のフロー図である。
コンテナイメージ定期検証処理は、脆弱性情報の更新に対応するため、定期的に実施される。
ステップS401において、コンテナイメージ定期検証処理が開始される。
ステップS402において、脆弱性情報データベースから脆弱性情報が取得される。
ステップS403において、ローカルレジストリ200上のすべてのコンテナイメージに対して、コンテナイメージ検証処理が実施される(ステップS404)。
FIG. 5 is a flow chart of the container image periodic verification process according to the present embodiment.
The container image periodic verification process is performed periodically in order to respond to the update of vulnerability information.
In step S401, the container image periodic verification process is started.
In step S402, vulnerability information is acquired from the vulnerability information database.
In step S403, the container image verification process is performed on all the container images on the local registry 200 (step S404).
<コンテナイメージ検証処理>
図6は、本実施の形態に係るコンテナイメージ検証処理のフロー図である。
コンテナイメージ検証装置100でコンテナイメージのパッケージ情報を得るには、次の2つの方法がある。
(a)コンテナイメージからコンテナを展開し、内部にログインして確認する。
(b)コンテナイメージの構成ファイル、更新日時から、パッケージ情報を推測する。
上記(a)の方法は、すべてのパッケージ情報を得ることができるものの、コンテナをデプロイするため、計算資源を消費する。コンテナイメージの脆弱性有無の検証は2段階に分けて、(b)の方法で危険性があると判断したコンテナイメージにのみ、(a)の方法での判定を実施することで計算資源の消費量を抑制できる。
<Container image verification process>
FIG. 6 is a flow chart of the container image verification process according to the present embodiment.
There are the following two methods for obtaining the package information of the container image by the container
(A) Expand the container from the container image, log in to the inside, and check.
(B) The package information is estimated from the container image configuration file and the modification date.
Although the method (a) above can obtain all the package information, it consumes computational resources to deploy the container. Verification of the presence or absence of vulnerabilities in container images is divided into two stages, and only container images judged to be dangerous by method (b) are judged by method (a), which consumes computational resources. The amount can be suppressed.
ステップS501において、簡易検証部120が、コンテナイメージの簡易検証処理を実施する。
ステップS502において、コンテナイメージが安全であれば、処理を終了する。
ステップS502において、コンテナイメージが安全でなければ、詳細検証部130による詳細検証処理を実施する(ステップS503)。
In step S501, the
In step S502, if the container image is safe, the process ends.
If the container image is not safe in step S502, the
ステップS504において、コンテナイメージ(詳細検証対象コンテナイメージ)に脆弱性があれば、コンテナイメージ更新・削除処理が実施される(ステップS505)。その後、ステップS506に進む。
ステップS504において、コンテナイメージ(詳細検証対象コンテナイメージ)に脆弱性がなければ、ステップS506に進む。
ステップS506において、コンテナイメージを検証用サーバから削除する。
If the container image (container image subject to detailed verification) is vulnerable in step S504, the container image update / deletion process is executed (step S505). Then, the process proceeds to step S506.
If the container image (container image subject to detailed verification) is not vulnerable in step S504, the process proceeds to step S506.
In step S506, the container image is deleted from the verification server.
<簡易検証処理>
図7は、本実施の形態に係るコンテナイメージの簡易検証処理のフロー図である。
まず、簡易検証部120による簡易検証処理の概要について説明する。
簡易情報取得部121は、コンテナイメージの生成手順を表すコンテナ構成ファイルが格納されたコンテナイメージデータベース160から、コンテナ構成ファイルを取得する。そして、簡易情報取得部121は、コンテナイメージに含まれるパッケージのバージョンを特定する。より詳しくは、簡易情報取得部121は、コンテナ構成ファイルから生成手順を構成するパッケージインストールコマンドを抽出し、パッケージのバージョンが指定されているパッケージインストールコマンドに基づいてパッケージのバージョンを特定する。
<Simple verification process>
FIG. 7 is a flow chart of a simple verification process of the container image according to the present embodiment.
First, an outline of the simple verification process by the
The simple
簡易照合部123は、コンテナイメージに含まれるパッケージのバージョンと脆弱性の有無とが対応付けられた脆弱性情報170に基づいて、コンテナイメージに含まれるパッケージの脆弱性の有無を判定する簡易検証を行う。
また、簡易照合部123は、パッケージのバージョンが特定できない場合、コンテナイメージデータベース160に含まれるコンテナイメージの更新日時と、脆弱性情報170の最新の更新日付とを比較する。そして、簡易照合部123は、コンテナイメージの更新日時以降に脆弱性情報170が更新されている場合に、コンテナイメージに含まれるパッケージに脆弱性有りと判定する。
簡易照合部123は、コンテナイメージデータベース160に簡易検証の結果を記憶する。
コンテナイメージの簡易検証処理の具体例は、以下の通りである。
The
Further, when the package version cannot be specified, the
The
A specific example of the simple verification process of the container image is as follows.
ステップS601において、簡易検証部120の脆弱性情報取得部122による脆弱性情報取得処理が実施される。
ステップS602において、簡易検証部120の簡易情報取得部121によるコンテナ構成ファイルからの簡易パッケージ情報取得処理が実施される。
In step S601, the vulnerability information acquisition process by the vulnerability
In step S602, the simple package information acquisition process from the container configuration file is executed by the simple
図8は、本実施の形態に係るコンテナ構成ファイルと脆弱性情報の例を示す図である。
簡易検証処理では、コンテナ構成ファイルからパッケージ情報を抽出する。コンテナ構成ファイルの例として、Dockerfileを示す。
上記構成ファイルの「RUN」が記述されている行には、コンテナイメージ作成時に実行されるパッケージインストールコマンドが記載されている。rpmコマンドでは、特定のバージョンのrpmパッケージをインストールしており、yumコマンドでは、コンテナイメージ作成時点での最新バージョンにアップグレードしている。
FIG. 8 is a diagram showing an example of a container configuration file and vulnerability information according to the present embodiment.
In the simple verification process, package information is extracted from the container configuration file. A Dockerfile is shown as an example of a container configuration file.
In the line where "RUN" is described in the above configuration file, the package installation command to be executed when the container image is created is described. The rpm command installs a specific version of the rpm package, and the yum command upgrades to the latest version at the time the container image was created.
ステップS603において、簡易検証部120の簡易照合部123は、パッケージ情報が存在するか否かを判定する。パッケージ情報が存在すれば、ステップS604に進む。パッケージ情報が存在しない場合は、ステップS605に進む。
In step S603, the
ステップS604において、簡易照合部123は、パッケージ情報と脆弱性情報でパッケージ名、バージョン情報が一致するものがあるかを判定する。一致するものがあれば、ステップS606に進む。一致するものがなければ、ステップS605に進む。
ステップS606において、簡易照合部123は、コンテナイメージは脆弱性有り(危険性有り)と判定する。
In step S604, the
In step S606, the
ステップS605において、簡易照合部123は、更新日時が脆弱性情報の最新更新日付の前か否かを判定する。更新日時が脆弱性情報の最新更新日付の前である場合、ステップS606で、コンテナイメージは脆弱性有り(危険性有り)と判定される。更新日時が脆弱性情報の最新更新日付の前でない場合、ステップS607で、コンテナイメージは「安全」と判定される。
In step S605, the
以上のように、簡易照合部123は、コンテナイメージのパッケージ名およびバージョンが特定されている場合は、脆弱性情報のパッケージ名およびバージョンと照合することで脆弱性の有無を判定する。バージョンが特定されていない場合は、簡易照合部123は、コンテナイメージ作成時点での最新バージョンのパッケージがインストールされていると想定し、コンテナイメージの更新日時と脆弱性情報の最新更新日付を比較する。簡易検証部120は、コンテナイメージの更新日時と脆弱性情報の最新更新日付を比較により、コンテナイメージの更新日時以降に脆弱性情報があるかどうかを確認する。脆弱性情報があれば、インストールされているパッケージが脆弱性に対応していない可能性があるため、脆弱性有り(危険性有り)と判定する。
As described above, when the package name and version of the container image are specified, the
図9は、本実施の形態に係る脆弱性情報取得処理のフロー図である。
ステップS701において、脆弱性情報取得部122は、インターネット上の脆弱性情報データベースから脆弱性情報を取得する。
ステップS702において、脆弱性情報取得部122は、脆弱性情報から、パッケージ名およびバージョン情報を抽出する処理を実施する。
ステップS703において、脆弱性情報取得部122は、脆弱性情報の最新更新日付情報を取得する取得処理を実施する。
ステップS704において、脆弱性情報取得部122は、脆弱性情報ID、パッケージ名、バージョン情報、最新更新日付情報をローカルの脆弱性情報170(脆弱性情報データベース)に保存する。
FIG. 9 is a flow chart of the vulnerability information acquisition process according to the present embodiment.
In step S701, the vulnerability
In step S702, the vulnerability
In step S703, the vulnerability
In step S704, the vulnerability
図8の脆弱性情報の例は、Redhat Security Dataで提供されているものの例である。図8の脆弱性情報の例は、脆弱性を持つRedhatのパッケージと脆弱性情報IDであるCVEをマッピングさせた情報をXML形式で記述している。 The example of vulnerability information in FIG. 8 is an example of the one provided by Redhat Security Data. In the example of vulnerability information in FIG. 8, information in which a package of Redhat having a vulnerability and CVE which is a vulnerability information ID are mapped is described in XML format.
図10は、本実施の形態に係る脆弱性情報の最新更新日付情報の取得処理のフロー図である。
ステップS801において、脆弱性情報取得部122は、文字列“erratum released”を含む行を抽出する。
ステップS802において、脆弱性情報取得部122は、イコール“=”を区切り文字とし、右側の年月日を含む文字列を抽出する。
ステップS803において、脆弱性情報取得部122は、ダブルクォーテーションを区切り文字とし、年月日の部分を抽出する。
ステップS804において、脆弱性情報取得部122は、最後の行の日付を脆弱性情報の最新更新日付として取得する。
FIG. 10 is a flow chart of an acquisition process of the latest update date information of the vulnerability information according to the present embodiment.
In step S801, the vulnerability
In step S802, the vulnerability
In step S803, the vulnerability
In step S804, the vulnerability
図11は、本実施の形態に係るパッケージ名およびバージョン情報の抽出処理のフロー図である。
ステップS901において、脆弱性情報取得部122は、文字列“rpm”を含む行を抽出する。
ステップS902において、脆弱性情報取得部122は、イコール“=”を区切り文字とし、右側のパッケージ名、バージョン情報の文字列を取得する。
ステップS903において、脆弱性情報取得部122は、ダブルクォーテーションを除去する。
ステップS904において、脆弱性情報取得部122は、文字列”−0:”を区切り文字とし、パッケージ名とバージョン情報に分割する。
ステップS905において、脆弱性情報取得部122は、パッケージ名を取得する。
ステップS906において、脆弱性情報取得部122は、バージョン情報について、ドット(.)で区切られた3つの数字をバージョン情報として取得する。
FIG. 11 is a flow chart of a package name and version information extraction process according to the present embodiment.
In step S901, the vulnerability
In step S902, the vulnerability
In step S903, the vulnerability
In step S904, the vulnerability
In step S905, the vulnerability
In step S906, the vulnerability
図12は、本実施の形態に係るコンテナ構成ファイルからの簡易パッケージ情報取得処理のフロー図である。
図12は、コンテナ構成ファイルからのパッケージ情報の抽出を行う簡易パッケージ情報取得処理である。ここでは、コンテナ構成ファイルの例で示す通り、rpmコマンドおよびyumコマンドによりパッケージがインストールされているものとする。
ステップS1001において、簡易情報取得部121は、コンテナ構成ファイルからyumコマンドを抽出する。
ステップS1002において、yumコマンドが存在する場合、簡易情報取得部121は、yumコマンドからの簡易パッケージ情報取得処理を実施する(ステップS1003)。
ステップS1002において、yumコマンドが存在しない場合、簡易情報取得部121は、rpmコマンドを抽出する(ステップS1004)。
ステップS1005において、rpmコマンドが存在する場合、簡易情報取得部121は、rpmコマンドからの簡易パッケージ情報取得処理を実施する(ステップS1006)。
FIG. 12 is a flow chart of a simple package information acquisition process from the container configuration file according to the present embodiment.
FIG. 12 is a simple package information acquisition process for extracting package information from the container configuration file. Here, it is assumed that the package is installed by the rpm command and the yum command as shown in the example of the container configuration file.
In step S1001, the simple
If the yum command exists in step S1002, the simple
If the yum command does not exist in step S1002, the simple
If the rpm command exists in step S1005, the simple
図13は、本実施の形態に係るコンテナ構成ファイルからの簡易パッケージ情報取得処理のフロー図である。
図13は、rpmコマンドでパッケージがインストールされている場合の、rpmコマンドからの簡易パッケージ情報取得処理である。
ステップS1011において、簡易情報取得部121は、文字列”.rpm”を区切り文字とし、左側のパッケージ名とバージョン情報を含む文字列を抽出する。
ステップS1012において、簡易情報取得部121は、文字列”−”を区切り文字とし、パッケージ名とバージョン情報を分割する。
ステップS1013において、簡易情報取得部121は、パッケージ名を取得する。
ステップS1014において、簡易情報取得部121は、バージョン情報について、ドット(.)で区切られた3つの数字をバージョン情報として取得する。
FIG. 13 is a flow chart of a simple package information acquisition process from the container configuration file according to the present embodiment.
FIG. 13 is a simple package information acquisition process from the rpm command when the package is installed by the rpm command.
In step S1011, the simple
In step S1012, the simple
In step S1013, the simple
In step S1014, the simple
図14は、本実施の形態に係るコンテナ構成ファイルからの簡易パッケージ情報取得処理のフロー図である。
図14は、yumコマンドでパッケージがインストールされている場合の、yumコマンドからの簡易パッケージ情報取得処理である。
ステップS1021において、簡易情報取得部121は、yumの行で、数値の有無を検索する。
ステップS1022において、数値が存在すれば、簡易情報取得部121は、文字列”−”を区切り文字とし、パッケージ名とバージョン情報を分割する(ステップS1023)。
ステップS1022において、数値が存在しなければ、処理を終了する。
ステップS1024において、簡易情報取得部121は、パッケージ名を取得する。
ステップS1025において、簡易情報取得部121は、バージョン情報について、ドット(.)で区切られた3つの数字をバージョン情報として取得する。
FIG. 14 is a flow chart of a simple package information acquisition process from the container configuration file according to the present embodiment.
FIG. 14 is a simple package information acquisition process from the yum command when the package is installed by the yum command.
In step S1021, the simple
In step S1022, if a numerical value exists, the simple
If the numerical value does not exist in step S1022, the process ends.
In step S1024, the simple
In step S1025, the simple
<詳細検証処理>
図15は、本実施の形態に係るコンテナイメージの詳細検証処理のフロー図である。
図15のコンテナイメージの詳細検証処理は、簡易検証処理で脆弱性有り(危険性有り)と判定されたコンテナイメージに対する詳細検証を行う処理である。簡易検証処理で脆弱性有り(危険性有り)と判定されたコンテナイメージを、詳細検証対象コンテナイメージとする。
<Detailed verification process>
FIG. 15 is a flow chart of a detailed verification process of the container image according to the present embodiment.
The detailed verification process of the container image of FIG. 15 is a process of performing detailed verification of the container image determined to be vulnerable (has a risk) in the simple verification process. A container image that is determined to be vulnerable (has a risk) by the simple verification process is used as the container image for detailed verification.
詳細情報取得部131は、簡易検証により脆弱性有りと判定されたコンテナイメージを詳細検証対象コンテナイメージとして実行し、詳細検証対象コンテナイメージに含まれるパッケージ情報を取得する。
詳細照合部132は、脆弱性情報に基づいて、詳細検証対象コンテナイメージに含まれるパッケージの脆弱性の有無を判定する詳細検証を行う。
The detailed
The
簡易検証処理では、パッケージ情報とローカルの脆弱性情報データベースを参照し、パッケージ名、バージョン情報を比較して、一致するものがあれば脆弱性あり(危険性有り)と判定した。一致するものがなければ、脆弱性無し(危険性無し)と判定して、簡易検証結果をコンテナイメージデータベース160に保存した。このとき、脆弱性情報取得部122により取得された脆弱性情報170が、ローカルの脆弱性情報データベースに保存されている。
In the simple verification process, the package information and the local vulnerability information database are referred to, the package name and version information are compared, and if there is a match, it is determined that there is a vulnerability (risk). If there is no match, it is determined that there is no vulnerability (no danger), and the simple verification result is saved in the
ステップS1031において、詳細検証部130の詳細情報取得部131は、詳細検証対象コンテナイメージからパッケージ情報を取得する詳細パッケージ情報取得処理を実施する。
ステップS1032において、詳細検証部130の詳細照合部132は、ローカルの脆弱性情報データベースから脆弱性情報170を取得する脆弱性情報取得処理を実施する。
ステップS1033において、詳細照合部132は、パッケージ情報と脆弱性情報でパッケージ名、バージョン情報が一致するものがあるかを判定する。一致するものがあれば、詳細照合部132は、脆弱性ありと判定する(ステップS1034)。一致するものがなければ、詳細照合部132は、脆弱性なしと判定する(ステップS1035)。
ステップS1036において、詳細照合部132は、詳細検証の結果をコンテナイメージデータベース160に保存する。
In step S1031, the detailed
In step S1032, the
In step S1033, the
In step S1036, the
図16は、本実施の形態に係る詳細検証処理の詳細パッケージ情報取得処理のフロー図である。
詳細情報取得部131は、ローカルレジストリ200のコンテナイメージから、以下のシーケンスでパッケージ一覧を取得する。ここでのコンテナイメージは、詳細検証対象コンテナイメージである。
ステップS1041において、詳細情報取得部131は、コンテナイメージをコンテナイメージ実行サーバで実行し、ログインする。
ステップS1042において、詳細情報取得部131は、パッケージ管理システムの機能により、パッケージ一覧を取得する。
ステップS1043において、詳細情報取得部131は、パッケージ一覧からのパッケージ名、バージョン情報抽出処理を実施する。
ステップS1044において、詳細情報取得部131は、コンテナイメージデータベース160のパッケージ情報として、パッケージ名、バージョン情報を保存する。
FIG. 16 is a flow chart of a detailed package information acquisition process of the detailed verification process according to the present embodiment.
The detailed
In step S1041, the detailed
In step S1042, the detailed
In step S1043, the detailed
In step S1044, the detailed
図17は、本実施の形態に係るパーケージ一覧の例を示す図である。図17は、パッケージ管理システムであるrpmによるパッケージ一覧の出力例である。 FIG. 17 is a diagram showing an example of a package list according to the present embodiment. FIG. 17 is an output example of a package list by rpm, which is a package management system.
図18は、本実施の形態に係るパッケージ一覧からのパッケージ名・バージョン情報抽出処理のフロー図である。
詳細情報取得部131は、パッケージ一覧からのパッケージ名、バージョン情報の抽出を行う。
ステップS1051において、詳細情報取得部131は、ハイフン(−)を区切り文字とし、パッケージ名とバージョンに分割する。
ステップS1052において、詳細情報取得部131は、パッケージ名を取得する。
ステップS1053において、詳細情報取得部131は、バージョン情報について、ドット(.)で区切られた3つの数字をバージョン情報として取得する。
FIG. 18 is a flow chart of the package name / version information extraction process from the package list according to the present embodiment.
The detailed
In step S1051, the detailed
In step S1052, the detailed
In step S1053, the detailed
<コンテナイメージ更新・削除処理>
図19は、本実施の形態に係るコンテナイメージ更新・削除処理のフロー図である。
コンテナイメージ選択部150は、コンテナイメージデータベース160に基づいて、脆弱性有りと判定されたコンテナイメージを脆弱性コンテナイメージとして更新の可否を判定する。そして、コンテナイメージ選択部150は、更新可能であれば脆弱性コンテナイメージを更新する。また、コンテナイメージ選択部150は、脆弱性コンテナイメージについて更新不可と判定された場合は、インターネットに公開された本番環境への配布するコンテナイメージを格納するパブリック向けレジストリ320から脆弱性コンテナイメージを削除する。
具体的には、以下の通りである。
<Container image update / deletion process>
FIG. 19 is a flow chart of the container image update / deletion process according to the present embodiment.
Based on the
Specifically, it is as follows.
ステップS1061において、コンテナイメージ選択部150は、脆弱性を持つコンテナイメージの更新を行うコンテナイメージ更新可否判定処理を実施する。
ステップS1062において、更新できた場合、コンテナイメージ選択部150は、コンテナイメージ更新処理を実施する(ステップS1063)。ここで、コンテナイメージ選択部150は、更新前後のコンテナイメージの双方をローカルレジストリ200、およびコンテナイメージ配布装置300のローカル向けレジストリ310に保存する。また、コンテナイメージ選択部150は、更新後のイメージのみをコンテナイメージ配布装置300のパブリック向けレジストリ320に保存する。
ステップS1062において、更新不可の場合、コンテナイメージ選択部150は、コンテナイメージ削除処理を実施する(ステップS1064)。コンテナイメージ選択部150は、不可であればローカルレジストリ200、コンテナイメージ配布装置300のローカル向けレジストリ310にのみコンテナイメージを残し、パブリック向けレジストリ320からは削除する。
In step S1061, the container
If the update can be performed in step S1062, the container
If the update is not possible in step S1062, the container
図20は、本実施の形態に係るコンテナイメージ更新可否判定処理のフロー図である。
コンテナイメージ選択部150は、コンテナイメージの更新可否を判定するコンテナイメージ更新可否判定処理を実施する。
ステップS1071において、コンテナイメージ選択部150は、コンテナイメージデータベースから脆弱性のあるパッケージ名を取得する。
ステップS1072において、コンテナイメージ選択部150は、コンテナイメージを展開し、ログインする。
ステップS1073において、コンテナイメージ選択部150は、パッケージ管理システムの機能により、アップデート可能なパッケージ一覧を出力し、脆弱性のあるパッケージ名と比較する。
FIG. 20 is a flow chart of the container image updateability determination process according to the present embodiment.
The container
In step S1071, the container
In step S1072, the container
In step S1073, the container
ステップS1074において、コンテナイメージ選択部150は、アップデート可能なパッケージ名と脆弱性のあるパッケージ名で一致するものがあるかを判定する。一致するものがあれば、ステップS1075において、コンテナイメージ選択部150は、更新可能と判定する。一致するものがなければ、ステップS1076において、コンテナイメージ選択部150は、更新不可と判定する。
ステップS1077において、コンテナイメージ選択部150は、判定結果をコンテナイメージデータベース160に保存する。
In step S1074, the container
In step S1077, the container
図21は、本実施の形態に係るコンテナイメージ更新処理のフロー図である。
コンテナイメージ選択部150は、コンテナイメージの更新を行うコンテナイメージ更新処理を実施する。
ステップS1081において、コンテナイメージ選択部150は、コンテナイメージにログインし、脆弱性のあるパッケージのアップデートを実施する。
ステップS1082において、コンテナイメージ選択部150は、コンテナイメージを作成し、ローカルレジストリに書き込む。
ステップS1083において、コンテナイメージ選択部150は、コンテナイメージデータベースを更新する。
ステップS1084において、コンテナイメージ選択部150は、コンテナイメージ配布装置更新処理を実施する。
FIG. 21 is a flow chart of the container image update process according to the present embodiment.
The container
In step S1081, the container
In step S1082, the container
In step S1083, the container
In step S1084, the container
図22は、本実施の形態に係るコンテナイメージ配布装置更新処理のフロー図である。
コンテナイメージ選択部150は、コンテナイメージ配布装置のコンテナイメージの更新を行うコンテナイメージ配布装置更新処理を実施する。
ステップS1091において、コンテナイメージ選択部150は、ローカルレジストリ200を参照し、すべてのコンテナイメージをローカル向けレジストリ310に複製する。
ステップS1092において、コンテナイメージ選択部150は、コンテナイメージデータベース160を参照し、安全と判定されたコンテナイメージのみをパブリック向けレジストリ320に複製する。
FIG. 22 is a flow chart of the container image distribution device update process according to the present embodiment.
The container
In step S1091, the container
In step S1092, the container
図23は、本実施の形態に係るコンテナイメージ削除処理のフロー図である。
コンテナイメージ選択部150は、更新されていないコンテナイメージをパブリック向けレジストリ320から削除するコンテナイメージ削除処理を実施する。
ステップS111において、コンテナイメージ選択部150は、脆弱性のあるコンテナイメージをパブリック向けレジストリ320から削除する。
ステップS1112において、コンテナイメージ選択部150は、コンテナイメージデータベース160を更新する。
FIG. 23 is a flow chart of the container image deletion process according to the present embodiment.
The container
In step S111, the container
In step S1112, the container
図24は、本実施の形態に係るコンテナイメージ本番環境利用処理のフロー図である。
システム管理者は、本番環境(ローカル)あるいは本番環境(パブリック)にコンテナイメージを展開するコンテナイメージ本番環境利用処理を実施する。
ステップS1121において、コンテナイメージ配布装置300のローカル向けレジストリ310から、コンテナイメージが本番環境(ローカル)に展開される。
また、ステップS1131において、コンテナイメージ配布装置300のパブリック向けレジストリ320から、コンテナイメージが本番環境(パブリック)に展開される。
FIG. 24 is a flow chart of the container image production environment utilization process according to the present embodiment.
The system administrator executes the container image production environment usage process for deploying the container image in the production environment (local) or the production environment (public).
In step S1121, the container image is expanded to the production environment (local) from the
Further, in step S1131, the container image is expanded to the production environment (public) from the
図25を用いて、本実施の形態に係るデータの流れについてまとめる。
(1)は、パブリックレジストリからのコンテナイメージ取得である。
(2)は、ローカルレジストリ200のコンテナイメージ検証処理である。
(3)は、脆弱性情報データベースから脆弱性情報を取得する脆弱性情報取得処理である。
(4)は、ローカルレジストリ200のコンテナイメージの開発環境での利用である。
(5)は、ローカルレジストリ200のコンテナイメージのコンテナイメージ配布装置への複製である。
(6)は、ローカル向けレジストリ310のコンテナイメージの本番環境(ローカル)での利用である。
(7)は、パブリック向けレジストリ320のコンテナイメージの本番環境(パブリック)での利用である。
The flow of data according to this embodiment will be summarized with reference to FIG. 25.
(1) is the acquisition of the container image from the public registry.
(2) is a container image verification process of the
(3) is a vulnerability information acquisition process for acquiring vulnerability information from a vulnerability information database.
(4) is the use of the container image of the
(5) is a copy of the container image of the
(6) is the use of the container image of the
(7) is the use of the container image of the
***ハードウェア構成***
ここで、図26を用いて、コンテナイメージ検証装置100のハードウェア構成について説明する。
コンテナイメージ検証装置100は、コンピュータである。コンテナイメージ検証装置100は、プロセッサ910を備えるとともに、メモリ921、補助記憶装置922、入力インタフェース930、出力インタフェース940、および通信装置950といった他のハードウェアを備える。プロセッサ910は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
*** Hardware configuration ***
Here, the hardware configuration of the container
The container
コンテナイメージ検証装置100は、機能要素として、簡易情報取得部121、脆弱性情報取得部122、簡易照合部123、詳細情報取得部131、詳細照合部132、コンテナイメージ選択部150、コンテナイメージデータベース160、および脆弱性情報170を備える。
The container
簡易情報取得部121、脆弱性情報取得部122、簡易照合部123、詳細情報取得部131、詳細照合部132、コンテナイメージ選択部150の機能は、ソフトウェアにより実現される。コンテナイメージデータベース160、および脆弱性情報170は、メモリ921に備えられる。あるいは、コンテナイメージデータベース160、および脆弱性情報170は、補助記憶装置922に備えられていてもよい。また、コンテナイメージデータベース160、および脆弱性情報170は、メモリ921と補助記憶装置922に分けられて備えられてもよい。
The functions of the simple
プロセッサ910は、コンテナイメージ検証プログラムを実行する装置である。コンテナイメージ検証プログラムは、簡易情報取得部121、脆弱性情報取得部122、簡易照合部123、詳細情報取得部131、詳細照合部132、コンテナイメージ選択部150の機能を実現するプログラムである。
プロセッサ910は、演算処理を行うIC(Integrated Circuit)である。プロセッサ910の具体例は、CPU(Central Processing
Unit)、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)である。
The
The
Unit), DSP (Digital Signal Processor), GPU (Graphics Processing Unit).
メモリ921は、データを一時的に記憶する記憶装置である。メモリ921の具体例は、SRAM(Static Random Access Memory)、あるいはDRAM(Dynamic Random Access Memory)である。
補助記憶装置922は、データを保管する記憶装置である。補助記憶装置922の具体例は、HDDである。また、補助記憶装置922は、SD(登録商標)メモリカード、CF、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVDといった可搬の記憶媒体であってもよい。なお、HDDは、Hard Disk Driveの略語である。SD(登録商標)は、Secure Digitalの略語である。CFは、CompactFlash(登録商標)の略語である。DVDは、Digital Versatile Diskの略語である。
The
The
入力インタフェース930は、マウス、キーボード、あるいはタッチパネルといった入力装置と接続されるポートである。入力インタフェース930は、具体的には、USB(Universal Serial Bus)端子である。なお、入力インタフェース930は、LAN(Local Area Network)と接続されるポートであってもよい。
出力インタフェース940は、ディスプレイといった出力機器のケーブルが接続されるポートである。出力インタフェース940は、具体的には、USB端子またはHDMI(登録商標)(High Definition Multimedia Interface)端子である。ディスプレイは、具体的には、LCD(Liquid Crystal Display)である。
The
The
通信装置950は、レシーバとトランスミッターを有する。通信装置950は、無線で、LAN、インターネット、あるいは電話回線といった通信網に接続している。通信装置950は、具体的には、通信チップまたはNIC(Network Interface
Card)である。
The
Card).
コンテナイメージ検証プログラムは、プロセッサ910に読み込まれ、プロセッサ910によって実行される。メモリ921には、コンテナイメージ検証プログラムだけでなく、OS(Operating System)も記憶されている。プロセッサ910は、OSを実行しながら、コンテナイメージ検証プログラムを実行する。コンテナイメージ検証プログラムおよびOSは、補助記憶装置922に記憶されていてもよい。補助記憶装置922に記憶されているコンテナイメージ検証プログラムおよびOSは、メモリ921にロードされ、プロセッサ910によって実行される。なお、コンテナイメージ検証プログラムの一部または全部がOSに組み込まれていてもよい。
The container image verification program is read into
コンテナイメージ検証装置100は、プロセッサ910を代替する複数のプロセッサを備えていてもよい。これら複数のプロセッサは、コンテナイメージ検証プログラムの実行を分担する。それぞれのプロセッサは、プロセッサ910と同じように、コンテナイメージ検証プログラムを実行する装置である。
The container
コンテナイメージ検証プログラムにより利用、処理または出力されるデータ、情報、信号値および変数値は、メモリ921、補助記憶装置922、または、プロセッサ910内のレジスタあるいはキャッシュメモリに記憶される。
Data, information, signal values and variable values used, processed or output by the container image verification program are stored in a
簡易情報取得部121、脆弱性情報取得部122、簡易照合部123、詳細情報取得部131、詳細照合部132、コンテナイメージ選択部150の各部の「部」を「処理」、「手順」あるいは「工程」に読み替えてもよい。また簡易情報取得処理、脆弱性情報取得処理、簡易照合処理、詳細情報取得処理、詳細照合処理、コンテナイメージ選択処理の「処理」を「プログラム」、「プログラムプロダクト」または「プログラムを記録したコンピュータ読取可能な記録媒体」に読み替えてもよい。
コンテナイメージ検証プログラムは、上記の各部の「部」を「処理」、「手順」あるいは「工程」に読み替えた各処理、各手順あるいは各工程を、コンピュータに実行させる。また、コンテナイメージ検証方法は、コンテナイメージ検証装置100がコンテナイメージ検証プログラムを実行することにより行われる方法である。
コンテナイメージ検証プログラムは、コンピュータ読取可能な記録媒体に格納されて提供されてもよい。また、コンテナイメージ検証プログラムは、プログラムプロダクトとして提供されてもよい。
"Processing", "procedure" or "procedure" of each part of the simple
The container image verification program causes a computer to execute each process, each procedure or each process in which the "part" of each of the above parts is read as "process", "procedure" or "process". Further, the container image verification method is a method performed by the container
The container image verification program may be provided stored in a computer-readable recording medium. Further, the container image verification program may be provided as a program product.
***他の構成***
<変形例1>
本実施の形態では、簡易情報取得部121、脆弱性情報取得部122、簡易照合部123、詳細情報取得部131、詳細照合部132、コンテナイメージ選択部150の機能がソフトウェアで実現される。変形例として、簡易情報取得部121、脆弱性情報取得部122、簡易照合部123、詳細情報取得部131、詳細照合部132、コンテナイメージ選択部150の機能がハードウェアで実現されてもよい。その場合、コンテナイメージ検証装置100は、プロセッサ910に替えて、電子回路を備える。
*** Other configurations ***
<Modification example 1>
In the present embodiment, the functions of the simple
電子回路は、簡易情報取得部121、脆弱性情報取得部122、簡易照合部123、詳細情報取得部131、詳細照合部132、コンテナイメージ選択部150の機能を実現する専用の電子回路である。
電子回路は、具体的には、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA、ASIC、または、FPGAである。GAは、Gate Arrayの略語である。ASICは、Application Specific Integrated Circuitの略語である。FPGAは、Field−Programmable Gate Arrayの略語である。
The electronic circuit is a dedicated electronic circuit that realizes the functions of the simple
The electronic circuit is specifically a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, a logic IC, a GA, an ASIC, or an FPGA. GA is an abbreviation for Gate Array. ASIC is an abbreviation for Application Specific Integrated Circuit. FPGA is an abbreviation for Field-Programmable Gate Array.
簡易情報取得部121、脆弱性情報取得部122、簡易照合部123、詳細情報取得部131、詳細照合部132、コンテナイメージ選択部150の機能は、1つの電子回路で実現されてもよいし、複数の電子回路に分散して実現されてもよい。
別の変形例として、簡易情報取得部121、脆弱性情報取得部122、簡易照合部123、詳細情報取得部131、詳細照合部132、コンテナイメージ選択部150の一部の機能が電子回路で実現され、残りの機能がソフトウェアで実現されてもよい。
また、別の変形例として、簡易情報取得部121、脆弱性情報取得部122、簡易照合部123、詳細情報取得部131、詳細照合部132、コンテナイメージ選択部150の一部あるいはすべての機能が、ファームウェアで実現されていてもよい。
The functions of the simple
As another modification, some functions of the simple
Further, as another modification, some or all the functions of the simple
プロセッサと電子回路の各々は、プロセッシングサーキットリとも呼ばれる。つまり、コンテナイメージ検証装置100において、簡易情報取得部121、脆弱性情報取得部122、簡易照合部123、詳細情報取得部131、詳細照合部132、コンテナイメージ選択部150の機能は、プロセッシングサーキットリにより実現される。
Each of the processor and the electronic circuit is also called a processing circuit. That is, in the container
***本実施の形態の効果の説明***
本実施の形態に係るコンテナイメージ検証装置100では、コンテナイメージがローカルレジストリに追加された際に、脆弱性を持つパッケージを含まれていないかどうかをあらかじめ検証する。そして、脆弱性がある場合には、パッケージの更新を試み、できない場合にはインターネットに公開される環境への展開を禁止する。よって、本実施の形態に係るコンテナイメージ検証装置100によれば、コンテナ環境で利用されるコンテナイメージの安全性を担保することができる。
*** Explanation of the effect of this embodiment ***
When the container image is added to the local registry, the container
また、本実施の形態に係るコンテナイメージ検証装置100では、脆弱性データベースの参照および脆弱性有無の判定は定期的に実施する。そして、コンテナイメージ配布装置に保存されたコンテナイメージに脆弱性があることが新たに発覚した場合には、都度、更新を試み、不可であれば公開された本番環境への配布対象より削除する。よって、本実施の形態に係るコンテナイメージ検証装置100によれば、脆弱性情報データベースの情報に基づき、パッケージの脆弱性有無を確認することにより、本番環境に配信するコンテナイメージの安全性を担保することができる。また、脆弱性データベースの情報を定期的に取得することにより、新規の脆弱性情報を脆弱性有無の判定に反映することができる。
Further, in the container
また、本実施の形態に係るコンテナイメージ検証装置100では、まず、バージョンが取れればバージョンで検証し、バージョンが取れなければ更新日時で検証する。これにより、敢えてバージョンの古いパッケージが使われている場合でも脆弱性を判定できる。
Further, in the container
本実施の形態に係るコンテナイメージ検証装置100の効果を以下にまとめる。
・パブリックレジストリから取得されたコンテナイメージの安全性を担保することができる。
・開発環境でユーザ開発者が作成したコンテナイメージの安全性を担保することができる。
・定期的に脆弱性データベースを参照して判定することにより、最新の脆弱性情報に基づき、検証を行うことができる。
・脆弱性のあるコンテナイメージを配布対象から外すだけでなく、アップデートによる脆弱性の解消を試みる。
・コンテナイメージの検証を簡易検証と詳細検証の2段階に分けて実施することにより、計算資源を大きく消費する詳細検証の対象となるコンテナイメージ数を削減し、計算資源を節約することができる。
・検証装置で脆弱性ありと判定されたイメージについては、パブリックの本番環境に対しては配布せず、ローカルの本番環境に対してのみ配布することができる。
The effects of the container
-The safety of the container image obtained from the public registry can be guaranteed.
-It is possible to ensure the safety of the container image created by the user developer in the development environment.
-By periodically referring to the vulnerability database and making a judgment, verification can be performed based on the latest vulnerability information.
-Not only remove the vulnerable container image from the distribution target, but also try to eliminate the vulnerability by updating.
-By performing the container image verification in two stages, simple verification and detailed verification, the number of container images subject to detailed verification, which consumes a large amount of computational resources, can be reduced and computational resources can be saved.
-Images that are determined to be vulnerable by the verification device can not be distributed to the public production environment, but can be distributed only to the local production environment.
以上の実施の形態1では、コンテナイメージ検証装置の各部を独立した機能ブロックとして説明した。しかし、コンテナイメージ検証装置の構成は、上述した実施の形態のような構成でなくてもよい。コンテナイメージ検証装置の機能ブロックは、上述した実施の形態で説明した機能を実現することができれば、どのような構成でもよい。また、コンテナイメージ検証装置は、1つの装置でなく、複数の装置から構成されたシステムでもよい。
また、実施の形態1のうち、複数の部分を組み合わせて実施しても構わない。あるいは、この実施の形態のうち、1つの部分を実施しても構わない。その他、この実施の形態を、全体としてあるいは部分的に、どのように組み合わせて実施しても構わない。
すなわち、実施の形態1では、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
In the above-described first embodiment, each part of the container image verification device has been described as an independent functional block. However, the configuration of the container image verification device does not have to be the configuration as in the above-described embodiment. The functional block of the container image verification device may have any configuration as long as the functions described in the above-described embodiment can be realized. Further, the container image verification device may be a system composed of a plurality of devices instead of one device.
Further, in the first embodiment, a plurality of parts may be combined and carried out. Alternatively, one part of this embodiment may be implemented. In addition, this embodiment may be implemented in any combination as a whole or partially.
That is, in the first embodiment, it is possible to freely combine the respective embodiments, modify any component of each embodiment, or omit any component in each embodiment.
なお、上述した実施の形態は、本質的に好ましい例示であって、本発明の範囲、本発明の適用物の範囲、および本発明の用途の範囲を制限することを意図するものではない。上述した実施の形態は、必要に応じて種々の変更が可能である。 It should be noted that the above-described embodiments are essentially preferred examples and are not intended to limit the scope of the present invention, the scope of the application of the present invention, and the scope of use of the present invention. The above-described embodiment can be variously modified as needed.
30 インターネット、50 開発環境、70 ファイアウォール、80 本番環境(パブリック)、90 本番環境(ローカル)、100 コンテナイメージ検証装置、120 簡易検証部、121 簡易情報取得部、123 簡易照合部、122 脆弱性情報取得部、130 詳細検証部、131 詳細情報取得部、132 詳細照合部、150 コンテナイメージ選択部、160 コンテナイメージデータベース、170 脆弱性情報、200 ローカルレジストリ、210 コンテナイメージ、220 パッケージ管理システム、300 コンテナイメージ配布装置、310 ローカル向けレジストリ、320 パブリック向けレジストリ、500 コンテナイメージ検証システム、910 プロセッサ、921 メモリ、922 補助記憶装置、930 入力インタフェース、940 出力インタフェース、950 通信装置。 30 Internet, 50 Development environment, 70 Firewall, 80 Production environment (public), 90 Production environment (local), 100 Container image verification device, 120 Simple verification unit, 121 Simple information acquisition unit, 123 Simple verification unit, 122 Vulnerability information Acquisition Department, 130 Detailed Verification Department, 131 Detailed Information Acquisition Department, 132 Detailed Verification Department, 150 Container Image Selection Department, 160 Container Image Database, 170 Vulnerability Information, 200 Local Registry, 210 Container Image, 220 Package Management System, 300 Containers Image distribution device, 310 local registry, 320 public registry, 500 container image verification system, 910 processor, 921 memory, 922 auxiliary storage, 930 input interface, 940 output interface, 950 communication device.
Claims (7)
前記コンテナイメージの生成手順を表すコンテナ構成ファイルが格納されたコンテナイメージデータベースから、前記コンテナ構成ファイルを取得し、前記コンテナイメージに含まれるパッケージのバージョンを特定する簡易情報取得部と、
前記コンテナイメージに含まれるパッケージのバージョンと脆弱性の有無とが対応付けられた脆弱性情報に基づいて、前記コンテナイメージに含まれるパッケージの脆弱性の有無を判定する簡易検証を行う簡易照合部と、
前記簡易検証により脆弱性有りと判定されたコンテナイメージを詳細検証対象コンテナイメージとして実行し、前記詳細検証対象コンテナイメージに含まれるパッケージ情報を取得する詳細情報取得部と、
前記脆弱性情報に基づいて、前記詳細検証対象コンテナイメージに含まれるパッケージの脆弱性の有無を判定する詳細検証を行う詳細照合部と
を備えたコンテナイメージ検証装置。 In the container image verification device that verifies the vulnerability of the container image,
A simple information acquisition unit that acquires the container configuration file from the container image database that stores the container configuration file that represents the procedure for generating the container image, and specifies the version of the package included in the container image.
A simple collation unit that performs simple verification to determine the presence or absence of vulnerabilities in the package included in the container image based on the vulnerability information associated with the version of the package included in the container image and the presence or absence of vulnerabilities. ,
A detailed information acquisition unit that executes a container image determined to be vulnerable by the simple verification as a container image subject to detailed verification and acquires package information included in the container image subject to detailed verification.
A container image verification device including a detailed collation unit that performs detailed verification for determining the presence or absence of vulnerabilities in a package included in the detailed verification target container image based on the vulnerability information.
前記コンテナ構成ファイルから前記生成手順を構成するパッケージインストールコマンドを抽出し、前記パッケージのバージョンが指定されているパッケージインストールコマンドに基づいて前記パッケージのバージョンを特定する請求項1に記載のコンテナイメージ検証装置。 The simple information acquisition unit
The container image verification device according to claim 1, wherein a package installation command constituting the generation procedure is extracted from the container configuration file, and the version of the package is specified based on the package installation command in which the version of the package is specified. ..
前記脆弱性情報は、最新の更新日付を含み、
前記簡易照合部は、前記パッケージのバージョンが特定できない場合、前記コンテナイメージデータベースに含まれる前記コンテナイメージの更新日時と、前記脆弱性情報の最新の更新日付とを比較し、前記コンテナイメージの更新日時以降に前記脆弱性情報が更新されている場合に、前記コンテナイメージに含まれるパッケージに脆弱性有りと判定する請求項1または請求項2に記載のコンテナイメージ検証装置。 The container image database includes the modification date and time of the container image.
The vulnerability information includes the latest update date.
When the version of the package cannot be specified, the simple collation unit compares the update date and time of the container image included in the container image database with the latest update date and time of the vulnerability information, and the update date and time of the container image. The container image verification device according to claim 1 or 2, wherein it is determined that the package included in the container image is vulnerable when the vulnerability information is subsequently updated.
前記詳細照合部は、前記コンテナイメージデータベースに前記詳細検証の結果を記憶し、
前記コンテナイメージ検証装置は、
前記コンテナイメージデータベースに基づいて、脆弱性有りと判定されたコンテナイメージを脆弱性コンテナイメージとして更新の可否を判定し、更新可能であれば前記脆弱性コンテナイメージを更新するコンテナイメージ選択部を備えた請求項1から請求項3のいずれか1項に記載のコンテナイメージ検証装置。 The simple collation unit stores the result of the simple verification in the container image database, and stores the result of the simple verification.
The detailed collation unit stores the result of the detailed verification in the container image database, and stores the result of the detailed verification.
The container image verification device is
Based on the container image database, it is provided with a container image selection unit that determines whether or not the container image determined to be vulnerable can be updated as a vulnerable container image and updates the vulnerable container image if it can be updated. The container image verification device according to any one of claims 1 to 3.
前記脆弱性コンテナイメージについて更新不可と判定された場合は、インターネットに公開された本番環境への配布するコンテナイメージを格納するパブリック向けレジストリから前記脆弱性コンテナイメージを削除する請求項4に記載のコンテナイメージ検証装置。 The container image selection unit
The container according to claim 4, wherein when it is determined that the vulnerable container image cannot be updated, the vulnerable container image is deleted from the public registry that stores the container image to be distributed to the production environment published on the Internet. Image verification device.
簡易情報取得部が、前記コンテナイメージの生成手順を表すコンテナ構成ファイルが格納されたコンテナイメージデータベースから、前記コンテナ構成ファイルを取得し、前記コンテナイメージに含まれるパッケージのバージョンを特定し、
簡易照合部が、前記コンテナイメージに含まれるパッケージのバージョンと脆弱性の有無とが対応付けられた脆弱性情報に基づいて、前記コンテナイメージに含まれるパッケージの脆弱性の有無を判定する簡易検証を行い、
詳細情報取得部が、前記簡易検証により脆弱性有りと判定されたコンテナイメージを詳細検証対象コンテナイメージとして実行し、前記詳細検証対象コンテナイメージに含まれるパッケージ情報を取得し、
詳細照合部が、前記脆弱性情報に基づいて、前記詳細検証対象コンテナイメージに含まれるパッケージの脆弱性の有無を判定する詳細検証を行うコンテナイメージ検証方法。 In the container image verification method of the container image verification device that verifies the vulnerability of the container image,
The simple information acquisition unit acquires the container configuration file from the container image database in which the container configuration file representing the container image generation procedure is stored, identifies the version of the package included in the container image, and determines the version of the package.
The simple collation unit performs a simple verification to determine the presence or absence of vulnerabilities in the package included in the container image based on the vulnerability information associated with the version of the package included in the container image and the presence or absence of vulnerabilities. Do,
The detailed information acquisition unit executes the container image determined to be vulnerable by the simple verification as the detailed verification target container image, acquires the package information included in the detailed verification target container image, and obtains the package information.
A container image verification method in which a detailed collation unit performs detailed verification for determining the presence or absence of vulnerabilities in a package included in the detailed verification target container image based on the vulnerability information.
前記コンテナイメージの生成手順を表すコンテナ構成ファイルが格納されたコンテナイメージデータベースから、前記コンテナ構成ファイルを取得し、前記コンテナイメージに含まれるパッケージのバージョンを特定する簡易情報取得処理と、
前記コンテナイメージに含まれるパッケージのバージョンと脆弱性の有無とが対応付けられた脆弱性情報に基づいて、前記コンテナイメージに含まれるパッケージの脆弱性の有無を判定する簡易検証を行う簡易照合処理と、
前記簡易検証により脆弱性有りと判定されたコンテナイメージを詳細検証対象コンテナイメージとして実行し、前記詳細検証対象コンテナイメージに含まれるパッケージ情報を取得する詳細情報取得処理と、
前記脆弱性情報に基づいて、前記詳細検証対象コンテナイメージに含まれるパッケージの脆弱性の有無を判定する詳細検証を行う詳細照合処理と
をコンピュータである前記コンテナイメージ検証装置に実行させるコンテナイメージ検証プログラム。 In the container image verification program of the container image verification device that verifies the vulnerability of the container image,
A simple information acquisition process that acquires the container configuration file from the container image database that stores the container configuration file that represents the procedure for generating the container image and specifies the version of the package included in the container image.
Based on the vulnerability information associated with the version of the package included in the container image and the presence or absence of vulnerabilities, a simple collation process for performing simple verification to determine the presence or absence of vulnerabilities in the package included in the container image. ,
The detailed information acquisition process of executing the container image determined to be vulnerable by the simple verification as the detailed verification target container image and acquiring the package information included in the detailed verification target container image, and
A container image verification program that causes the container image verification device, which is a computer, to perform detailed verification processing that determines the presence or absence of vulnerabilities in the package included in the detailed verification target container image based on the vulnerability information. ..
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019053705A JP2020154861A (en) | 2019-03-20 | 2019-03-20 | Container image verification device, container image verification method, and container image verification program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019053705A JP2020154861A (en) | 2019-03-20 | 2019-03-20 | Container image verification device, container image verification method, and container image verification program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2020154861A true JP2020154861A (en) | 2020-09-24 |
Family
ID=72559262
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019053705A Pending JP2020154861A (en) | 2019-03-20 | 2019-03-20 | Container image verification device, container image verification method, and container image verification program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2020154861A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102380434B1 (en) * | 2020-10-06 | 2022-03-31 | 숭실대학교 산학협력단 | Docker image vulnerability inspection device and method for performing docker file analysis |
JP7086261B1 (en) * | 2021-10-21 | 2022-06-17 | ビジョナル・インキュベーション株式会社 | Processing equipment and processing method |
JP7340585B2 (en) | 2021-12-14 | 2023-09-07 | 株式会社日立製作所 | Vulnerability management system and vulnerability management method |
-
2019
- 2019-03-20 JP JP2019053705A patent/JP2020154861A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102380434B1 (en) * | 2020-10-06 | 2022-03-31 | 숭실대학교 산학협력단 | Docker image vulnerability inspection device and method for performing docker file analysis |
JP7086261B1 (en) * | 2021-10-21 | 2022-06-17 | ビジョナル・インキュベーション株式会社 | Processing equipment and processing method |
JP7340585B2 (en) | 2021-12-14 | 2023-09-07 | 株式会社日立製作所 | Vulnerability management system and vulnerability management method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5065295B2 (en) | Method, system, and computer-readable medium for sharing files between different virtual machine images | |
US9965270B2 (en) | Updating computer firmware | |
JP2020154861A (en) | Container image verification device, container image verification method, and container image verification program | |
EP2639735B1 (en) | Information processor and recording medium | |
KR101312885B1 (en) | Digital signing policy | |
JP6925542B2 (en) | Software verification device, software verification method and software verification program | |
US9513762B1 (en) | Static content updates | |
US20220374217A1 (en) | Automated machine deployment and configuration | |
JP2020155891A (en) | Management server, document file management system, document file management method, and document file management program | |
CN107632932B (en) | Multi-stage checking software warehouse reliability detection method | |
JP2011242891A (en) | Distribution device, image processing device, distribution method and installation method | |
US11698795B2 (en) | Unified way to track user configuration on a live system | |
US10389743B1 (en) | Tracking of software executables that come from untrusted locations | |
JP7222428B2 (en) | Verification Information Creation System, Verification Information Creation Method, and Verification Information Creation Program | |
CN113330423A (en) | Deletion of firmware instructions | |
US11822663B2 (en) | Supervisor-based firmware hardening | |
US11886889B2 (en) | Managing configurations of system services running in a cluster of hosts by managing lifecycle of virtualization software | |
JP6381218B2 (en) | Network device, network device control method and program thereof | |
US11424982B2 (en) | Remediation of a system to new desired state using configuration dependency graph | |
CN112749085B (en) | Cross-cluster task publishing method and device, electronic equipment and storage medium | |
KR20190091762A (en) | Method and system for splitting and merging a document file | |
GB2561862A (en) | Computer device and method for handling files | |
JP6906682B2 (en) | Link management device, link management method and link management program | |
JP5338610B2 (en) | Information processing apparatus, information processing method, and program | |
JP2011081501A (en) | Operating system program and computer carrying the same |