JP2023061914A - マルウェアの伝播を防止するための方法、コンピュータシステム、コンピュータプログラム製品(マルウェアの伝播を防止するための安全なマテリアルの移動) - Google Patents
マルウェアの伝播を防止するための方法、コンピュータシステム、コンピュータプログラム製品(マルウェアの伝播を防止するための安全なマテリアルの移動) Download PDFInfo
- Publication number
- JP2023061914A JP2023061914A JP2022167106A JP2022167106A JP2023061914A JP 2023061914 A JP2023061914 A JP 2023061914A JP 2022167106 A JP2022167106 A JP 2022167106A JP 2022167106 A JP2022167106 A JP 2022167106A JP 2023061914 A JP2023061914 A JP 2023061914A
- Authority
- JP
- Japan
- Prior art keywords
- iot device
- malware
- industrial robot
- iot
- amh
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/564—Static detection by virus signature recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/568—Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Virology (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
【課題】マルウェアの伝播を防止するための安全なマテリアルの移動のための方法、コンピュータシステム、コンピュータプログラム製品を提供する。【解決手段】一実施形態によれば、マルウェアの伝播を防止するための方法、コンピュータシステム、及びコンピュータプログラム製品が提供される。実施形態は、自動マテリアルハンドリング(AMH)環境内のIoT(Internet-of-Things)デバイスのマルウェアスキャンレポートを特定することを含んでもよい。実施形態は、IoTデバイスがマルウェアに影響されているかどうかを判断することを含んでもよい。IoTデバイスがマルウェアに影響されていると判断することに応じて、実施形態は、IoTデバイスを無効にすることを含んでもよい。実施形態は、産業用ロボットに、IoTデバイスをAMH環境内の目的地まで搬送するよう指示することを含んでもよい。【選択図】図2
Description
本発明は、一般にコンピューティングの分野に関し、より詳細には自動マテリアルハンドリングに関する。
マテリアルハンドリング(MH)とは、建物内または建物と輸送車両との間で材料を短距離で移動させることである。MHでは、手動、半自動、および自動の幅広い機器が使用される。MHのための自動化機器の使用は、コンピュータ制御の機械(モバイルスキャン装置、IoTデバイス、コンベアなど)、自動搬送車、自律移動ロボットや産業用ロボットなどのロボティクスが含まれる。MHにはさらに、製造、倉庫保管、流通、消費、廃棄に至るまで、材料の保護、保管、管理に関する考慮も含まれる。材料には、原材料のほか、コンピューティングパーツ、コンピューティングオブジェクト、データの送受信が可能なマイクロプロセッサ制御のデバイス(例えば、IoT(Internet-of-Things)デバイス)などが含まれる場合がある。
マルウェアの伝播を防止するための安全なマテリアルの移動のための方法、コンピュータシステム、コンピュータプログラム製品を提供する。
一実施形態によれば、マルウェアの伝播を防止するための方法、コンピュータシステム、及びコンピュータプログラム製品が提供される。実施形態は、自動マテリアルハンドリング(AMH)環境内のIoT(Internet-of-Things)デバイスのマルウェアスキャンレポートを特定することを含んでもよい。実施形態は、IoTデバイスがマルウェアに影響されているかどうかを判断することを含んでもよい。IoTデバイスがマルウェアに影響されていると判断することに応じて、実施形態は、IoTデバイスを無効にすることを含んでもよい。実施形態は、産業用ロボットに、IoTデバイスをAMH環境内の目的地まで搬送するよう指示することを含んでもよい。
本発明のこれらおよび他の目的、特徴および利点は、添付図面と関連して読まれる、その例示的な実施形態の以下の詳細な説明から明らかになるであろう。図面の様々な特徴は、詳細な説明と関連して本発明を当業者が理解する際に容易にするために明確にするための図であるため、縮尺通りではない。
請求された構造及び方法の詳細な実施形態が本明細書に開示されているが、開示された実施形態は、様々な形態で具体化され得る請求された構造及び方法の単なる例示であることが理解され得る。しかしながら、本発明は、多くの異なる形態で具現化されてもよく、本明細書に記載された例示的な実施形態に限定されると解釈されるべきではない。説明において、提示された実施形態を不必要に不明瞭にすることを避けるために、周知の特徴及び技術の詳細が省略される場合がある。
単数形「a」、「an」、および「the」は、文脈が明らかにそうでないことを指示しない限り、複数形を含むことが理解される。したがって、例えば、「コンポーネントの表面(a component surface)」への言及は、文脈が明らかに他に指示しない限り、そのような表面(surface)のうちの1つまたは複数への言及を含む。
本発明は、一般に、コンピューティングの分野に関し、より詳細には、自動化されたマテリアルハンドリングの分野に関する。以下に説明する例示的な実施形態は、特に、自動MH環境においてロボットまたは他のマイクロプロセッサ制御の機械によってハンドリングされることになるコンピューティングまたはIoTデバイス内にマルウェアが存在するかどうかを判断し、それに応じて、ハンドリングされる前にコンピューティングまたはIoTデバイスを部分的または完全に無効にするシステム、方法、およびプログラム製品を提供するものである。したがって、本実施形態は、マルウェアに影響されたコンピューティングまたはIoTデバイスをハンドリングする際に、検出されたマルウェアがロボット型および他のマイクロプロセッサ制御の機械に伝播することを防止し、自動MH環境におけるロボット型および他のマイクロプロセッサ制御の機械のセキュリティを改善することによって、自動マテリアルハンドリングの技術分野を改善する能力を有している。
前述したように、MHとは、建物内または建物と輸送車両との間で材料を短距離で移動させることである。MHでは、手動、半自動、および自動の幅広い機器が使用される。MHのための自動化機器の使用は、コンピュータ制御の機械(例えば、モバイルスキャン装置、IoTデバイス、コンベアなど)、自動搬送車、自律移動ロボットや産業用ロボットなどのロボティクスが含まれる。MHはさらに、製造、倉庫保管、流通、消費、および廃棄に至るまで、材料の保護、保管、および管理を考慮することを含む。材料には、原材料のほか、コンピューティングパーツ、コンピューティングオブジェクト、データの送受信が可能なマイクロプロセッサ制御のデバイス(例えば、IoTデバイス)などが含まれる。
産業用ロボットまたは他のマイクロプロセッサ制御の機械が、データを無線送信することができるコンピューティングおよびIoTデバイスを含む材料を扱っている自動産業倉庫または製造環境の状況下では、マルウェアに影響されたコンピューティングおよびIoTデバイスから自動MH環境のコンポーネント(すなわち、産業用ロボットまたは他のマイクロプロセッサ制御の機械)までのマルウェア伝播は、望ましくないソフトウェアセキュリティのリスクを呈する場合がある。このようなマルウェアの伝播は、例えば、Bluetooth接続を介して、または超音波信号伝送を介して、可能である場合がある。例えば、Bluetooth対応の産業用ロボットまたは他のマイクロプロセッサ制御の機械は、同じくBluetooth対応のマルウェアに影響されたコンピューティングまたはIoTデバイスをハンドリングするか、または近接させた結果、無意識のうちにマルウェアに影響されることがある。マルウェアに影響されたコンピューティングまたはIoTデバイスがマルウェアを含む超音波信号を送信し、産業用ロボットまたは他のマイクロプロセッサ制御の機械のマイクロフォンを介して受信された場合、同様の結果がもたらされる場合がある。したがって、自動MH環境の産業ロボットまたは他のマイクロプロセッサ制御の機械によってハンドリングされる前に、マルウェアに影響されたコンピューティングまたはIoTデバイスを部分的または完全に無効にすることによって、もしくはハンドリングされている間にマルウェアに影響されたコンピューティングまたはIoTデバイスを他のデバイスおよびMH環境のコンポーネントから十分に距離を置くことによってまたはその両方によって、自動MH環境内のマルウェアの伝播を防止するシステムを有することが不可欠であると考えられる。したがって、本発明の実施形態は、とりわけ、自動MH環境内でハンドリングされるコンピューティングまたはIoTデバイスのマルウェアスキャンレポートを評価すること、ハンドリングされる前にマルウェアに影響されたコンピューティングまたはIoTデバイスの無線通信もしくは音生成能力またはその両方を無効にすること、無線マルウェア伝播を可能にする範囲内にないようにマルウェアに影響されたコンピューティングまたはIoTデバイスの距離を置くこと、および自動MH環境内でソフトウェアセキュリティを強化することに有利な場合がある。本発明は、すべての利点を本発明のすべての実施形態に取り入れる必要があるわけではない。
少なくとも1つの実施形態によれば、IoTデバイスが自動マテリアルハンドリング(AMH)環境内の産業ロボットによってハンドリングされる前に、提案されたシステムは、IoTデバイスのマルウェアスキャンレポートを評価して、IoTデバイスがマルウェアに影響されているかどうかを判断してもよい。IoTデバイスがマルウェアに影響されていると判断した場合、提案システムは、マルウェアに影響されたIoTデバイスを部分的にまたは完全に無効にしてもよい。その後、マルウェアに影響されたIoTデバイスは、産業用ロボットによってハンドリングされ(例えば、掴まれて)、目的地の場所に搬送されてもよい。少なくとも1つの他の実施形態によれば、マルウェアに影響されたIoTデバイスの無効化が成功しないかまたは検証不可能である場合、産業用ロボットは、AMH環境内の他のIoTデバイスおよび産業用ロボットから距離を置いた(例えば、Bluetooth通信範囲外)、提案されたシステムによって識別される移動経路を介してマルウェアに影響されたIoTデバイスを目的地の場所に輸送してもよい。
本発明は、任意の可能な技術詳細レベルで統合されたシステム、方法もしくはコンピュータプログラム製品またはそれらの組み合せとすることができる。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を記憶したコンピュータ可読記憶媒体を含んでよい。
コンピュータ可読記憶媒体は、命令実行装置によって使用される命令を保持し、記憶することができる有形の装置とすることができる。コンピュータ可読記憶媒体は、一例として、電子記憶装置、磁気記憶装置、光学記憶装置、電磁記憶装置、半導体記憶装置またはこれらの適切な組み合わせであってよい。コンピュータ可読記憶媒体のより具体的な一例としては、ポータブルコンピュータディスケット、ハードディスク、RAM、ROM、EPROM(またはフラッシュメモリ)、SRAM、CD-ROM、DVD、メモリスティック、フロッピーディスク、パンチカードまたは溝内の隆起構造などに命令を記録した機械的に符号化された装置、およびこれらの適切な組み合せが挙げられる。本明細書で使用されるコンピュータ可読記憶装置は、電波もしくは他の自由に伝播する電磁波、導波管もしくは他の伝送媒体を介して伝播する電磁波(例えば、光ファイバケーブルを通過する光パルス)、またはワイヤを介して送信される電気信号のような、一過性の信号それ自体として解釈されるべきではない。
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピュータ装置/処理装置へダウンロード可能である。あるいは、ネットワーク(例えばインターネット、LAN、WANもしくはワイヤレスネットワークまたはこれらの組み合わせ)を介して、外部コンピュータまたは外部記憶装置へダウンロード可能である。ネットワークは、銅製伝送ケーブル、光伝送ファイバ、ワイヤレス伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータもしくはエッジサーバまたはこれらの組み合わせを備えることができる。各コンピュータ装置/処理装置内のネットワークアダプタカードまたはネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、当該コンピュータ可読プログラム命令を、各々のコンピュータ装置/処理装置におけるコンピュータ可読記憶媒体に記憶するために転送する。
本発明の動作を実施するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路用構成データ、または、スモールトークやC++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語や類似のプログラミング言語などの手続き型プログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで記述されたソースコードもしくはオブジェクトコードのいずれかとすることができる。コンピュータ可読プログラム命令は、スタンドアロン型ソフトウェアパッケージとして完全にユーザのコンピュータ上で、または部分的にユーザのコンピュータ上で実行可能である。あるいは、部分的にユーザのコンピュータ上でかつ部分的にリモートコンピュータ上で、または、完全にリモートコンピュータもしくはサーバ上で実行可能である。後者の場合、リモートコンピュータは、LANやWANを含む任意の種類のネットワークを介してユーザのコンピュータに接続してもよいし、外部コンピュータに(例えば、インターネットサービスプロバイダを使用してインターネットを介して)接続してもよい。いくつかの実施形態において、例えばプログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブル論理アレイ(PLA)を含む電子回路は、本発明の態様を実行する目的で当該電子回路をカスタマイズするために、コンピュータ可読プログラム命令の状態情報を利用することによって、コンピュータ可読プログラム命令を実行することができる。
本発明の実施形態は、本明細書において、本発明の実施形態に係る方法、装置(システム)、およびコンピュータプログラム製品のフローチャートもしくはブロック図またはその両方を参照して説明されている。フローチャートもしくはブロック図またはその両方における各ブロック、および、フローチャートもしくはブロック図またはその両方における複数のブロックの組み合わせは、コンピュータ可読プログラム命令によって実行可能である。
上記のコンピュータ可読プログラム命令は、機械を生産するために、汎用コンピュータ、専用コンピュータ、または他のプログラマブルデータ処理装置のプロセッサに提供してよい。これにより、かかるコンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行されるこれらの命令が、フローチャートもしくはブロック図またはその両方における1つ以上のブロックにて特定される機能/動作を実行するための手段を創出する。上記のコンピュータ可読プログラム命令はさらに、コンピュータ、プログラマブルデータ処理装置もしくは他の装置またはこれらの組み合わせに対して特定の態様で機能するよう命令可能なコンピュータ可読記憶媒体に記憶してよい。これにより、命令が記憶された当該コンピュータ可読記憶媒体は、フローチャートもしくはブロック図またはその両方における1つ以上のブロックにて特定される機能/動作の態様を実行するための命令を含む製品を構成する。
また、コンピュータ可読プログラム命令を、コンピュータ、他のプログラマブル装置、または他の装置にロードし、一連の動作ステップを当該コンピュータ、他のプログラマブル装置、または他の装置上で実行させることにより、コンピュータ実行プロセスを生成してもよい。これにより、当該コンピュータ、他のプログラマブル装置、または他の装置上で実行される命令が、フローチャートもしくはブロック図またはその両方における1つ以上のブロックにて特定される機能/動作を実行する。
本開示の図面におけるフローチャートおよびブロック図は、本発明の種々の実施形態に係るシステム、方法およびコンピュータプログラム製品の可能な実装形態のアーキテクチャ、機能性、および動作を示している。この点に関して、フローチャートまたはブロック図における各ブロックは、特定の論理機能を実行するための1つ以上の実行可能な命令を含む、命令のモジュール、セグメント、または部分を表すことができる。他の一部の実装形態において、ブロック内に示した機能は、各図に示す順序とは異なる順序で実行してもよい。例えば、連続して示される2つのブロックは、実際には、関係する機能に応じて、略同時に実行してもよいし、場合により逆順で実行してもよい。なお、ブロック図もしくはフローチャートまたはその両方における各ブロック、および、ブロック図もしくはフローチャートまたはその両方における複数のブロックの組み合わせは、特定の機能または動作を行う、または専用ハードウェアとコンピュータ命令との組み合わせを実行する専用ハードウェアベースのシステムによって、実行可能である。
以下に説明する例示的な実施形態は、IoTデバイスがAMH環境内の産業用ロボットまたは他のマイクロプロセッサ制御の機械によってハンドリングされる前に、IoTデバイスがマルウェアに影響されているかどうかを判断するために、IoTデバイスのマルウェアスキャンレポートを評価し、それに応じて、IoTデバイスから産業用ロボットまたは他のマイクロプロセッサ制御の機械へのマルウェアの伝播を防止するようにマルウェアに影響されたと判断されると、IoTデバイスを部分的または完全に無効にするシステム、方法、およびプログラム製品を提供する。
図1を参照すると、少なくとも1つの実施形態による、例示的なネットワーク化されたコンピュータ環境100が示されている。ネットワーク化されたコンピュータ環境100は、通信ネットワーク114を介して相互接続されたクライアントコンピューティング装置102と、サーバ112と、ロボット型IoTデバイス118と、IoTデバイス120とを含み得る。少なくとも1つの実装形態によれば、ネットワーク化されたコンピュータ環境100は、複数のクライアントコンピューティング装置102、ロボット型IoTデバイス118、IoTデバイス120、およびサーバ112を含み得、そのうちの1つだけが、例示的に簡潔性のために示されている。さらに、1つまたは複数の実施形態において、クライアントコンピューティング装置102、サーバ112、およびロボット型IoTデバイス118はそれぞれ、マルウェア伝播防止プログラム110A、110B、110Cをホストし得る。1つまたは複数の他の実施形態において、マルウェア伝播防止プログラム110A、110B、110Cは、機能性がデバイス間で分離され得るように、クライアントコンピューティング装置102、サーバ112、およびロボット型IoTデバイス118上で部分的にホストされてもよい。
通信ネットワーク114は、広域ネットワーク(WAN)、ローカルエリアネットワーク(LAN)、電気通信ネットワーク、無線ネットワーク(例えば、Wi-Fi、Bluetooth)、公衆交換網もしくは衛星ネットワークまたはその組み合わせなどの様々な種類の通信ネットワークを含んでもよい。通信ネットワーク114は、有線、無線通信リンク、または光ファイバケーブルなどの接続を含んでもよい。図1は、1つの実装の例示のみを提供し、異なる実施形態が実装され得る環境に関していかなる制限も示唆しないことが理解され得る。描かれた環境に対する多くの変更が、設計および実装要件に基づいてなされ得る。
クライアントコンピューティング装置102は、本発明の一実施形態において、ソフトウェアプログラム108およびマルウェア伝播防止プログラム110Aをホストして実行し、通信ネットワーク114を介してサーバ112、ロボット型IoTデバイス118、およびIoTデバイス120と通信することを可能にするプロセッサ104およびデータ記憶装置106を含んでもよい。クライアントコンピューティング装置102は、例えば、モバイルデバイス、電話、パーソナルデジタルアシスタント、ネットブック、ラップトップコンピュータ、タブレットコンピュータ、デスクトップコンピュータ、またはプログラムを実行しネットワークにアクセスすることができる任意のタイプのコンピューティングデバイスであってよい。図3を参照して説明するように、クライアントコンピューティング装置102は、内部コンポーネント402a及び外部コンポーネント404aをそれぞれ含んでもよい。
サーバコンピュータ112は、本発明の実施形態において、マルウェア伝播防止プログラム110Bおよびデータベース116をホストして実行し、通信ネットワーク114を介してクライアントコンピューティング装置102、ロボット型IoTデバイス118、およびIoTデバイス120と通信することができるラップトップコンピュータ、ネットブックコンピュータ、パーソナルコンピュータ(PC)、デスクトップコンピュータ、または任意のプログラム可能電子デバイスまたは任意のプログラム可能電子デバイスのネットワークであり得る。図3を参照して説明されるように、サーバコンピュータ112は、内部コンポーネント402bおよび外部コンポーネント404bをそれぞれ含んでもよい。また、サーバ112は、サービスとしてのソフトウェア(SaaS)、サービスとしてのプラットフォーム(PaaS)、またはサービスとしてのインフラストラクチャ(IaaS)などのクラウドコンピューティングサービスモデルにおいて動作してもよい。また、サーバ112は、プライベートクラウド、コミュニティクラウド、パブリッククラウド、またはハイブリッドクラウドなどのクラウドコンピューティング展開モデルにおいて配置されてもよい。
ロボット型IoTデバイス118は、IoT対応産業用ロボットまたは他のIoT対応マイクロプロセッサ制御の機械(例えば、コンピュータ制御の金属切断機、AMH環境内で物体をハンドリングするためのロボット)であって、ロボット/機械の内部または外部に組み込まれ、マルウェア伝播防止プログラム110Cをホストして実行し、通信ネットワーク114に接続し、クライアントコンピューティング装置102、IoTデバイス120、およびサーバ112とデータを送受信できる、マイクロフォン、カメラ、バーコードスキャナ、その他の種々のセンサを有するものであってよい。ロボット型IoTデバイス118のマイクロフォンは、音声出力(例えば、超音波信号)を捉えるための当技術分野における任意の既知のマイクロフォンを含んでもよい。ロボット型IoTデバイス118のカメラは、画像を捉えるための当技術分野における任意の既知のカメラを含んでもよい。少なくとも1つの実装形態によれば、ネットワーク化されたコンピュータ環境100は、複数のロボット型IoTデバイス118を含み得る。図3を参照して説明されるように、ロボット型IoTデバイス118は、内部コンポーネント402cおよび外部コンポーネント404cをそれぞれ含んでいてもよい。
IoTデバイス120は、通信ネットワーク114に接続し、クライアントコンピューティング装置102、ロボット型IoTデバイス118、およびサーバ112とデータを送受信することができる、当技術分野で既知の任意のIoT対応デバイスまたはマイクロプロセッサ制御のコンピューティングデバイス/コンポーネントでもよい。例えば、IoTデバイス120は、スマートフォン、タブレット、ラップトップ、スマートサーモスタット、スマートスピーカー、ウェアラブルコンピューティングデバイス、およびコンピューティングデバイスまたは機械のIoT対応コンポーネントであってよいが、これらに限定されるものではない。少なくとも1つの実装によれば、ネットワーク化されたコンピュータ環境100は、複数のマイクロフォンIoTデバイス122を含んでもよい。
本実施形態によれば、マルウェア伝播防止プログラム110A、110B、110Cは、AMH環境において産業用ロボットによってハンドリングされる/輸送されるIoTデバイス/コンポーネントのソースおよび目的地を特定することと、IoTデバイス/コンポーネントおよびIoTデバイス/コンポーネントに接触した産業用ロボットのマルウェアスキャンを実行し評価することと、IoTデバイス/コンポーネントまたは産業用ロボットがマルウェアに影響されているかどうかを特定することと、マルウェアに影響されたIoTデバイス/コンポーネントを、ハンドリングされる/輸送される前に、部分的または完全に無効にすることと、マルウェアに影響されたIoTデバイス/コンポーネントの長距離移動経路を特定することと、マルウェアに影響されたIoTデバイス/コンポーネントまたはマルウェアに影響された産業用ロボットに対してコンタクトトレーシングを実行することが可能であってよい。マルウェア伝播防止方法は、図2に関して以下にさらに詳細に説明される。
ここで図2を参照すると、マルウェア伝播防止プロセス200におけるマルウェア伝播を防止するための動作フローチャートが、少なくとも1つの実施形態に従って示されている。202において、マルウェア伝播防止(MPP)プログラム110A、110B、110Cは、AMH環境内の産業ロボット(例えば、ロボット型IoTデバイス118)によって、ハンドリングの要求に従って、ハンドリングされる(例えば、操作または運搬される)IoTデバイス/コンポーネント(例えば、IoTデバイス120)を特定する。MPPプログラム110A、110B、110Cは、IoTデバイス/コンポーネントについて、ソースおよび目的地などの属性も特定し得る。さらに、202において、MPPプログラム110A、110B、110Cは、固有の識別子、役割/説明、ハンドリングの要求/指示、および既存の無線通信機能(例えば、Bluetoothモジュール、超音波信号モジュール)またはその欠如を含むIoTデバイス/コンポーネントのさらなる属性を特定し得る。少なくとも1つの実施形態によれば、MPPプログラム110A、110B、110Cは、IoTデバイス/コンポーネントのバーコードまたはクイックレスポンス(QR)コード(登録商標)のスキャンを介して、または産業ロボットとIoTデバイス/コンポーネントとの間のBluetooth信号交換を介して前述の属性を特定または受信してもよい。MPPプログラム110A、110B、110Cは、産業用ロボットのバーコードスキャナ又はカメラを介してバーコード又はQRコードのスキャンを行うよう産業用ロボットに指示し、産業用ロボットからスキャンの情報を受信してもよい。
少なくとも1つの他の実施形態によれば、MPPプログラム110A、110B、110Cは、インベントリプロセス中に、AMH環境内に存在するすべてのIoTデバイス/コンポーネントについて属性情報を特定または受信してもよい。さらに、インベントリプロセスの一部として、MPPプログラム110A、110B、110Cは、既知のアンチウイルスソフトウェアソリューションを使用して、AMH環境内に存在するすべてのIoTデバイス/コンポーネントおよびすべての産業用ロボットのマルウェアスキャン(例えば、無線マルウェアスキャン)を実行することができる。MPPプログラム110A、110B、110Cは、IoTデバイス/コンポーネント及び産業用ロボットのマルウェアスキャン結果を、データ記憶装置106又はデータベース116内に格納してもよい。また、インベントリプロセスの中に、MPPプログラム110A、110B、110Cは、AMH環境内に存在するすべての産業用ロボットの、固有の識別子、役割/説明、及び既存の無線通信能力を含む属性情報を特定又は受信してもよい。産業用ロボットは、属性情報を提供し得るそれぞれのバーコード又はQRコードも有していてもよい。AMH内に存在するすべてのコンピューティングデバイス(すなわち、クライアントコンピューティングデバイス、サーバ、産業用ロボット、及びIoTデバイス/コンポーネント)は、互いに無線通信することが可能であってもよい。
204において、MPPプログラム110A、110B、110Cは、産業用ロボットによってハンドリングされる前に、ステップ202で特定されたIoTデバイス/コンポーネントに対するマルウェアスキャンレポートを特定する。少なくとも1つの実施形態によれば、MPPプログラム110A、110B、110Cは、データ記憶装置106またはデータベース116からIoTデバイス/コンポーネントに対するマルウェアスキャンレポートにアクセスし得る。少なくとも1つの他の実施形態によれば、MPPプログラム110A、110B、110Cは、IoTデバイス/コンポーネントのマルウェアスキャンを実行し、データ記憶装置106またはデータベース116内に格納され得る対応するスキャンレポートを生成してもよい。MPPプログラム110A、110B、110Cは、AMH環境のコンピュータ(例えば、クライアントコンピューティング装置102、サーバ112)または産業ロボット(例えば、ロボット型IoTデバイス118)を介してIoTデバイス/コンポーネントのマルウェアスキャンを実行し得る。
次に、206において、MPPプログラム110A、110B、110Cは、IoTデバイス/コンポーネントがマルウェアに影響されているか否かを判断する。この判断を行うにあたり、MPPプログラム110A、110B、110Cは、IoTデバイス/コンポーネントの特定されたマルウェアスキャンレポートを評価し、IoTデバイス/コンポーネント内でマルウェアが検出されたかどうか(例えば、スキャンレポート内にマルウェアフラグが存在する)を特定する。IoTデバイス/コンポーネントがマルウェアに影響されていると判断することに応じて(ステップ206の「Y」の枝)、マルウェア伝播防止プロセス200は、ステップ208に進んでよい。IoTデバイス/コンポーネントがマルウェアに影響されていないと判断することに応じて(ステップ206の「N」の枝)、MPPプログラム110A、110B、110Cは、産業ロボットによってハンドリングされている間、IoTデバイス/コンポーネントが有効なまま(すなわち、電源が入っていて、AMH環境内の他のIoTデバイス/コンポーネントおよび産業ロボットと無線通信できる)にして、マルウェア伝播防止プロセス200がステップ214へ進んでもよい。
208において、MPPプログラム110A、110B、110Cは、IoTデバイス/コンポーネントの特定された無線通信能力(例えば、Bluetooth通信、超音波信号送信)を無効にする。IoTデバイス/コンポーネントの既存のワイヤレス通信機能は、ステップ202で、または上述のインベントリプロセスの間に特定されてもよい。
210において、MPPプログラム110A、110B、110Cは、無線通信機能の無効化が成功したかどうかを判断する。無線通信機能の無効化が成功したと判断したことに応じて(ステップ210の「Y」の枝)、MPPプログラム110A、110B、110Cは、産業ロボットによってハンドリングされている間、IoTデバイス/コンポーネントに電源が入った状態を維持することを許可してもよく、マルウェア伝播防止プロセス200はステップ214に進んでもよい。無線通信機能の無効化が成功しなかったと判断することに応じて(ステップ210の「N」の枝)、マルウェア伝播防止プロセス200は、ステップ212に進んでもよい。
少なくとも1つの他の実施形態によれば、IoTデバイス/コンポーネントの無線通信機能を特定できない場合、またはIoTデバイス/コンポーネントの特定された無線通信機能の無効化が成功しなかった、または検証されていないと判断される場合、MPPプログラム110A、110B、110CはIoTデバイス/コンポーネントの電源を完全に切ってもよい。さらに、MPPプログラム110A、110B、110Cは、IoTデバイス/コンポーネントをハンドリングする前に、産業用ロボットの無線通信機能(例えば、Bluetoothモジュール、超音波マイクロフォン)を無効にしてもよい。
212において、MPPプログラム110A、110B、110Cは、マルウェアに影響されたIoTデバイス/コンポーネントが産業用ロボットによってその目的地までハンドリングされる際に、長距離移動経路を特定する。長距離移動経路は、AMH環境内の他のIoTデバイス/コンポーネントおよび産業用ロボットから十分な距離を維持するIoTデバイス/コンポーネントの目的地まで、産業用ロボットによって横断される経路であってよい。十分な距離は、IoTデバイス/コンポーネントの無線伝送範囲(例えば、Bluetoothまたは超音波信号の伝送範囲)よりも大きい距離であってよい。さらに、少なくとも1つの実施形態によれば、MPPプログラム110A、110B、110Cは、マルウェアに影響されたIoTデバイス/コンポーネントまたはマルウェアに影響された産業用ロボットがAMH環境内でハンドリングされるまたは移動する際のコンタクトトレーシングを実行してもよい。コンタクトトレーシングは、マルウェアに影響されたIoTデバイス/コンポーネントまたは産業用ロボットの固有の識別子、およびマルウェアに影響されたIoTデバイス/コンポーネントまたは産業用ロボットと物理的に接触した、または無線伝送範囲内にあるAMH環境内の他のIoTデバイス/コンポーネントまたは産業用ロボットの固有の識別子などの情報を含んでもよい。コンタクトトレーシング情報は、データ記憶装置106またはデータベース116内に格納されてもよい。
214において、MPPプログラム110A、110B、110Cは、産業用ロボットにIoTデバイス/コンポーネントをハンドリングし、その目的地まで移動させるように指示する。IoTデバイス/コンポーネントが、マルウェアがない状態である少なくとも1つの実施形態によれば、IoTデバイス/コンポーネントの目的地は、保管場所であってよい。このような実施形態において、MPPプログラム110A、110B、110Cは、IoTデバイス/コンポーネントの無線通信機能を無効にするか、またはIoTデバイス/コンポーネントの電源を切るかのいずれかによって、IoTデバイス/コンポーネントがマルウェアに影響されないようにしてもよい。
IoTデバイス/コンポーネントがマルウェアに影響されている少なくとも1つの他の実施形態によれば、MPPプログラム110A、110B、110Cは、産業用ロボットにIoTデバイス/コンポーネントをハンドリングし、特定された長距離移動経路を介してその目的地に移動するよう指示してもよい。さらに、MPPプログラム110A、110B、110Cは、マルウェアに影響されたIoTデバイス/コンポーネントの目的地として、AMH環境内の他のIoTデバイス/コンポーネントまたは産業用ロボットの無線伝送範囲から外れた遠くの保管場所を特定してもよい。MPPプログラム110A、110B、110Cは、IoTデバイス/コンポーネントがマルウェアに影響されていると判断された場合、IoTデバイス/コンポーネントの以前の目的地を、遠くの保管場所に変更してもよい。
別の実施形態によれば、IoTデバイス/コンポーネントの目的地は、そのハンドリングの要求/指示(例えば、組立動作)に従ってIoTデバイス/コンポーネントをさらにハンドリングするための第2の産業用ロボットであってもよい。このような実施形態では、第2の産業用ロボットが第1の産業用ロボット(すなわち、IoTデバイス/コンポーネントを現在ハンドリングしている産業用ロボット)からIoTデバイス/コンポーネントを受け取る前に、MPPプログラム110A、110B、110Cは、データ記憶装置106またはデータベース116からIoTデバイス/コンポーネントのマルウェアスキャンにアクセスするように第2の産業用ロボットに指示してもよく、またはIoTデバイス/コンポーネントの別のマルウェアスキャンを行って別のスキャンレポートを生成するように第2の産業用ロボットに指示してもよい。その後、MPPプログラム110A、110B、110Cは、アクセスされたまたは生成されたスキャンレポートを評価して、IoTデバイス/コンポーネントがマルウェアに影響されているかどうかを判断し、上記のように進行してもよい。IoTデバイス/コンポーネントのマルウェアスキャンは、IoTデバイス/コンポーネントがAMH環境内の産業用ロボット間で移されるたびに実行されてもよい。
さらに、かかる実施形態において、第1の産業用ロボットがIoTデバイス/コンポーネントを第2の産業用ロボットに移す前に、MPPプログラム110A、110B、110Cは、データ記憶装置106又はデータベース116から第2の産業用ロボットのマルウェアスキャンにアクセスするよう第1の産業用ロボットに指示してもよく、第2の産業用ロボットのマルウェアスキャンを実行しスキャンレポートを生成するよう第1の産業用ロボットに指示してもよい。そして、MPPプログラム110A、110B、110Cは、アクセスされた又は生成されたスキャンレポートを評価し、第2の産業用ロボットがマルウェアに影響されているかどうかを判断してよい。第2の産業用ロボットがマルウェアに影響されている場合、MPPプログラム110A、110B、110Cは、第2の産業用ロボットを無効にし、第1の産業用ロボットに、第2の産業用ロボットと同じ役割を有する別の産業用ロボットへのIoTデバイス/コンポーネントの移動を試みるように指示してもよい。第2の産業用ロボットがマルウェアに影響されていない場合、MPPプログラム110A、110B、110Cは、さらなるハンドリングのためにIoTデバイス/コンポーネントを第2の産業用ロボットに移すよう第1の産業用ロボットに指示してもよい。同様に、第2の産業用ロボットが第1の産業用ロボットからIoTデバイス/コンポーネントを受け取る前に、MPPプログラム110A、110B、110Cは、データ記憶装置106またはデータベース116から第1の産業用ロボットのマルウェアスキャンにアクセスするように第2の産業用ロボットに指示してもよいし、第1の産業用ロボットのマルウェアスキャンを行ってスキャンレポートを生成するように第2の産業用ロボットに指示してもよい。そして、MPPプログラム110A、110B、110Cは、アクセスされた又は生成されたスキャンレポートを評価し、第1の産業用ロボットがマルウェアに影響されているかどうかを判断してもよい。第1の産業用ロボットがマルウェアに影響されている場合、MPPプログラム110A、110B、110Cは、第1の産業用ロボットの無線通信機能を無効にし、第2の産業用ロボットにIoTデバイス/コンポーネントを受け入れないように指示してよい。さらに、MPPプログラム110A、110B、110Cは、IoTデバイス/コンポーネントを遠くの保管場所に移動させるように第1の産業用ロボットに指示してもよい。第1の産業用ロボットがマルウェアに影響されていない場合、MPPプログラム110A、110B、110Cは、さらなるハンドリングのためにIoTデバイス/コンポーネントを受け取るように第2の産業用ロボットに指示してもよい。
図2は、1つの実装の例示に過ぎず、異なる実施形態がどのように実装され得るかに関して、いかなる制限も意味しないことを理解されよう。描かれた環境に対する多くの変更が、設計及び実装要件に基づいて行われ得る。
図3は、本発明の実施形態による、図1に示されたクライアントコンピューティング装置102、サーバ112、およびロボット型IoTデバイス118の内部および外部コンポーネントのブロック図400である。図3は、1つの実装の例示のみを提供し、異なる実施形態が実装され得る環境に関していかなる制限も示唆しないことを理解されたい。描かれた環境に対する多くの変更が、設計および実装要件に基づいて行われ得る。
データ処理システム402、404は、機械可読プログラム命令を実行することができる任意の電子デバイスを代表するものである。データ処理システム402、404は、スマートフォン、コンピュータシステム、PDA、または他の電子デバイスを代表してもよい。データ処理システム402、404によって代表され得るコンピューティングシステム、環境、もしくは構成またはこれらの組み合わせの例は、パーソナルコンピュータシステム、サーバコンピュータシステム、シンクライアント、シッククライアント、ハンドヘルド又はラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、ネットワークPC、ミニコンピュータシステム、IoTデバイス、産業用ロボット、及び上記のいずれかのシステム又はデバイスを含む分散クラウドコンピューティング環境であるが、それだけに制限されるわけではない。
クライアントコンピューティング装置102、サーバ112、およびロボット型IoTデバイス118は、図3に例示される内部コンポーネント402a、b、cおよび外部コンポーネント404a、b、cの各セットを含み得る。内部コンポーネント402の各セットは、1つまたは複数のプロセッサ420、1つまたは複数のコンピュータ可読RAM422、および1つまたは複数のバス426上の1つまたは複数のコンピュータ可読ROM424、および1つまたは複数のオペレーティングシステム428と1つまたは複数のコンピュータ可読有形記憶装置430を含む。1つまたは複数のオペレーティングシステム428、クライアントコンピューティング装置102におけるソフトウェアプログラム108およびMPPプログラム110A、サーバ112におけるMPPプログラム110B、およびロボット型IoTデバイス118におけるMPPプログラム110Cは、それぞれのRAM422(典型的にはキャッシュメモリを含む)の1つまたは複数を介してそれぞれのプロセッサ420の1つまたは複数による実行のために、それぞれの1つまたは複数のコンピュータ可読有形記憶装置430上に格納される。図3に示される実施形態では、コンピュータ可読有形記憶装置430の各々は、内部ハードドライブの磁気ディスク記憶装置である。あるいは、コンピュータ可読有形記憶装置430の各々は、ROM424、EPROM、フラッシュメモリなどの半導体記憶装置、またはコンピュータプログラムおよびデジタル情報を格納できる他の任意のコンピュータ可読有形記憶装置である。
内部コンポーネント402a、b、cの各セットは、CD-ROM、DVD、メモリスティック、磁気テープ、磁気ディスク、光ディスク、または半導体記憶装置などの1つまたは複数のポータブルコンピュータ可読有形記憶装置438から読み取り、書き込むためのR/Wドライブまたはインタフェース432も含む。MPPプログラム110A、110B、110Cのようなソフトウェアプログラムは、それぞれのポータブルコンピュータ可読有形記憶装置438の1つまたは複数に格納され、それぞれのR/Wドライブまたはインタフェース432を介して読み取られ、それぞれのハードドライブ430にロードされることができる。
内部コンポーネント402a、b、cの各セットはまた、TCP/IPアダプタカード、無線Wi-Fiインタフェースカード、または3Gもしくは4G無線インタフェースカードなどのネットワークアダプタまたはインタフェース436、または他の有線もしくは無線通信リンクを含む。クライアントコンピューティング装置102におけるソフトウェアプログラム108およびMPPプログラム110A、サーバ112におけるMPPプログラム110B、およびロボット型IoTデバイス118におけるMPPプログラム110Cは、ネットワーク(例えば、インターネット、ローカルエリアネットワークまたは他の、広域ネットワーク)およびそれぞれのネットワークアダプタまたはインタフェース436を介して外部コンピュータからクライアントコンピューティング装置102、サーバ112およびロボット型IoTデバイス118にダウンロードされることができる。ネットワークアダプタ又はインタフェース436から、クライアントコンピューティング装置102内のソフトウェアプログラム108及びMPPプログラム110A、サーバ112内のMPPプログラム110B、及びロボット型IoTデバイス118内のMPPプログラム110Cがそれぞれのハードドライブ430にロードされる。ネットワークは、銅線、光ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータもしくはエッジサーバまたはこれらの組み合わせから構成されてもよい。
外部コンポーネント404a、b、cの各セットは、コンピュータディスプレイモニタ444、キーボード442、及びコンピュータマウス434を含むことができる。外部コンポーネント404a、b、cは、タッチスクリーン、仮想キーボード、タッチパッド、ポインティングデバイス、および他のヒューマンインタフェースデバイスも含むことができる。内部コンポーネント402a、b、cの各セットはまた、コンピュータディスプレイモニタ444、キーボード442、およびコンピュータマウス434にインタフェースするためのデバイスドライバ440を含む。デバイスドライバ440、R/Wドライブまたはインタフェース432、およびネットワークアダプタまたはインタフェース436は、ハードウェアおよびソフトウェア(記憶装置430もしくはROM424またはその両方に格納されている)から構成されている。
本開示は、クラウドコンピューティングに関する詳細な説明を含むが、本明細書に記載された教示の実装は、クラウドコンピューティング環境に限定されないことを理解されたい。むしろ、本発明の実施形態は、現在知られている又は後に開発される任意の他のタイプのコンピューティング環境と組み合わせて実施することが可能である。
クラウドコンピューティングは、設定可能なコンピューティングリソースの共有プール(例えばネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、記憶装置、アプリケーション、仮想マシンおよびサービス)へ、簡便かつオンデマンドのネットワークアクセスを可能にするためのサービス提供のモデルであり、リソースは、最小限の管理労力または最小限のサービスプロバイダとのやり取りによって速やかに準備(provision)およびリリースできるものである。このクラウドモデルは、少なくとも5つの特性、少なくとも3つのサービスモデル、および少なくとも4つの展開モデルを含むことがある。
特性は以下の通りである。
オンデマンド・セルフサービス:クラウドの消費者は、サービスプロバイダとの人的な対話を必要することなく、必要に応じて自動的に、サーバ時間やネットワークストレージなどのコンピューティング能力を一方的に準備することができる。
ブロード・ネットワークアクセス:コンピューティング能力はネットワーク経由で利用可能であり、また、標準的なメカニズムを介してアクセスできる。それにより、異種のシンまたはシッククライアントプラットフォーム(例えば、携帯電話、ラップトップ、PDA)による利用が促進される。
リソースプーリング:プロバイダのコンピューティングリソースはプールされ、マルチテナントモデルを利用して複数の消費者に提供される。様々な物理リソースおよび仮想リソースが、需要に応じて動的に割り当ておよび再割り当てされる。一般に消費者は、提供されたリソースの正確な位置を管理または把握していないため、位置非依存(location independence)の感覚がある。ただし消費者は、より高い抽象レベル(例えば、国、州、データセンタ)では場所を特定可能な場合がある。
迅速な柔軟性(elasticity):コンピューティング能力は、迅速かつ柔軟に準備することができるため、場合によっては自動的に、直ちにスケールアウトし、また、速やかにリリースされて直ちにスケールインすることができる。消費者にとって、準備に利用可能なコンピューティング能力は無制限に見える場合が多く、任意の時間に任意の数量で購入することができる。
測定されるサービス:クラウドシステムは、サービスの種類(例えば、ストレージ、処理、帯域幅、アクティブユーザアカウント)に適したある程度の抽象化レベルでの測定機能を活用して、リソースの使用を自動的に制御し最適化する。リソース使用量を監視、制御、および報告して、利用されるサービスのプロバイダおよび消費者の両方に透明性を提供することができる。
オンデマンド・セルフサービス:クラウドの消費者は、サービスプロバイダとの人的な対話を必要することなく、必要に応じて自動的に、サーバ時間やネットワークストレージなどのコンピューティング能力を一方的に準備することができる。
ブロード・ネットワークアクセス:コンピューティング能力はネットワーク経由で利用可能であり、また、標準的なメカニズムを介してアクセスできる。それにより、異種のシンまたはシッククライアントプラットフォーム(例えば、携帯電話、ラップトップ、PDA)による利用が促進される。
リソースプーリング:プロバイダのコンピューティングリソースはプールされ、マルチテナントモデルを利用して複数の消費者に提供される。様々な物理リソースおよび仮想リソースが、需要に応じて動的に割り当ておよび再割り当てされる。一般に消費者は、提供されたリソースの正確な位置を管理または把握していないため、位置非依存(location independence)の感覚がある。ただし消費者は、より高い抽象レベル(例えば、国、州、データセンタ)では場所を特定可能な場合がある。
迅速な柔軟性(elasticity):コンピューティング能力は、迅速かつ柔軟に準備することができるため、場合によっては自動的に、直ちにスケールアウトし、また、速やかにリリースされて直ちにスケールインすることができる。消費者にとって、準備に利用可能なコンピューティング能力は無制限に見える場合が多く、任意の時間に任意の数量で購入することができる。
測定されるサービス:クラウドシステムは、サービスの種類(例えば、ストレージ、処理、帯域幅、アクティブユーザアカウント)に適したある程度の抽象化レベルでの測定機能を活用して、リソースの使用を自動的に制御し最適化する。リソース使用量を監視、制御、および報告して、利用されるサービスのプロバイダおよび消費者の両方に透明性を提供することができる。
サービスモデルは以下の通りである。
サービスとしてのソフトウェア(SaaS):消費者に提供される機能は、クラウドインフラストラクチャ上で動作するプロバイダのアプリケーションを利用できることである。当該そのアプリケーションは、ウェブブラウザ(例えばウェブメール)などのシンクライアントインタフェースを介して、各種のクライアント装置からアクセスできる。消費者は、ネットワーク、サーバ、オペレーティングシステム、ストレージや、個別のアプリケーション機能さえも含めて、基礎となるクラウドインフラストラクチャの管理や制御は行わない。ただし、ユーザ固有の限られたアプリケーション構成の設定はその限りではない。
サービスとしてのプラットフォーム(PaaS):消費者に提供される機能は、プロバイダによってサポートされるプログラム言語およびツールを用いて、消費者が作成または取得したアプリケーションを、クラウドインフラストラクチャに展開(deploy)することである。消費者は、ネットワーク、サーバ、オペレーティングシステム、ストレージを含む、基礎となるクラウドインフラストラクチャの管理や制御は行わないが、展開されたアプリケーションを制御でき、かつ場合によってはそのホスティング環境の構成も制御できる。
サービスとしてのインフラストラクチャ(IaaS):消費者に提供される機能は、オペレーティングシステムやアプリケーションを含む任意のソフトウェアを消費者が展開および実行可能な、プロセッサ、ストレージ、ネットワーク、および他の基本的なコンピューティングリソースを準備することである。消費者は、基礎となるクラウドインフラストラクチャの管理や制御は行わないが、オペレーティングシステム、ストレージ、および展開されたアプリケーションを制御でき、かつ場合によっては一部のネットワークコンポーネント(例えばホストファイアウォール)を部分的に制御できる。
サービスとしてのソフトウェア(SaaS):消費者に提供される機能は、クラウドインフラストラクチャ上で動作するプロバイダのアプリケーションを利用できることである。当該そのアプリケーションは、ウェブブラウザ(例えばウェブメール)などのシンクライアントインタフェースを介して、各種のクライアント装置からアクセスできる。消費者は、ネットワーク、サーバ、オペレーティングシステム、ストレージや、個別のアプリケーション機能さえも含めて、基礎となるクラウドインフラストラクチャの管理や制御は行わない。ただし、ユーザ固有の限られたアプリケーション構成の設定はその限りではない。
サービスとしてのプラットフォーム(PaaS):消費者に提供される機能は、プロバイダによってサポートされるプログラム言語およびツールを用いて、消費者が作成または取得したアプリケーションを、クラウドインフラストラクチャに展開(deploy)することである。消費者は、ネットワーク、サーバ、オペレーティングシステム、ストレージを含む、基礎となるクラウドインフラストラクチャの管理や制御は行わないが、展開されたアプリケーションを制御でき、かつ場合によってはそのホスティング環境の構成も制御できる。
サービスとしてのインフラストラクチャ(IaaS):消費者に提供される機能は、オペレーティングシステムやアプリケーションを含む任意のソフトウェアを消費者が展開および実行可能な、プロセッサ、ストレージ、ネットワーク、および他の基本的なコンピューティングリソースを準備することである。消費者は、基礎となるクラウドインフラストラクチャの管理や制御は行わないが、オペレーティングシステム、ストレージ、および展開されたアプリケーションを制御でき、かつ場合によっては一部のネットワークコンポーネント(例えばホストファイアウォール)を部分的に制御できる。
展開モデルは以下の通りである。
プライベートクラウド:このクラウドインフラストラクチャは、特定の組織専用で運用される。このクラウドインフラストラクチャは、当該組織または第三者によって管理することができ、オンプレミスまたはオフプレミスで存在することができる。
コミュニティクラウド:このクラウドインフラストラクチャは、複数の組織によって共有され、共通の関心事(例えば、ミッション、セキュリティ要件、ポリシー、およびコンプライアンス)を持つ特定のコミュニティをサポートする。このクラウドインフラストラクチャは、当該組織または第三者によって管理することができ、オンプレミスまたはオフプレミスで存在することができる。
パブリッククラウド:このクラウドインフラストラクチャは、不特定多数の人々や大規模な業界団体に提供され、クラウドサービスを販売する組織によって所有される。
ハイブリッドクラウド:このクラウドインフラストラクチャは、2つ以上のクラウドモデル(プライベート、コミュニティまたはパブリック)を組み合わせたものとなる。それぞれのモデル固有の実体は保持するが、標準または個別の技術によってバインドされ、データとアプリケーションの可搬性(例えば、クラウド間の負荷分散のためのクラウドバースティング)を実現する。
プライベートクラウド:このクラウドインフラストラクチャは、特定の組織専用で運用される。このクラウドインフラストラクチャは、当該組織または第三者によって管理することができ、オンプレミスまたはオフプレミスで存在することができる。
コミュニティクラウド:このクラウドインフラストラクチャは、複数の組織によって共有され、共通の関心事(例えば、ミッション、セキュリティ要件、ポリシー、およびコンプライアンス)を持つ特定のコミュニティをサポートする。このクラウドインフラストラクチャは、当該組織または第三者によって管理することができ、オンプレミスまたはオフプレミスで存在することができる。
パブリッククラウド:このクラウドインフラストラクチャは、不特定多数の人々や大規模な業界団体に提供され、クラウドサービスを販売する組織によって所有される。
ハイブリッドクラウド:このクラウドインフラストラクチャは、2つ以上のクラウドモデル(プライベート、コミュニティまたはパブリック)を組み合わせたものとなる。それぞれのモデル固有の実体は保持するが、標準または個別の技術によってバインドされ、データとアプリケーションの可搬性(例えば、クラウド間の負荷分散のためのクラウドバースティング)を実現する。
クラウドコンピューティング環境は、ステートレス性(statelessness)、低結合性(low coupling)、モジュール性(modularity)および意味論的相互運用性(semantic interoperability)に重点を置いたサービス指向型環境である。クラウドコンピューティングの中核にあるのは、相互接続されたノードのネットワークを含むインフラストラクチャである。
ここで、図4に例示的なクラウドコンピューティング環境50を示す。図示するように、クラウドコンピューティング環境50は1つ以上のクラウドコンピューティングノード100を含む。これらに対して、クラウド消費者が使用するローカルコンピュータ装置(例えば、PDAもしくは携帯電話54A、デスクトップコンピュータ54B、ラップトップコンピュータ54C、もしくは自動車コンピュータシステム54Nまたはこれらの組み合わせなど)は通信を行うことができる。ノード100は互いに通信することができる。ノード100は、例えば、上述のプライベート、コミュニティ、パブリックもしくはハイブリッドクラウドまたはこれらの組み合わせなど、1つ以上のネットワークにおいて、物理的または仮想的にグループ化(不図示)することができる。これにより、クラウドコンピューティング環境50は、サービスとしてのインフラストラクチャ、プラットフォームもしくはソフトウェアまたはこれらの組み合わせを提供することができ、クラウド消費者はこれらについて、ローカルコンピュータ装置上にリソースを維持する必要がない。なお、図4に示すコンピュータ装置54A~Nの種類は例示に過ぎず、コンピューティングノード100およびクラウドコンピューティング環境50は、任意の種類のネットワークもしくはネットワークアドレス指定可能接続(例えば、ウェブブラウザの使用)またはその両方を介して、任意の種類の電子装置と通信可能であることを理解されたい。
ここで、クラウドコンピューティング環境50によって提供される機能的抽象化レイヤ600のセットを図5に示す。なお、図5に示すコンポーネント、レイヤおよび機能は例示に過ぎず、本発明の実施形態はこれらに限定されないことをあらかじめ理解されたい。図示するように、以下のレイヤおよび対応する機能が提供される。
ハードウェアおよびソフトウェアレイヤ60は、ハードウェアコンポーネントおよびソフトウェアコンポーネントを含む。ハードウェアコンポーネントの例には、メインフレーム61、縮小命令セットコンピュータ(RISC)アーキテクチャベースのサーバ62、サーバ63、ブレードサーバ64、記憶装置65、ならびにネットワークおよびネットワークコンポーネント66が含まれる。いくつかの実施形態において、ソフトウェアコンポーネントは、ネットワークアプリケーションサーバソフトウェア67およびデータベースソフトウェア68を含む。
仮想化レイヤ70は、抽象化レイヤを提供する。当該レイヤから、例えば以下の仮想エンティティを提供することができる:仮想サーバ71、仮想ストレージ72、仮想プライベートネットワークを含む仮想ネットワーク73、仮想アプリケーションおよびオペレーティングシステム74、ならびに仮想クライアント75。
一例として、管理レイヤ80は以下の機能を提供することができる。リソース準備81は、クラウドコンピューティング環境内でタスクを実行するために利用されるコンピューティングリソースおよび他のリソースの動的な調達を可能にする。計量および価格設定82は、クラウドコンピューティング環境内でリソースが利用される際のコスト追跡、およびこれらのリソースの消費に対する請求またはインボイス送付を可能にする。一例として、これらのリソースはアプリケーションソフトウェアのライセンスを含んでよい。セキュリティは、データおよび他のリソースに対する保護のみならず、クラウド消費者およびタスクの識別確認を可能にする。ユーザポータル83は、消費者およびシステム管理者にクラウドコンピューティング環境へのアクセスを提供する。サービスレベル管理84は、要求されたサービスレベルが満たされるように、クラウドコンピューティングリソースの割り当ておよび管理を可能にする。サービス品質保証(SLA)の計画および履行85は、SLAに従って将来必要になると予想されるクラウドコンピューティングリソースの事前手配および調達を可能にする。
ワークロードレイヤ90は、クラウドコンピューティング環境が利用可能な機能の例を提供する。このレイヤから提供可能なワークロードおよび機能の例には、マッピングおよびナビゲーション91、ソフトウェア開発およびライフサイクル管理92、仮想教室教育の配信93、データ分析処理94、取引処理95、およびマルウェア伝播防止96が含まれる。マルウェア伝播防止96は、マルウェアに影響された装置から他の装置へのマルウェアの無線伝播を防止することに関連してよい。
本発明の様々な実施形態の説明は、例示の目的で提示されているが、網羅的であることを意図するものではなく、開示される実施形態に限定されることを意図するものでもない。説明された実施形態の範囲から逸脱することなく、多くの修正および変更が可能であることは当業者には明らかであろう。本明細書で使用される用語は、実施形態の原理、市場で見られる技術に対する実際の適用または技術的改善を最もよく説明するため、または当業者が本明細書に記載の実施形態を理解できるようにするために選択された。
Claims (20)
- マルウェアの伝播を防止するコンピュータベースの方法であって、前記方法は、
自動マテリアルハンドリング(AMH)環境内のIoT(Internet-of-Things)デバイスのマルウェアスキャンレポートを特定することと、
前記IoTデバイスがマルウェアに影響されているかどうかを判断することと、
前記IoTデバイスがマルウェアに影響されていると判断することに応じて、前記IoTデバイスを無効にすることと、
産業用ロボットに、前記IoTデバイスを前記AMH環境内の目的地まで搬送するよう指示すること、を含む方法。 - 前記IoTデバイスを無効にすることは、前記IoTデバイスの無線通信能力を無効にすること、または前記IoTデバイスの電源を切ることを含む、請求項1に記載の方法。
- 前記IoTデバイスの前記マルウェアスキャンレポートを特定することは、保存された場所からマルウェアスキャンレポートにアクセスすること、または前記IoTデバイスのマルウェアスキャンを実行して前記IoTデバイスのマルウェアスキャンレポートを生成することを含む、請求項1に記載の方法。
- 前記IoTデバイスの無効化が成功したかどうかを判断することと、
前記IoTデバイスの無効化が成功しなかったと判断することに応じて、長距離移動経路を特定することと、
前記産業用ロボットに、前記特定された長距離移動経路を介して前記IoTデバイスを遠くの保管場所に搬送するように指示することと、をさらに含む、請求項1に記載の方法。 - 前記長距離移動経路は、前記IoTデバイスの無線伝送範囲よりも大きい、前記AMH環境内の他のIoTデバイスおよび産業用ロボットからの距離を維持するトラバーサル経路を含み、前記遠くの保管場所は、前記AMH環境内の他のIoTデバイスまたは産業用ロボットの無線伝送範囲外である場所を含む、請求項4に記載の方法。
- 前記IoTデバイスがマルウェアに影響されていると判断することに応じて、前記IoTデバイスのコンタクトトレーシングを実行することであって、前記コンタクトトレーシングは、物理的に接触した、または前記IoTデバイスの無線伝送範囲内にある、前記AMH環境内の他のIoTデバイスまたは産業ロボットの固有の識別子を含む情報を含む、実行すること、をさらに含む、請求項1に記載の方法。
- 前記AMH環境内で前記IoTデバイスを第2の産業用ロボットに移すよう、第1の産業用ロボットに指示することと、
前記IoTデバイスのマルウェアスキャンレポートを特定し、前記IoTデバイスがマルウェアに影響されているかどうかを判断することと、
前記第1の産業用ロボットのマルウェアスキャンレポートを特定し、前記第1の産業用ロボットがマルウェアに影響されているかどうかを判断することと、
前記第2の産業用ロボットのマルウェアスキャンレポートを特定し、前記第2の産業用ロボットがマルウェアに影響されているかどうかを判断することと、
前記第2の産業用ロボットがマルウェアに影響されていると判断することに応じて、前記第1の産業用ロボットに、前記IoTデバイスを前記第2の産業用ロボットに移さないように指示することと、
前記第1の産業用ロボットまたは前記IoTデバイスがマルウェアに影響されていると判断することに応じて、前記第1の産業用ロボットからの前記IoTデバイスの移動を受け入れないよう前記第2の産業用ロボットに指示することと、をさらに含む、請求項1に記載の方法。 - コンピュータシステムであって、前記コンピュータシステムは、
1つまたは複数のプロセッサと、1つまたは複数のコンピュータ可読メモリと、1つまたは複数のコンピュータ可読有形記憶媒体と、前記1つまたは複数のプロセッサの少なくとも1つによって前記1つまたは複数のメモリの少なくとも1つを介して実行されるように前記1つまたは複数の有形記憶媒体の少なくとも1つに格納されたプログラム命令とを含み、前記コンピュータシステムは、
自動マテリアルハンドリング(AMH)環境内のIoT(Internet-of-Things)デバイスのマルウェアスキャンレポートを特定することと、
前記IoTデバイスがマルウェアに影響されているかどうかを判断することと、
前記IoTデバイスがマルウェアに影響されていると判断することに応じて、前記IoTデバイスを無効にすることと、
産業用ロボットに、前記IoTデバイスを前記AMH環境内の目的地まで搬送するよう指示することと、を含む方法を実行可能であるコンピュータシステム。 - 前記IoTデバイスを無効にすることは、前記IoTデバイスの無線通信能力を無効にすること、または前記IoTデバイスの電源を切ることを含む、請求項8に記載のコンピュータシステム。
- 前記IoTデバイスの前記マルウェアスキャンレポートを特定することは、保存された場所からマルウェアスキャンレポートにアクセスすること、または前記IoTデバイスのマルウェアスキャンを実行して前記IoTデバイスのマルウェアスキャンレポートを生成することを含む、請求項8に記載のコンピュータシステム。
- 前記IoTデバイスの無効化が成功したかどうかを判断することと、
前記IoTデバイスの無効化が成功しなかったと判断することに応じて、長距離移動経路を特定することと、
前記産業用ロボットに、前記特定された長距離移動経路を介して前記IoTデバイスを遠くの保管場所に搬送するように指示することと、をさらに含む、請求項8に記載のコンピュータシステム。 - 前記長距離移動経路は、前記IoTデバイスの無線伝送範囲よりも大きい、前記AMH環境内の他のIoTデバイスおよび産業用ロボットからの距離を維持するトラバーサル経路を含み、前記遠くの保管場所は、前記AMH環境内の他のIoTデバイスまたは産業用ロボットの無線伝送範囲外である場所を含む、請求項11に記載のコンピュータシステム。
- 前記IoTデバイスがマルウェアに影響されていると判断することに応じて、前記IoTデバイスのコンタクトトレーシングを実行することであって、前記コンタクトトレーシングは、物理的に接触した、または前記IoTデバイスの無線伝送範囲内にある、前記AMH環境内の他のIoTデバイスまたは産業ロボットの固有の識別子を含む情報を含む、実行すること、をさらに含む、請求項8に記載のコンピュータシステム。
- 前記AMH環境内で前記IoTデバイスを第2の産業用ロボットに移すよう、第1の産業用ロボットに指示することと、
前記IoTデバイスのマルウェアスキャンレポートを特定し、前記IoTデバイスがマルウェアに影響されているかどうかを判断することと、
前記第1の産業用ロボットのマルウェアスキャンレポートを特定し、前記第1の産業用ロボットがマルウェアに影響されているかどうかを判断することと、
前記第2の産業用ロボットのマルウェアスキャンレポートを特定し、前記第2の産業用ロボットがマルウェアに影響されているかどうかを判断することと、
前記第2の産業用ロボットがマルウェアに影響されていると判断することに応じて、前記第1の産業用ロボットに、前記IoTデバイスを前記第2の産業用ロボットに移さないように指示することと、
前記第1の産業用ロボットまたは前記IoTデバイスがマルウェアに影響されていると判断することに応じて、前記第1の産業用ロボットからの前記IoTデバイスの移動を受け入れないように前記第2の産業用ロボットに指示することと、をさらに含む、請求項8に記載のコンピュータシステム。 - コンピュータプログラム製品であって、前記コンピュータプログラム製品は、
1つまたは複数のコンピュータ可読有形記憶媒体と、前記1つまたは複数の可読有形記憶媒体の少なくとも1つに格納されたプログラム命令であって、前記プログラム命令は、方法を実行することができるプロセッサによって実行可能であり、前記方法は、
自動マテリアルハンドリング(AMH)環境内のIoT(Internet-of-Things)デバイスのマルウェアスキャンレポートを特定することと、
前記IoTデバイスがマルウェアに影響されているかどうかを判断することと、
前記IoTデバイスがマルウェアに影響されていると判断することに応じて、前記IoTデバイスを無効にすることと、
産業用ロボットに、前記IoTデバイスを前記AMH環境内の目的地まで搬送するよう指示することと、を含むコンピュータプログラム製品。 - 前記IoTデバイスを無効にすることは、前記IoTデバイスの無線通信機能を無効にすること、または前記IoTデバイスの電源を切ることを含む、請求項15に記載のコンピュータプログラム製品。
- 前記IoTデバイスの前記マルウェアスキャンレポートを特定することは、保存された場所からマルウェアスキャンレポートにアクセスすること、または前記IoTデバイスのマルウェアスキャンを実行して前記IoTデバイスのマルウェアスキャンレポートを生成することを含む、請求項15に記載のコンピュータプログラム製品。
- 前記IoTデバイスの無効化が成功したかどうかを判断することと、
前記IoTデバイスの無効化が成功しなかったと判断することに応じて、長距離移動経路を特定することと、
前記産業用ロボットに、前記特定された長距離移動経路を介して前記IoTデバイスを遠くの保管場所に搬送するように指示することと、をさらに含む、請求項15に記載のコンピュータプログラム製品。 - 前記長距離移動経路は、前記IoTデバイスの無線伝送範囲よりも大きい、前記AMH環境内の他のIoTデバイスおよび産業用ロボットからの距離を維持するトラバーサル経路を含み、前記遠くの保管場所は、前記AMH環境内の他のIoTデバイスまたは産業用ロボットの無線伝送範囲外である場所を含む、請求項18に記載のコンピュータプログラム製品。
- 前記IoTデバイスがマルウェアに影響されていると判断することに応じて、前記IoTデバイスのコンタクトトレーシングを実行することであって、前記コンタクトトレーシングは、物理的に接触した、または前記IoTデバイスの無線伝送範囲内にある、前記AMH環境内の他のIoTデバイスまたは産業ロボットの固有の識別子を含む情報を含む、実行すること、をさらに含む、請求項15に記載のコンピュータプログラム製品。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/451,525 US20230124200A1 (en) | 2021-10-20 | 2021-10-20 | Secure material movement to prevent malware propagation |
US17/451,525 | 2021-10-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023061914A true JP2023061914A (ja) | 2023-05-02 |
Family
ID=85981702
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022167106A Pending JP2023061914A (ja) | 2021-10-20 | 2022-10-18 | マルウェアの伝播を防止するための方法、コンピュータシステム、コンピュータプログラム製品(マルウェアの伝播を防止するための安全なマテリアルの移動) |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230124200A1 (ja) |
JP (1) | JP2023061914A (ja) |
CN (1) | CN115994357A (ja) |
-
2021
- 2021-10-20 US US17/451,525 patent/US20230124200A1/en active Pending
-
2022
- 2022-10-18 CN CN202211274021.3A patent/CN115994357A/zh active Pending
- 2022-10-18 JP JP2022167106A patent/JP2023061914A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
CN115994357A (zh) | 2023-04-21 |
US20230124200A1 (en) | 2023-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9654928B2 (en) | Tracking information technology (IT) assets | |
US9420562B1 (en) | Tracking information technology (IT) assets | |
US9440351B2 (en) | Controlling the operations of a robotic device | |
US20210072966A1 (en) | Method and system for service rolling-updating in a container orchestrator system | |
US8595839B2 (en) | Selecting one of a plurality of scanner nodes to perform scan operations for an interface node receiving a file request | |
US20190188043A1 (en) | Dynamic task allocation and node reconfiguration in mesh network | |
US20140189130A1 (en) | Modifying an assigment of nodes to roles in a computing environment | |
US11095717B2 (en) | Minimizing data loss in a computer storage environment with non-guaranteed continuous network connectivity | |
US20170322834A1 (en) | Compute instance workload monitoring and placement | |
WO2023174877A1 (en) | Edge resource processing | |
US11689636B2 (en) | Delegating network data exchange | |
US10778802B2 (en) | Mobile device identification | |
US10719075B2 (en) | System and method for controlling multiple vehicles based on directive | |
US11575751B2 (en) | Dynamic creation of sensor area networks based on geofenced IoT devices | |
US10148513B1 (en) | Mobile device bandwidth consumption | |
JP2023061914A (ja) | マルウェアの伝播を防止するための方法、コンピュータシステム、コンピュータプログラム製品(マルウェアの伝播を防止するための安全なマテリアルの移動) | |
US11178038B1 (en) | Internet of things device orchestration | |
US20220076661A1 (en) | Duration based task monitoring of artificial intelligence voice response systems | |
US10783886B2 (en) | Cognitive agent disambiguation | |
WO2021201942A1 (en) | 3rd generation partnership project (3gpp) framework for live uplink streaming (flus) sink capabilities determination | |
US10623430B2 (en) | Risk area determination in communication network | |
US11695625B2 (en) | Location-based dynamic grouping of IoT devices | |
US20230276250A1 (en) | Dynamic positioning of relay devices for machine-to-machine wireless communication | |
US20230384782A1 (en) | Visual light-based direction to robotic system | |
US20230259671A1 (en) | Simulating resource exchange in multi-machine environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD16 | Notification of change of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7436 Effective date: 20221222 |