JP6591832B2 - ソフトウェア改ざん検知システム、及びネットワークセキュリティシステム - Google Patents

ソフトウェア改ざん検知システム、及びネットワークセキュリティシステム Download PDF

Info

Publication number
JP6591832B2
JP6591832B2 JP2015167790A JP2015167790A JP6591832B2 JP 6591832 B2 JP6591832 B2 JP 6591832B2 JP 2015167790 A JP2015167790 A JP 2015167790A JP 2015167790 A JP2015167790 A JP 2015167790A JP 6591832 B2 JP6591832 B2 JP 6591832B2
Authority
JP
Japan
Prior art keywords
software
detection system
inspection
hash value
tampering detection
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
JP2015167790A
Other languages
English (en)
Other versions
JP2017045308A (ja
Inventor
正幸 芦谷
正幸 芦谷
Original Assignee
セコムトラストシステムズ株式会社
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 セコムトラストシステムズ株式会社 filed Critical セコムトラストシステムズ株式会社
Priority to JP2015167790A priority Critical patent/JP6591832B2/ja
Publication of JP2017045308A publication Critical patent/JP2017045308A/ja
Application granted granted Critical
Publication of JP6591832B2 publication Critical patent/JP6591832B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

本発明は、ソフトウェア改ざん検知システム、及びネットワークセキュリティシステムに関し、特に、ソフトウェアを改ざんされているコンピュータ自体に内蔵されたオペレーティングシステム(Operating System:OS)上では検知されにくい改ざんへの対処に関する。
近年、ネットワーク利用の増大に伴い、ユーザーのパソコン(PC)等が悪意あるプログラムに感染して乗っ取られ、ユーザーの情報、財産を不正に奪われる等の被害が拡大し続けている。コンピュータウイルスに代表されるこのような悪意のあるプログラム、すなわちマルウェアには多種多様なものが次々と現れ、これに対し、さまざまな対策も行われてきた。
例えば、下記特許文献1には、コンピュータの起動時にOSを起動する処理を行うOSローダ等のプログラムの改ざんの有無を検知することを目的としたコンピュータシステムに関する発明が開示されている。また、下記特許文献2では、BIOS(Basic Input/Output System)の起動時に読み出すマスターブートレコード(Master Boot Record:MBR)に感染するウイルスを検知する機能を有したコンピュータに関する発明が開示されている。
特開平10−333902号公報 特開2011−100329号公報
ところが、昨今ではハードディスクの基本的な動作の制御を行い、改変が非常に困難とされているファームウェアに感染するマルウェアまで出現している。当該マルウェアはハードディスク上に加えた改変を隠蔽して他のソフトウェアから検知できなくしたり、ハードディスクのフォーマットから保護して除去されなくしたりし、また除去された部分を残存した部分から再感染させることができる。
特許文献1、特許文献2のウイルス検知方法では、検知対象のプログラムのハッシュ値を算出し、予め記憶した正しいハッシュ値と比較し、一致しない場合にウイルス有りと判定している。しかし、中古のPCなど、初めて使用するようなパソコンにおいては正しいハッシュ値を知ることができない。
また、新しいPCであっても、製造工程で悪意のある第三者がPCのファームウェアに時限的にウイルスが起動するように仕込む可能性もゼロではない。
本発明は上記課題を解決するものであり、ハードディスクの記憶領域に感染したマルウェアだけでなく、ハードディスクのファームウェアに組み込まれるマルウェアの存在を検知できるシステムを提供することを目的とする。
(1)本発明に係るソフトウェア改ざん検知システムは、本体装置内の検査対象ソフトウェアに加えられた改ざんを検知するシステムであって、前記本体装置を制御するオペレーティングシステムを含み、前記本体装置をブート可能な検査プログラムを格納し、検査時に前記本体装置に接続される検査モジュールと、検査時にコンピュータネットワークを介して前記本体装置と接続されるセンタ装置と、を含み、前記本体装置は、前記検査モジュールが当該本体装置に接続された状態では、前記検査モジュールをブートデバイスとして選択して前記検査プログラムを起動させ、前記検査プログラムは、前記検査対象ソフトウェアを読み取り、その標本データを所定の方法で生成する標本生成機能と、前記標本データを前記本体装置から前記センタ装置へ送信する標本送信機能と、を実現し、前記センタ装置は、複数の前記本体装置から受信する前記標本データについてそれらの異同に応じて類に分け当該類ごとの頻度を求める処理、及び予め定めた基準に基づき前記頻度の多寡に応じて前記類が正常か異常かを判定し、異常と判定される低頻度の前記類に属する前記標本データを送信した前記本体装置へ前記改ざんを検知したことを通知する処理を行う。
(2)上記(1)に記載するソフトウェア改ざん検知システムの好適な態様では、前記検査対象ソフトウェアは、前記本体装置のハードディスクのファームウェアの少なくとも一部を含む。
(3)上記(1)及び(2)に記載するソフトウェア改ざん検知システムの好適な態様では、前記標本データは、前記検査対象ソフトウェアを一方向性関数で圧縮した圧縮データである。
(4)上記(1)から(3)に記載するソフトウェア改ざん検知システムにおいて、前記センタ装置は、前記頻度が予め設定した閾値未満である低頻度類を異常と判定する構成とすることができる。
(5)上記(1)から(3)に記載するソフトウェア改ざん検知システムにおいて、前記センタ装置は、前記頻度が前記標本データの受信総数に対し予め設定した割合未満である低頻度類を異常と判定する構成とすることができる。
(6)上記(4)及び(5)に記載するソフトウェア改ざん検知システムにおいて、前記センタ装置は、前記標本データの受信総数が予め設定した下限値未満である場合に、前記頻度の増加速度に基づいて前記類が正常か異常かを判定する構成とすることができる。
(7)本発明に係るネットワークセキュリティシステムは上記(1)から(6)に記載するソフトウェア改ざん検知システムのいずれか1つを用いたものであって、前記検査モジュールは、前記検査プログラムの前記オペレーティングシステム上で動作し、コンピュータネットワーク上において、ユーザーにより操作される前記本体装置と当該ユーザーがアクセスを意図する目的サイトとの通信接続を行う接続ソフトウェアを格納し、前記接続ソフトウェアは、前記改ざんが検知された場合には、前記センタ装置を中継して前記通信接続を行う。
本発明によれば、ハードディスクの記憶領域に感染したマルウェアだけでなく、ハードディスクのファームウェアに組み込まれるマルウェアの存在を検知できる。
本発明の実施形態に係るコンピュータセキュリティシステムの概略の構成図である。 ハッシュ値テーブルの例を示す模式図である。 本発明の実施形態に係るコンピュータセキュリティシステムの利用者端末装置での動作の概略のフロー図である。 本発明の実施形態に係るコンピュータセキュリティシステムのセンタ装置での動作の概略のフロー図である。
以下、本発明の実施の形態(以下実施形態という)であるコンピュータセキュリティシステム2について、図面に基づいて説明する。コンピュータセキュリティシステム2はパソコンなどのコンピュータ内のソフトウェアに加えられた改ざんを検知し、それへの対処を可能とするシステムである。
図1は、実施形態に係るコンピュータセキュリティシステム2の概略の構成図である。コンピュータセキュリティシステム2は、利用者端末装置4及びセンタ装置6を含んで構成される。利用者端末装置4及びセンタ装置6はコンピュータネットワーク8を介して通信可能になり接続される。
利用者端末装置4はユーザーがコンピュータネットワーク8にアクセスする際に使用するパソコンなどのコンピュータである。コンピュータネットワーク8は例えば、インターネットであり、当該インターネット上には複数の利用者端末装置4が存在し、また図示を省略するがユーザーが利用者端末装置4からアクセス可能なコンピュータやウェブサイトが存在する。センタ装置6は、利用者端末装置4に接続される後述の検査モジュールと協働してコンピュータセキュリティシステム2におけるセキュリティ機能を実現するコンピュータであり、例えば、セキュリティサービスを提供する事業者の施設に設置される。
利用者端末装置4はメインユニット10(本体装置)とこれに接続される周辺機器とからなるコンピュータシステムである。メインユニット10はコンピュータとしての基本機能を備える。また図1では周辺機器として可搬記憶媒体12、ディスプレイ14、マウス16及びキーボード18を示している。
メインユニット10は処理部30及び記憶部を有する。処理部30はプログラムを実行して各種の機能を提供する装置であり、例えば、CPU(Central Processing Unit)34及びメインメモリ36(主記憶装置)を含んで構成される。メインメモリ36はRAM(Random Access Memory)等の揮発性メモリからなる。また、図には示さないが処理部30にはBIOSを格納する不揮発性メモリ、及びBIOSにより使用されるコンピュータのスタートアップ情報を格納するCMOSと呼ばれるメモリチップが存在する。
記憶部は処理部30にて実行される各種プログラムや処理部30での処理にて使用されるデータを記憶する補助記憶装置である。記憶部にはリードライト可能な記憶装置が用いられ、本実施形態ではメインユニット10は記憶部としてハードディスクドライブ(Hard Disk Drive:HDD)32を有する。HDD32には、HDD32の動作を制御する基本ソフトウェアであるファームウェア38、汎用OS40などが格納される。ファームウェア38は多くはHDD32内のEEPROM(Electrically Erasable Programmable Read-Only Memory)やフラッシュメモリなどに保存されるが、その一部はディスク領域に保存される場合もある。一方、汎用OS40はディスク領域に保存される。このほか、ディスク領域には、ウェブブラウザプログラム(汎用ウェブブラウザプログラム42)などの各種のアプリケーションプログラムやデータが格納され得る。
可搬記憶媒体12は、センタ装置6と協働してコンピュータセキュリティシステム2におけるセキュリティ機能を実現する検査モジュールであり、メインユニット10、特にHDD32に対する改ざんの有無の検査時に、メインユニット10に接続される。可搬記憶媒体12はメインユニット10に脱着自在であり、例えば、メインユニット10にUSB接続可能な小型のスティック形状のもの、或いはCD−ROM、DVD−ROM等とすることができる。可搬記憶媒体12はプログラム格納部50、電子証明書52を含む。プログラム格納部50は検査時に処理部30にて実行される検査プログラムとして専用OS54、ハッシュ値計算プログラム56及び専用ウェブブラウザプログラム58を格納している。電子証明書52はセンタ装置6におけるユーザー認証に用いられる。
汎用OS40と専用OS54とは排他的に動作する。すなわち、処理部30は汎用OS40と専用OS54とのいずれかを選択的に読み込んで実行する。具体的には、利用者端末装置4の起動時にて、BIOSがHDD32と可搬記憶媒体12とのいずれかを起動ディスクとして選択し、選択されたデバイスに格納されているブートローダが動作する。可搬記憶媒体12がメインユニット10に接続されていない場合には、HDD32が起動ディスクに選択され、ブートローダはHDD32からメインメモリ36に汎用OS40を読み込んで利用者端末装置4を起動させる。一方、可搬記憶媒体12がメインユニット10に接続されている場合には、可搬記憶媒体12が起動ディスクに選択され、ブートローダは可搬記憶媒体12からメインメモリ36に専用OS54を読み込んで利用者端末装置4を起動する。
汎用OS40は利用者端末装置4を汎用とする。ユーザーは通常はメインユニット10に可搬記憶媒体12を接続しないことにより、利用者端末装置4で様々な処理を行うことができる。一方、専用OS54は利用者端末装置4に対し改ざん検知等のセキュリティ機能を提供する際に専用とされ、専用OS54での利用者端末装置4の処理は汎用OS40に比べ制限される。例えば、専用OS54ではハッシュ値計算プログラム56及び専用ウェブブラウザプログラム58が動作する。
ハッシュ値計算プログラム56はメインメモリ36上に展開されて実行され、改ざん有無の検査対象のソフトウェアの全体又は一部をメインユニット10から読み取り、その標本データを生成する標本生成機能を実現する。標本データは例えば、読み取った検査対象ソフトウェアを一方向性関数で圧縮した圧縮データとすることができ、本実施形態では一方向性関数としてハッシュ関数を用い、標本データとしてハッシュ値を算出する。算出されたハッシュ値は専用ウェブブラウザプログラム58によりセンタ装置6へ送信される。
専用ウェブブラウザプログラム58は接続先をセンタ装置6に固定された接続ソフトウェアであり、ハッシュ値計算プログラム56により算出されたハッシュ値をセンタ装置6へ送信する標本送信機能を実現する。また専用ウェブブラウザプログラム58は、ユーザーが目的とするサイトへのアクセスをセンタ装置6を介して実現する。
なお、例えば、プログラム格納部50はマスクROM(Read Only Memory)などの読み出し専用記憶媒体で構成される。これにより、専用OS54などの検査プログラムの改ざんなどを防止することができる。また、プログラム格納部50の格納内容をAES方式などの暗号化により保護することもでき、好適にはプログラム格納部50は読み出し専用記憶媒体で構成し、かつ暗号化を施すのがよい。
電子証明書52はユーザーごとに内容が異なるため、コスト抑制の観点からは書き換え可能な不揮発性メモリに格納することができる。その際、セキュリティを確保するため、電子証明書52は二重暗号化などを施して格納する。なお、電子証明書52を読み出し専用記憶媒体に格納してもよい。
センタ装置6はハッシュ値テーブル70、更新手段72、照合手段74及びURLフィルタ76を有する。
ハッシュ値テーブル70はコンピュータネットワーク8上に複数存在する利用者端末装置4から受信するハッシュ値それぞれの頻度を表すデータである。図2はハッシュ値テーブル70の例を示す模式図であり、ハッシュ値テーブル70はフィールド項目としてハッシュ値と検索カウントとを含んだレコード78の集合からなる。各レコードの検索カウントは当該レコードのハッシュ値が得られた検査実行数(頻度)である。ハッシュ値テーブル70はセンタ装置6の記憶装置に格納される。
更新手段72及び照合手段74はセンタ装置6のコンピュータで実行されるプログラムにより実現される。
更新手段72はハッシュ値テーブル70を生成、更新する機能を有し、複数の利用者端末装置4から受信するハッシュ値についてそれらの異同に応じて分類し、当該分類で生成されるグループ(類)ごとの頻度を計数する。
照合手段74は、受信したハッシュ値をハッシュ値テーブル70と照合し、ハッシュ値テーブル70に格納された頻度の多寡に応じて当該ハッシュ値が正常か異常かを判定し、異常と判定される低頻度のグループに属するハッシュ値を送信した利用者端末装置4へ改ざんされている可能性が高いことを通知する。
URLフィルタ76は、ユーザーが目的サイトへアクセスしようとする際に、フィッシングサイトなどではなく安全なサイトであることが確認されたURLのリスト(ホワイトリスト)を用い、当該リストに登録されたサイトにしかアクセスできないように利用者端末装置4の接続先をコントロールする。尚、URLフィルタ76は、利用者端末装置4においてファームウェアの改ざん検知をのみを目的とする場合、必須の構成ではない。
次にコンピュータセキュリティシステム2の動作について説明する。図3は利用者端末装置4の側における動作の概略のフロー図である。
コンピュータセキュリティシステム2を利用する際には、ユーザーは可搬記憶媒体12をメインユニット10に装着し、メインユニット10の電源をオンにする(ステップS101)。すると、メインユニット10のBIOSが起動し(ステップS102)、CMOSの設定値を読み込む(ステップS103)。そして、BIOSはディスプレイ14、マウス16、キーボード18、HDD32等の各デバイスへの通電を開始させ、ハードウェアの初期設定を行う(ステップS104)。これにより各デバイスがReady状態となる。
次にBIOSは可搬記憶媒体12からMBRを読み込んでブートローダを動作させ、検査プログラムが起動される。具体的には、まず、専用OS54が起動される(ステップS105)。また、専用ウェブブラウザプログラム58が起動され、センタ装置6との通信が確立される(ステップS106)。さらに、ハッシュ値計算プログラム56が起動される。
本実施形態では検査対象ソフトウェアはHDD32のファームウェアであり、ハッシュ値計算プログラム56は当該ファームウェアのハッシュ値を計算する(ステップS107)。ファームウェアの格納領域(アドレス、サイズ)はHDD32の機種などによって異なり得る。そこで、例えば、メーカーから開示を受けるなどして、種々のHDDについてのファームウェアの格納領域の情報のリストが予め作成される。ハッシュ値計算プログラム56は、HDD32から、そのメーカー、機種・型番などの情報を取得し、上述のリストを検索して当該HDD32のファームウェアの格納領域の情報を取得する。そして、ハッシュ値計算プログラム56は当該情報に基づいてファームウェアを読み取り、ハッシュ値を算出する。なお、格納領域の情報のリストは可搬記憶媒体12内に置いてもよいし、センタ装置6に置いてもよい。
なお、ハッシュ値計算プログラム56がHDD32に格納されるデータ内に組み込まれ得るマルウェアを読み込んで実行してしまうことを回避するために、専用OS54はハッシュ値の計算に必要とされる以外のHDD32へのアクセスをできない構成とすることが好適である。
ハッシュ値計算プログラム56は、算出したハッシュ値をデータセンタへ送信し(ステップS108)、センタ装置6からの判定結果を待つ(ステップS109)。
センタ装置6からの判定結果が安全を示すものである場合には(ステップS110にて「Yes」の場合)、利用者端末装置4を通常起動させることが可能である。この場合、例えば、ディスプレイ14に「安全が確認できたので検査モジュールを取り外してシステムを再起動してください」といった表示を行うなどしてユーザーに知らせる。ユーザーは、可搬記憶媒体12をメインユニット10から取り外して利用者端末装置4を再起動し、汎用OS40の下で利用者端末装置4を利用することができる。
一方、センタ装置6がHDD32のファームウェアが安全でないと判定した場合(ステップS110にて「No」の場合)、検査プログラム又はセンタ装置6は例えば、ディスプレイ14に「ハードディスクのファームウェアに問題がある可能性があります。下記連絡先にお問い合わせ下さい。」といったメッセージを表示させるなどしてユーザーへ警告する。
図4はセンタ装置6でのコンピュータセキュリティシステム2の動作の概略のフロー図である。
センタ装置6は可搬記憶媒体12の専用ウェブブラウザプログラム58による利用者端末装置4との通信接続が確立されると、利用者端末装置4からのハッシュ値の受信を待ち(ステップS201)、ハッシュ値を受信すると照合手段74がハッシュ値テーブル70との照合を行う(ステップS202)。具体的には、受信したハッシュ値をキーとしてハッシュ値テーブル70を検索し、同じハッシュ値が既に受信された回数の多寡に応じて当該ハッシュ値の改ざんに関する安全性について判定する。これは、HDD32のハッシュ値は、メーカー、製造時期、製造工場等が同じであれば同じ値が得られるという知見に基づく。そして、利用者端末装置4の母集団のうち改ざんがされる利用者端末装置4の割合は基本的に少ないとの前提の下、ハッシュ値が検知された頻度(カウント)が相対的に少ないほど当該ハッシュ値が得られた利用者端末装置4は改ざんを受けている可能性が高いと推定する。
ここで、改ざんが感染性を有するウイルスに起因するものである場合、当該ウイルスが蔓延すると上述の前提が成り立たなくなるが、コンピュータセキュリティシステム2による監視を継続して行うことでウイルスの登場や流行初期の段階を捉えることができ、当該段階では上述の前提が成り立ち、改ざんを受けた利用者端末装置4からの異常なハッシュ値を検知できる。これにより早期に対策を講じることができ、ウイルスが蔓延した状態となることを回避できる。また、仮に、ウイルスが蔓延した状態となったとしても、初期段階で検知した異常なハッシュ値は、その後においても、改ざんを受けている利用者端末装置4の判別に用いることができる。
ステップS202での照合の結果、受信したハッシュ値と同じハッシュ値のレコードがハッシュ値テーブル70に存在しない場合(ステップS203にて「No」の場合)、つまり過去のカウントが0の場合は、照合手段74は当該ハッシュ値を異常値と判定する。この場合、利用者端末装置4のHDD32のファームウェアは改ざんされているおそれが高いと推定され、よって照合手段74にて危険な状態にあると判定することとして(ステップS205)、その判定結果を利用者端末装置4へ送信する(ステップS208)。例えば、照合手段74は利用者端末装置4にハードディスクのファームウェアに問題がある可能性がある旨のメッセージを送信する。その際に上述のように問い合わせ先等の情報を追記して送信してもよい。
一方、受信したハッシュ値と同じハッシュ値のレコードがハッシュ値テーブル70に存在する場合は(ステップS203にて「Yes」の場合)、照合手段74はレコードに記録されている過去のカウントが予め設定された基準値Nthより多いか否かを調べる(ステップS204)。
ここで、ハッシュ値テーブル70に全レコードのカウントの合計Ntotが比較的小さい間は、正常なハッシュ値のカウントと異常なハッシュ値のカウントとの間に有意な多寡の違いが現れないことが考えられる。この点を考慮して、基準値Nthは十分に安全であると判定できる程度に大きな値に設定される。
過去のカウントが基準値Nth以上である場合は(ステップS204にて「Yes」の場合)、照合手段74は当該ハッシュ値を正常値と判定する。この場合、利用者端末装置4のHDD32のファームウェアには改ざんが加えられていないと推定され、よって照合手段74は安全であると判定して(ステップS206)、その判定結果を利用者端末装置4へ送信する(ステップS208)。
過去のカウントが基準値Nth未満である場合は(ステップS204にて「No」の場合)、利用者端末装置4のHDD32のファームウェアに改ざんが加えられている可能性を排除できないことから、照合手段74は当該ハッシュ値を異常値と判定する。よって、照合手段74は当該利用者端末装置4の状態を要警戒と判定して(ステップS207)、その判定結果を利用者端末装置4へ送信する(ステップS208)。
なお、Ntotが例えばNth未満である間は、正常なハッシュ値であっても要警戒と判定される。この場合は、標本数が少ないため統計的な誤差を考慮した判定であることなどの説明を判定結果と共に利用者端末装置4へ通知してもよい。
センタ装置6は利用者端末装置4から受信したハッシュ値それぞれについて、照合手段74により上述の判定処理を行い、その判定結果を利用者端末装置4へ送信する(ステップS208)と共に、更新手段72によりハッシュ値テーブル70の更新処理を行う(ステップS209)。
具体的には、更新手段72はハッシュ値テーブル70に存在しないハッシュ値を受信すると、当該ハッシュ値に対応するレコードをハッシュ値テーブル70に追加する。なお、当該追加レコードにはカウントの初期値として1が記録される。既にハッシュ値テーブル70にレコードが存在するハッシュ値を受信した場合は、当該ハッシュ値に対応するレコードに記録されるカウントを1インクリメントする。
利用者端末装置4からセンタ装置6へのアクセスに際し、センタ装置6は電子証明書52を用いたり、ユーザーにアカウント(ID)、パスワードなどの識別情報を入力させたりして、ユーザーの認証を行ってもよい。
照合手段74における、カウントの多寡に応じてハッシュ値ごとのグループが正常か異常かの判定は上述の方法に限られない。例えば、照合手段74は、ハッシュ値テーブル70に記録されたハッシュ値のカウントが受信総数Ntotに対し予め設定した割合(Rth)未満である低頻度グループを異常と判定する構成とすることができる。
さらに、上述したカウントについての閾値(Nth)やカウントのNtotに対する割合についての閾値(Rth)に基づく判定基準に加え、Ntotが予め設定した下限値未満である場合に、カウントの増加速度に基づいてグループが正常か異常かを判定する判定基準を併せて用いてもよい。
例えば、Ntotが下限値Nlow以上である場合には、上述したようにハッシュ値のカウントがNth以上であるグループ(又はそれに対応するハッシュ値)は正常であり(S206)、Nth未満であるグループは異常であると判定し(S205,S207)、一方、Ntotが下限値Nlow未満である場合には、カウントの増加速度V、つまり一定期間(例えばハッシュ値の初検知から1週間)内におけるカウントの増加数を予め定めた速度閾値Vthと比較してVがVth以上であるグループは正常であり、Vth未満の緩やかな速度Vを示すグループは異常であると判定する。これは、改ざんが感染性を有するウイルスに起因するものであるとしても、その登場後間もない時期においては拡大スピードは小さく、受信されるハッシュ値はほとんどが正常値であると期待できることによる。例えば、VthはVを定義する一定期間にハッシュ値を送信してくる利用者端末装置4の平均的な数Vaveに基づいて設定することができ、そのほとんどが正常であると推察されることから、Vaveの0.8〜0.9倍程度といったVaveに近い値にVthを設定し得る。また下限値Nlowは、正常なグループのカウントがNthを超えてステップS204にて要警戒と判定されなくなる程度となる状態でのNtotに基づいて設定することができ、当該NtotがNthのα倍(例えばαは1〜1.2程度)になる場合には、NlowもNthのα倍程度とすることができる。
また、改ざんが感染性を有するウイルスに起因するものである場合、対策を講じなければ感染の拡大スピードが増加し得ることから、カウントの増加速度Vの変化率、つまり加速度を求め、時間経過と共にVが増加する傾向を示すグループは異常であり、一方、Vが一定、又はウイルスの増殖の影響を受けて減少する傾向を示すグループは正常であるとする判定基準を用いることもできる。
なお、本願発明では、センタ装置6にて収集したハッシュ値のカウント数に基づいて、利用者端末装置4が安全か否か(HDD32のファームウェアが改ざんされていないか)を判定するが、改ざんされたHDD32のハッシュ値の情報が別途得られた場合にはカウントが多くても危険と判定する仕組みを組み込んでもよい。
また、ハードディスクメーカーからHDD32のファームウェアの安全なハッシュ値情報を取得することができる場合にはカウントが少なくても安全と判定する仕組みを組み込んでもよい。
以上、ハードディスクのファームウェアに対する改ざんを、センタ装置6で収集したファームウェアのハッシュ値の検索回数に基づいて検知する実施形態を説明したが、これは、ハードディスクのファームウェアのハッシュ値が、メーカー、製造時期、製造工場等が同じであれば一致するという知見に基づく。したがって、ハードディスクのファームウェアと同じように、ハッシュ値の値が同じ値を取得できるデータ、プログラムに対しても本発明を適用可能である。
なお、例えば、HDD32のファームウェアの改ざん有無の検査において、その検査対象は当該ファームウェアの一部分とすると、検査対象外とした部分の改ざんを検知できなくなる。よって、基本的には、検知精度を確保する上ではファームウェアの全体を検査対象とすることが好適である。一方、ウイルスが改ざんを加える部分が知られている場合には、当該部分のみを検査対象とすることで処理対象のデータ量を減らし処理負荷の軽減を図ることができる。よって、どの部分を検査対象とするかは、新たに現れるウイルスの特徴に応じて適宜選択してもよい。
改ざんの検知はハッシュ値ではなくファームウェアのコード自体の照合によっても可能である。しかし、ファームウェアのコードを利用者端末装置4からセンタ装置6へ送信すると、通信負荷が大きくなる。また当該コードが漏洩して当該ファームウェアを攻撃するマルウェアの開発が容易となり得ることも懸念される。よって、上述の実施形態ではハッシュ値をセンタ装置6へ送信し照合する構成としている。この点、可搬記憶媒体12にハッシュ値計算プログラム56に代えて、圧縮したり暗号化したりする別途の手段を備え、当該手段で変換されたデータをセンタ装置6へ送信する構成としてもよい。
上述したコンピュータセキュリティシステム2によれば、ユーザーは、利用者端末装置4内蔵のHDD32のファームウェアが例えばウイルスに感染しているとしても、可搬記憶媒体12内の専用OS54から起動させたチェックプログラム及びセンタ装置6により、HDD32のファームウェアに加えられた改ざんを安全に検出でき、ウイルス感染のおそれなどを検知可能となる。
なお、上述の構成では、専用OS54上での利用者端末装置4とセンタ装置6との通信には専用ウェブブラウザプログラム58を用いるとしたが、他の通信ソフトウェアを用いてもよい。
ここで、専用ウェブブラウザプログラム58は、HDD32のファームウェアがウイルスに汚染されている場合に、その影響を受け得る汎用ウェブブラウザプログラム42に代わり、ユーザーが目的サイトへアクセスすることを可能とする。例えば、照合手段74は改ざんを検知した場合に、可搬記憶媒体12を取り外した状態では利用者端末装置4を起動しないようにユーザーに促すと共に、当該状態におけるユーザーのウェブサイトへのアクセス要求に対し専用ウェブブラウザプログラム58はセンタ装置6を介してのみ当該ウェブサイトにアクセス可能なように制限することができる。センタ装置6はユーザーのアクセスしようとする目的サイトが安全であるかをURLフィルタ76にて確認し、HDD32に感染したウイルス等により偽サイトへ誘導されることを防止する。これにより、ファームウェアがマルウェアに汚染されていたとしても、可搬記憶媒体12から利用者端末装置4を起動することで、HDD32からマルウェアを駆除する等の対処が完了する前でも、外部のウェブサイトに安全にアクセスすることが可能となる。
2 コンピュータセキュリティシステム、4 利用者端末装置、6 センタ装置、8 コンピュータネットワーク、10 メインユニット、12 可搬記憶媒体、14 ディスプレイ、16 マウス、18 キーボード、30 処理部、32 HDD、34 CPU、36 メインメモリ、38 ファームウェア、40 汎用OS、42 汎用ウェブブラウザプログラム、50 プログラム格納部、52 電子証明書、54 専用OS、56 ハッシュ値計算プログラム、58 専用ウェブブラウザプログラム、70 ハッシュ値テーブル、72 更新手段、74 照合手段、76 URLフィルタ、78 レコード。

Claims (7)

  1. 本体装置内の検査対象ソフトウェアに加えられた改ざんを検知するシステムであって、
    前記本体装置を制御するオペレーティングシステムを含み、前記本体装置をブート可能な検査プログラムを格納し、検査時に前記本体装置に接続される検査モジュールと、
    検査時にコンピュータネットワークを介して前記本体装置と接続されるセンタ装置と、
    を含み、
    前記本体装置は、前記検査モジュールが当該本体装置に接続された状態では、前記検査モジュールをブートデバイスとして選択して前記検査プログラムを起動させ、
    前記検査プログラムは、
    前記検査対象ソフトウェアを読み取り、前記検査対象ソフトウェアを一方向性関数で圧縮した圧縮データである標本データを所定の方法で生成する標本生成機能と、
    前記標本データを前記本体装置から前記センタ装置へ送信する標本送信機能と、
    を実現し、
    前記センタ装置は、複数の前記本体装置から受信する前記標本データについてそれらの異同に応じて類に分け当該類ごとの頻度を求める処理、及び予め定めた基準に基づき前記頻度の多寡に応じて前記類が正常か異常かを判定し、異常と判定される低頻度の前記類に属する前記標本データを送信した前記本体装置へ前記改ざんを検知したことを通知する処理を行うこと、
    を特徴とするソフトウェア改ざん検知システム。
  2. 請求項1に記載のソフトウェア改ざん検知システムにおいて、
    前記検査対象ソフトウェアは、前記本体装置のハードディスクのファームウェアの少なくとも一部を含むこと、を特徴とするソフトウェア改ざん検知システム。
  3. 請求項1又は請求項2に記載のソフトウェア改ざん検知システムにおいて、
    前記圧縮データは、前記検査対象ソフトウェアを前記一方向性関数としてハッシュ関数を用いて算出したハッシュ値であること、を特徴とするソフトウェア改ざん検知システム。
  4. 請求項1から請求項3のいずれか1つに記載のソフトウェア改ざん検知システムにおいて、
    前記センタ装置は、前記頻度が予め設定した閾値未満である低頻度類を異常と判定すること、を特徴とするソフトウェア改ざん検知システム。
  5. 請求項1から請求項3のいずれか1つに記載のソフトウェア改ざん検知システムにおいて、
    前記センタ装置は、前記頻度が前記標本データの受信総数に対し予め設定した割合未満である低頻度類を異常と判定すること、を特徴とするソフトウェア改ざん検知システム。
  6. 請求項4又は請求項5に記載のソフトウェア改ざん検知システムにおいて、
    前記センタ装置は、前記標本データの受信総数が予め設定した下限値未満である場合に、前記頻度の増加速度に基づいて前記類が正常か異常かを判定すること、を特徴とするソフトウェア改ざん検知システム。
  7. 請求項1から請求項6のいずれか1つに記載のソフトウェア改ざん検知システムを用いたネットワークセキュリティシステムであって、
    前記検査モジュールは、前記検査プログラムの前記オペレーティングシステム上で動作し、コンピュータネットワーク上において、ユーザーにより操作される前記本体装置と当該ユーザーがアクセスを意図する目的サイトとの通信接続を行う接続ソフトウェアを格納し、
    前記接続ソフトウェアは、前記改ざんが検知された場合には、前記センタ装置を中継して前記通信接続を行うこと、
    を特徴とするネットワークセキュリティシステム。
JP2015167790A 2015-08-27 2015-08-27 ソフトウェア改ざん検知システム、及びネットワークセキュリティシステム Active JP6591832B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015167790A JP6591832B2 (ja) 2015-08-27 2015-08-27 ソフトウェア改ざん検知システム、及びネットワークセキュリティシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015167790A JP6591832B2 (ja) 2015-08-27 2015-08-27 ソフトウェア改ざん検知システム、及びネットワークセキュリティシステム

Publications (2)

Publication Number Publication Date
JP2017045308A JP2017045308A (ja) 2017-03-02
JP6591832B2 true JP6591832B2 (ja) 2019-10-16

Family

ID=58210305

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015167790A Active JP6591832B2 (ja) 2015-08-27 2015-08-27 ソフトウェア改ざん検知システム、及びネットワークセキュリティシステム

Country Status (1)

Country Link
JP (1) JP6591832B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102035076B1 (ko) * 2017-11-22 2019-10-23 한국시스템보증(주) 통신 디바이스의 펌웨어 변조를 검출하는 장치 및 방법
JP7227086B2 (ja) * 2019-06-21 2023-02-21 ファナック株式会社 正当性確認機器

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8336100B1 (en) * 2009-08-21 2012-12-18 Symantec Corporation Systems and methods for using reputation data to detect packed malware
JP2012008641A (ja) * 2010-06-22 2012-01-12 Toshiba Tec Corp セキュリティデバイス及び情報処理装置
US9147071B2 (en) * 2010-07-20 2015-09-29 Mcafee, Inc. System and method for proactive detection of malware device drivers via kernel forensic behavioral monitoring and a back-end reputation system
US8671449B1 (en) * 2010-11-10 2014-03-11 Symantec Corporation Systems and methods for identifying potential malware
GB2508893A (en) * 2012-12-14 2014-06-18 Ibm Trusted boot device, which will not allow a computer to boot, if the computer firmware is not trusted by the boot device

Also Published As

Publication number Publication date
JP2017045308A (ja) 2017-03-02

Similar Documents

Publication Publication Date Title
KR102137773B1 (ko) 보안 애플리케이션을 통해 안전한 데이터를 전송하기 위한 시스템 및 그에 관한 방법
US9614867B2 (en) System and method for detection of malware on a user device using corrected antivirus records
US7779062B2 (en) System for preventing keystroke logging software from accessing or identifying keystrokes
EP2786295B1 (en) Preventing execution of task scheduled malware
US20140053267A1 (en) Method for identifying malicious executables
JP5265061B1 (ja) 悪意のあるファイル検査装置及び方法
JP2014509421A (ja) Usbホストシステムの拡張usbプロトコルスタックのためのセキュリティ手段
EP3270318B1 (en) Dynamic security module terminal device and method for operating same
JP6030566B2 (ja) 不正アプリケーション検知システム及び、方法
JP6000465B2 (ja) プロセス検査装置、プロセス検査プログラムおよびプロセス検査方法
CN109117643B (zh) 系统处理的方法以及相关设备
US20200104503A1 (en) Information processing apparatus, information processing method, and computer readable medium
US8646084B1 (en) Securing file launch activity utilizing safety ratings
US20220337604A1 (en) System And Method For Secure Network Access Of Terminal
CN110245495A (zh) Bios校验方法、配置方法、设备及系统
CN110619214A (zh) 一种监控软件正常运行的方法和装置
CN105791250B (zh) 应用程序检测方法及装置
JP6591832B2 (ja) ソフトウェア改ざん検知システム、及びネットワークセキュリティシステム
WO2020007249A1 (zh) 一种操作系统安全主动防御方法及操作系统
WO2017068714A1 (ja) 不正通信制御装置および方法
KR20180044507A (ko) 지능형 지속위협 환경의 네트워크 복구 시스템
KR101904415B1 (ko) 지능형 지속위협 환경에서의 시스템 복구 방법
JP2015162225A (ja) ウェブ中継サーバ装置、及びウェブページ閲覧システム
TWI844823B (zh) 在一開蓋竄改事件中使一安全啟動失敗的電腦系統和方法
US20230267209A1 (en) System and method for preserving forensic computer data

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180531

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190312

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190509

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: 20190910

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190919

R150 Certificate of patent or registration of utility model

Ref document number: 6591832

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350