JP7315028B2 - 検証情報修正装置、検証情報修正方法、および、検証情報修正プログラム - Google Patents

検証情報修正装置、検証情報修正方法、および、検証情報修正プログラム Download PDF

Info

Publication number
JP7315028B2
JP7315028B2 JP2021565217A JP2021565217A JP7315028B2 JP 7315028 B2 JP7315028 B2 JP 7315028B2 JP 2021565217 A JP2021565217 A JP 2021565217A JP 2021565217 A JP2021565217 A JP 2021565217A JP 7315028 B2 JP7315028 B2 JP 7315028B2
Authority
JP
Japan
Prior art keywords
verification
information
verification information
file
error
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.)
Active
Application number
JP2021565217A
Other languages
English (en)
Other versions
JPWO2021124460A1 (ja
Inventor
恒子 倉
聖紫 大内
雄一 小松
毅 中津留
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2021124460A1 publication Critical patent/JPWO2021124460A1/ja
Application granted granted Critical
Publication of JP7315028B2 publication Critical patent/JP7315028B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0769Readable error formats, e.g. cross-platform generic formats, human understandable formats
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Computing Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Description

本発明は、検証情報修正装置、検証情報修正方法、および、検証情報修正プログラムに関する。
従来、各種機器にインストールされたソフトウェアにセキュリティ上問題がないこと(完全性)を確認するため、当該ソフトウェアに関連するファイルの変更や改ざんを検知する技術がある(非特許文献1,2参照)。ここで、ソフトウェアは、設定変更やセキュリティパッチの適用等で更新される。このため、システム運用者は、ソフトウェアの導入時に加え、日々の運用において適宜完全性を確認する必要がある。
特開2019-8738号公報 特開2019-8377号公報
Tripwire、[online]、[2019年12月11日検索]、インターネット<https://www.tripwire.co.jp/about/> 日経XTECH、"仮想環境のセキュリティを高めるインテルTXT"、[online]、[2019年12月11日検索]、インターネット<https://tech.nikkeibp.co.jp/it/article/COLUMN/20071114/287197/> "いますぐ実践! Linuxシステム管理 今日のお題-テンポラリファイルに注意する"、[online]、[2019年7月11日検索]、インターネット<http://www.usupi.org/sysad/180.html> [rpm]コマンド(応用編その2)――パッケージの情報を調べる(2)、[online]、[2019年12月11日検索]、インターネット<https://www.atmarkit.co.jp/ait/articles/1609/21/news015.html>
ここで、上記の完全性の確認において、ある時点での完全性の確認しかできなかったり、一般的なソフトウェアには対応していなかったり、完全性の確認に用いる検証情報を手動で設定する必要があったりする場合がある。
このような問題に対処するため、例えば、ソフトウェアパッケージに含まれる情報(例えば、メタ情報等)を利用し、書き換えの発生しないバイナリファイル、書き換え不可のコンフィグファイル等を完全性確認対象ファイルとして自動で抽出し、検証情報に用いることが考えられる。また、ソフトウェアパッケージに含まれるメタ情報等に誤りがある可能性のある場合、例えば、インストールにおける動作、および、そのソフトウェアの実際の振る舞いを解析することで検証情報の作成を行うことが考えられる。
しかし、上記の検証情報を用いたソフトウェアの完全性の確認において、検証装置の環境等の影響により、誤検知が発生する場合もある。このような場合、検証装置の用いる検証情報を修正する必要があるが、従来技術においては、検証装置の環境等の影響により誤検知が発生した場合の検証情報の修正については検討されていなかった。
そこで、本発明は、前記した問題を解決し、検証装置の用いる検証情報を修正することを課題とする。
前記した課題を解決するため、本発明は、ソフトウェアの検証情報を用いて前記ソフトウェアを構成するファイルの検証を行う検証装置それぞれから、当該検証装置で発生した誤検知に関するエラーログを取得する取得部と、前記取得したエラーログに基づき、所定数以上の検証装置において同じエラーが発生していると判定した場合、前記取得したエラーログから、当該エラーのエラーログを抽出し、前記抽出したエラーログに基づき、前記誤検知の原因となっている検証情報と当該検証情報に対する修正内容の候補を示す情報を作成する情報作成部と、前記誤検知の原因となっている検証情報と当該検証情報に対する修正内容の候補を示す情報を出力する出力部と、を備えることを特徴とする。
本発明によれば、検証装置の用いる検証情報を修正することができる。
図1は、検証情報作成システムの構成例を示す図である。 図2は、検証情報作成システムの動作概要を説明するための図である。 図3は、検証情報作成装置の構成例を示す図である。 図4は、検証情報リストの一例を示す図である。 図5は、署名付き検証情報リストの一例を示す図である。 図6は、エラーログの一例を示す図である。 図7は、エラーログリストの一例を示す図である。 図8は、ファイル構成情報の一例を示す図である。 図9は、ファイル構成情報リストの一例を示す図である。 図10は、誤検知知識情報リストの一例を示す図である。 図11は、検証情報作成装置が検証情報を作成し、送信する手順の例を示すフローチャートである。 図12は、検証情報作成装置が、検証情報を修正し、送信する手順の例を示す図である。 図13は、検証情報作成プログラムを実行するコンピュータの構成の一例を示す図である。
以下、図面を参照しながら、本発明を実施するための形態(実施形態)を説明する。本発明は、以下に説明する実施形態に限定されない。なお、以下に説明する検証情報は、機器にインストールされたソフトウェアに関連するファイルに変更や改ざんが行われていないかを検証するための基礎となる情報である。
[構成例]
図1を用いて、検証情報作成システムの構成例を説明する。検証情報作成システムは、例えば、ソフトウェアパッケージの検証情報の作成および修正を行う検証情報作成装置(検証情報修正装置)10と、当該検証情報を用いて自身の検証装置20にインストールされたソフトウェアの検証処理を行う検証装置20とを備える。検証情報作成装置10と検証装置20とは、インターネット等のネットワーク経由で通信可能に接続される。
[概要]
次に、上記の検証情報作成システムの概要を説明する。例えば、検証情報作成装置10は、ソフトウェアパッケージの検証情報を作成し、各検証装置20へ送信する。その後、検証情報作成装置10は、各検証装置20において検証に関し、何らかの誤検知が発生した場合、誤検知の原因となった検証情報を修正する。その後、検証情報作成装置10は、修正した検証情報を検証装置20へ送信する。
図2を用いて、検証情報作成システムの処理手順の例を説明する。例えば、検証情報作成装置10は、ソフトウェアパッケージを検証装置20にインストールする(S1)。ここで、検証情報作成装置10は、S1でインストトールしたソフトウェアパッケージが静的解析の対象であれば(S2でYes)、当該ソフトウェアパッケージに静的解析を行う(S3)。この静的解析とは、ソフトウェアパッケージ自体を解析することにより、ソフトウェアのインストール先等を特定し、検証情報の作成に必要な各種情報を取得することである。
例えば、検証情報作成装置10は、当該ソフトウェアパッケージのインストール先のディレクトリが指定されているものであれば、当該ソフトウェアパッケージに対し静的解析を行う。そして、検証情報作成装置10は、上記の静的解析により取得した情報に基づき検証情報を作成する。
一方、S1でインストールされたソフトウェアパッケージが、当該ソフトウェアパッケージが静的解析の対象でなければ(S2でNo)、検証情報作成装置10は、当該ソフトウェアパッケージの動的解析を行う(S5)。この動的解析とは、検証情報作成装置10が、検証装置20にインストールされるソフトウェアを、検証情報作成装置10にインストールすることにより、当該ソフトウェアを動作させたときのファイルやディレクトリの実際の振る舞いを解析し、検証情報の作成に必要な各種情報を取得することである。
例えば、当該ソフトウェアパッケージのインストール先のディレクトリが指定されていないものであれば、検証情報作成装置10は、当該ソフトウェアパッケージに対し動的解析を行う。そして、検証情報作成装置10は、上記の動的解析により取得した情報に基づき検証情報を作成する。その後、S6へ進む。
また、S3の後、検証情報作成装置10は、静的解析の結果に基づき作成された検証情報に修正が必要か否かを判定し(S4)、修正が不要であれば(S4でNo)、検証情報を検証装置20に送信する(S6)。一方、検証情報に修正が必要であれば(S4でYes)、S5へ進む。
S6の後、検証情報の送付先の検証装置20でセキュリティ・インシデントが発生した場合(S7)、検証装置20は上記のセキュリティ・インシデントに関するエラーログを作成する。例えば、検証装置20が検証情報を用いてソフトウェアの完全性を確認したところ(検証を行ったところ)、完全性の確認に失敗した場合(エラーが発生した場合)、エラーログを作成する。ここで、当該エラーが検証情報の誤りに起因するものと判定された場合、当該検証情報の送信先の検証装置20からエラーログとファイル構成情報とを収集し、分析する(S8:検証情報の送付先の検証装置から収集した以下のファイルを分析)。
S8での分析の結果、検証情報作成装置10が、複数の検証装置20で同じエラーが発生していると判定した場合、当該エラーに関するエラーログとファイル構成情報とに基づき、検証情報の修正内容の候補等を示した誤検知知識情報(図10参照)を作成する(S9)。そして、検証情報作成装置10は、S8で作成した誤検知知識情報に基づき、検証情報を修正する(S10)。
例えば、検証情報作成装置10は、上記の誤検知知識情報に基づき、エラーの原因となった検証情報における修正内容等の候補を出力する。そして、検証情報作成装置10が、管理者等から、検証情報の修正内容の選択入力を受け付けると、当該選択入力に基づき検証情報を修正する。その後、検証情報作成装置10は、修正した検証情報を検証装置20へ送信する(S11)。
このような検証情報作成システムによれば、検証装置20の環境等の影響により誤検知が発生した場合であっても、誤検知の原因となった検証情報を修正し、修正した検証情報を検証装置20へ送信することができる。
[構成]
次に、図3を用いて、検証情報作成装置10の構成例を説明する。検証情報作成装置10は、データ処理部11と、データ格納部12とを備える。検証情報作成装置10は、例えば、インターネット等のネットワーク経由で、利用者端末に接続される。
まず、データ格納部12を説明する。データ格納部12は、検証情報リスト格納部121と、署名付き検証情報リスト格納部122と、動的解析ルール格納部123と、静的解析ルール格納部124と、エラーログリスト格納部125と、ファイル構成情報リスト格納部126と、誤検知知識情報リスト格納部127とを備える。
検証情報リスト格納部121は、検証情報のリスト(検証情報リスト)を格納する。検証情報は、例えば、図4に示すように、ソフトウェアパッケージのパッケージ名、検証情報ID、検証対象のファイルのファイルパスまたはディレクトリパス情報、当該ファイルのhash値、存在必須属性等を含む。また、検証情報は、図4に示すように、構成確認対象属性、アクセス元許可リスト等を含んでいてもよい。
存在必須属性は、検証情報のファイルパス/ディレクトリパス情報に示されるファイルが、当該ソフトウェアパッケージのインストールされる機器において必須のファイルか否かを示す属性情報である。
また、構成確認対象属性は、検証情報のファイルパス/ディレクトリパス情報に示されるファイルが、構成確認の対象であるか否かを示す属性情報である。
さらに、アクセス元許可リストは、検証情報のファイルパス/ディレクトリパス情報に示されるファイルに対し、アクセスが許可されるプログラムの実行ファイルパスを示す情報である。
上記の存在必須属性、構成確認対象属性、および、アクセス元許可リストの情報は、例えば、利用者端末から入力された情報である。
署名付き検証情報リスト格納部122は、署名付き検証情報リスト(図5参照)を格納する。この署名付き検証情報は、検証情報に、当該検証情報を作成した検証情報作成装置10のユーザ署名とユーザ署名の公開鍵証明書とを付与したものである。なお、図5に示す署名付き検証情報リストにおけるパッケージIDは、図4におけるパッケージ名+検証情報ID+検証情報が格納される機器の識別情報を組み合わせたIDである。
図3の動的解析ルール格納部123は、ソフトウェアパッケージごとに、当該ソフトウェアパッケージの検証情報の作成に用いる動的解析の方法を示した情報(動的解析ルール)を格納する。この動的解析ルールは、例えば、以下のようなものである。すなわち、動的解析処理部112が、tarファイルに対し動的解析を行う際には、まず、tarファイルについて、当該tarファイルに含まれるconfig.niceまたはconfig.statusに基づき、ソフトウェアのインストールディレクトリを特定する。次に、動的解析処理部112は、特定したインストールディレクトリに格納される各ファイルの種類に基づき、各ファイルが実体のあるファイルか否かを判定する。そして、動的解析処理部112は、実体があると判定したファイルについて、hash値を取ることができるファイルとして特定し、当該ファイルのファイルパスと、当該ファイルのhash値とを取得するといったものである。
静的解析ルール格納部124は、ソフトウェアパッケージごとに、当該ソフトウェアパッケージに対し静的解析を行うやり方を示した情報(静的解析ルール)を格納する。例えば、静的解析ルールは、rpmパッケージに対して、rpmコマンドを実行し、ファイルの検証時にハッシュ確認を行うバイナリファイルの情報を取得し、コンフィグファイルで、かつ、書き込み不可となっているファイルの情報を取得するといったものである。
エラーログリスト格納部125は、収集部117により収集されたエラーログのリスト(エラーログリスト、図7参照)を格納する。
エラーログリストは、例えば、図7に示すように、エラーの原因(エラー原因)、当該エラーが発生したファイルパス/ディレクトリパス、当該エラーが発生したファイルのパッケージID、当該エラーが発生した検証装置20のID(検証装置ID)等を示した情報である。
例えば、図7に示すエラーログリストの1行目のエラーログは、パッケージID「PkgA0002-03」のファイルパス/ディレクトリパス「/var/log/PkgA.log」のファイルに、「hash値の不一致」によるエラーが、検証装置ID「verif0001, verif0002, verif0003, ...」の検証装置20において発生したことを示す。
図3のファイル構成情報リスト格納部126は、収集部117により収集されたファイル構成情報のリスト(ファイル構成情報リスト、図9参照)を格納する。
ファイル構成情報リストは、例えば、図9に示すように、検証装置20のファイルパス/ディレクトリパス情報、当該ファイルパス/ディレクトリパス情報のパス種別、当該ファイルのhash値、当該ファイル構成情報の送信元の検証装置20のID(検証装置ID)等を示した情報である。
例えば、図9に示すファイル構成情報リストの符号901に示す情報は、検証装置ID「verif0001, verif0002, verif0003, ...」の検証装置20には「/etc/resolv.conf」にファイルが存在し、上記の「/etc/resolv.conf」のパス種別はfileであり、当該ファイルのhash値は「3g35sdg4k...」であることを示す。
上記のエラーログリストおよびファイル構成情報リストは、分析部(情報作成部)118が誤検知知識情報(図10参照)を作成する際に参照される。
誤検知知識情報リスト格納部127は、分析部118により作成された誤検知知識情報のリスト(誤検知知識情報リスト、図10参照)を格納する。
誤検知知識情報は、例えば、図10に示すように、エラーが発生したファイルパス/ディレクトリパス情報、当該エラーが発生した理由(誤検知理由)、当該エラーを解消するための検証情報の修正箇所の候補、当該修正箇所に対する修正内容の候補等を示した情報である。この誤検知知識情報リストは、出力部119が、誤検知の原因となった検証情報の修正内容の候補を出力する際に参照される。
次に、データ処理部11を説明する。データ処理部11は、処理受付部111と、動的解析処理部112と、署名付与部113と、判定部114と、静的解析処理部115と、送信部116と、収集部(取得部)117と、分析部118と、出力部119と、修正部120とを備える。
処理受付部111は、利用者端末からソフトウェアパッケージの検証情報の作成依頼を受け付け、その結果を返す。
動的解析処理部112は、検証情報の作成対象のソフトウェアパッケージに対し動的解析を行い、検証情報を作成する。
例えば、動的解析処理部112は、動的解析ルール格納部123から、検証情報の作成対象のソフトウェアパッケージについて当該ソフトウェアパッケージの動的解析を行うためのルールを読み出す。そして、動的解析処理部112は、読み出したルールに従い、当該ソフトウェアパッケージを検証情報作成装置10にインストールし、当該検証情報作成装置10から、当該ソフトウェアパッケージのソフトウェアのインストール先のディレクトリを取得する。その後、動的解析処理部112は、取得したディレクトリに格納されるファイルの種類に基づき、hash値を取得可能なファイルを特定する。そして、動的解析処理部112は、当該hash値を取得可能なファイルのファイルパスと、当該ファイルのhash値とを取得し、取得した情報を用いて検証情報を作成する。
例えば、動的解析処理部112は、ソフトウェアパッケージの解析により取得された、当該ソフトウェアパッケージのパッケージ名、検証情報ID(例えば、シリアル番号)、検証対象のファイルのファイルパスまたはディレクトリ、当該ファイルのhash値等を用いて検証情報(図4参照)を作成する。その後、動的解析処理部112は、作成した検証情報を検証情報リスト格納部121に格納し、検証情報の作成が完了したことを利用者端末に返す。
なお、処理受付部111が利用者端末経由で検証情報の読み出し指示を受け付けた場合、処理受付部111は、検証情報リスト格納部121から読み出し指示の対象の検証情報を読み出し、利用者端末へ送信する。その後、処理受付部111が、利用者端末から当該検証情報の修正を受け付けると、修正を反映した検証情報を検証情報リスト格納部121に格納する。
なお、処理受付部111は、外部装置(例えば、利用者端末)から送信された検証情報を検証情報リスト格納部121に格納してもよい。
署名付与部113は、検証情報にユーザ署名の公開鍵証明書を付与する。例えば、署名付与部113が、利用者端末から検証情報に署名の付与依頼を受け付けると、処理受付部111は、検証情報リスト格納部121から該当する検証情報を選択し、署名付与部113に検証情報を渡す。そして、署名付与部113は、当該検証情報のうち、検証情報IDをパッケージID(パッケージ名+検証情報ID+検証情報が格納される機器の識別情報)として置き換えた情報に対して、検証情報を作成する機器のユーザ署名とユーザ署名の公開鍵証明書とを付与した検証情報を署名付き検証情報リスト格納部122に格納する。
判定部114は、検証情報の作成対象となるソフトウェアパッケージが、静的解析の対象となるソフトウェアパッケージか否かを判定する。例えば、判定部114は、検証情報の作成対象となるソフトウェアパッケージが、rpmパッケージまたはdebパッケージであれば、当該ソフトウェアパッケージを静的解析の対象となるソフトウェアパッケージと判定する。一方、検証情報の作成対象となるソフトウェアパッケージが、rpmパッケージでもなくdebパッケージでもなければ、判定部114は当該ソフトウェアパッケージを動的解析の対象となるソフトウェアパッケージと判定する。
静的解析処理部115は、静的解析ルール格納部124から、検証情報の作成対象のソフトウェアパッケージについて、静的解析を行い、その解析結果を用いて検証情報を作成する。
例えば、静的解析処理部115は、静的解析ルール格納部124から、検証情報の作成対象のソフトウェアパッケージについて当該ソフトウェアパッケージに対し静的解析を行うためのルールを読み出す。そして、静的解析処理部115は、読み出したルールに従い、当該ソフトウェアパッケージに含まれるファイルから、日々の運用において変更される可能性が低いファイルの情報を取得する。
例えば、静的解析処理部115は、所定のコマンドを実行することにより、ソフトウェアに含まれるファイルのうち、検証時にhash値を用いた確認を行うファイル(例えば、バイナリファイル)のファイルパスおよび当該ファイルのhash値と、書き換え不可のコンフィグファイルのファイルパスとを取得する。また、静的解析処理部115は、当該ソフトウェアパッケージのパッケージ名、検証情報IDも取得する。
そして、静的解析処理部115はソフトウェアパッケージの静的解析により取得された情報をもとに、当該ソフトウェアパッケージのパッケージ名、検証情報ID、検証対象のファイルのファイルパスまたはディレクトリパス情報、当該ファイルのhash値、存在必須属性等を示した検証情報(図4参照)を作成する。
送信部116は、署名付き検証情報リスト格納部122に格納される署名付き検証情報を検証装置20へ送信する。例えば、送信部116は、検証装置20から検証情報の送信要求を受け付けると、当該送信要求に応じて、当該検証装置20へ署名付き検証情報を送信する。
収集部117は、各検証装置20からエラーログとファイル構成情報とを収集(取得)する。
まず、エラーログについて説明する。エラーログは、各検証装置20で検証情報を用いて検証を行った際に発生した不具合(エラー)を示したログである。このエラーログは、例えば、以下のように、複数の行からなり、各行の先頭にエラーを示すタグ([false-positives])が付されている。そして各行には、エラーの原因、エラーが発生したファイルのファイルパスまたはディレクトリのパス(該当パス)、エラーが発生したファイルのパッケージID等が記載される。
[false-positives]hash値が不一致です。該当パス:/usr/test/aaa パッケージID: PkgA0001.001
[false-positives]hash値の確認対象のファイルが見つかりません。該当パス:/usr/test/bbb パッケージID: PkgA0001.001
[false-positives]構成確認ディレクトリに不正なパスが見つかりました。該当パス:/usr/test/ccc パッケージID: PkgA0001.001
[false-positives]構成確認ディレクトリ直下に必要なファイルが見つかりません。該当パス:/usr/test/ddd パッケージID: PkgA0001.001
[false-positives]存在必須パスが見つかりませんでした。該当パス:/usr/test/eee パッケージID: PkgA0001.001
収集部117は、例えば、エラーが発生した各検証装置20から、エラーログのうち、所定の文字列がついたエラーログをフィルタ機能等により収集する。例えば、収集部117は、エラーログのうち、「hash値が不一致です」等、検証情報の誤りが原因である可能性のあることが予想される文字列がついたエラーログをフィルタ機能等により収集する。
例えば、収集部117は、エラーが発生したある検証装置20から図6の符号601~604に示すエラーログを収集する。そして、収集部117は、エラーが発生した検証装置20それぞれから収集したエラーログを取りまとめ、例えば、図7に示すエラーログリストを作成する。その後、収集部117は作成したエラーログリストをエラーログリスト格納部125に格納する。
また、収集部117は、エラーが発生したある検証装置20から図8に示すファイル構成情報を収集する。そして、収集部117は、エラーが発生した検証装置20それぞれから収集したファイル構成情報を取りまとめ、例えば、図9に示すファイル構成情報リストを作成する。その後、収集部117は作成したファイル構成リストを、ファイル構成情報リスト格納部126に格納する。
分析部118は、収集部117が、各検証装置20から収集したエラーログを分析し、所定数以上の検証装置20において同じエラーが発生していると判定した場合、発生したエラーのエラーログに基づき、誤検知の原因となっている検証情報について当該検証情報の修正内容の候補を示す情報(例えば、誤検知知識情報(図10参照))を作成する。なお、分析部118が分析対象とするエラーログは、管理者等が手動で選択してもよい。なお、同じエラーとは、例えば、エラー原因、エラーが発生したファイルパス/ディレクトリパス、パッケージID等が同じであるエラーである。
例えば、分析部118は、図7に示すエラーログリストから、3台以上の検証装置20で、同じファイル/ディレクトリに対して同じエラー原因のエラーが発生しているエントリ(符号701に示すエントリ)を抽出する。そして、分析部118は、抽出したエントリとファイル構成情報リスト(図9参照)とを用いて、誤検知知識情報(図10参照)を作成する。
例えば、分析部118は、抽出したエントリに、エラー原因が「hash値が不一致です。」というエラーがあれば、検証情報の修正箇所はhash値であるため、修正内容は、ファイル構成情報(図9参照)に記載されている正しいhash値に変更すること、または、hash値の設定を削除することと判定する。
例えば、図7の符号701に示すエントリのうち、「/etc/resolv.conf」のエラー原因はファイルのhash値の不一致であるので、分析部118は、ファイル構成情報(図9参照)から「/etc/resolv.conf」のファイルのhash値である「3g35sdg4k...」を抽出する。そして、分析部118は、「/etc/resolv.conf」の検証情報の修正箇所の候補としてhash値を記載し、修正内容の候補として検証情報におけるhash値を「3g35sdg4k...」に変更する旨を誤検知知識情報に記載する。また、分析部118は、「/etc/resolv.conf」の誤検知理由として「ファイル修正を確認後、hash値を変更」という情報を誤検知知識情報に記載する(図10の3行目のエントリ参照)。
また、分析部118は、抽出したエントリに、エラー原因が「構成確認ディレクトリに不正なファイルが見つかりました」のエラーがあれば、検証情報の修正箇所は「構成確認対象属性」であり、修正内容は、当該ディレクトリの構成確認対象属性を「対象ではない」に変更することと判定する。
例えば、図7の符号701に示すエントリのうち、「/usr/share/PkgB0001/temp.tmp」のエラー原因は構成確認ディレクトリに不正なファイルが存在することであるので、分析部118は、「/usr/share/PkgB0001/temp.tmp」の検証情報の修正箇所の候補として構成確認対象属性を記載し、修正内容の候補として検証情報における構成確認対象属性を「対象ではない」に変更する旨を誤検知知識情報に記載する(図10の2行目のエントリ参照)。また、分析部118は、「/usr/share/PkgB0001/temp.tmp」の誤検知理由として「構成確認ディレクトリに不正なファイルが存在するため、ディレクトリの構成確認対象属性を「対象ではない」に変更」という情報を誤検知知識情報に記載する。
なお、誤検知知識情報における誤検知理由は、管理者等が手動で記載してもよい。また、エラー原因から検証情報の修正箇所および修正内容が一意に決まらないような場合、分析部118はすべての修正箇所および修正内容の候補を誤検知知識情報に記載する。
なお、エラー(誤検知)の原因となっている検証情報の箇所は、誤検知の原因により推定することができる。ここで、誤検知の原因は、例えば、以下の4つが考えられる。
[例1:検証情報に示される検証対象のファイルが、検証時に更新されるファイルであることによるもの]
例えば、検証情報に示される検証対象のファイルとして、検証装置20の処理内容やエラー等の履歴を記録し保存するためのログファイルが設定されていた場合、検証装置20において処理が実行されるたびに検証対象のファイルが更新されることになる。このため、検証装置20が当該検証情報を用いて検証(完全性確認)を実行すると、当該ファイルのhash値が変更されるので、当該ファイルのhash値が一致しないというエラー(例えば、図6の符号601に示すエラー)が発生してしまう。
[例2:検証情報に示される構成確認ディレクトリが、検証装置20の状況により、ファイルが存在したり存在しなかったりするディレクトリであることによるもの]
例えば、シェルスクリプトによっては、スクリプトの実行中にだけテンポラリファイルを生成するものがある(非特許文献3参照)。検証情報の構成確認ディレクトリが上記のテンポラリファイルの生成先として指定されたディレクトリである場合、検証装置20が当該検証情報を用いて検証(ファイルの構成確認)を実行すると、当該検証情報の構成確認ディレクトリに不正なファイルが見つかったと判断し、エラー(例えば、図6の符号602に示すエラー)が発生してしまう。
[例3:検証情報に示される検証対象のファイルのhash値が変更されたことによるもの]
例えば、管理者が、同じ組織に属する複数の検証装置20に同じソフトウェアパッケージをインストールし、当該組織に合わせてすべての検証装置20で当該ソフトウェアパッケージの設定ファイルを変更する場合も考えられる。例えば、管理者が当該組織で使っているDNSサーバのIPアドレスを変更した場合、各検証装置20で用いるDNSの設定ファイルの内容も変更される。これに伴い、当該設定ファイルのhash値も変更される。ここで検証情報の検証対象ファイルが上記の設定ファイルであり、当該検証対象ファイルのhash値として設定変更前のhash値が設定されている場合、検証装置20が当該検証情報を用いて検証を行うと、当該ファイルのhash値が一致しないというエラー(例えば、図6の符号603に示すエラー)が発生してしまう。
[例4:検証情報において存在必須として登録されるファイルが、オプションによりインストールされるファイルであることによるもの]
ソフトウェアパッケージのインストール時のオプションによっては、検証装置20にインストールされるものが変更になる可能性がある。例えば、rpmコマンドを用いてインストールする場合、rpm --install --excludedocsと指定すると、manページ等の文書を示すマークが付いているファイルをインストールしないようにできる(非特許文献4参照)。
例えば、検証情報作成装置10は、ディスク容量に余裕があったため、上記のソフトウェアパッケージについてオプションを付けずにインストールして検証情報を作成し、各検証装置20へ送信した。しかし、上記の各検証装置20では、不要なファイルを入れない方針で、不要なファイルについてはインストールしなかった場合を考える。この場合、各検証装置20が検証情報作成装置10から送信された検証情報に基づき検証(存在必須ファイルの確認)を実行すると、存在必須パスが見つからないというエラー(例えば、図6の符号604に示すエラー)が発生してしまう。
分析部118は、エラーログに基づき、エラーの原因が上記のいずれであるかを分析する。そして、分析部118は、分析の結果に基づき、エラーを解消するためには検証情報のどの箇所をどのように修正すればよいかをとりまとめ、誤検知知識情報(図10参照)を作成する。
例えば、分析部118は、図10に示すように、上記の分析の結果に基づき、エラーが発生したファイルパス/ディレクトリパスごとに、当該ファイルパス/ディレクトリパスにエラーが発生した理由(誤検知理由)と、当該エラーの原因となっている検証情報の箇所の候補(修正箇所の候補)と、当該箇所に対する修正内容の候補とを誤検知知識情報に記載する。
具体例を挙げる。例えば、上記の例1に該当するエラーは、検証の実行中にファイルが書き換わることが原因であるので、検証情報におけるhash値の設定を削除する修正が考えられる。よって、分析部118は、エラーログのうち、上記の例1に該当すると推定したエラー(例えば、/var/log/pkgA.logに関するエラー)について、検証情報の修正箇所の候補は「hash値」であり、修正内容の候補は「(hash値の)設定を削除」である旨を誤検知知識情報に記載する(図10の1行目のエントリ参照)。
また、例2および例4に該当するエラーの場合、分析部118はファイル構成情報も参照して誤記検知知識情報を記載する。
例えば、例2に該当するエラーは、検証装置20の状況により、検証情報に登録される構成確認対象のディレクトリに、ファイルが存在したり存在しなかったりすることが原因である。したがって、検証情報における当該ディレクトリの構成確認対象属性を「対象ではない」に変更するという修正が考えられる。よって、例えば、分析部118は、検証装置20のファイル構成情報も参照し、上記の例2に該当すると推定したエラー(/usr/share/PkgB0001/temp.tmpに関するエラー)について、検証情報の修正箇所の候補は「構成確認対象属性」であり、修正内容の候補は「(構成確認対象属性)を「対象ではない」に修正」である旨を誤検知知識情報に記載する(図10の2行目のエントリ参照)。
また、例4に該当するエラーは、検証情報において存在必須として登録されるファイルが、オプションによりインストールされない可能性のあるファイルであることが原因である。したがって、検証情報における当該ディレクトリの存在必須属性を「必須ではない」に変更するという修正が考えられる。よって、例えば、分析部118は、検証装置20のファイル構成情報も参照し、上記の例4に該当すると推定したエラー(/usr/share/foo/explain.docに関するエラー)について、検証情報の修正箇所の候補は「存在必須属性」であり、修正内容の候補は「(存在必須属性)を「必須ではない」に修正」である旨を誤検知知識情報に記載する。
また、例3に該当するエラーは、検証情報に登録されるファイルのhash値が変更されたことが原因である。したがって、検証情報における当該ファイルのhash値を変更するという修正が考えられる。よって、例えば、分析部118は、上記の例3に該当すると判定したエラー(/etc/resolv.confに関するエラー)について、検証情報の修正箇所の候補は「hash値」であり、修正内容の候補は「(hash値の)変更」である旨を誤検知知識情報に記載する(図10の3行目のエントリ参照)。なお、hash値の修正内容の候補として、例えば、エラーの発生したファイルのファイル構成情報(図9参照)に示されるhash値も記載してもよい。
なお、上記の例1、例3に該当するエラーは、どちらも「hash値が不一致」というエラーであるが、例1に該当するか例3に該当するかは、例えば、以下のようにして推定する。例えば、分析部118は、エラーの対象となるファイルのファイル名や拡張子からファイルの種類を推定し、推定した当該ファイルの種類がログファイルであれば、例1に該当するエラーと推定する。また、推定した当該ファイルの種類がDNS等の設定ファイルであれば、例3に該当するエラーと推定する。
なお、検証情報作成装置10は、例えば、上記のエラーの原因から、検証情報の修正箇所、修正内容が特定できるものについては、これらを対応付けた情報をデータ格納部12に保持する。そして、分析部118が、誤検知知識情報に各種情報を記載する際には、上記の情報を参照して上記のエラーの原因から、検証情報の修正箇所、修正内容等を特定し、記載してもよい。
なお、分析部118が、エラーログの内容からだけでは、エラーが上記の例1~例4のいずれに該当するか判定できない場合や、上記の例1~例4のいずれにも該当しないと判定した場合や、修正箇所の候補、修正内容の候補等が特定できない場合もある。このような場合、分析部118は、想定される誤記検知理由、修正箇所の候補、修正内容の候補等をすべて出力してもよい。そして、分析部118が、出力した候補から管理者等により選択された、誤記検知理由、修正箇所、修正内容等の内容を誤検知知識情報に反映させる。
出力部119は、分析部118により作成された誤検知知識情報に基づき、検証情報の修正箇所の候補、当該修正箇所に対する修正内容の候補を出力する。例えば、出力部119は、誤検知知識情報リスト(図10参照)に基づき、ファイルパス「/etc/resolv.conf」の検証情報の修正箇所の候補がhash値であり、当該修正箇所に対する修正内容の候補として「変更(3g35sdg4k...))を管理者の端末(例えば、図3に示す利用者端末)に出力する。
修正部120は、検証情報の修正を行う。例えば、出力部119が、管理者の端末に、エラーの原因となっている検証情報について、当該検証情報の修正箇所の候補、当該修正箇所に対する修正内容の候補を出力した後、修正部120は当該管理者の端末により選択された、当該検証情報の修正箇所と当該修正箇所に対する修正内容の選択入力を受け付ける。そして、修正部120は、管理者の選択入力に基づき、当該検証情報の修正を行う。その後、署名付与部113は、修正された検証情報に署名を付与し、署名付き検証情報リスト格納部122に格納する。そして、修正され、署名が付与された検証情報は、送信部116により当該検証情報を用いて検証処理を行う各検証装置20へ送信される。
このように検証情報作成装置10は、検証装置20の誤検知の原因となっている検証情報について、当該検証情報の修正箇所の候補、当該修正箇所に対する修正内容の候補を出力する。そして、検証情報作成装置10は、管理者からの選択入力に基づき、検証情報を修正する。これにより、検証装置20の環境等の影響により、誤検知が発生した場合でも、管理者は、誤検知を解消するためにはどの検証情報のどの箇所をどのように修正すればよいかを速やかに把握することができる。その結果、検証情報作成装置10は、各検証装置20の用いる検証情報を速やかに修正することができる。
[処理手順の例]
次に、図11および図12を用いて、検証情報作成装置10の処理手順の例を説明する。
まず、検証情報作成装置10の判定部114は、検証情報の作成対象のソフトウェアパッケージが静的解析の対象のパッケージソフトウェアか否かを判定する(図11のS101)。ここで、判定部114が検証情報の作成対象のソフトウェアパッケージが静的解析の対象のパッケージソフトウェアであると判定した場合(S101でYes)、検証情報作成装置10はソフトウェアパッケージを取得する(S102)。そして、静的解析処理部115は、当該ソフトウェアパッケージの静的解析ルールに基づき、当該ソフトウェアパッケージの解析を実行する(S103)。
S103の後、静的解析処理部115は、当該ソフトウェアパッケージの解析結果に基づき、当該ソフトウェアパッケージの検証情報を作成する(S104)。静的解析処理部115は、作成した検証情報を検証情報リスト格納部121に格納する。その後、処理受付部111が検証情報の修正入力を受け付けた場合(S114でYes)、検証情報を適切な内容に修正し(S116)、S111へ進む。
一方、S114において、処理受付部111が検証情報の修正入力を受け付けなかった場合(S114でNo)、署名付与部113は、検証情報リスト格納部121に格納される検証情報のユーザ署名とユーザ署名の公開鍵証明書とを付与し、署名付き検証情報リスト格納部122に格納する(S115:検証情報の署名付与)。その後、送信部116は、例えば、検証装置20からの要求に応じて、署名付き検証情報リスト格納部122に格納された署名付き検証情報を当該検証装置20へ送信する(S117)。
また、S101において、判定部114が検証情報の作成対象のソフトウェアパッケージが静的解析の対象のパッケージソフトウェアではないと判定した場合(S101でNo)、検証情報作成装置10は、検証情報の作成対象のソフトウェアパッケージを検証情報作成装置10にインストールする(S111)。そして、動的解析処理部112は、当該ソフトウェアパッケージの動的解析ルールに基づき、当該ソフトウェアパッケージの動的解析を実行する(S112)。その後、動的解析処理部112は、当該ソフトウェアパッケージの解析結果に基づき、当該ソフトウェアパッケージの検証情報を作成する(S113)。そして、S114へ進む。
このようにすることで検証情報作成装置10は、静的解析により検証情報を作成することができるソフトウェアパッケージについては静的解析により検証情報を作成することができる。その後、例えば、検証装置20は、上記の検証情報を用いて、ソフトウェアパッケージの検証処理を行う。その結果、検証装置20でセキュリティ・インシデントを検知し、そのセキュリティ・インシデントが検証情報の誤りに起因するもの(誤検知によるもの)と判定された場合、検証情報作成装置10は以下の処理を行う。
まず、検証情報作成装置10の収集部117は、誤検知が発生した検証装置20それぞれからエラーログを収集する(図12のS121)。そして、収集部117は、収集したエラーログをリスト化したもの(エラーログリスト)をエラーログリスト格納部125に格納する。また、収集部117は上記の検証装置20それぞれから、当該検証装置20のファイル構成情報を収集する(S122)。そして、収集部117は、収集したファイル構成情報をリスト化したもの(ファイル構成情報リスト)をファイル構成情報リスト格納部126に格納する。
S122の後、分析部118は、エラーログリストのエラーログと、ファイル構成情報リストのファイル構成情報を分析する(S123)。そして、分析部118は、上記の分析の結果に基づき、誤検知知識情報を作成する(S124)。その後、分析部118は、作成した誤検知知識情報をリスト化したもの(誤検知知識情報リスト)を誤検知知識情報リスト格納部127に格納する。
S124の後、出力部119は、誤検知知識情報に基づき、修正対象の検証情報における修正箇所および修正内容の候補を出力する(S125)。例えば、出力部119は、検証情報の修正箇所および修正内容の候補を管理者の端末装置へ出力する。その後、修正部120が、管理者の端末装置等から、修正対象の検証情報における修正箇所および修正内容の選択入力を受け付けると(S126)、選択入力された内容に基づき、当該検証情報を修正する(S127)。次に、署名付与部113は、修正した検証情報に署名を付与する(S128)。そして、署名付与部113は、署名を付与した検証情報を署名付き検証情報リスト格納部122に格納する。その後、送信部116は、例えば、検証装置20からの要求に応じて、署名付き検証情報リスト格納部122に格納された署名付き検証情報を当該検証装置20へ送信する(S129)。
このように検証情報作成装置10は、検証装置20の誤検知の原因となっている検証情報について、当該検証情報の修正内容の候補を出力する。そして、検証情報作成装置10は、管理者からの選択入力に基づき、当該検証情報を修正する。これにより、検証装置20の環境等の影響により、誤検知が発生した場合でも、管理者は、検証情報のどの箇所をどのように修正すればよいかを速やかに把握することができる。その結果、検証情報作成装置10は、各検証装置20の用いる検証情報を速やかに修正することができる。
[プログラム]
また、上記の実施形態で述べた検証情報作成装置10の機能を実現するプログラムを所望の情報処理装置(コンピュータ)にインストールすることによって実装できる。例えば、パッケージソフトウェアやオンラインソフトウェアとして提供される上記のプログラムを情報処理装置に実行させることにより、情報処理装置を検証情報作成装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータ、ラック搭載型のサーバコンピュータ等が含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistants)等がその範疇に含まれる。また、検証情報作成装置10を、クラウドサーバに実装してもよい。
図13を用いて、上記のプログラム(検証情報作成プログラム)を実行するコンピュータの一例を説明する。図13に示すように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011およびRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。ディスクドライブ1100には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1110およびキーボード1120が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1130が接続される。
ここで、図13に示すように、ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。前記した実施形態で説明したデータ格納部は、例えばハードディスクドライブ1090やメモリ1010に装備される。
そして、CPU1020が、ハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。
なお、上記の検証情報作成プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、上記のプログラムに係るプログラムモジュール1093やプログラムデータ1094は、LANやWAN(WIDe Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10 検証情報作成装置
20 検証装置
11 データ処理部
12 データ格納部
111 処理受付部
112 動的解析処理部
113 署名付与部
114 判定部
115 静的解析処理部
116 送信部
117 収集部
118 分析部
119 出力部
120 修正部
121 検証情報リスト格納部
122 署名付き検証情報リスト格納部
123 動的解析ルール格納部
124 静的解析ルール格納部
125 エラーログリスト格納部
126 ファイル構成情報リスト格納部
127 誤検知知識情報リスト格納部

Claims (8)

  1. ソフトウェアの検証情報を用いて前記ソフトウェアを構成するファイルの検証を行う検証装置それぞれから、当該検証装置で発生した誤検知に関するエラーログを取得する取得部と、
    前記取得したエラーログに基づき、所定数以上の検証装置において同じエラーが発生していると判定した場合、前記取得したエラーログから、当該エラーのエラーログを抽出し、前記抽出したエラーログに基づき、前記誤検知の原因となっている検証情報と当該検証情報に対する修正内容の候補を示す情報を作成する情報作成部と、
    前記誤検知の原因となっている検証情報と当該検証情報に対する修正内容の候補を示す情報を出力する出力部と、
    を備えることを特徴とする検証情報修正装置。
  2. 前記出力された候補の中から選択された情報に基づき、前記検証情報を修正する修正部
    をさらに備えることを特徴とする請求項1に記載の検証情報修正装置。
  3. 前記情報作成部は、
    前記抽出したエラーログに基づき、前記誤検知の原因は、前記検証情報に設定される検証対象ファイルが前記検証により更新されるファイルであることと判定した場合、前記検証情報の修正内容の候補を、当該検証情報に示される検証対象ファイルのhash値の削除とする
    ことを特徴とする請求項1に記載の検証情報修正装置。
  4. 前記取得部は、さらに、
    前記検証装置それぞれから当該検証装置に格納されるファイルの構成情報を取得し、
    前記情報作成部は、
    前記抽出したエラーログおよび前記ファイルの構成情報に基づき、前記誤検知の原因は、前記検証情報に設定される検証対象ディレクトリが前記検証装置の状況によりファイルが追加されるディレクトリであることと判定した場合、前記検証情報の修正内容の候補を、当該検証情報に示される検証対象ディレクトリを検証の対象外に変更することとする
    ことを特徴とする請求項1に記載の検証情報修正装置。
  5. 前記取得部は、さらに、
    前記検証装置それぞれから当該検証装置に格納されるファイルの構成情報を取得し、
    前記情報作成部は、
    前記抽出したエラーログに基づき、前記誤検知の原因は、前記検証情報に設定される検証対象ファイルが、前記検証装置にオプションでインストールされるファイルであることと判定した場合、前記検証情報の修正内容の候補を、当該検証情報に示される検証対象ファイルを検証の対象外に変更することとする
    ことを特徴とする請求項1に記載の検証情報修正装置。
  6. 前記取得部は、さらに、
    前記検証装置それぞれから当該検証装置に格納されるファイルの構成情報として、前記ファイルのhash値を示す情報を取得し、
    前記情報作成部は、
    前記抽出したエラーログに基づき、前記誤検知の原因は、前記検証情報に設定される検証対象ファイルが、前記検証装置の設定ファイルであることと判定した場合、前記検証情報の修正内容の候補として、当該検証情報に示される検証対象ファイルのhash値を、前記ファイルの構成情報に示されるhash値に変更することとする
    ことを特徴とする請求項1に記載の検証情報修正装置。
  7. 検証情報修正装置により実行される検証情報修正方法であって、
    ソフトウェアの検証情報を用いて前記ソフトウェアを構成するファイルの検証を行う検証装置それぞれから、当該検証装置で発生した誤検知に関するエラーログを取得する工程と、
    前記取得したエラーログに基づき、所定数以上の検証装置において同じファイルまたはディレクトリに同じエラー原因のエラーが発生していると判定した場合、前記取得したエラーログから、当該エラーのエラーログを抽出し、前記抽出したエラーログを分析することにより、前記誤検知の原因となっている検証情報と当該検証情報に対する修正内容の候補を示す情報を作成する工程と、
    前記誤検知の原因となっている検証情報と当該検証情報に対する修正内容の候補を示す情報を出力する工程と、
    を含むことを特徴とする検証情報修正方法。
  8. ソフトウェアの検証情報を用いて前記ソフトウェアを構成するファイルの検証を行う検証装置それぞれから、当該検証装置で発生した誤検知に関するエラーログを取得する工程と、
    前記取得したエラーログに基づき、所定数以上の検証装置において同じファイルまたはディレクトリに同じエラー原因のエラーが発生していると判定した場合、前記取得したエラーログから、当該エラーのエラーログを抽出し、前記抽出したエラーログを分析することにより、前記誤検知の原因となっている検証情報と当該検証情報に対する修正内容の候補を示す情報を作成する工程と、
    前記誤検知の原因となっている検証情報と当該検証情報に対する修正内容の候補を示す情報を出力する工程と、
    をコンピュータに実行させることを特徴とする検証情報修正プログラム。
JP2021565217A 2019-12-17 2019-12-17 検証情報修正装置、検証情報修正方法、および、検証情報修正プログラム Active JP7315028B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/049467 WO2021124460A1 (ja) 2019-12-17 2019-12-17 検証情報修正装置、検証情報修正方法、および、検証情報修正プログラム

Publications (2)

Publication Number Publication Date
JPWO2021124460A1 JPWO2021124460A1 (ja) 2021-06-24
JP7315028B2 true JP7315028B2 (ja) 2023-07-26

Family

ID=76477352

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021565217A Active JP7315028B2 (ja) 2019-12-17 2019-12-17 検証情報修正装置、検証情報修正方法、および、検証情報修正プログラム

Country Status (6)

Country Link
US (1) US20230015273A1 (ja)
EP (1) EP4064096B1 (ja)
JP (1) JP7315028B2 (ja)
CN (1) CN114830117A (ja)
AU (1) AU2019479339B2 (ja)
WO (1) WO2021124460A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2019458656B2 (en) * 2019-07-23 2023-06-08 Nippon Telegraph And Telephone Corporation Verification information generating system, verification information generating method, and verification information generating program
US11989156B1 (en) * 2023-03-06 2024-05-21 Dell Products L.P. Host device conversion of configuration information to an intermediate format to facilitate database transitions

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012532358A (ja) 2009-07-01 2012-12-13 パナソニック株式会社 セキュアブート方法およびセキュアブート装置
JP2018045392A (ja) 2016-09-13 2018-03-22 株式会社東芝 ネットワーク監視装置、ネットワークシステムおよびプログラム
JP2019057156A (ja) 2017-09-21 2019-04-11 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1376356A1 (en) * 2002-06-26 2004-01-02 Fujitsu Siemens Computers, LLC Error reporting network in multiprocessor computer
US9088615B1 (en) * 2008-07-31 2015-07-21 Pulse Secure, Llc Determining a reduced set of remediation actions for endpoint integrity
US9355017B2 (en) * 2012-01-06 2016-05-31 Iii Holdings 4, Llc Automated error checking system for a software application and method therefor
JP6502832B2 (ja) * 2015-11-13 2019-04-17 株式会社東芝 検査装置、通信システム、移動体および検査方法
JP6753819B2 (ja) 2017-06-20 2020-09-09 日本電信電話株式会社 照合情報生成装置、管理システム及び照合情報生成方法
JP6813442B2 (ja) 2017-06-28 2021-01-13 日本電信電話株式会社 検証装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012532358A (ja) 2009-07-01 2012-12-13 パナソニック株式会社 セキュアブート方法およびセキュアブート装置
JP2018045392A (ja) 2016-09-13 2018-03-22 株式会社東芝 ネットワーク監視装置、ネットワークシステムおよびプログラム
JP2019057156A (ja) 2017-09-21 2019-04-11 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム

Also Published As

Publication number Publication date
EP4064096A4 (en) 2023-08-02
AU2019479339B2 (en) 2023-12-21
JPWO2021124460A1 (ja) 2021-06-24
EP4064096B1 (en) 2024-08-28
AU2019479339A1 (en) 2022-06-30
WO2021124460A1 (ja) 2021-06-24
US20230015273A1 (en) 2023-01-19
EP4064096A1 (en) 2022-09-28
CN114830117A (zh) 2022-07-29

Similar Documents

Publication Publication Date Title
US10719612B2 (en) Static detection of vulnerabilities in base images of software containers
US20200319979A1 (en) System and method of restoring a clean backup after a malware attack
US9652632B2 (en) Method and system for repairing file at user terminal
US9910743B2 (en) Method, system and device for validating repair files and repairing corrupt software
US11579985B2 (en) System and method of preventing malware reoccurrence when restoring a computing device using a backup image
US8479292B1 (en) Disabling malware that infects boot drivers
US8037290B1 (en) Preboot security data update
KR20050009198A (ko) 취약한 파일의 자동 검출 및 패치
US10796023B2 (en) Techniques for maintaining image integrity in containerized applications
US9792436B1 (en) Techniques for remediating an infected file
JP7315028B2 (ja) 検証情報修正装置、検証情報修正方法、および、検証情報修正プログラム
RU2491623C1 (ru) Система и способ проверки файлов на доверенность
US8943595B2 (en) Granular virus detection
US10241696B1 (en) Securely launching files downloaded to potentially unsafe locations on a computer system
US12086249B2 (en) Detection system, detection method, and an update verification method performed by using the detection method
JP7222428B2 (ja) 検証情報作成システム、検証情報作成方法、および、検証情報作成プログラム
JP7184198B2 (ja) 検証情報作成システム、検証情報作成方法、および、検証情報作成プログラム
RU2639666C2 (ru) Удаление следов вредоносной активности из операционной системы, которая в настоящий момент не загружена на компьютерном устройстве
US20240289475A1 (en) Fingerprinting techniques to support file hash generation
US20240289303A1 (en) Namespace mapping to support file hash generation
KR102035076B1 (ko) 통신 디바이스의 펌웨어 변조를 검출하는 장치 및 방법
CN118627068A (zh) 一种windows内存木马的检测方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220406

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230613

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230626

R150 Certificate of patent or registration of utility model

Ref document number: 7315028

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150