(57)【要約】      （修正有）【課題】  セキュリティホールに修正プログラムを適用することなく、第三者による不正なアクセスからコンピュータを守ることができるようにする。【解決手段】  条件記録部１４に記録されているコマンド別の実行許可条件の中から、コマンド解析部１３により解析されたコマンドに対応する実行許可条件を取得して、その実行許可条件を満足しているか否かを判定する条件判定手段を設け、その条件判定手段の判定結果が実行許可条件を満足している旨を示していれば、そのコマンドをコンピュータ７のオペレーティングシステム７ａに渡し、その判定結果が実行許可条件を満足していない旨を示していれば、そのコマンドを廃棄する。【選択図】        図３
2006277063.tif 000002
【特許請求の範囲】
【請求項１】
コマンドの入力を監視する入力監視手段と、コマンド別に実行許可条件を記録している条件記録手段と、上記入力監視手段によりコマンドの入力が検出されると、そのコマンドを解析するコマンド解析手段と、上記条件記録手段に記録されている実行許可条件の中から、上記コマンド解析手段により解析されたコマンドに対応する実行許可条件を取得し、その実行許可条件を満足しているか否かを判定する条件判定手段と、上記条件判定手段の判定結果が実行許可条件を満足している旨を示していれば、そのコマンドをオペレーティングシステムに渡し、その判定結果が実行許可条件を満足していない旨を示していれば、そのコマンドを廃棄するゲート手段とを備えたハッキング防御装置。
【請求項２】
条件判定手段は、コマンド解析手段により解析されたコマンドに対応する実行許可条件が認証の取得である場合、認証処理を実施して、認証が正常に取得されるか否かを判定することを特徴とする請求項１記載のハッキング防御装置。
【請求項３】
条件判定手段は、コマンド解析手段により解析されたコマンドに対応する実行許可条件が所定の外部デバイスの接続である場合、所定の外部デバイスの接続確認を実施して、所定の外部デバイスが接続されているか否かを判定することを特徴とする請求項１記載のハッキング防御装置。
【請求項４】
条件判定手段は、コマンド解析手段により解析されたコマンドに対応する実行許可条件が指定のプロセスの起動である場合、指定のプロセスの起動確認を実施して、指定のプロセスが起動されているか否かを判定することを特徴とする請求項１記載のハッキング防御装置。
【請求項５】
条件判定手段は、コマンド解析手段により解析されたコマンドに対応する実行許可条件が指定のカレントディレクトリである場合、現在のカレントディレクトリを確認して、現在のカレントディレクトリが指定のカレントディレクトリであるか否かを判定することを特徴とする請求項１記載のハッキング防御装置。
【請求項６】
入力監視手段は、条件判定手段の判定結果が実行許可条件を満足していない旨を示している場合、一定期間、コマンドの入力を拒否することを特徴とする請求項１から請求項５のうちのいずれか１項記載のハッキング防御装置。
【請求項７】
条件判定手段の判定結果が実行許可条件を満足していない旨を示している場合、ログを保管するログ保管手段を設けたことを特徴とする請求項１から請求項６のうちのいずれか１項記載のハッキング防御装置。
【請求項８】
ゲート手段は、条件判定手段の判定結果が実行許可条件を満足している旨を示している場合でも、コマンド解析手段により解析されたコマンドに文字列が付加されており、そのコマンドと文字列の組み合わせが所定の文字列と一致する場合、そのコマンドと文字列を廃棄することを特徴とする請求項１から請求項７のうちのいずれか１項記載のハッキング防御装置。
【請求項９】
ゲート手段は、条件判定手段の判定結果が実行許可条件を満足している旨を示している場合でも、コマンド解析手段により解析されたコマンドがソフトウェアのインストールを実行するコマンドであり、そのソフトウェアがインストールが許可されていないソフトウェアであれば、そのコマンドを廃棄することを特徴とする請求項１から請求項８のうちのいずれか１項記載のハッキング防御装置。
【請求項１０】
コマンドの入力を監視する入力監視機能と、コマンド別に実行許可条件を記録している条件記録機能と、上記入力監視機能によりコマンドの入力が検出されると、そのコマンドを解析するコマンド解析機能と、上記条件記録機能に記録されている実行許可条件の中から、上記コマンド解析機能により解析されたコマンドに対応する実行許可条件を取得し、その実行許可条件を満足しているか否かを判定する条件判定機能と、上記条件判定機能の判定結果が実行許可条件を満足している旨を示していれば、そのコマンドをオペレーティングシステムに渡し、その判定結果が実行許可条件を満足していない旨を示していれば、そのコマンドを廃棄するゲート機能とをコンピュータに実現させるためのハッキング防御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば、サーバやパーソナルコンピュータ上で利用することが可能なコマンドを制限することにより、第三者による不正なコマンドの実行を防止するハッキング防御装置及びハッキング防御プログラムに関するものである。
【背景技術】
【０００２】
近年オペレーティングシステムやサーバＳ／Ｗの脆弱性（セキュリティホール）が多数報告されており、それらのセキュリティホールを利用した不正アクセスが頻繁に発生している。
従来のハッキング防御装置は、不正アクセスからコンピュータを守るため、セキュリティホールの存在を検証するとともに、そのセキュリティホールに対する修正プログラムの適用状況を監視するようにしている（例えば、特許文献１参照）。
【０００３】
なお、セキュリティホールに修正プログラムを適用すれば、通常、そのセキュリティホールを排除することができるが、その修正プログラムを適用することにより、コンピュータの動作が不安定になることがある。
また、コンピュータが大規模システムを構築しているような場合には、修正プログラムを適用するためだけに、コンピュータを停止することができない場合もある。
【０００４】
【特許文献１】特開２００４−２５９１９７号公報（段落番号［００１３］、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のハッキング防御装置は以上のように構成されているので、すべてのセキュリティホールを検出して、そのセキュリティホールに修正プログラムを適用すれば、不正アクセスからコンピュータを守ることができる。しかし、修正プログラムを適用することにより、コンピュータの動作が不安定になることがある。また、コンピュータが構築しているシステムによっては、修正プログラムを適用するためにコンピュータを停止することができず、セキュリティホールを完全に排除することができないなどの課題があった。
【０００６】
この発明は上記のような課題を解決するためになされたもので、セキュリティホールに修正プログラムを適用することなく、第三者による不正なアクセスからコンピュータを守ることができるハッキング防御装置及びハッキング防御プログラムを得ることを目的とする。
【課題を解決するための手段】
【０００７】
この発明に係るハッキング防御装置は、条件記録手段に記録されているコマンド別の実行許可条件の中から、コマンド解析手段により解析されたコマンドに対応する実行許可条件を取得して、その実行許可条件を満足しているか否かを判定する条件判定手段を設け、その条件判定手段の判定結果が実行許可条件を満足している旨を示していれば、そのコマンドをオペレーティングシステムに渡し、その判定結果が実行許可条件を満足していない旨を示していれば、そのコマンドを廃棄するようにしたものである。
【発明の効果】
【０００８】
この発明によれば、条件記録手段に記録されているコマンド別の実行許可条件の中から、コマンド解析手段により解析されたコマンドに対応する実行許可条件を取得して、その実行許可条件を満足しているか否かを判定する条件判定手段を設け、その条件判定手段の判定結果が実行許可条件を満足している旨を示していれば、そのコマンドをオペレーティングシステムに渡し、その判定結果が実行許可条件を満足していない旨を示していれば、そのコマンドを廃棄するように構成したので、セキュリティホールに修正プログラムを適用することなく、第三者による不正なアクセスからコンピュータを守ることができる効果がある。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
図１はこの発明の実施の形態１によるハッキング防御装置が適用されるシステムを示す構成図であり、図において、正当コンピュータ１は正規のユーザが使用するコンピュータであり、不正コンピュータ２は不正侵入を試みる侵入者が使用するコンピュータである。正当コンピュータ１及び不正コンピュータ２はインターネット３などのネットワークに接続されている。
ファイヤーウォール（以下、Ｆ／Ｗと称する）４はＴＣＰ／ＩＰのサービスレベルで、外部からの不正アクセスを防御するネットワーク機器である。
ハッキング防御装置６は入力されたコマンドに対応する実行許可条件を満足している場合に限り、そのコマンドをコンピュータ７のオペレーティングシステムに渡し、その実行許可条件を満足していなければ、そのコマンドを廃棄する処理を実施する。
防御対象のコンピュータ（例えば、サーバ、パーソナルコンピュータ）７はＬＡＮ５を介してＦ／Ｗ４と接続されており、ハッキング防御装置６を内蔵している。
【００１０】
図１の例では、ハッキング防御装置６が防御対象のコンピュータ７に内蔵されているものを示しているが、図２に示すように、Ｆ／Ｗ４とコンピュータ７の間にハッキング防御装置６を配置するようにしてもよい。
【００１１】
図３はこの発明の実施の形態１によるハッキング防御装置を示す構成図であり、図において、ネットワークＩ／Ｆ部１１はＬＡＮ５を介してＦ／Ｗ４と接続され、不正コンピュータ２などから送信されたコマンドがＦ／Ｗ４を通過してくると、そのコマンドを受信する処理を実施する。
入力監視部１２はネットワークＩ／Ｆ部１１におけるコマンドの受信状況を監視する処理を実施する。
なお、ネットワークＩ／Ｆ部１１及び入力監視部１２から入力監視手段が構成されている。
【００１２】
コマンド解析部１３は入力監視部１２によりコマンドの受信が検出されると、ネットワークＩ／Ｆ部１１により受信されたコマンドを解析して、そのコマンドを構成している文字列を特定する処理を実施する。なお、コマンド解析部１３はコマンド解析手段を構成している。
専用ポリシーである条件記録部１４はコマンド別に実行許可条件を記録しているメモリテーブルである。なお、条件記録部１４は条件記録手段を構成している。
【００１３】
実行許可条件取得部１５は条件記録部１４に記録されている実行許可条件の中から、コマンド解析部１３により解析されたコマンドに対応する実行許可条件を取得する処理を実施する。
コマンド実行認証部１６は実行許可条件取得部１５により取得された実行許可条件が認証の取得である場合、認証処理を実施して、認証が正常に取得されるか否かを判定する処理を実施する。
コマンド認証ＤＢ１７は予め登録されている正規のユーザのユーザＩＤとパスワードを保管しているデータベースである。
【００１４】
デバイス監視部１８は実行許可条件取得部１５により取得された実行許可条件が所定の外部デバイス（例えば、キーボード２２、マウス２３）の接続である場合、所定の外部デバイスの接続確認を実施して、所定の外部デバイスが接続されているか否かを判定する処理を実施する。
プロセス監視部１９は実行許可条件取得部１５により取得された実行許可条件が指定のプロセスの起動である場合、指定のプロセスの起動確認を実施して、指定のプロセスが起動されているか否かを判定する処理を実施する。
ディレクトリ監視部２０は実行許可条件取得部１５により取得された実行許可条件が指定のカレントディレクトリである場合、現在のカレントディレクトリを確認して、現在のカレントディレクトリが指定のカレントディレクトリであるか否かを判定する処理を実施する。
なお、実行許可条件取得部１５、コマンド実行認証部１６、コマンド認証ＤＢ１７、デバイス監視部１８、プロセス監視部１９及びディレクトリ監視部２０から条件判定手段が構成されている。
【００１５】
ゲート部２１はコマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０の判定結果が実行許可条件を満足している旨を示していれば、そのコマンドを防御対象のコンピュータ７のオペレーティングシステム７ａに渡し、その判定結果が実行許可条件を満足していない旨を示していれば、そのコマンドを廃棄する処理を実施する。なお、ゲート部２１はゲート手段を構成している。
キーボード２２及びマウス２３は例えば管理者がハッキング防御装置６をメンテナンスする場合などに使用するマンマシンＩ／Ｆ（外部デバイス）であり、ハッキング防御装置６の通常運用時にはハッキング防御装置６から外され、メンテナンス時にはハッキング防御装置６に接続される。
【００１６】
なお、この実施の形態１では、ハッキング防御装置６の構成要素（ネットワークＩ／Ｆ部１１、入力監視部１２、コマンド解析部１３、条件記録部１４、実行許可条件取得部１５、コマンド実行認証部１６、コマンド認証ＤＢ１７、デバイス監視部１８、プロセス監視部１９、ディレクトリ監視部２０、ゲート部２１）が専用のハードウェア（例えば、ＭＰＵなどのマイクロプロセッサを実装している半導体集積回路基板）から構成されていることを想定しているが、ハッキング防御装置６がコンピュータから構成されている場合、条件記録部１４やコマンド認証ＤＢ１７の記録内容がコンピュータのメモリに格納され、また、ネットワークＩ／Ｆ部１１、入力監視部１２、コマンド解析部１３、実行許可条件取得部１５、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９、ディレクトリ監視部２０及びゲート部２１の処理内容が記述されたプログラム（ハッキング防御プログラム）がコンピュータのメモリに格納され、コンピュータの中央処理装置であるＣＰＵが当該メモリに格納されているプログラムを実行するようにしてもよい。
【００１７】
次に動作について説明する。
正規のユーザがコンピュータ７にアクセスする必要がある場合（例えば、コンピュータ７に保管されている画像データを入手する必要がある場合）、正当コンピュータ１を操作して、正当コンピュータ１からコマンド（例えば、画像データの送信を要求するコマンド）をコンピュータ７に送信する。
また、ハッカーなどの不正者がコンピュータ７に保管されている秘密情報を入手したり、コンピュータに保管されている情報を改竄したりするなどの不正行為を実施する場合は、不正コンピュータ２を操作して、不正コンピュータ２からコマンドをコンピュータ７に送信する。
【００１８】
正当コンピュータ１から送信されたコマンドや不正コンピュータ２から送信されたコマンドは、インターネット２を通じてＦ／Ｗ４に到達する。
Ｆ／Ｗ４は、正当コンピュータ１又は不正コンピュータ２から送信されたコマンドが、ＴＣＰ／ＩＰのサービスレベルで不正があれば、そのコマンドを廃棄するが、ＴＣＰ／ＩＰのサービスレベルで不正が見つからなければ、そのコマンドをＬＡＮ５を介してハッキング防御装置６に出力する。
ここでは、説明の便宜上、正当コンピュータ１から送信されたコマンドだけでなく、不正コンピュータ２から送信されたコマンドも、ＴＣＰ／ＩＰのサービスレベルで不正が見つからずに、ハッキング防御装置６に出力されるものとする。
【００１９】
ハッキング防御装置６のネットワークＩ／Ｆ部１１は、上記のようにして、Ｆ／Ｗ４がコマンドを出力すると、そのコマンドの受信処理を実施する。
ハッキング防御装置６の入力監視部１２は、ネットワークＩ／Ｆ部１１におけるコマンドの受信状況を監視し、ネットワークＩ／Ｆ部１１がコマンドを受信したことを検出すると、その旨をコマンド解析部１３に通知する。
ハッキング防御装置６のコマンド解析部１３は、入力監視部１２からコマンドの検出通知を受けると、ネットワークＩ／Ｆ部１１により受信されたコマンドを解析して、そのコマンドを構成している文字列を特定する処理を実施する。
即ち、コマンドを構成している文字列を特定して、そのコマンドが如何なる内容を要求しているコマンドであるのかを解析する。
【００２０】
ここで、条件記録部１４には、図４に示すように、コマンド別に実行許可条件が記録されている。
図４の例では、コマンド解析部１３により解析されたコマンドが“コマンドＡ”，“コマンドＢ”であれば、実行許可条件（１）として、そのコマンドを無条件で実行を許可する旨が記載されている。
また、コマンド解析部１３により解析されたコマンドが“コマンドＥ”，“コマンドＦ”であれば、実行許可条件（２）として、ユーザＩＤ／パスワードによる認証取得が必要であり、コマンドの送信元がユーザＣ又はユーザＤであることが認められる場合に限り、そのコマンドの実行を許可する旨が記載されている。
【００２１】
コマンド解析部１３により解析されたコマンドが“コマンドＧ”であれば、実行許可条件（３）として、所定の外部デバイスの接続確認が必要であり、所定の外部デバイスが接続されている場合に限り、そのコマンドの実行を許可する旨が記載されている。
また、コマンド解析部１３により解析されたコマンドが“コマンドＨ”であれば、実行許可条件（４）として、指定のプロセス（例えば、ａｌｌｏｗ．ｅｘｅ）の起動確認が必要であり、指定のプロセスが起動されている場合に限り、そのコマンドの実行を許可する旨が記載されている。
【００２２】
さらに、コマンド解析部１３により解析されたコマンドが“コマンドＩ”，“コマンドＪ”であれば、実行許可条件（５）として、現在のカレントディレクトリを確認する必要があり、現在のカレントディレクトリが指定のカレントディレクトリ（例えば、／ｍｅｌ／ｃｏｍ）である場合に限り、そのコマンドの実行を許可する旨が記載されている。
コマンド解析部１３により解析されたコマンドが上記のコマンド以外であれば、実行許可条件（６）として、そのコマンドを無条件に実行を拒否する旨が記載されている。
【００２３】
ハッキング防御装置６の実行許可条件取得部１５は、コマンド解析部１３がネットワークＩ／Ｆ部１１により受信されたコマンドを解析すると、条件記録部１４に記録されている実行許可条件の中から、そのコマンドに対応する実行許可条件を取得する処理を実施する。
例えば、コマンド解析部１３により解析されたコマンドが“コマンドＡ”，“コマンドＢ”であれば、条件記録部１４から実行許可条件（１）を取得する。その実行許可条件（１）は、無条件でコマンドの実行を許可しているので、そのコマンドをゲート部２１に出力するとともに、コンピュータ７に対するコマンドの出力許可通知をゲート部２１に出力する。
【００２４】
また、コマンド解析部１３により解析されたコマンドが“コマンドＥ”，“コマンドＦ”であれば、条件記録部１４から実行許可条件（２）を取得する。その実行許可条件（２）は、ユーザＩＤ／パスワードによる認証の取得を条件にしているので、その実行許可条件（２）をコマンド実行認証部１６に出力するとともに、そのコマンドをゲート部２１に出力する。
コマンド解析部１３により解析されたコマンドが“コマンドＧ”であれば、条件記録部１４から実行許可条件（３）を取得する。その実行許可条件（３）は、所定の外部デバイスの接続を条件にしているので、その実行許可条件（３）をデバイス監視部１８に出力するとともに、そのコマンドをゲート部２１に出力する。
【００２５】
また、コマンド解析部１３により解析されたコマンドが“コマンドＨ”であれば、条件記録部１４から実行許可条件（４）を取得する。その実行許可条件（４）は、指定のプロセスの起動を条件にしているので、その実行許可条件（４）をプロセス監視部１９に出力するとともに、そのコマンドをゲート部２１に出力する。
さらに、コマンド解析部１３により解析されたコマンドが“コマンドＩ”，“コマンドＪ”であれば、条件記録部１４から実行許可条件（５）を取得する。その実行許可条件（５）は、指定のカレントディレクトリであることを条件にしているので、その実行許可条件（５）をディレクトリ監視部２０に出力するとともに、そのコマンドをゲート部２１に出力する。
コマンド解析部１３により解析されたコマンドが上記のコマンド以外であれば、条件記録部１４から実行許可条件（６）を取得する。その実行許可条件（６）は、無条件拒否であるので、そのコマンドを廃棄する。
【００２６】
ハッキング防御装置６のコマンド実行認証部１６は、実行許可条件取得部１５から実行許可条件（２）を受けると、実行許可条件が“認証の取得”を条件としているため、ネットワークＩ／Ｆ部１１を介して、ユーザＩＤとパスワードの入力を要求するメッセージをコマンド送信元のコンピュータ（正当コンピュータ１又は不正コンピュータ２）に送信する。
これにより、正規のユーザ又は不正者が、正当コンピュータ１又は不正コンピュータ２を操作してユーザＩＤとパスワードを入力し、正当コンピュータ１又は不正コンピュータ２からユーザＩＤとパスワードが送信されてくると、コマンド実行認証部１６がネットワークＩ／Ｆ部１１を介して、ユーザＩＤとパスワードを受信する。
【００２７】
コマンド実行認証部１６は、ユーザＩＤ／パスワードを受信すると、コマンド認証ＤＢ１７に予め登録されている正規のユーザのユーザＩＤ／パスワードの中に、その受信したユーザＩＤ／パスワードと一致するユーザＩＤ／パスワードが存在しているか否かを判定する。
この例では、ユーザＣとユーザＤのユーザＩＤ／パスワードがコマンド認証ＤＢ１７に登録されているので、コマンド送信元のコンピュータの使用者がユーザＣ又はユーザＤであれば、一致するユーザＩＤ／パスワードが存在し、認証に成功する。
一方、コマンド送信元のコンピュータの使用者がユーザＣ，Ｄ以外であれば、一致するユーザＩＤ／パスワードが存在しないため、認証に失敗する。
コマンド実行認証部１６は、認証に成功すれば、コンピュータ７に対するコマンドの出力許可通知をゲート部２１に出力し、認証に失敗すれば、コンピュータ７に対するコマンドの出力拒否通知をゲート部２１に出力する。
【００２８】
ハッキング防御装置６のデバイス監視部１８は、実行許可条件取得部１５から実行許可条件（３）を受けると、実行許可条件が“所定の外部デバイス（例えば、キーボード２２、マウス２３）が接続されていること”を条件としているため、所定の外部デバイス（例えば、キーボード２２、マウス２３）が接続されているか否かを確認する。
デバイス監視部１８は、所定の外部デバイスが接続されている場合には、コンピュータ７に対するコマンドの出力許可通知をゲート部２１に出力し、所定の外部デバイスが接続されていない場合には、コンピュータ７に対するコマンドの出力拒否通知をゲート部２１に出力する。
【００２９】
ハッキング防御装置６のプロセス監視部１９は、実行許可条件取得部１５から実行許可条件（４）を受けると、実行許可条件が“指定のプロセス（例えば、ａｌｌｏｗ．ｅｘｅ）が起動されていること”を条件としているため、指定のプロセスが起動されているか否かを確認する。
プロセス監視部１９は、指定のプロセス（例えば、ａｌｌｏｗ．ｅｘｅ）が起動されている場合には、コンピュータ７に対するコマンドの出力許可通知をゲート部２１に出力し、指定のプロセスが起動されていない場合には、コンピュータ７に対するコマンドの出力拒否通知をゲート部２１に出力する。
【００３０】
ハッキング防御装置６のディレクトリ監視部２０は、実行許可条件取得部１５から実行許可条件（５）を受けると、実行許可条件が“現在のカレントディレクトリが指定のカレントディレクトリ（例えば、／ｍｅｌ／ｃｏｍ）にあること”を条件としているため、現在のカレントディレクトリが指定のカレントディレクトリであるか否かを確認する。
ディレクトリ監視部２０は、現在のカレントディレクトリが指定のカレントディレクトリ（例えば、／ｍｅｌ／ｃｏｍ）にあれば、コンピュータ７に対するコマンドの出力許可通知をゲート部２１に出力し、現在のカレントディレクトリが指定のカレントディレクトリになければ、コンピュータ７に対するコマンドの出力拒否通知をゲート部２１に出力する。
【００３１】
ハッキング防御装置６のゲート部２１は、実行許可条件取得部１５、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力許可通知を受けると、実行許可条件取得部１５から出力されたコマンドをコンピュータ７のオペレーティングシステム７ａに出力する。
これにより、コンピュータ７のオペレーティングシステム７ａは、そのコマンドが指定する要求に応じた動作を行う。
【００３２】
ゲート部２１は、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力拒否通知を受けると、実行許可条件取得部１５から出力されたコマンドをコンピュータ７のオペレーティングシステム７ａに出力せずに廃棄する。
これにより、コンピュータ７のオペレーティングシステム７ａは、不正者から送信された可能性が高いコマンドにしたがって動作せずに済み、コンピュータ７を不正アクセスから守ることができる。
【００３３】
以上で明らかなように、この実施の形態１によれば、条件記録部１４に記録されているコマンド別の実行許可条件の中から、コマンド解析部１３により解析されたコマンドに対応する実行許可条件を取得して、その実行許可条件を満足しているか否かを判定する条件判定手段を設け、その条件判定手段の判定結果が実行許可条件を満足している旨を示していれば、そのコマンドをコンピュータ７のオペレーティングシステム７ａに渡し、その判定結果が実行許可条件を満足していない旨を示していれば、そのコマンドを廃棄するように構成したので、セキュリティホールに修正プログラムを適用することなく、第三者による不正なアクセスからコンピュータ７を守ることができる効果を奏する。
【００３４】
また、この実施の形態１によれば、コマンド解析部１３により解析されたコマンドに対応する実行許可条件が認証の取得である場合、認証処理を実施して、認証が正常に取得されるか否かを判定するように構成したので、予め正規に登録されたユーザ以外のアクセスを拒否して、第三者による不正コマンドの実行を防止することができる効果を奏する。
【００３５】
この実施の形態１によれば、コマンド解析部１３により解析されたコマンドに対応する実行許可条件が所定の外部デバイスの接続である場合、所定の外部デバイスの接続確認を実施して、所定の外部デバイスが接続されているか否かを判定するように構成したので、例えば、管理者がハッキング防御装置６をメンテナンスするとき以外の通常運用時には、ハッキング防御装置６から所定の外部デバイスを外すようにしていれば、所定のコマンドＧの実行を制限することができるようになり、不正者による所定のコマンドＧの実行を防止することができる効果を奏する。
【００３６】
さらに、この実施の形態１によれば、コマンド解析部１３により解析されたコマンドに対応する実行許可条件が指定のプロセスの起動である場合、指定のプロセスの起動確認を実施して、指定のプロセスが起動されているか否かを判定するように構成したので、通常運用時には、指定のプロセスを止めておけば、所定のコマンドＨの実行を制限することができるようになり、不正者による所定のコマンドＨの実行を防止することができる効果を奏する。
【００３７】
また、この実施の形態１によれば、コマンド解析部１３により解析されたコマンドに対応する実行許可条件が指定のカレントディレクトリである場合、現在のカレントディレクトリを確認して、現在のカレントディレクトリが指定のカレントディレクトリであるか否かを判定するように構成したので、指定のカレントディレクトリを知らない第三者のアクセスを拒否して、第三者による所定のコマンドＩ，Ｊの実行を防止することができる効果を奏する。
【００３８】
実施の形態２．
上記実施の形態１では、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力拒否通知を受けると、実行許可条件取得部１５から出力されたコマンドをコンピュータ７のオペレーティングシステム７ａに出力せずに廃棄するものについて示したが、さらに、一定期間、コマンドの入力を拒否するようにしてもよい。
【００３９】
即ち、ゲート部２１は、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力拒否通知を受けると、上記実施の形態１と同様に、実行許可条件取得部１５から出力されたコマンドをコンピュータ７のオペレーティングシステム７ａに出力せずに廃棄する。
また、コマンド実行認証部１６は、処理オプションとして、“一定時間入力無視”が設定されている場合において（図４を参照）、認証に失敗すると、図５に示すように、コマンドの入力拒否通知を入力監視部１２に出力する。
入力監視部１２は、コマンド実行認証部１６からコマンドの入力拒否通知を受けると、一定期間、ネットワークＩ／Ｆ部１１がコマンドを受信しないように制御する。
【００４０】
以上で明らかなように、この実施の形態２によれば、条件判定手段の判定結果が実行許可条件を満足していない旨を示している場合、一定期間、コマンドの入力を拒否するように構成したので、上記実施の形態１よりも更に厳格に第三者による不正なアクセスからコンピュータ７を守ることができる効果を奏する。
【００４１】
なお、この実施の形態２では、コマンド実行認証部１６が実行許可条件を満足していないと判断するとき、コマンドの入力拒否通知を入力監視部１２に出力するものについて示したが、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０が実行許可条件を満足していないと判断するとき、コマンドの入力拒否通知を入力監視部１２に出力するようにしてもよい。
【００４２】
また、処理オプションとして、“アラート発信”が設定されている場合において、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０が実行許可条件を満足していないと判断すると、ゲート部２１が実行許可条件を満足しないコマンドが入力された旨を例えば管理者に通知するようにしてもよい。
なお、図４の例では、実行許可条件（３）に設定されているので、デバイス監視部１８が実行許可条件を満足していないと判断するとき、ゲート部２１が実行許可条件を満足しないコマンドが入力された旨を例えば管理者に通知する。
【００４３】
実施の形態３．
図６はこの発明の実施の形態３によるハッキング防御装置を示す構成図であり、図において、図５と同一符号は同一または相当部分を示すので説明を省略する。
ログ保管部２４はコマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力拒否通知を受けると、ログ保管ＤＢ２５にログを保管する処理を実施する。
ログ保管ＤＢ２５はログを保管するデータベースである。
なお、ログ保管部２４及びログ保管ＤＢ２５からログ保管手段が構成されている。
【００４４】
上記実施の形態１，２では、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力拒否通知を受けると、実行許可条件取得部１５から出力されたコマンドをコンピュータ７のオペレーティングシステム７ａに出力せずに廃棄するものについて示したが、この実施の形態３では、さらに、ログの保管の要否として、“要”が条件記録部１４に記録されている場合（図４を参照）、ログ保管部２４が、コマンド実行認証部１６等が実行許可条件を満足していないと判断すると、ネットワークＩ／Ｆ部１１により受信されたコマンド（当該コマンドの前後に入力された文字列等を含む）のログをログ保管ＤＢ２５に保管するようにしている。
【００４５】
以上で明らかなように、この実施の形態３によれば、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力拒否通知を受けると、ログ保管部２４がログをログ保管ＤＢ２５に保管するように構成したので、ログ保管ＤＢ２５に保管しているログを解析すれば、不正な第三者や、不正アクセスの手口などを解明することができるようになる効果を奏する。
【００４６】
実施の形態４．
図７はこの発明の実施の形態４によるハッキング防御装置を示す構成図であり、図において、図３と同一符号は同一または相当部分を示すので説明を省略する。
不正文字列格納ＤＢ２６は例えばコンピュータウィルスをコンピュータに侵入させる不正文字列を格納しているデータベースである。
ゲート部２７は図３のゲート部２１と同様の処理を実施するほか、実行条件取得部１５、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力許可通知を受けても、コマンド解析部１３により解析されたコマンドに文字列が付加されており、そのコマンドと文字列の組み合わせに一致する不正文字列が不正文字列格納ＤＢ２６に格納されている場合、そのコマンドと文字列を廃棄する処理を実施する。
なお、不正文字列格納ＤＢ２６及びゲート部２７からゲート手段が構成されている。
【００４７】
次に動作について説明する。
ゲート部２７は、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力拒否通知を受けると、上記実施の形態１〜３と同様に、実行許可条件取得部１５から出力されたコマンドをコンピュータ７のオペレーティングシステム７ａに出力せずに廃棄する。
【００４８】
ゲート部２７は、実行条件取得部１５、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力許可通知を受けた場合、そのコマンドを含む前後の入力文字列がコンピュータウィルスをコンピュータ７に侵入させる不正文字列である可能性があるので、そのコマンドと前後の入力文字列の組み合わせに一致する不正文字列が不正文字列格納ＤＢ２６に格納されているか否かを判定する。
【００４９】
ゲート部２７は、コマンドと文字列の組み合わせに一致する不正文字列が不正文字列格納ＤＢ２６に格納されていない場合、そのコマンドをコンピュータ７のオペレーティングシステム７ａに出力するが、コマンドと文字列の組み合わせに一致する不正文字列が不正文字列格納ＤＢ２６に格納されている場合、そのコマンドをコンピュータ７のオペレーティングシステム７ａに出力せずに、そのコマンドと文字列を廃棄する。
【００５０】
以上で明らかなように、この実施の形態４によれば、実行条件取得部１５、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力許可通知を受けても、コマンド解析部１３により解析されたコマンドに文字列が付加されており、そのコマンドと文字列の組み合わせに一致する不正文字列が不正文字列格納ＤＢ２６に格納されている場合、そのコマンドと文字列を廃棄するように構成したので、コンピュータ７に対するコンピュータウィルスの侵入を防止することができる効果を奏する。
【００５１】
実施の形態５．
図８はこの発明の実施の形態５によるハッキング防御装置を示す構成図であり、図において、図３と同一符号は同一または相当部分を示すので説明を省略する。
ソフトウェアＤＢ２８はコンピュータ７に対してインストールを許可するソフトウェアの一覧を記録しているデータベースである。
ゲート部２９は図３のゲート部２１と同様の処理を実施するほか、実行条件取得部１５、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力許可通知を受けても、コマンド解析部１３により解析されたコマンドがソフトウェアのインストールを実行するコマンドであり、そのソフトウェアと一致するソフトウェアがソフトウェアＤＢ２８に記録されていなければ、そのコマンドを廃棄する処理を実施する。
なお、不正文字列格納ＤＢ２８及びゲート部２９からゲート手段が構成されている。
【００５２】
次に動作について説明する。
ゲート部２９は、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力拒否通知を受けると、上記実施の形態１〜３と同様に、実行許可条件取得部１５から出力されたコマンドをコンピュータ７のオペレーティングシステム７ａに出力せずに廃棄する。
【００５３】
ゲート部２９は、実行条件取得部１５、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力許可通知を受けた場合、コマンド解析部１３により解析されたコマンドがソフトウェアのインストールを実行するコマンドであるか否かを判定する。
ゲート部２９は、ソフトウェアのインストールを実行するコマンドでなければ、そのコマンドをコンピュータ７のオペレーティングシステム７ａに出力する。
【００５４】
ゲート部２９は、ソフトウェアのインストールを実行するコマンドであれば、そのコマンドによりインストールするソフトウェアと一致するソフトウェアがソフトウェアＤＢ２８に記録されているか否かを判定する。
ゲート部２９は、そのコマンドによりインストールするソフトウェアと一致するソフトウェアがソフトウェアＤＢ２８に記録されていれば、そのコマンドをコンピュータ７のオペレーティングシステム７ａに出力するが、一致するソフトウェアがソフトウェアＤＢ２８に記録されていなければ、インストールを許可していないソフトウェアであるので、そのコマンドをコンピュータ７のオペレーティングシステム７ａに出力せずに、そのコマンドを廃棄する。
【００５５】
以上で明らかなように、この実施の形態５によれば、実行条件取得部１５、コマンド実行認証部１６、デバイス監視部１８、プロセス監視部１９又はディレクトリ監視部２０からコンピュータ７に対するコマンドの出力許可通知を受けても、コマンド解析部１３により解析されたコマンドがソフトウェアのインストールを実行するコマンドであり、そのソフトウェアと一致するソフトウェアがソフトウェアＤＢ２８に記録されていなければ、そのコマンドを廃棄するように構成したので、バックドアなどの不正なソフトウェアのインストールを防止することができる効果を奏する。
【図面の簡単な説明】
【００５６】
【図１】この発明の実施の形態１によるハッキング防御装置が適用されるシステムを示す構成図である。
【図２】この発明の実施の形態１によるハッキング防御装置が適用されるシステムを示す構成図である。
【図３】この発明の実施の形態１によるハッキング防御装置を示す構成図である。
【図４】条件記録部１４に記録されている実行許可条件を示す説明図である。
【図５】この発明の実施の形態２によるハッキング防御装置を示す構成図である。
【図６】この発明の実施の形態３によるハッキング防御装置を示す構成図である。
【図７】この発明の実施の形態４によるハッキング防御装置を示す構成図である。
【図８】この発明の実施の形態５によるハッキング防御装置を示す構成図である。
【符号の説明】
【００５７】
１  正当コンピュータ、２  不正コンピュータ、３  インターネット、４  Ｆ／Ｗ、５  ＬＡＮ、６  ハッキング防御装置、７  防御対象のコンピュータ、７ａ  オペレーティングシステム、１１  ネットワークＩ／Ｆ部（入力監視手段）、１２  入力監視部（入力監視手段）、１３  コマンド解析部（コマンド解析手段）、１４  条件記録部（条件記録手段）、１５  実行許可条件取得部（条件判定手段）、１６  コマンド実行認証部（条件判定手段）、１７  コマンド認証ＤＢ（条件判定手段）、１８  デバイス監視部（条件判定手段）、１９  プロセス監視部（条件判定手段）、２０  ディレクトリ監視部（条件判定手段）、２１  ゲート部（ゲート手段）、２２  キーボード（外部デバイス）、２３  マウス（外部デバイス）、２４  ログ保管部（ログ保管手段）、２５  ログ保管ＤＢ（ログ保管手段）、２６  不正文字列格納ＤＢ（ゲート手段）、２７  ゲート部（ゲート手段）、２８  不正文字列格納ＤＢ（ゲート手段）、２９  ゲート部（ゲート手段）。
【図１】
2006277063.tif 000003
【図２】
2006277063.tif 000004
【図３】
2006277063.tif 000005
【図４】
2006277063.tif 000006
【図５】
2006277063.tif 000007
【図６】
2006277063.tif 000008
【図７】
2006277063.tif 000009
【図８】
2006277063.tif 000010