(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-12-03
(54)【発明の名称】USBデバイスと保護対象機器間の通信制御の方法、装置及び電子機器
(51)【国際特許分類】
G06F 21/55 20130101AFI20241126BHJP
G06F 21/44 20130101ALI20241126BHJP
【FI】
G06F21/55
G06F21/44
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024532503
(86)(22)【出願日】2022-11-06
(85)【翻訳文提出日】2024-07-24
(86)【国際出願番号】 CN2022130164
(87)【国際公開番号】W WO2023098407
(87)【国際公開日】2023-06-08
(31)【優先権主張番号】202111443682.X
(32)【優先日】2021-11-30
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】520498594
【氏名又は名称】北京博衍思創信息科技有限公司
(74)【代理人】
【識別番号】100130111
【氏名又は名称】新保 斉
(72)【発明者】
【氏名】張 昊
(72)【発明者】
【氏名】杜 華
(72)【発明者】
【氏名】蔡 鎮河
(57)【要約】
【課題】 USBデバイスと保護対象機器間の通信制御の方法、装置及び電子機器を提供すること。
【解決手段】 USBデバイスと保護対象機器間の通信制御方法に関する。該方法は、保護対象機器とインターフェースを介して接続されるUSBアクセス制御機器に応用される。このようにして、保護対象機器に外付けするUSBアクセス制御機器を介して保護対象機器のデータを安全に保護することができ、保護対象機器内のデータ漏洩を効果的に防止し、保護対象機器にセキュリティ対策ソフトウェアをインストールしなくても、保護対象機器のデータセキュリティを確保でき、例えば、USBデバイスがUSBアクセス制御機器に差し込まれ、認証に成功した後、USBアクセス制御機器はUSBデバイスと保護対象機器間の通信データを監視し、USBプロトコル仕様に従い両者間通信データの通信プロトコル種類を決定し、次に通信データの通信プロトコル種類に応じてUSBデバイスと保護対象機器間の通信を切断する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
保護対象機器とインターフェースを介して接続されるUSBアクセス制御機器に応用されるUSBデバイスと保護対象機器間の通信制御方法であって、
前記USBデバイスが前記USBアクセス制御機器に差し込まれ、認証に成功した後、前記USBデバイスと前記保護対象機器との間の通信データを監視するステップと、
USBプロトコル仕様に従い前記通信データの通信プロトコル種類を決定するステップと、
前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器間の通信を切断するステップとを含む
ことを特徴とするUSBデバイスと保護対象機器間の通信制御方法。
【請求項2】
前記USBプロトコル仕様に従い、前記通信データの通信プロトコル種類を決定するステップは、
前記USBプロトコル仕様に従い前記通信データから通信プロトコル情報を取得するステップと、
前記通信プロトコル情報に基づいて前記通信データの通信プロトコル種類がバルク転送プロトコルであることを判定するステップとを含む
請求項1に記載のUSBデバイスと保護対象機器間の通信制御方法。
【請求項3】
前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器との間の通信を切断するステップは、
前記通信データの通信プロトコル種類が前記バルク転送プロトコルの場合、前記USBデバイスと前記保護対象機器間の通信を切断するステップを含む
請求項2に記載のUSBデバイスと保護対象機器間の通信制御方法。
【請求項4】
前記USBプロトコル仕様に従い、前記通信データの通信プロトコル種類を決定するステップは、
前記USBプロトコル仕様に従い前記通信データから通信プロトコル情報を取得するステップと、
前記通信プロトコル情報に基づいて前記通信データの通信プロトコル種類がアイソクロナス転送プロトコルであることを判定するステップとを含む
請求項1に記載のUSBデバイスと保護対象機器間の通信制御方法。
【請求項5】
前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器との間の通信を切断するステップは、
前記通信データの通信プロトコル種類が前記アイソクロナス転送プロトコルの場合、前記通信データのデータフローの方向を確認するステップと、
前記データフローの方向が前記保護対象機器から前記USBデバイスへの場合、前記USBデバイスと前記保護対象機器間の通信を切断するステップとを含む
請求項4に記載のUSBデバイスと保護対象機器間の通信制御方法。
【請求項6】
前記USBプロトコル仕様に従い、前記通信データの通信プロトコル種類を決定するステップは、
前記USBプロトコル仕様に従い前記通信データから通信プロトコル情報を取得するステップと、
前記通信プロトコル情報に基づいて前記通信データの通信プロトコル種類がインターラプト転送プロトコルであることを判定するステップとを含む
請求項1に記載のUSBデバイスと保護対象機器間の通信制御方法。
【請求項7】
前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器との間の通信を切断するステップは、
前記通信データの通信プロトコル種類が前記インターラプト転送プロトコルの場合、前記通信データのデータフローの方向を確認するステップと、
前記データフローの方向が前記保護対象機器から前記USBデバイスへの場合、前記USBデバイスと前記保護対象機器間の通信を切断するステップとを含む
請求項6に記載のUSBデバイスと保護対象機器間の通信制御方法。
【請求項8】
前記USBプロトコル仕様に従い、前記通信データの通信プロトコル種類を決定するステップは、
前記USBプロトコル仕様に従い前記通信データから通信プロトコル情報を取得するステップと、
前記通信プロトコル情報に基づいて前記通信データの通信プロトコル種類がカスタム転送プロトコルであることを判定するステップとを含む
請求項1に記載のUSBデバイスと保護対象機器間の通信制御方法。
【請求項9】
前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器との間の通信を切断するステップは、
前記通信データの通信プロトコル種類が前記カスタム転送プロトコルの場合、通信データが解析不可能なデータであるかどうかを判定するステップと、
前記通信データが前記解析不可能なデータの場合、前記USBデバイスと前記保護対象機器間の通信を切断するステップとを含む
請求項8に記載のUSBデバイスと保護対象機器間の通信制御方法。
【請求項10】
前記USBデバイスと前記保護対象機器間の通信が切断されたとき、前記保護対象機器にアラームメッセージを送信するステップをさらに含む
請求項1に記載のUSBデバイスと保護対象機器間の通信制御方法。
【請求項11】
前記USBアクセス制御機器が通電する前に、前記USBデバイスと前記保護対象機器とが正常に通信できるように前記USBアクセス制御機器に配置されたスイッチを閉じるステップ、又は、
前記USBアクセス制御機器が通電した後、前記USBアクセス制御機器に配置されたスイッチを開き、前記USBデバイスのエニュメレーションメカニズムをトリガーするステップをさらに含む
請求項1に記載のUSBデバイスと保護対象機器間の通信制御方法。
【請求項12】
保護対象機器とインターフェースを介して接続されるUSBアクセス制御機器に応用されるUSBデバイスと保護対象機器間の通信制御装置であって、
前記USBデバイスが前記USBアクセス制御機器に差し込まれ、認証に成功した後、前記USBデバイスと前記保護対象機器との間の通信データを監視するための監視モジュールと、
USBプロトコル仕様に従い前記通信データの通信プロトコル種類を決定するための通信プロトコル種類決定モジュールと、
前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器間の通信を切断するための制御モジュールとを備える
ことを特徴とするUSBデバイスと保護対象機器間の通信制御装置。
【請求項13】
1つ以上のプロセッサと、
1つ以上のプログラムを保存するためのストレージデバイスとを備えた電子機器であって、
前記1つ以上のプログラムが前記1つ以上のプロセッサにより実行された場合、前記1つ以上のプロセッサが、請求項1ないし11のいずれかに記載の方法を実現する
ことを特徴とする電子機器。
【請求項14】
コンピュータプログラムを保存し、前記プログラムがプロセッサにより実行された場合、請求項1ないし11のいずれかに記載の方法を実現する
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、機器通信制御の分野に関し、特に、USBデバイスと保護対象機器間の通信制御の方法、装置、電子機器及びコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【0002】
近年、コンピュータ及びネットワーク技術が急速に発展し、ネットワークの普及が大きく進んでおり、人々がネットワークによりもたらされる利便性を益々享受する一方で、人々が生産や生活で使用するコンピュータのデータセキュリティに新たな脅威、例えば一般的な悪意のあるコードの侵入、ウイルス/トロイの木馬感染、DDoS攻撃、ハッカーによる情報窃取、不正アクセスなど、正当なユーザへのなりすまし、データの完全性の破壊、システムの正常な動作の妨害、ネットワークを利用したウイルスの拡散、中間者攻撃などももたらしている。
【0003】
現在、イントラネットのコンピュータネットワークデータセキュリティの問題を解決するには、ブラック/ホワイトリスト、トラフィック制御ソフトウェア、ファイアウォール、ウイルス対策、侵入検知システムなどのネットワークセキュリティ製品をホストにインストールして使用するなど、多くの技術的手段があるが、上記の対策を講じても、様々なネットワークセキュリティインシデントが多発している。
【0004】
また、一部の特殊な機器、例えば特殊なソフトウェア制御を装備したホスト、特定の産業分野のエンジニアリングワークステーション/オペレータステーションの機器の場合、これらのホスト又は機器は、システムの特殊性により、このようなシステムに適したセキュリティ保護ソフトウェアが市場に存在しないか、セキュリティソフトウェアをインストールすることでホストの既存のソフトウェアとの互換性の問題が発生しやすく、さらに性能に影響を与える可能性がある。なお、これらのエンジニアリングワークステーション或いはオペレータステーションのホストの本番稼働後、基本的にオペレーティングシステムがアップグレードされず、セキュリティソフトウェアがインストールされた後でも、往々にしてマルウェア対策ソフトウェアのバージョンや悪意のあるコードライブラリが適時に更新されず、包括的なセキュリティ保護の役割を提供できない。
【0005】
背景技術で開示された上述の情報は、本開示の背景の理解を深めることのみを目的とするため、当業者に既に知られている先行技術を構成しない情報が含まれ得る。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本開示は、上記の事情に鑑みてなされたものであって、保護対象機器に外付けするUSBアクセス制御機器を介して保護対象機器のデータを安全に保護することができるUSBデバイスと保護対象機器間の通信制御の方法、装置、電子機器及びコンピュータ読み取り可能な記録媒体を提供する。
【0007】
本開示のその他の特徴及び利点は、以下の詳細な説明から明らかになる、又は部分的に本開示の実践を通じて知ることができる。
【課題を解決するための手段】
【0008】
本開示の一態様によれば、保護対象機器とインターフェースを介して接続されるUSBアクセス制御機器に応用されるUSBデバイスと保護対象機器間の通信制御方法を提案する。前記方法は、前記USBデバイスが前記USBアクセス制御機器に差し込まれ、認証に成功した後、前記USBデバイスと前記保護対象機器との間の通信データを監視するステップと、USBプロトコル仕様に従い前記通信データの通信プロトコル種類を決定するステップと、前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器間の通信を切断するステップとを含む。
【0009】
代替的に、前記USBプロトコル仕様に従い、前記通信データの通信プロトコル種類を決定するステップは、USBプロトコル仕様に従い前記通信データから通信プロトコル情報を取得するステップと、前記通信プロトコル情報に基づいて前記通信データの通信プロトコル種類がバルク転送プロトコルであることを判定するステップとを含む。
【0010】
代替的に、前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器との間の通信を切断するステップは、前記通信データの通信プロトコル種類がバルク転送プロトコルの場合、前記USBデバイスと前記保護対象機器間の通信を切断するステップを含む。
【0011】
代替的に、前記USBプロトコル仕様に従い、前記通信データの通信プロトコル種類を決定するステップは、USBプロトコル仕様に従い前記通信データから通信プロトコル情報を取得するステップと、前記通信プロトコル情報に基づいて前記通信データの通信プロトコル種類がアイソクロナス転送プロトコルであることを判定するステップとを含む。
【0012】
代替的に、前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器との間の通信を切断するステップは、前記通信データの通信プロトコル種類が前記アイソクロナス転送プロトコルの場合、前記通信データのデータフローの方向を確認するステップと、前記データフローの方向が前記保護対象機器から前記USBデバイスへの場合、前記USBデバイスと前記保護対象機器間の通信を切断するステップとを含む。
【0013】
代替的に、前記USBプロトコル仕様に従い、前記通信データの通信プロトコル種類を決定するステップは、USBプロトコル仕様に従い前記通信データから通信プロトコル情報を取得するステップと、前記通信プロトコル情報に基づいて前記通信データの通信プロトコル種類がインターラプト転送プロトコルであることを判定するステップとを含む。
【0014】
代替的に、前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器との間の通信を切断するステップは、前記通信データの通信プロトコル種類が前記インターラプト転送プロトコルの場合、前記通信データのデータフローの方向を確認するステップと、前記データフローの方向が前記保護対象機器から前記USBデバイスへの場合、前記USBデバイスと前記保護対象機器間の通信を切断するステップとを含む。
【0015】
代替的に、前記USBプロトコル仕様に従い、前記通信データの通信プロトコル種類を決定するステップは、USBプロトコル仕様に従い前記通信データから通信プロトコル情報を取得するステップと、前記通信プロトコル情報に基づいて前記通信データの通信プロトコル種類がカスタム転送プロトコルであることを判定するステップとを含む。
【0016】
代替的に、前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器との間の通信を切断するステップは、前記通信データの通信プロトコル種類が前記カスタム転送プロトコルの場合、通信データが解析不可能なデータであるかどうかを判定するステップと、前記通信データが前記解析不可能なデータの場合、前記USBデバイスと前記保護対象機器間の通信を切断するステップとを含む。
【0017】
代替的に、前記方法は、前記USBデバイスと前記保護対象機器間の通信が切断されたとき、前記保護対象機器に警告メッセージを送信するステップをさらに含む。
【0018】
代替的に、前記方法は、前記USBアクセス制御機器が通電する前に、前記USBデバイスと前記保護対象機器とが正常に通信できるように前記USBアクセス制御機器に配置されたスイッチを閉じるステップ、又は前記USBアクセス制御機器が通電した後、前記USBアクセス制御機器に配置されたスイッチを開き、前記USBデバイスのエニュメレーションメカニズムをトリガーするステップをさらに含む。
【0019】
本開示の一態様によれば、保護対象機器とインターフェースを介して接続されるUSBアクセス制御機器に応用されるUSBデバイスと保護対象機器間の通信制御装置を提案する。前記装置は、前記USBデバイスが前記USBアクセス制御機器に差し込まれ、認証に成功した後、前記USBデバイスと前記保護対象機器との間の通信データを監視するための監視モジュールと、USBプロトコル仕様に従い前記通信データの通信プロトコル種類を決定するための通信プロトコル種類決定モジュールと、前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器間の通信を切断するための制御モジュールとを備える。
【0020】
本開示の一態様によれば、1つ以上のプロセッサと、1つ以上のプログラムを保存するためのストレージデバイスとを備え、1つ以上のプログラムが1つ以上のプロセッサにより実行された場合、1つ以上のプロセッサが上記の方法を実現する電子機器を提案する。
【0021】
本開示の一態様によれば、コンピュータプログラムを保存し、前記プログラムがプロセッサにより実行された場合、上記の方法を実現するコンピュータ読み取り可能な記録媒体を提案する。
【発明の効果】
【0022】
本開示のUSBデバイスと保護対象機器間の通信制御の方法と装置、電子機器及びコンピュータ読み取り可能な記録媒体によれば、該方法は保護対象機器とインターフェースを介して接続されるUSBアクセス制御機器に応用される。このようにして、保護対象機器に外付けするUSBアクセス制御機器を介して保護対象機器のデータを安全に保護することができ、保護対象機器内のデータ漏洩を効果的に防止し、保護対象機器にセキュリティ対策ソフトウェアをインストールしなくても、保護対象機器のデータセキュリティを確保でき、例えば、USBデバイスがUSBアクセス制御機器に差し込まれ、認証に成功した後、USBアクセス制御機器はUSBデバイスと保護対象機器間の通信データを監視し、USBプロトコル仕様に従い両者間通信データの通信プロトコル種類を決定し、次に通信データの通信プロトコル種類に応じてUSBデバイスと保護対象機器間の通信を切断する。
【0023】
上記の一般的な説明及び後記の詳細な説明は、単なる例示であって、本開示を限定するものではないことが理解される。
【0024】
本開示の上記及びその他の目的、特徴及び利点は、図面を参照しながら例示的な実施形態を詳細に説明することによりさらに明らかになる。以下に描写する図面は、本開示のいくつかの実施形態というのみであり、当業者からすると創造性の活動をしない前提で、これら図面に基づいてその他の図面を得ることができる。
【図面の簡単な説明】
【0025】
【
図1】例示的な実施形態によるUSBデバイスアクセス制御システムを示す概略構成図である。
【
図2】例示的な実施形態によるUSBデバイスと保護対象機器間の通信制御方法を示すフローチャートである。
【
図3】例示的な実施形態によるUSBアクセス制御機器におけるUSB通信データ分析モジュールの具体的な配置を示す概略図である。
【
図4】他の例示的な実施形態によるUSBデバイスと保護対象機器間の通信制御方法を示すフローチャートである。
【
図5】他の例示的な実施形態によるUSBデバイスと保護対象機器間の通信制御方法を示すフローチャートである。
【
図6】他の例示的な実施形態によるUSBデバイスと保護対象機器間の通信制御方法を示すフローチャートである。
【
図7】他の例示的な実施形態によるUSBデバイスと保護対象機器間の通信制御方法を示すフローチャートである。
【
図8】例示的な実施形態によるデータ転送モジュールとUSB通信データ分析モジュールの接続関係を示す概略図である。
【
図9】例示的な実施形態によるネットワークバージョンのUSBデバイスアクセス制御システムを示す概略図である。
【
図10】例示的な実施形態による管理ワークステーションAにデプロイされるソフトウェアの概略図である。
【
図11】例示的な実施形態によるUSB登録デバイス内のUSB通信データ分析モジュールとデータ転送モジュールとの接続関係を示す概略図である。
【
図12】例示的な実施形態によるUSBデバイスと保護対象機器間の通信制御装置のブロック図である。
【
図13】例示的な実施形態による電子機器のブロック図である。
【
図14】例示的な実施形態によるコンピュータ読み取り可能な記録媒体のブロック図である。
【発明を実施するための形態】
【0026】
現在、添付図面を参照しつつ例示的な実施形態を詳細に説明する。ただし、例示的な実施形態は、様々な複数の形式で実装される可能性があり、本開示はここに記載されている例に限定されると解釈されるべきではない。逆に、実装例は、本開示の技術的手段をより包括的かつ完全にするために提供され、例示的な実施形態の技術思想を当業者に包括的に伝える。添付図面の同一符号は、同一又は類似の構成要素を表すため、構成要素の繰り返し説明は省略する。
【0027】
なお、記載された特徴、構造又は特性は、1つ以上の実施形態において任意の適切な方法で組み合わせることができる。多数の具体的な詳細は、本開示の実施形態の完全な理解を提供するために説明される。しかしながら、当業者は、具体的な詳細の内1つ以上がなくても、本開示の技術的手段を実施できる、又は他の方法、コンポーネント、装置、ステップなどが採用できることを認識されよう。他の場合、公知の方法、装置、実現、或いは操作については、本開示の各々の態様を不必要に曖昧にすることを避けるため、詳細な提示や説明はおこなわないこととする。
【0028】
添付図面に示されているブロック図の中には、機能的な実体であり、必ずしも物理的に独立した実体に対応していないものもある。すなわち、これらの機能的な実体は、ソフトウェアの形で実現されてもよいし、1つ以上のハードウェアモジュール又は集積回路で実現されてもよく、異なるネットワーク及び/又はプロセッサ装置及び/又はマイクロコントローラ装置で実現されてもよい。
【0029】
添付図面に示されたフローチャートは、例示にすぎず、必ずしも全ての内容及び操作/ステップを含むわけではなく、また、記載された順序で実行される必要もない。例えば、一部の操作/ステップは分解でき、一部の操作/ステップは合併或いは部分的に合併できるため、実際の実行順序は実際の状況に応じて変更される可能性がある。
【0030】
本明細書では、第1、第2、第3などの用語を使用して様々な構成要素を説明する場合があるが、これらの構成要素はこれらの用語により限定されるべきではないことが理解されるであろう。これらの用語は、ある構成要素を別の構成要素から区別するために使用される。したがって、以下に説明する第1の構成要素は、本開示の概念の教示から逸脱することなく、第2の構成要素と呼ばれることがある。本明細書で使用される場合、「及び/又は」という用語は、関連する列挙された項目のうちいずれか及び1つ以上の全ての組み合わせを含む。
【0031】
添付図面は例示的な実施形態の概略図にすぎず、添付図面内のモジュール又はフローは本開示を実施するために必ずしも必要ではなく、したがって、本開示の保護範囲を限定する意図で用いられるものではないことは、当業者によって理解されるだろう。
【0032】
図1は、例示的な実施形態によるUSBデバイスアクセス制御システムを示す概略構成図である。
【0033】
図1に示すように、USBデバイスアクセス制御システム100は、USBアクセス制御機器110と、USBデバイス120と、保護対象機器130とを備える。USBアクセス制御機器110には、USBポートUA1及びUSBポートUA2の2つのUSBポートが配置されている。USBポートの数は、実際の応用シナリオに応じて増やすことができる。
【0034】
本実施形態において、USBアクセス制御機器110とUSBデバイス120は、USBポートUA1を介して接続することができる。USBアクセス制御機器110と保護対象機器130は、USBポートUA2を介して接続することができる。USBアクセス制御機器110は、保護対象機器130内のデータを安全に保護するために用いることができる。例えば、USBデバイス120がUSBアクセス制御機器110のUSBポートUA1に差し込まれた場合、USBアクセス制御機器110はUSBデバイス120の記述子に従いUSBデバイス120を認証することができる。USBデバイスがUSBアクセス制御機器に差し込まれ、認証に成功した後、USBアクセス制御機器はUSBデバイスと保護対象機器間の通信データを監視し、USBプロトコル仕様に従い両者間通信データの通信プロトコル種類を決定し、次に通信データの通信プロトコル種類に応じてUSBデバイスと保護対象機器間の通信を切断する。
【0035】
本実施形態において、USBアクセス制御機器110は、データ保護機能を備えたセキュリティ機器であり得る。USBデバイス120は、外部ストレージデバイス、外部HIDデバイスなどであってもよい。例えば、外部ストレージデバイスは、USBフラッシュドライブ、ポータブルストレージデバイスなどであり得る。外部HIDデバイスは、マウス、キーボード、コントローラなどであってもよい。
【0036】
図2は、例示的な実施形態によるUSBデバイスと保護対象機器間の通信制御方法を示すフローチャートである。該方法は、保護対象機器とインターフェースを介して接続されるUSBアクセス制御機器に応用される。
【0037】
図2に示すように、USBデバイスと保護対象機器間の通信制御方法は、ステップS210~ステップS230を含み得る。
【0038】
ステップS210において、前記USBデバイスが前記USBアクセス制御機器に差し込まれ、認証に成功した後、前記USBデバイスと前記保護対象機器との間の通信データを監視する。
【0039】
ステップS220において、USBプロトコル仕様に従い前記通信データの通信プロトコル種類を決定する。
【0040】
ステップS230において、前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器との間の通信を切断する。
【0041】
該方法は、保護対象機器に外付けするUSBアクセス制御機器を介して保護対象機器のデータを安全に保護することができ、保護対象機器内のデータ漏洩を効果的に防止し、保護対象機器にセキュリティ対策ソフトウェアをインストールしなくても、保護対象機器のデータセキュリティを確保でき、例えば、USBデバイスがUSBアクセス制御機器に差し込まれ、認証に成功した後、USBアクセス制御機器はUSBデバイスと保護対象機器間の通信データを監視し、USBプロトコル仕様に従い両者間通信データの通信プロトコル種類を決定し、次に通信データの通信プロトコル種類に応じてUSBデバイスと保護対象機器間の通信を切断する。
【0042】
本発明のいくつかの実施形態において、USBデバイスと保護対象機器間の通信データの通信プロトコル種類は、バルク転送プロトコル、アイソクロナス転送プロトコル、インターラプト転送プロトコル、カスタム転送プロトコルのうちのいずれか又は複数を含み得る。
【0043】
本発明のいくつかの実施形態において、各通通信プロトコル種類は、Setupトランザクション、INトランザクション、OUTトランザクションを含むことができる。全てのトランザクションのトークンパケットは、USBホスト(例えば保護対象機器)から発行される。USBデバイスの通信データ分析及び異常防止の基本原則は、データの入力が緩くデータの出力が厳しく、すなわちUSBデバイスアクセス許可に基づき保護対象機器に流入する通信データに通信プロトコル種類を限定することである。例えばバルク転送が禁止され、アイソクロナス転送はINトランザクション(つまりUSBデバイスから保護対象機器へ)のみが許可され、インターラプト転送はINトランザクションを実行でき、OUTトランザクションはデータ転送の方向(つまりUSBデバイスから保護対象機器へのデータ転送が許可され、保護対象機器からUSBデバイスへのデータ転送は禁止される)を判断する必要がある。
【0044】
本発明のいくつかの実施形態において、USBデバイスがUSBアクセス制御機器に差し込まれている場合、USBデバイスを認証する必要があり、USBデバイスが認証に成功した後、USBデバイスと保護対象機器とが通信できるようになる。USBデバイスの認証プロセスは次の通りであり得、USBデバイスがUSBアクセス制御機器に差し込まれている場合、USBデバイスの記述子を取得し、USBデバイスの記述子とUSBデバイスの登録情報とを比較し、USBデバイスの記述子がUSBデバイスの登録情報と同じである場合、USBデバイスと前記保護対象機器とが通信できるように、USBアクセス制御機器に配置されたスイッチを閉じる。また、USBデバイスが前記保護対象機器と通信する時、USBデバイスの記述子を取得し続け、USBデバイスの記述子とUSBデバイスの登録情報とを比較し、USBデバイスの記述子がUSBデバイスの登録情報と異なる場合、USBアクセス制御機器に配置されたスイッチを開く。
【0045】
図3を参照すると、USBアクセス制御機器110は、インターフェース制御モジュールと、システム制御モジュールとを備え得る。インターフェース制御モジュールは、USBポートUA1、USBポートUA2、USBポートUBの3つのUSBポートを有する。USBポートUA1とUSBポートUA2は、外部インターフェースで、USBポートUBは内部インターフェースである。外部インターフェースUA2は、保護対象機器130の対応するUSBポートUCに接続される。外部インターフェースUA1は、1つ以上のUSBデバイス120の接続のために用いられる。システム制御モジュールにはUSBポートUDである内部インターフェースがある。システム制御モジュールのUDは、インターフェース制御モジュールのUBに電気的に接続され、インターフェース制御モジュール上の外部インターフェースUA1に接続された外部機器のセキュリティ認証を制御するために用いられる。
【0046】
本実施形態において、インターフェース制御モジュール内に2つのUSB通信データ分析モジュール及び2つのスイッチも配置されている。
図3に示すように、USB通信データ分析モジュールの一端は外部インターフェースUA1に接続され、他端はスイッチの一端に接続され、スイッチの他端は内部インターフェースUBに接続される。別のUSB通信データ分析モジュールの一端は、外部インターフェースUA1に接続され、他端はスイッチの一端に接続され、スイッチの他端は外部インターフェースUA2に接続される。このようにUSB通信データ分析モジュールは、直列に接続され、インターフェース制御モジュールの外部インターフェースと保護対象機器のUSBポートとの接続をバイパスし、直接接続パス内のUSBデバイスの記述子及び/又は通信データをリアルタイムで監視し、USB通信データ分析モジュールはUSBプロトコル解析に基づいて実現され、USBデバイスの記述子及び/又は通信データを分析するために用いられる。例えば、外部インターフェースUA1と内部インターフェースUBとの間のUSB通信データ分析モジュールは、USBデバイス120の記述子タを分析するために用いられる。外部インターフェースUA1と外部インターフェースUA2との間のUSB通信データ分析モジュールは、USBデバイス120の記述子、及びUSBデバイス120と保護対象機器130との間の通信データを分析するために用いられる。
【0047】
以下では、
図4~
図7の実施形態を通じて、通信プロトコル種類に従いUSBデバイスと保護対象機器間の通信を制御する方法を詳細に説明する。
【0048】
図4は、他の例示的な実施形態によるUSBデバイスと保護対象機器間の通信制御方法を示すフローチャートである。
【0049】
図4に示すように、上記ステップS220は、ステップS410及びステップS420を含み得る。
【0050】
ステップS410において、USBプロトコル仕様に従い前記通信データから通信プロトコル情報を取得する。
【0051】
ステップS420において、前記通信プロトコル情報に基づいて前記通信データの通信プロトコル種類がバルク転送プロトコルであることを判定する。
【0052】
本発明のいくつかの実施形態において、USBデバイスと保護対象機器間の通信データの通信プロトコル種類がバルク転送プロトコルの場合、USBデバイスと保護対象機器間の通信を切断することで、保護対象機器内のデータを安全に適時保護することができる。
【0053】
図3を参照すると、USBデバイス120がUSBアクセス制御機器110に差し込まれ、認証に成功した後、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のスイッチを閉じると、USBデバイス120と保護対象機器130とが通信できるようになり、このとき、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のUSB通信データ分析モジュールによりUSBデバイス120と保護対象機器130との間の通信データの通信プロトコル種類をリアルタイムで検出し、通信プロトコル種類がバルク転送プロトコルであることを監視した場合、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のスイッチを開き、このとき、USBデバイス120と保護対象機器130とが通信できない。この方式により保護対象機器内のデータを安全かつリアルタイムで保護することができる。
【0054】
図5は、他の例示的な実施形態によるUSBデバイスと保護対象機器間の通信制御方法を示すフローチャートである。
【0055】
図5に示すように、上記ステップS220は、ステップS510及びステップS520を含み得る。
【0056】
ステップS510において、USBプロトコル仕様に従い前記通信データから通信プロトコル情報を取得する。
【0057】
ステップS520において、前記通信プロトコル情報に基づいて前記通信データの通信プロトコル種類がアイソクロナス転送プロトコルであることを判定する。
【0058】
本発明のいくつかの実施形態において、USBデバイスと保護対象機器との間の通信データの通信プロトコル種類がアイソクロナス転送プロトコルの場合、通信データのデータフローの方向を確認し、該データフローの方向が保護対象機器からUSBデバイスへの場合、USBデバイスと保護対象機器間の通信を切断することで、保護対象機器内のデータを安全に適時保護することができる。
【0059】
図3を参照すると、USBデバイス120がUSBアクセス制御機器110に差し込まれ、認証に成功した後、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のスイッチを閉じると、USBデバイス120と保護対象機器130とが通信できるようになり、このとき、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のUSB通信データ分析モジュールによりUSBデバイス120と保護対象機器130との間の通信データの通信プロトコル種類をリアルタイムで検出し、通信プロトコル種類がアイソクロナス転送プロトコルであることを監視した場合、該通信データのデータ方向を判断し、該データフローの方向が保護対象機器130からUSBデバイス120への場合、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のスイッチを開き、このとき、USBデバイス120と保護対象機器130とが通信できない。この方式により保護対象機器内のデータを安全かつリアルタイムで保護することができる。
【0060】
図6は、他の例示的な実施形態によるUSBデバイスと保護対象機器間の通信制御方法を示すフローチャートである。
【0061】
図6に示すように、上記ステップS220は、ステップS610及びステップS620を含み得る。
【0062】
ステップS610において、USBプロトコル仕様に従い前記通信データから通信プロトコル情報を取得する。
【0063】
ステップS620において、前記通信プロトコル情報に基づいて前記通信データの通信プロトコル種類がインターラプト転送プロトコルであることを判定する。
【0064】
本発明のいくつかの実施形態において、USBデバイスと保護対象機器との間の通信データの通信プロトコル種類がインターラプト転送プロトコルの場合、通信データのデータフローの方向を確認し、該データフローの方向が保護対象機器からUSBデバイスへの場合、USBデバイスと保護対象機器間の通信を切断することで、保護対象機器内のデータを安全に適時保護することができる。
【0065】
図3を参照すると、USBデバイス120がUSBアクセス制御機器110に差し込まれ、認証に成功した後、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のスイッチを閉じると、USBデバイス120と保護対象機器130とが通信できるようになり、このとき、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のUSB通信データ分析モジュールによりUSBデバイス120と保護対象機器130との間の通信データの通信プロトコル種類をリアルタイムで検出し、通信プロトコル種類がインターラプト転送プロトコルであることを監視した場合、該通信データのデータ方向を判断し、該データフローの方向が保護対象機器130からUSBデバイス120への場合、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のスイッチを開き、このとき、USBデバイス120と保護対象機器130とが通信できない。この方式により保護対象機器内のデータを安全かつリアルタイムで保護することができる。
【0066】
図7は、他の例示的な実施形態によるUSBデバイスと保護対象機器間の通信制御方法を示すフローチャートである。
【0067】
図7に示すように、上記ステップS220は、ステップS710及びステップS720を含み得る。
【0068】
ステップS710において、USBプロトコル仕様に従い前記通信データから通信プロトコル情報を取得するステップ。
【0069】
ステップS720において、前記通信プロトコル情報に基づいて前記通信データの通信プロトコル種類がカスタム転送プロトコルであることを判定する。
【0070】
本発明のいくつかの実施形態において、USBデバイスと保護対象機器との間の通信データの通信プロトコル種類がカスタム転送プロトコルの場合、通信データが解析不可能なデータであるかどうかを判定し、前記通信データが前記解析不可能なデータの場合、USBデバイスと保護対象機器間の通信を切断することで、保護対象機器内のデータを安全に適時保護することができる。
【0071】
図3を参照すると、USBデバイス120がUSBアクセス制御機器110に差し込まれ、認証に成功した後、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のスイッチを閉じると、USBデバイス120と保護対象機器130とが通信できるようになり、このとき、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のUSB通信データ分析モジュールによりUSBデバイス120と保護対象機器130との間の通信データの通信プロトコル種類をリアルタイムで検出し、通信プロトコル種類がカスタム転送プロトコルであることを監視した場合、該通信データが解析不可能なデータであるかどうかを判断し、前記通信データが前記解析不可能なデータの場合、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のスイッチを開き、このとき、USBデバイス120と保護対象機器130とが通信できない。この方式により保護対象機器内のデータを安全かつリアルタイムで保護することができる。
【0072】
前述の実施形態によれば、該方法は、USBデバイスと保護対象機器間の通信が切断されたとき、保護対象機器に警告メッセージを送信するステップをさらに含む。
図3を参照すると、USBアクセス制御機器110が外部インターフェースUA1と外部インターフェースUA2との間のスイッチを開いたとき、保護対象機器130の責任者に注意を促するため、保護対象機器130に警告メッセージを送信する。
【0073】
前述の実施形態によれば、該方法は、USBアクセス制御機器110が通電する前に、USBデバイス120と保護対象機器130とが正常に通信できるようにUSBアクセス制御機器110に配置されたスイッチを閉じるステップ、又はUSBアクセス制御機器110が通電した後、USBアクセス制御機器110に配置されたスイッチを開き、USBデバイス120のエニュメレーションメカニズムをトリガーするステップをさらに含む。
図3を参照すると、USBデバイス120がUSBアクセス制御機器110に差し込まれ、かつUSBアクセス制御機器110が通電する前に、USBデバイス120と保護対象機器130とが正常に通信できるようにUSBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のスイッチを閉じることで、USBアクセス制御機器110の電源断時バイパス機能を実現する。逆に、USBデバイス120がUSBアクセス制御機器110に差し込まれ、かつUSBアクセス制御機器110が通電したとき、USBアクセス制御機器110内の外部インターフェースUA1と外部インターフェースUA2との間のスイッチを開き、USBデバイス120のエニュメレーションメカニズムをトリガーし、すなわちUSBデバイス120を認証する。
【0074】
以下の実施形態を通じてUSBデバイスのエニュメレーションメカニズム、すなわちUSBデバイスの認証プロセスを詳細に説明する。
【0075】
図3を参照すると、USBデバイス120が直接接続された外部インターフェースUA1に差し込まれ、保護対象機器のUSBポートUCに接続し、差し込まれたUSBデバイス120が通電され、USB仕様によれば、デバイス認識プロセス、すなわち、USBデバイス120のエニュメレーションプロセスに入る。例えば、USBデバイス120がUSBアクセス制御機器110の外部インターフェースUA1に差し込まれた場合、USBアクセス制御機器110の内部インターフェースUBと外部インターフェースUA1との間のスイッチが閉じられ、このとき、システム制御モジュールは両者間のUSB通信データ分析モジュールを制御してUSBデバイス120の記述子を取得し、USBデバイス120の記述子と該USBデバイス120の登録情報とを比較することができる。USBデバイス120の記述子が該USBデバイス120の登録情報と同じである場合、USBデバイス120と保護対象機器130とが通信できるように、USBアクセス制御機器110に配置されたスイッチ(例えば外部インターフェースUA1と外部インターフェースUA2との間のスイッチ)を閉じる。このとき、USBデバイス120は認証に成功し、USBデバイス120と保護対象機器130は、通信データを介して通信することができ、両者は通信中にUSBアクセス制御機器110の外部インターフェースUA1と外部インターフェースUA2との間のUSB通信データ分析モジュールを介してUSBデバイス120と保護対象機器130との間の通信データを監視し、USBプロトコル仕様に従い両者間通信データの通信プロトコル種類を決定し、次に通信データの通信プロトコル種類に応じて両者間の通信を制御し、例えばUSBデバイス120と保護対象機器130間の通信を切断することで、保護対象機器130に外付けするUSBアクセス制御機器110を介して保護対象機器130のデータを安全に保護することができ、保護対象機器130内のデータ漏洩を効果的に防止し、保護対象機器130にセキュリティ対策ソフトウェアをインストールしなくても、保護対象機器130のデータセキュリティを確保できる。
【0076】
また、本発明の実施形態において、USBデバイス120が保護対象機器130と通信する時、USBアクセス制御機器110の外部インターフェースUA1と外部インターフェースUA2との間のUSB通信データ分析モジュールにより該USBデバイス120の記述子を取得し続け、USBデバイス120の記述子と該USBデバイス120の登録情報とを比較し続ける必要がある。USBデバイス120の記述子がUSBデバイス120の登録情報と異なる場合、USBアクセス制御機器に配置されたスイッチ(例えば外部インターフェースUA1と外部インターフェースUA2との間のスイッチ)を開き、このとき、USBデバイス120と保護対象機器130は通信できないため、保護対象機器130のデータを安全に保護することもできる。
【0077】
具体的には、USBデバイス120がUSBアクセス制御機器110のUA1に差し込まれた後、USBアクセス制御機器110の内部接続を介して保護対象機器130上の対応するUSBポートに接続され、差し込まれたUSBデバイス120は通電され、USB仕様によれば、デバイス認識プロセス、すなわち、USBデバイス120の最初のエニュメレーションプロセスに入る。最初のエニュメレーションが成功した後も、USB通信データ分析モジュールによりUSBデバイス120と保護対象機器130との間の通信データをリアルタイムで取得し続ける必要があり、メイン制御基板上で動作するUSB通信データ分析モジュールはUSBデバイス120と保護対象機器130との間の通信データをリアルタイムで分析し、エニュメレーションプロセス内の記述子(例えば、ベンダーID、製品識別子(PID)及びシリアル番号情報、構成数、現在の構成の識別、構成でサポートされているインターフェースの数、インターフェース番号、インターフェースクラス、インターフェースサブクラス、インターフェースプロトコルなどである)を抽出して、登録情報と比較・照合し、不一致があると発見された場合、USBデバイス120と保護対象機器130との間の通信を切断し、警告メッセージが送信される。
【0078】
本発明のいくつかの実施形態において、上記USBデバイス120の記述子は、デバイス記述子、構成記述子、インターフェース記述子、HID記述子のうちのいずれか又は複数を含み得る。
【0079】
USBプロトコル仕様によれば、1つのUSBデバイス120はデバイス記述子を1つだけ有し、デバイス記述子には次の表1が含まれる。
【0080】
【0081】
USBプロトコル仕様によれば、USBデバイス120は、少なくとも1つ以上の構成記述子を有することができ、上記デバイス記述子の最後の項目bNumConfigurationsでは構成記述子の数を限定する。例えばUSBデバイス120が現在構成の1つを選択し、構成記述子情報は表2に示す通りであり、bConfigurationValueは現在の構成の識別子である。
【0082】
【0083】
上記のインターフェース記述子は、上記現在の構成におけるインターフェースの状況を表すために使用できる。例えば、単機能USBデバイス120は、1つのインターフェース、例えばUSBフラッシュドライブを有する。複合機能USBデバイス120は、複数のインターフェース、例えばマウスとキーボードが一体となった複合デバイスを有し、1つのインターフェースが1つの機能に対応する。USBデバイス120は複数の構成を持つことができるが、現在選択できる構成は1つだけである。デバイス記述子のデバイスタイプbDeviceClassが0の場合、つまりインターフェース記述子がクラスを識別するために使用されることを示し、このときインターフェースクラス、インターフェースサブクラス、インターフェースプロトコルを用いてUSBデバイス120のこの機能が属するクラスを説明する。
【0084】
本発明のいくつかの実施形態において、上記USBデバイスの記述子を取得することは、Get_Descriptor制御パケットをUSBデバイスに送信するステップと、USBデバイスがGet_Descriptor制御パケットに従い決定したデバイス記述子を受信するステップとをさらに含み得る。このようにして、USBアクセス制御機器が、該USBデバイスのデバイス記述子を迅速に取得できるように、USBコマンド(例えばGet_Descriptor制御パケット)をUSBデバイスに送信することによって、該USBデバイスのデバイス記述子の取得を要求できる。
【0085】
図3を参照すると、USBデバイス120がUSBアクセス制御機器110の外部インターフェースUA1に差し込まれたとき、システム制御モジュールは、内部インターフェースUBと外部インターフェースUA1との間のUSB通信データ分析モジュールを制御して、USBデバイス120のデバイス記述子を取得し、デバイス記述子に基づきUSBアクセス制御機器110に配置されたスイッチを閉じるか、または開くかを決定する。具体的には、USBデバイス120がUSBアクセス制御機器110の外部インターフェースUA1に差し込まれたとき、内部インターフェースUBと外部インターフェースUA1との間のUSB通信データ分析モジュールを介してGet_Descriptor制御パケットを該USBデバイス120に送信し、該USBデバイス120は該制御パケットに基づきデバイス記述子をUSB通信データ分析モジュールに返し、例えばデバイス記述子内のbDeviceClass、bDeviceSubClass、bDeviceProtocol、bLength、bDescriptorType、及びbStringなどを返す。この場合、USB通信データ分析モジュールは、事前に取得した該USBデバイス120の登録情報に基づき現在取得したデバイス記述子と比較し、この方式でUSBデバイス120の最初のエニュメレーションを実行できる。
【0086】
例えば、USBデバイス120の記述子とUSBデバイス120の登録情報とを比較するステップは、デバイス記述子内のbDeviceClassと登録情報内のbDeviceClassが同じかどうかを比較するステップと、デバイス記述子内のbDeviceSubClassと登録情報内のbDeviceSubClassが同じかどうかを比較するステップと、デバイス記述子内のbDeviceProtocolと登録情報内のbDeviceProtocolが同じかどうかを比較するステップと、デバイス記述子内のbLengthと登録情報内のbLengthが同じかどうかを比較するステップと、デバイス記述子内のbDescriptorTypeと登録情報中bDescriptorTypeが同じかどうかを比較するステップと、デバイス記述子内のbStringと登録情報内のbStringが同じかどうかを比較するステップとを含む。
【0087】
本発明のいくつかの実施形態において、デバイス記述子内のbDeviceClass、bDeviceSubClass、bDeviceProtocol、bLength、bDescriptorType、及びbStringが登録情報内のbDeviceClass、bDeviceSubClass、bDeviceProtocol、bLength、bDescriptorType、及びbStringと一致する場合、USBアクセス制御機器110に配置されたスイッチを閉じる。例えば、USBアクセス制御機器110における外部インターフェースUA1と外部インターフェースUA2との間のスイッチを閉じる。
【0088】
本発明のいくつかの実施形態において、デバイス記述子内のbDeviceClass、bDeviceSubClass、bDeviceProtocol、bLength、bDescriptorType、及びbStringが登録情報内のbDeviceClass、bDeviceSubClass、bDeviceProtocol、bLength、bDescriptorType、及びbStringのいずれかと異なる場合、USBアクセス制御機器110に配置されたスイッチを開く。例えば、USBアクセス制御機器110における外部インターフェースUA1と外部インターフェースUA2との間のスイッチを開く。USBデバイス120の記述子内のデバイス記述子と登録情報内のデバイス記述子が異なり、かつUSBアクセス制御機器110内のスイッチ自体が開状態である場合、このとき、開状態のままで保持しておくことに留意されたい。
【0089】
本発明のいくつかの実施形態において、上記USBデバイスの記述子を取得することは、Get_Descriptor_Configuration制御パケットを前記USBデバイスに送信するステップと、前記USBデバイスが前記Get_Descriptor_Configuration制御パケットに従い決定した構成記述子を受信するステップとをさらに含み得る。このようにして、USBアクセス制御機器が、該USBデバイスの構成記述子を迅速に取得できるように、USBコマンド(例えばGet_Descriptor_Configuration制御パケット)をUSBデバイスに送信することによって、該USBデバイスの構成記述子の取得を要求できる。
【0090】
図3を参照すると、USBデバイス120がUSBアクセス制御機器110の外部インターフェースUA1に差し込まれたとき、システム制御モジュールは、内部インターフェースUBと外部インターフェースUA1との間のUSB通信データ分析モジュールを制御して、USBデバイス120の構成記述子を取得し、構成記述子に基づきUSBアクセス制御機器110に配置されたスイッチを閉じるか、または開くかを決定する。具体的には、USBデバイス120がUSBアクセス制御機器110の外部インターフェースUA1に差し込まれたとき、内部インターフェースUBと外部インターフェースUA1との間のUSB通信データ分析モジュールを介してGet_Descriptor_Configuration制御パケットを該USBデバイス120に送信し、該USBデバイス120は該制御パケットに基づき構成記述子をUSB通信データ分析モジュールに返し、例えば構成記述子内のbNumInterfaces、bConfigurationValue、及びwTotalLengthなどを返す。この場合、USB通信データ分析モジュールは、事前に取得した該USBデバイス120の登録情報に基づき現在取得した構成記述子と比較し、この方式でUSBデバイス120の最初のエニュメレーションを実行できる。
【0091】
例えば、USBデバイス120の記述子とUSBデバイス120の登録情報とを比較するステップは、構成記述子内のbNumlnterfacesと登録情報内のbNumlnterfacesが同じかどうかを比較するステップと、構成記述子内のbConfigurationValueと登録情報内のbConfigurationValueが同じかどうかを比較するステップと、構成記述子内のwTotalLengthと登録情報内のwTotalLengthが同じかどうかを比較するステップとを含む。
【0092】
本発明のいくつかの実施形態において、構成記述子内のbNumlnterfaces、bConfigurationValue、及びwTotalLengthが登録情報内のbNumlnterfaces、bConfigurationValue、及びwTotalLengthlと一致する場合、USBアクセス制御機器110に配置されたスイッチを閉じる。例えば、USBアクセス制御機器110における外部インターフェースUA1と外部インターフェースUA2との間のスイッチを閉じる。
【0093】
本発明のいくつかの実施形態において、構成記述子内のbNumInterfaces、bConfigurationValue、及びwTotalLengthが登録情報内のbNumlnterfaces、bConfigurationValue、及びwTotalLengthのいずれかと異なる場合、USBアクセス制御機器110に配置されたスイッチを開く。例えば、USBアクセス制御機器110における外部インターフェースUA1と外部インターフェースUA2との間のスイッチを開く。USBデバイス120の記述子内の構成記述子と登録情報内の構成記述子が異なり、かつUSBアクセス制御機器110内のスイッチ自体が開状態である場合、このとき、開状態のままで保持しておくことに留意されたい。
【0094】
本発明のいくつかの実施形態において、上記USBデバイスの記述子を取得することは、Get_Descriptor_Configuration制御パケットを前記USBデバイスに送信するステップと、前記USBデバイスが前記Get_Descriptor_Configuration制御パケットに従い決定したインターフェース記述子を受信するステップをさらに含み得る。このようにして、USBアクセス制御機器が、該USBデバイスのインターフェース記述子を迅速に取得できるように、USBコマンド(例えばGet_Descriptor_Configuration制御パケット)をUSBデバイスに送信することによって、該USBデバイスのインターフェース記述子の取得を要求できる。
【0095】
図3を参照すると、USBデバイス120がUSBアクセス制御機器110の外部インターフェースUA1に差し込まれたとき、システム制御モジュールは、内部インターフェースUBと外部インターフェースUA1との間のUSB通信データ分析モジュールを制御して、USBデバイス120のインターフェース記述子を取得し、インターフェース記述子に基づきUSBアクセス制御機器110に配置されたスイッチを閉じるか、または開くかを決定する。具体的には、USBデバイス120がUSBアクセス制御機器110の外部インターフェースUA1に差し込まれたとき、内部インターフェースUBと外部インターフェースUA1との間のUSB通信データ分析モジュールを介してGet_Descriptor_Configuration制御パケットを該USBデバイス120に送信し、該USBデバイス120は該制御パケットに基づきインターフェース記述子をUSB通信データ分析モジュールに返し、例えばインターフェース記述子内のblnterfaceNumber、blnterfaceClass、bDeviceSubClass、及びbInterfaceProtocolなどを返す。この場合、USB通信データ分析モジュールは、事前に取得した該USBデバイス120の登録情報に基づき現在取得したインターフェース記述子と比較し、この方式でUSBデバイス120の最初のエニュメレーションを実行できる。
【0096】
例えば、USBデバイス120の記述子とUSBデバイス120の登録情報とを比較するステップは、インターフェース記述子内のblnterfaceNumberと登録情報内のblnterfaceNumberが同じかどうかを比較するステップと、インターフェース記述子内のblnterfaceClassと登録情報内のblnterfaceClassが同じかどうかを比較するステップと、インターフェース記述子内のblnterfaceSubClassと登録情報内のblnterfaceSubClassが同じかどうかを比較するステップと、インターフェース記述子内のblnterfaceProtocolと登録情報内のblnterfaceProtocolが同じかどうかを比較するステップとを含む。
【0097】
本発明のいくつかの実施形態において、USBデバイス120の記述子がUSBデバイス120の登録情報と同じである場合、USBアクセス制御機器110に配置されたスイッチを閉じるステップは、インターフェース記述子内のblnterfaceNumber、blnterfaceClass、blnterfaceSubClass、及びblnterfaceProtocolが登録情報内のblnterfaceNumber、blnterfaceClass、blnterfaceSubClass、及びblnterfaceProtocolと一致する場合、USBアクセス制御機器110に配置されたスイッチを閉じるステップを含む。例えば、USBアクセス制御機器110における外部インターフェースUA1と外部インターフェースUA2との間のスイッチを閉じる。
【0098】
本発明のいくつかの実施形態において、USBデバイス120の記述子がUSBデバイス120の登録情報と異なる場合、USBアクセス制御機器110に配置されたスイッチを開くステップは、インターフェース記述子内のblnterfaceNumber、blnterfaceClass、blnterfaceSubClass、及びblnterfaceProtocolが登録情報内のblnterfaceNumber、blnterfaceClass、blnterfaceSubClass、及びblnterfaceProtocolのいずれかと異なる場合、USBアクセス制御機器110に配置されたスイッチを開くステップを含む。例えば、USBアクセス制御機器110における外部インターフェースUA1と外部インターフェースUA2との間のスイッチを開く。USBデバイス120の記述子内のインターフェース記述子と登録情報内のインターフェース記述子が異なり、かつUSBアクセス制御機器110内のスイッチ自体が開状態である場合、このとき、開状態のままで保持しておくことに留意されたい。
【0099】
上記実施形態は、USBデバイスの記述子がデバイス記述子、又は構成記述子、或いはインターフェース記述子であり得ることを説明する。本発明内のUSBデバイスの記述子には、デバイス記述子、構成記述子、及びインターフェース記述子が含まれてもよい。
図3を参照すると、USBデバイス120がUSBアクセス制御機器110の外部インターフェースUA1に差し込まれたとき、USBアクセス制御機器110内の外部インターフェースUA1と内部インターフェースUBとの間のUSB通信データ分析モジュールによりUSBデバイス120のデバイス記述子、構成記述子、及びインターフェース記述子を取得する。例えばUSBコマンドをUSBデバイス120に送信し、該USBデバイス120は対応するUSBコマンドに従いデバイス記述子、構成記述子、及びインターフェース記述子を返す。そしてUSB通信データ分析モジュールは、USBデバイス120の登録情報内のデバイス記述子、構成記述子、及びインターフェース記述子に基づきデバイス記述子、構成記述子、及びインターフェース記述子と比較し、すなわちUSBデバイス120の最初のエニュメレーションを実行する。USBデバイス120の記述子内のデバイス記述子、構成記述子、及びインターフェース記述子が登録情報内のデバイス記述子、構成記述子、及びインターフェース記述子と一致する場合、USBアクセス制御機器110に配置されたスイッチを閉じる。例えば、USBアクセス制御機器110における外部インターフェースUA1と外部インターフェースUA2との間のスイッチを閉じる。逆に、USBデバイス120の記述子内のデバイス記述子、構成記述子、及びインターフェース記述子が登録情報内のデバイス記述子、構成記述子、及びインターフェース記述子のいずれかと異なる場合、USBアクセス制御機器110に配置されたスイッチを開く。例えば、USBアクセス制御機器110における外部インターフェースUA1と外部インターフェースUA2との間のスイッチを開く。USBデバイス120の記述子内のデバイス記述子、構成記述子、及びインターフェース記述子と登録情報内のデバイス記述子、構成記述子、及びインターフェース記述子が異なり、かつUSBアクセス制御機器110内のスイッチ自体が開状態である場合、このとき、開状態のままで保持しておくことに留意されたい。
【0100】
上記実施形態の技術的手段に基づくと、USBデバイス120がHIDデバイス、すなわちヒューマンインターフェースデバイスHuman Interface Devices(HID)である場合、該USBデバイス120の記述子は上記のデバイス記述子、構成記述子、及びインターフェース記述子を含む以外に、HID記述子も含み得る。USBデバイス120の記述子内のデバイス記述子、構成記述子、インターフェース記述子及びHID記述子が登録情報内のデバイス記述子、構成記述子、インターフェース記述子及びHID記述子と一致する場合、USBアクセス制御機器110に配置されたスイッチを閉じる。逆に、USBデバイス120の記述子内のデバイス記述子、構成記述子、インターフェース記述子及びHID記述子が登録情報内のデバイス記述子、構成記述子、インターフェース記述子及びHID記述子のいずれかと異なる場合、USBアクセス制御機器110に配置されたスイッチを開く。USBデバイス120の記述子内のデバイス記述子、構成記述子、及びインターフェース記述子と登録情報内のデバイス記述子、構成記述子、及びインターフェース記述子が異なり、かつUSBアクセス制御機器110内のスイッチ自体が開状態である場合、このとき、開状態のままで保持しておくことに留意されたい。
【0101】
図3を参照すると、USBデバイス120の最初のエニュメレーションが成功した後、USBアクセス制御機器110における外部インターフェースUA1と外部インターフェースUA2との間のスイッチを閉じ、このとき、USBデバイス120は保護対象機器130と通信することができる。しかしながら、ユーザは、USBデバイス120の使用中に、隠しストレージ領域を開く、ストレージ機能を有効にするなど、USBデバイス120の隠し機能を通じてUSBデバイス120の機能を変更する可能性があるため、このような操作により、USBデバイス120の記述子が変更され、このとき、USBデバイス120の再度エニュメレーションをトリガーし、ユーザが使用中にUSBデバイス120の他の機能を開くことができないようにするため、USB通信データ分析モジュールはUA1とUA2との間のUSB通信データをリアルタイムで分析し、USBデバイス120が認証に成功した後、USBデバイス120の使用中に再度エニュメレーション情報が見つかった場合、UA1とUA2との間の通信が切断され、アラートがトリガーされる。例えば、USBデバイス120の最初のエニュメレーションが成功した後、USBアクセス制御機器110における外部インターフェースUA1と外部インターフェースUA2との間のスイッチを閉じ、このとき、USBデバイス120は保護対象機器130と通信することができる。両者間の通信中に、USBアクセス制御機器110における外部インターフェースUA1と外部インターフェースUA2との間のUSB通信データ分析モジュールによりUSBデバイス120の記述子をリアルタイムで取得する必要がある。USBデバイス120の記述子が変更されたことを監視した場合、外部インターフェースUA1と外部インターフェースUA2との間のスイッチを開き、そしてUSBデバイスを再度エニュメレーションする。これにより、ユーザが実際の使用中にUSBデバイス120のストレージ又は無許可の機能をオンにしてデータセキュリティ監視を回避することで、保護対象機器130上でデータ漏洩を引き起こすことを防止することができる。保護対象機器130の保護を強化することができる。
【0102】
本発明が提供する方法により、保護対象機器130の各々インターフェースの引き継ぎを実現することができ、保護対象機器130のUSBインターフェース又はシリアルポートを使用するデバイスが外付け端末保護デバイス(すなわちUSBアクセス制御機器110)を通じて完了できることが確保されるため、保護対象機器130にセキュリティ対策ソフトウェアをインストールしなくても、保護対象機器130のUSBインターフェース又はシリアルポートを保護する目的を達成することができる。例えば、USBデバイス120を使用する場合、USBアクセス制御機器110はUSBデバイス120の記述子情報と該USBデバイス120の登録情報とを比較し、比較結果が異なる場合、USBデバイス120のアクセスが禁止され、該USBデバイス120の使用を中止する。
【0103】
図3を参照すると、USBアクセス制御機器110内のUSB通信データ分析モジュールは、ユーザが差し込んだUSBデバイス120と保護対象機器130及びUSBデバイス120とUSBアクセス制御機器110内のシステム制御モジュールとの間に直列に接続することができる。
図8を参照すると、データ転送モジュールを介して通信データ転送を実現することにより、USB通信データ分析モジュールはユーザが差し込んだUSBデバイス120と保護対象機器130及びUSBアクセス制御機器110内のシステム制御モジュールとの間をバイパスすることができる。ユーザが差し込んだUSBデバイス120と保護対象機器130との間には、スイッチ、例えばプログラム制御電子スイッチがあり、制御プログラムによりユーザが差し込んだUSBデバイス120と保護対象機器130との間の接続・非接続を制御することができる。USBアクセス制御機器110は、ネットワークポートを介してコントロールセンターに接続して一元管理を実現することもでき、コントロールセンターなしで単独で動作することもできる。
【0104】
図9を参照すると、USBデバイスは使用前に登録、すなわちデバイスの認証が必要である。従来のデバイス認証は、USBデバイスのベンダーID(VID)、製品識別子(PID)及びシリアル番号情報のみを対象としていたが、ベンダーID、製品識別子(PID)及びシリアル番号情報は改ざんされる可能性があるため、これらの登録はユーザがUSBデバイスを使用して登録レビューに合格し、USBデバイスのファームウェア情報を変更して、悪意のあるUSBデバイスのベンダーID、製品識別子(PID)及びシリアル番号を正規のUSB登録デバイス情報と一致させることを防止することはできない。上述の状況について、本発明内の登録プロセスはUSBデバイスの記述子情報を取得し、USBデバイスのアクセスモードを確認し、対応するドライバをロードすることである。USB記述子には、デバイス記述子、構成記述子、インターフェース記述子、エンドポイント記述子、文字列記述子が含まれ、HIDデバイスにはHID記述子、レポート記述子、物理記述子なの3つの記述子なども含まれる。
【0105】
具体的には、USBデバイスがUSBアクセス制御機器D、Fに差し込まれる前に、USB登録デバイスCのUSB登録ポートUAに差し込み登録認証を行う必要がある。USB登録デバイスCと管理ワークステーションBは、USBポートを介して接続する。例えばUSBデバイスがUSB登録デバイスCに差し込まれたとき、USB登録デバイスC内のUSB通信データ分析モジュールを通じて該USBデバイスの記述子、すなわち登録情報を取得でき、USBプロトコル仕様に従いUSBデバイスの記述子を検証できる。そしてUSB通信ポートを介して検証に成功したUSBデバイスの記述子を管理ワークステーションBに送信する。管理ワークステーションBは、ネットワークを介してUSBデバイスの登録情報を管理サーバAに報告することができるため、管理サーバAはUSBデバイスの登録情報を一元管理することができる。USBデバイスがUSBアクセス制御機器D、Fに差し込まれたとき、管理サーバAに対してUSBデバイスの登録情報の取得を要求することができるため、USBデバイスがUSBアクセス制御機器D、Fに差し込まれた後、USBデバイスの登録情報とUSBデバイスの記述子とを比較することができる。一致していれば、USBデバイスと保護対象機器G、Eとが通信できることになり、逆に不一致であれば、USBデバイスと保護対象機器G、Eとが通信できなくなることがある。
【0106】
本発明の実施形態において、USBデバイスの登録認証は、ソフトウェア又はハードウェアの方式で実現することができる。
図9は、ハードウェア方式によるUSBデバイスの登録認証の実現を示している。例えばUSB登録デバイスCと管理ワークステーションBとの間の連携によりUSBデバイスの登録認証を実現する。
図10は、管理ワークステーションBがインストールされたソフトウェアによるUSBデバイスの登録認証の実現を示している。例えばユーザがUSBデバイスを管理ワークステーションのUSBポートに差し込み、管理ワークステーションB内のUSBデバイス登録モジュール及びUSB通信データ分析モジュールを介してUSBデバイスの登録認証を実現する。
【0107】
USBデバイスの登録認証時、登録ソフトウェア又はハードウェアはUSBデバイスのデバイス記述子、構成記述子、インターフェース記述子などの情報を読み取り、現在使用されているUSBデバイス構成記述子に基づき現在のUSBインターフェース記述子情報を記録する。該情報には、ベンダーID、製品識別子(PID)及びシリアル番号情報、構成数、現在の構成の識別子、構成記述子がサポートするインターフェース数、インターフェース番号、インターフェースクラス、インターフェースサブクラス、インターフェースプロトコルなどが含まれ、これらの情報に基づきUSBデバイス正規品マークとして一意の識別子を生成する。
【0108】
USBデバイスがヒューマンインターフェースデバイスHuman Interface Devices(HID)の場合、現在HIDデバイス類の攻撃行が多いことに鑑み、登録ソフトウェア又はハードウェアはHIDデバイスのHID記述子情報をさらに収集する。USBプロトコル仕様に従い、HIDデバイスのタイプ定義をインターフェース記述子内に入れ、USBのデバイス記述子及び構成記述子内にはHIDデバイスの情報は含まれない。
【0109】
図9及び
図11を参照すると、USB通信データ分析モジュールは、直接接続方法でUSB登録ポートとUSB通信ポートとの間を接続、或いはデータ転送モジュールを用いてUSB登録ポートとUSB通信ポートとの間の通信回線にバイパス接続を実現できる。。
【0110】
上述の実施形態を実現するためのステップの全部又は一部が、CPUにより実行されるコンピュータプログラムとして実現されることは、当業者によって理解されるだろう。該コンピュータプログラムがCPUにより実行されたとき、本開示により提供される上述の方法により限定される上述の機能を実行する。プログラムは、コンピュータ読み取り可能な記録媒体に保存でき、該記録媒体は読み取り専用メモリ、磁気ディスク又は光ディスクなどであり得る。
【0111】
なお、上述の図面は、本開示の例示的な実施形態による方法に含まれる処理を概略的に示しているだけであり、限定することを意図したものではないことに留意されたい。上述の図面に示される処理は、これらの処理の時間的順序を示すものや制限するものではないことは容易に理解される。また、これらの処理は、例えば複数のモジュールで同期的又は非同期的に実行されてもよいことも容易に理解できる。
【0112】
下記は、本開示の装置の実施形態であり、本開示の方法の実施形態を実施するために用いることができる。本開示の装置の実施形態に開示されていない詳細については、本開示の方法の実施形態を参照されたい。
【0113】
図12は、例示的な実施形態によるUSBデバイスと保護対象機器間の通信制御装置のブロック図である。
【0114】
図12に示すように、USBデバイスと保護対象機器間の通信制御装置200は、監視モジュール210と、通信プロトコル種類決定モジュール220と、制御モジュール230とを備える。
【0115】
具体的には、監視モジュール210は、前記USBデバイスと前記保護対象機器との間の通信データを監視するために用いられる。
【0116】
通信プロトコル種類決定モジュール220は、USBプロトコル仕様に従い前記通信データの通信プロトコル種類を決定するために用いられる。
【0117】
制御モジュール230は、前記通信データの通信プロトコル種類に応じて前記USBデバイスと前記保護対象機器との間の通信を切断するために用いられる。
【0118】
該USBデバイスと保護対象機器間の通信制御装置200は、保護対象機器に外付けするUSBアクセス制御機器を介して保護対象機器のデータを安全に保護することができ、保護対象機器内のデータ漏洩を効果的に防止し、保護対象機器にセキュリティ対策ソフトウェアをインストールしなくても、保護対象機器のデータセキュリティを確保でき、例えば、USBデバイスがUSBアクセス制御機器に差し込まれ、認証に成功した後、USBアクセス制御機器はUSBデバイスと保護対象機器間の通信データを監視し、USBプロトコル仕様に従い両者間通信データの通信プロトコル種類を決定し、次に通信データの通信プロトコル種類に応じてUSBデバイスと保護対象機器間の通信を切断する。
【0119】
本発明の一実施形態によれば、該USBデバイスと保護対象機器間の通信制御装置200は、上記実施形態で説明したUSBデバイスと保護対象機器間の通信制御方法を実現するために使用することができる。
【0120】
図13は、例示的な実施形態による電子機器のブロック図である。
【0121】
以下、
図13を参照して、本開示の実施形態による電子機器300を説明する。
図13に示す電子機器300は一例に過ぎず、本開示の実施形態の機能及び使用範囲を限定するものではない。
【0122】
図13に示すように、電子機器300は、汎用コンピューティングデバイスの形態で具体化される。電子機器300のコンポーネントは、少なくとも1つの処理装置310、少なくとも1つの記憶ユニット320、異なるシステムコンポーネント(記憶ユニット320及び処理装置310を含む)を接続するバス330、及び表示ユニット340などを含むが、これらに限定されない。
【0123】
前記記憶ユニットは、プログラムコードを記憶し、前記処理装置310が本明細書内の本開示の様々な例示的な実施形態によるステップを実行できるように、前記プログラムコードは前記処理装置310により実行されることができる。例えば処理装置310は、
図2~
図6に示されるステップを実行することができる。
【0124】
前記記憶ユニット320は、揮発性メモリの形態の読み取り可能な媒体、例えばランダムアクセスメモリ(RAM)3201及び/又はキャッシュメモリ3202を含み得、読み取り専用メモリ(ROM)3203を含んでもよい。
【0125】
前記記憶ユニット320は、一組(少なくとも1つ)のプログラムモジュール3205を有するプログラム/ユーティリティ3204も含んでもよく、このようなプログラムモジュール3205はオペレーティングシステム、1つ以上のアプリケーションプログラム、他のプログラムモジュール及びプログラムデータを含むがこれらに限定されない。これらの例の各々又はいくつかの組み合わせには、ネットワーク環境の実現が含まれる場合がある。
【0126】
バス330は、いくつかのタイプのバス構造のうちの1つ以上を表すことができ、これにはメモリバス又はメモリコントローラ、周辺バス、グラフィックスアクセラレーションポート、処理装置或いは様々なバス構造のいずれかを使用するローカルバスが含まれる。
【0127】
電子機器300は、1つ以上の外部機器300(例えばキーボード、ポインティングデバイス、ブルートゥース(登録商標)デバイスなど)と通信することもできるため、ユーザが該電子機器300と対話する機器と通信でき、及び/又は該電子機器300が1つ以上の他のコンピューティングデバイスと通信できる任意の機器(例えばルータ、モデムなど)と通信できるようになる。この通信は、入力/出力(I/O)インターフェース350を介して行われてもよい。電子機器300は、ネットワークアダプタ360を介して1つ以上のネットワーク(例えばローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)及び/又はインターネットなどの公衆ネットワーク)と通信することもできる。ネットワークアダプタ360は、バス330を介して電子機器300の他のモジュールと通信することができる。図には示されていないが、マイクロコード、デバイスドライバ、冗長処理装置、外部ディスクドライブアレイ、RAIDシステム、テープドライブ、及びデータバックアップストレージシステムなどを含むが、これらに限定されない、他のハードウェア及び/又はソフトウェアモジュールが電子機器300と併せて使用され得ることは明白であろう。
【0128】
以上の実施形態の説明を通じて、当業者は、ここで説明される例示的な実施形態がソフトウェアにより実現可能であること、或いはソフトウェアと必要なハードウェアとの組み合わせにより実現可能であることを容易に理解することができる。したがって、
図14に示すように、本開示の実施形態による技術的手段は、ソフトウェア製品の形態で具現化することができ、該ソフトウェア製品はコンピューティングデバイス(パソコン、サーバ、或いはネットワーク機器などであり得る)が本開示の実施形態による上記の方法を実行するように、不揮発性記憶媒体(CD-ROM、USBフラッシュドライブ、ポータブルストレージデバイスなどであり得る)若しくはネットワーク上に保存できる(いくつかの命令を含む)。
【0129】
前記ソフトウェア製品は、1つ以上の読み取り可能な媒体の任意の組み合わせが使用されてよい。読み取り可能な媒体は、読み取り可能な信号媒体又は読み取り可能な記録媒体であってもよい。読み取り可能な記録媒体は、例えば、電気的、磁気的、光学的、電磁気的、赤外線、或いは半導体のシステム、装置若しくはデバイス、又はこれらの任意の組み合わせであってもよいが、これらに限定されるものではない。読み取り可能な記録媒体のより具体的な例(非網羅的なリスト)としては、1つ以上の導線を有する電気的接続、ポータブルディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能なプログラマブル読み取り専用メモリ(EPROM又はフラッシュメモリ)、光ファイバ、ポータブルコンパクトなディスク読み取り専用メモリ(CD-ROM)、光記憶装置、磁気記憶装置、若しくはこれらの任意の適切な組み合わせが挙げられる。
【0130】
前記コンピュータ読み取り可能な記録媒体は、ベースバンド内又は搬送波の一部として伝播されるデータ信号を含んでもよく、中にコンピュータ読み取り可能なプログラムコードがロードされている。このような伝播されるデータ信号は、様々な形式を用いてもよく、電磁信号、光信号、又はこれらの任意の適切な組み合わせを含むが、これらに限定されない。読み取り可能な記録媒体は、読み取り可能な記録媒体以外の任意の読み取り可能な媒体であってもよく、該読み取り可能な媒体は、命令実行システム、装置、又はデバイスに使用され、或いはそれを結合して使用されるプログラムを、送信、伝播、若しくは伝送することができる。読み取り可能な記録媒体に含まれるプログラムコードは、任意の適切な媒体で伝送されることができ、無線、電線、光ケーブル、RFなど、又はこれらの任意の適切な組み合わせを含むがこれらに限定されない。
【0131】
1種以上のプログラミング言語の任意の組み合わせで本開示の操作を実行するためのコンピュータプログラムコードを作成することができ、前記プログラミング言語は例えばJava、C++などのオブジェクト指向プログラミング言語を含み、さらに例えば「C」言語又は類似するプログラミング言語などの一般的なプロセス式プログラミング言語を含む。プログラムコードは完全にユーザコンピューティングデバイス上で実行されてもよいし、一部はユーザコンピューティングデバイス上で実行されてもよいし、1つの独立したソフトウェアパッケージとして実行されてもよいし、一部はユーザコンピューティングデバイスで、一部は遠隔コンピューティングデバイスで実行されてもよいし、若しくは完全に遠隔コンピューティングデバイス又はサーバで実行されてもよい。遠隔コンピューティングデバイスに関する状況において、遠隔コンピューティングデバイスはローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意の種類のネットワークを介して、ユーザコンピューティングデバイスに接続されてもよいし、或いは、外部コンピュータに接続されてもよい(例えばインターネットサービスプロバイダを利用してインターネットを介して接続される)。
【0132】
上記のコンピュータ読み取り可能な記録媒体は、1つ以上のプログラムをロードし、上記の1つ以上のプログラムがデバイスにより実行されたとき、該コンピュータ読み取り可能な記録媒体は、次の機能を実現でき、すなわち保護対象機器に外付けするUSBアクセス制御機器を介して保護対象機器のデータを安全に保護することができ、保護対象機器内のデータ漏洩を効果的に防止し、保護対象機器にセキュリティ対策ソフトウェアをインストールしなくても、保護対象機器のデータセキュリティを確保でき、例えば、USBデバイスがUSBアクセス制御機器に差し込まれ、認証に成功した後、USBアクセス制御機器はUSBデバイスと保護対象機器間の通信データを監視し、USBプロトコル仕様に従い両者間通信データの通信プロトコル種類を決定し、次に通信データの通信プロトコル種類に応じてUSBデバイスと保護対象機器間の通信を切断する。
【0133】
当業者は、上述のモジュールが実施形態の説明に従い装置内に分散され得ること、又は本実施形態とのみ異なる1つ以上の装置内で適宜変更され得ることが理解されるであろう。上記の実施形態のモジュールは、1つのモジュールに統合することも、さらに複数のサブモジュールに分割することもできる。
【0134】
以上の実施形態の説明を通じて、当業者は、ここで説明される例示的な実施形態がソフトウェアにより実現可能であること、或いはソフトウェアと必要なハードウェアとの組み合わせにより実現可能であることを容易に理解することができる。したがって、本開示の実施形態による技術的手段は、ソフトウェア製品の形態で具現化することができ、該ソフトウェア製品はコンピューティングデバイス(パソコン、サーバ、或いはネットワーク機器などであり得る)が本開示の実施形態による方法を実行するように、不揮発性記憶媒体(CD-ROM、USBフラッシュドライブ、ポータブルストレージデバイスなどであり得る)若しくはネットワーク上に保存できる(いくつかの命令を含む)。
【0135】
以上、本開示の例示的な実施形態を具体的に示し説明した。本開示は、本明細書に記載される構造、配置方法、或いは実現方法の詳細に限定されず、むしろ、本開示は、添付の特許請求の範囲の精神及び範囲内に含まれる様々な修正及び均等な配置をカバーすることを意図していることが理解される。
【国際調査報告】