(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-17
(45)【発行日】2022-10-25
(54)【発明の名称】情報セキュリティ装置及びその方法
(51)【国際特許分類】
G06F 16/9032 20190101AFI20221018BHJP
G06F 21/57 20130101ALI20221018BHJP
【FI】
G06F16/9032
G06F21/57 370
(21)【出願番号】P 2021061007
(22)【出願日】2021-03-31
【審査請求日】2021-03-31
(32)【優先日】2020-12-03
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502003596
【氏名又は名称】財団法人 資訊工業策進会
【氏名又は名称原語表記】INSTITUTE FOR INFORMATION INDUSTRY
【住所又は居所原語表記】11F, NO.106, SEC.2, HEPING E. RD., TAIPEI, TAIWAN,
(74)【代理人】
【識別番号】110002527
【氏名又は名称】特許業務法人北斗特許事務所
(72)【発明者】
【氏名】魏 得恩
(72)【発明者】
【氏名】▲黄▼ 馨瑩
(72)【発明者】
【氏名】張 孝賢
(72)【発明者】
【氏名】▲呉▼ 建興
【審査官】齊藤 貴孝
(56)【参考文献】
【文献】特開2018-022248(JP,A)
【文献】中国特許出願公開第109902297(CN,A)
【文献】浅井 健志、外2名,サイバー攻撃対策の自動選定に向けたセキュリティ分析,情報処理学会 研究報告 コンピュータセキュリティ(CSEC) 2019-CSEC-084 [online] ,日本,情報処理学会,2019年02月25日,p.1-7
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G06F 21/57
(57)【特許請求の範囲】
【請求項1】
会社のシナリオ情報を受信するための送受信機と、
複数のコマンド及び複数のデータベースを記憶するためのメモリと、
前記送受信機及び前記メモリに接続されており、前記複数のデータベースから第1の脆弱性関連情報及び第1のイベント情報を読み取り、前記第1の脆弱性関連情報及び前記第1のイベント情報に基づいて少なくとも1つの第1の知識グラフを生成し、前記シナリオ情報に基づいて第2の知識グラフを生成し、且つ、前記少なくとも1つの第1の知識グラフと前記第2の知識グラフとを比較することで、前記少なくとも1つの第1の知識グラフと前記第2の知識グラフとの類似度を認識し、更に前記会社に情報セキュリティの脅威が存在するかを判定するように、複数のコマンドを実行するためのプロセッサと、
を含む情報セキュリティ装置。
【請求項2】
前記プロセッサは、
前記送受信機によってソーシャルメディアデータを受信し、且つ、前記複数のデータベースのサンプルソーシャルメディアデータに基づいて、前記ソーシャルメディアデータと情報セキュリティとの関連性を指示する、前記ソーシャルメディアデータの複数の関連度スコアを計算する工程と、
前記複数の関連度スコアに基づいて前記ソーシャルメディアデータからテキストデータを認識する工程と、に更に用いられる請求項1に記載の情報セキュリティ装置。
【請求項3】
前記プロセッサは、
前記サンプルソーシャルメディアデータに基づいて、前記テキストデータの複数のサブジェクトに関連する複数のキーワードを指示する、前記テキストデータの複数のイベントサブジェクトを認識する工程と、
前記複数のイベントサブジェクトによって前記テキストデータをラベリングし、且つ、ラベリングされたテキストデータ及び前記第1のイベント情報に基づいて第2のイベント情報を生成して前記複数のデータベースに記憶する工程と、に更に用いられる請求項2に記載の情報セキュリティ装置。
【請求項4】
前記プロセッサは、
前記送受信機によって脆弱性データを受信し、前記第1の脆弱性関連情報に基づいて前記脆弱性データの脅威程度を計算する工程と、
前記脅威程度及び前記脆弱性データに基づいて第2の脆弱性関連情報を生成して前記複数のデータベースに記憶する工程と、に更に用いられる請求項1に記載の情報セキュリティ装置。
【請求項5】
前記プロセッサは、
前記複数のデータベースのサンプルソーシャルメディアデータに基づいて、前記第1の脆弱性関連情報が前記サンプルソーシャルメディアデータに出現する頻度を指示する、前記第1の脆弱性関連情報に関連する複数のソーシャル人気度を計算する工程と、
前記第1の脆弱性関連情報及び前記複数のソーシャル人気度に基づいて複数の脆弱性特徴を生成する工程と、
前記複数の脆弱性特徴に基づいて前記脆弱性データの脅威程度を計算する工程と、に更に用いられる請求項4に記載の情報セキュリティ装置。
【請求項6】
前記プロセッサは、
前記第1の脆弱性関連情報に基づいて複数の第1の知識サブグラフを生成し、且つ、前記第1のイベント情報に基づいて複数の第2の知識サブグラフを生成する工程と、
前記複数の第1の知識サブグラフの少なくとも1つと前記複数の第2の知識サブグラフの少なくとも1つとを関連付け、前記少なくとも1つの第1の知識グラフを生成する工程と、に更に用いられ、
前記複数の第1の知識サブグラフの少なくとも1つと前記複数の第2の知識サブグラフの前記少なくとも1つとは関連する請求項1に記載の情報セキュリティ装置。
【請求項7】
前記プロセッサは、
前記複数の第1の知識サブグラフの前記少なくとも1つにおける少なくとも1つの第1のノードを前記複数の第2の知識サブグラフの前記少なくとも1つにおける少なくとも1つの第2のノードに関連付けることに更に用いられ、前記少なくとも1つの第1のノードと前記少なくとも1つの第2のノードとは同じである請求項6に記載の情報セキュリティ装置。
【請求項8】
前記プロセッサは、
前記少なくとも1つの第1の知識グラフの複数の第1のノードから複数の第1の参照ノードを識別する工程と、
前記第2の知識グラフに前記複数の第1の参照ノードの少なくとも1つとマッチングする少なくとも1つの第2の参照ノードが存在するかを判定する工程と、に更に用いられる請求項1に記載の情報セキュリティ装置。
【請求項9】
前記プロセッサは、
前記第2の知識グラフに、前記複数の第1の参照ノードに対応する前記少なくとも1つの第2の参照ノードが存在する場合、前記第2の知識グラフから前記少なくとも1つの第1の参照ノードに対応する少なくとも1つの知識サブグラフを切り取る工程と、
前記少なくとも1つの知識サブグラフと前記少なくとも1つの第1の知識グラフとの前記類似度を計算し、閾値より大きいかを判定する工程と、に更に用いられる請求項8に記載の情報セキュリティ装置。
【請求項10】
前記プロセッサは、
前記類似度に対応する少なくとも1つの潜在的脆弱性を認識し、更に、前記類似度が前記閾値より大きい場合、前記会社に前記情報セキュリティの脅威が存在するかを判定することに更に用いられる請求項9に記載の情報セキュリティ装置。
【請求項11】
プロセッサが、複数のデータベースから第1の脆弱性関連情報及び第1のイベント情報を読み取る工程と、
前記プロセッサが、前記第1の脆弱性関連情報及び前記第1のイベント情報に基づいて少なくとも1つの第1の知識グラフを生成し、
送受信機が受信したシナリオ情報に基づいて第2の知識グラフを生成する工程と、
前記プロセッサが、前記少なくとも1つの第1の知識グラフと前記第2の知識グラフとの類似度を計算し、更に会社に情報セキュリティの脅威が存在するかを判定する工程と、
を含む情報セキュリティ方法。
【請求項12】
前記プロセッサが、前記送受信機によってソーシャルメディアデータを受信し、且つ、前記複数のデータベースのサンプルソーシャルメディアデータに基づいて、前記ソーシャルメディアデータと情報セキュリティとの関連性を指示する、前記ソーシャルメディアデータの複数の関連度スコアを計算する工程と、
前記プロセッサが、前記複数の関連度スコアに基づいて前記ソーシャルメディアデータからテキストデータを認識する工程と、
を更に含む請求項11に記載の情報セキュリティ方法。
【請求項13】
前記プロセッサが、前記サンプルソーシャルメディアデータに基づいて、前記テキストデータの複数のサブジェクトに関連する複数のキーワードを指示する、前記テキストデータの複数のイベントサブジェクトを認識する工程と、
前記プロセッサが、前記複数のイベントサブジェクトによって前記テキストデータをラベリングし、且つ、ラベリングされたテキストデータ及び前記第1のイベント情報に基づいて第2のイベント情報を生成して前記複数のデータベースに記憶する工程と、
を更に含む請求項12に記載の情報セキュリティ方法。
【請求項14】
前記プロセッサが、前記送受信機によって脆弱性データを受信し、前記第1の脆弱性関連情報に基づいて前記脆弱性データの脅威程度を計算する工程と、
前記プロセッサが、前記脅威程度及び前記脆弱性データに基づいて第2の脆弱性関連情報を生成して前記複数のデータベースに記憶する工程と、
を更に含む請求項11に記載の情報セキュリティ方法。
【請求項15】
前記第1の脆弱性関連情報に基づいて前記脆弱性データの前記脅威程度を計算する工程は、
前記プロセッサが、前記複数のデータベースのサンプルソーシャルメディアデータに基づいて、前記第1の脆弱性関連情報が前記サンプルソーシャルメディアデータに出現する頻度を指示する、前記第1の脆弱性関連情報に関連する複数のソーシャル人気度を計算する工程と、
前記プロセッサが、前記第1の脆弱性関連情報及びソーシャル人気度に基づいて複数の脆弱性特徴を生成する工程と、
前記プロセッサが、前記複数の脆弱性特徴に基づいて前記脆弱性データの前記脅威程度を計算する工程と、
を含む請求項14に記載の情報セキュリティ方法。
【請求項16】
前記第1の脆弱性関連情報及び前記第1のイベント情報に基づいて前記少なくとも1つの第1の知識グラフを生成する工程は、
前記プロセッサが、前記第1の脆弱性関連情報に基づいて複数の第1の知識サブグラフを生成し、且つ、前記第1のイベント情報に基づいて複数の第2の知識サブグラフを生成する工程と、
前記プロセッサが、前記複数の第1の知識サブグラフの少なくとも1つと前記複数の第2の知識サブグラフの少なくとも1つとを関連付け、前記少なくとも1つの第1の知識グラフを生成する工程と、
を含み、
前記複数の第1の知識サブグラフの前記少なくとも1つと前記複数の第2の知識サブグラフの前記少なくとも1つとは関連する請求項11に記載の情報セキュリティ方法。
【請求項17】
前記複数の第1の知識サブグラフの前記少なくとも1つと前記複数の第2の知識サブグラフの前記少なくとも1つとを関連付ける工程は、
前記プロセッサが、前記複数の第1の知識サブグラフの前記少なくとも1つにおける少なくとも1つの第1のノードを前記複数の第2の知識サブグラフの前記少なくとも1つにおける少なくとも1つの第2のノードに関連付けることを含み、前記少なくとも1つの第1のノードと前記少なくとも1つの第2のノードとは同じである請求項16に記載の情報セキュリティ方法。
【請求項18】
前記少なくとも1つの第1の知識グラフと前記第2の知識グラフとの前記類似度を計算する工程は、
前記プロセッサが、前記少なくとも1つの第1の知識グラフの複数の第1のノードから複数の第1の参照ノードを識別する工程と、
前記プロセッサが、前記第2の知識グラフに前記複数の第1の参照ノードの少なくとも1つとマッチングする少なくとも1つの第2の参照ノードが存在するかを判定する工程と、
を含む請求項11に記載の情報セキュリティ方法。
【請求項19】
前記プロセッサが、前記第2の知識グラフに、前記複数の第1の参照ノードに対応する前記少なくとも1つの第2の参照ノードが存在する場合、前記第2の知識グラフから前記少なくとも1つの第1の参照ノードに対応する少なくとも1つの知識サブグラフを切り取る工程と、
前記プロセッサが、前記少なくとも1つの知識サブグラフと前記少なくとも1つの第1の知識グラフとの前記類似度を計算し、前記類似度が閾値より大きいかを判定する工程と、
を含む請求項18に記載の情報セキュリティ方法。
【請求項20】
前記プロセッサが、前記類似度に対応する少なくとも1つの潜在的脆弱性を認識し、更に、前記類似度が前記閾値より大きい場合、前記会社に前記情報セキュリティの脅威が存在するかを判定することを含む請求項19に記載の情報セキュリティ方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報セキュリティ技術に関し、特に、情報セキュリティ装置及びその方法に関する。
【背景技術】
【0002】
一般的には、情報セキュリティの脅威の多様性及び変化性が高く、且つこれらの脅威情報をフィルタリングして消化するには、相当な人力がかかるため、技術の力を借りて関連しない情報をフィルタリングして除去する必要がある。また、オンラインソーシャルメディアが情報セキュリティの脅威情報の豊富な源であるが、ニュース媒体、情報セキュリティ会社、政府組織、情報セキュリティコミュニティ及びネットワークを介して伝搬される情報は、他の情報と混じり合う場合が多く、余分のリソースを消費して処理する必要がある。
【発明の概要】
【発明が解決しようとする課題】
【0003】
従って、如何に情報セキュリティの脅威情報を取得するか、及び如何にこれらの情報をフィルタリングして消化するかは、当業者にとって早急に解決すべき問題となっている。
【課題を解決するための手段】
【0004】
本発明の実施例は、会社のシナリオ情報を受信するための送受信機と、複数のコマンド及び複数のデータベースを記憶するためのメモリと、送受信機及びメモリに接続されており、複数のデータベースから第1の脆弱性関連情報及び第1のイベント情報を読み取り、第1の脆弱性関連情報及び第1のイベント情報に基づいて少なくとも1つの第1の知識グラフを生成し、シナリオ情報に基づいて第2の知識グラフを生成し、且つ、少なくとも1つの第1の知識グラフと第2の知識グラフとを比較することで、少なくとも1つの第1の知識グラフと第2の知識グラフとの類似度を認識し、更に会社に情報セキュリティの脅威が存在するかを判定するように、複数のコマンドを実行するためのプロセッサと、を含む情報セキュリティ装置を提供する。
【0005】
本発明の実施例は、プロセッサが、複数のデータベースから第1の脆弱性関連情報及び第1のイベント情報を読み取る工程と、プロセッサが、第1の脆弱性関連情報及び第1のイベント情報に基づいて少なくとも1つの第1の知識グラフを生成し、送受信機が受信したシナリオ情報に基づいて第2の知識グラフを生成する工程と、プロセッサが、少なくとも1つの第1の知識グラフと第2の知識グラフとの類似度を計算し、更に会社に情報セキュリティの脅威が存在するかを判定する工程と、を含む情報セキュリティ方法を提供する。
【発明の効果】
【0006】
上記によれば、本発明の実施例は、シナリオの知識グラフと情報セキュリティイベントの知識グラフとを比較することで、シナリオの情報セキュリティイベントを迅速にフィルタリングすることができる。また、本発明の実施例は、更に、シナリオに対応するインテリジェントグラフィックス及び情報セキュリティイベントに対応するインテリジェントグラフィックスを使用して類似分析を行うことで、潜在的に攻撃される可能性のあるシナリオの脆弱性を認識する。
【図面の簡単な説明】
【0007】
本発明の上記特徴及び利点をより明確かつ分かりやすくするために、以下、特に実施例を挙げて、添付図面に合わせて以下の通りに詳しく説明する。
【
図1】本発明の実施例による情報セキュリティ装置のブロック図である。
【
図2】本発明の実施例による情報セキュリティ方法の模式図である。
【
図3】本発明の実施例による情報セキュリティ方法のフローチャートである。
【
図4】本発明の実施例による第1の知識サブグラフの模式図である。
【
図5】本発明の実施例による第2の知識サブグラフの模式図である。
【発明を実施するための形態】
【0008】
以下、本発明の現在の実施例を詳しく参照し、その例が添付図面に示されている。添付図面及び明細書において、可能な限り同じ符号を使用して同じ又は類似する部材を表記する。
【0009】
図1は、本発明の実施例による情報セキュリティ装置のブロック図である。
図1を参照すると、情報セキュリティ装置100は、送受信機110と、メモリ120と、プロセッサ130と、を含んでよい。送受信機110は、会社のシナリオ情報を受信するために用いられ得る。詳しくは、送受信機110は、会社に関連する多くのタイプの情報をシナリオ情報として受信することができる。いくつかの実施例において、シナリオ情報は、会社の装置及び情報に関連する装置モデル(device model)、データフロー(data flow)、ホストログ(host logs)及びファイルログ(file logs)等を含んでよい。いくつかの実施例において、上記会社は、企業単位、組織単位、機構単位又は政府単位等であってよい。
【0010】
また、メモリ120は、複数のコマンド及び複数のデータベース120(1)~120(N)を記憶するために用いられ、Nは、任意の正整数であってよいが、これに限定されない。プロセッサ130は、送受信機110及びメモリ120に接続され、且つ上記複数のコマンドを実行するために用いられ得る。
【0011】
いくつかの実施例において、送受信機110は、無線又は有線で会社のシナリオ情報を受信して、ネットワーク200からシナリオ情報を取得するように、例えば、低ノイズ増幅、インピーダンス整合、混合、上下周波数変換、フィルタリング、増幅等の操作を実行することができる。
【0012】
いくつかの実施例において、送受信機110は、例えば、送信機回路、アナログ-デジタル(analog-to-digital;A/D)コンバータ、デジタル-アナログ(digital-to-analog;D/A)コンバータ、低ノイズアンプ、周波数混合器、フィルタ、インピーダンス整合器、伝送回線、パワーアンプ、1つ又は複数のアンテナ回路及びローカル記憶媒体素子の1つ又はその組み合わせである。
【0013】
いくつかの実施例において、メモリ120は、例えば、任意の形態の固定型又は携帯型のランダムアクセスメモリ(random access memory;RAM)、リードオンリーメモリ(read-only memory;ROM)、フラッシュメモリ(flash memory)、ハードディスクドライブ(hard disk drive;HDD)、ソリッドステートドライブ(solid state drive;SSD)又は類似する素子あるいは上記素子の組み合わせであってもよい。
【0014】
いくつかの実施例において、プロセッサ130は、例えば、中央処理ユニット(central processing unit;CPU)、又は他のプログラム可能な一般用途又は特定用途のマイクロコントロールユニット(micro control unit;MCU)、マイクロプロセッサ(microprocessor)、デジタルシグナルプロセッサ(digital signal processor;DSP)、プログラマブルコントローラ、特定用途向け集積回路(application specific integrated circuit;ASIC)、グラフィック処理ユニット(graphics processing unit;GPU)、演算論理ユニット(arithmetic logic unit;ALU)、コンプレックスプログラマブルロジックデバイス(complex programmable logic device;CPLD)、フィールドプログラマブルゲートアレイ(field programmable gate array;FPGA)又は他の類似する素子あるいは上記素子の組み合わせである。
【0015】
いくつかの実施例において、プロセッサ130は、有線又は無線で送受信機110及びメモリ120に接続されてよい。
【0016】
有線形態の場合、上記した接続形態は、ユニバーサルシリアルバス(universal serial bus;USB)、RS232、汎用非同期送受信機(universal asynchronous receiver/transmitter;UART)、集積回路間通信(I2C)、シリアル・ペリフェラル・インタフェース(serial peripheral interface;SPI)、ディスプレイポート(display port)、サンダーボルト(thunderbolt)又はローカルエリアネットワーク(local area network;LAN)のインタフェースによる接続形態であってよい。
【0017】
無線形態の場合、上記した接続形態は、ワイヤレスフィデリティ(wireless fidelity;Wi-Fi(登録商標))モジュール、無線周波数識別(radio frequency identification;RFID)モジュール、ブルートゥース(登録商標)モジュール、赤外線モジュール、近距離無線通信(near-field communication;NFC)モジュール又は端末間(device-to-device;D2D)モジュールによる接続形態であってよい。
【0018】
いくつかの実施例において、プロセッサ130は、送受信機110によって様々なソーシャルメディアウェブサイト(例えば、Twitter(登録商標)又はFacebook(登録商標))、様々なニュースウェブサイト(例えば、CERT-EU)、様々なフォーラムウェブサイト(例えば、0day.today)又は他の類似するウェブサイトあるいはデータベースからサンプルソーシャルメディアデータをサーチして受信することができる。
【0019】
いくつかの実施例において、プロセッサ130は、送受信機110によって様々なオープンソースソフトウェア脆弱性(vulnerability)情報データベース(例えば、米国脆弱性データベース(National Vulnerability Database;NVD)、共通脆弱性識別子データベース(Common Vulnerabilities and Exposures database;CVE)、オープンソース脆弱性データベース(Open Source Vulnerability Database;OSVDB)、脆弱性攻撃データベース(Exploit Database;Exploit-DB)又は脆弱性データベース(Vulnerability Database;VulDB)あるいは様々なソーシャルメディアウェブサイトから第1の脆弱性関連情報及び第1のイベント(event)情報をサーチして受信することができる。プロセッサ130は、更に、過去に発生してユーザにより入力されたソフトウェア脆弱性の情報である第1の脆弱性関連情報を送受信機110によって受信することができる。
【0020】
いくつかの実施例において、プロセッサ130は、送受信機110によって様々なオープンソース又は商業脅威情報データベースからセキュリティ侵害インジケータ(Indicator of Compromise;IOC)データをサーチして受信することができる。
【0021】
更なる実施例において、プロセッサ130は、サンプルソーシャルメディアデータ、第1の脆弱性関連情報、第1のイベント情報及びIOCデータをデータベース120(1)~120(N)に記憶してよい。
【0022】
更なる実施例において、サンプルソーシャルメディアデータは、ソーシャルメディアに関するテキストを含んでよい(例えば、このテキストは、アカウント、ツイート(tweets)、タグ(tags)、タイトル、作者、コンテンツ及び時間等を含む)。
【0023】
更なる実施例において、第1の脆弱性関連情報は、異なる脆弱性に対応する攻撃手法(attack methods)、オペレーティングシステム(operating systems)、脅威タイプ(threat types)及び脅威レベル(threat levels)等に関連する様々な脆弱性及び情報を含んでよい。
【0024】
更なる実施例において、第1のイベント情報は、過去に発生したイベントに対応する様々な情報セキュリティログ(information security logs)を含んでよく、情報セキュリティログには、攻撃手法(例えば、DarkHotel APT)、攻撃手法のインフラストラクチャ(infrastructures)、攻撃手法に対応する脆弱性(例えば、CVE-2019-1367)及び種々の脆弱性の脆弱性攻撃(exploitations)(例えば、野生化脆弱性攻撃におけるCVE-2019-1367(CVE-2019-1367 in the wild exploitation))が含まれてよい。
【0025】
更なる実施例において、IOCデータは、IOCの種々の初期データを含んでよい。
【0026】
図2は、本発明の実施例による情報セキュリティ方法の模式図である。
図3は、本発明の実施例による情報セキュリティ方法のフローチャートである。
図3に示す実施例の方法は、
図1における情報セキュリティ装置100に適用可能であるが、これに限定されない。説明しやすく明確にするために、以下、
図1、
図2及び
図3を同時に参照して、
図3に示す情報セキュリティ方法の詳細な工程を説明することができる。
【0027】
工程S301において、プロセッサ130は、データベース120(1)~120(N)から第1の脆弱性関連情報及び第1のイベント情報を読み取ることができる。
【0028】
つまり、プロセッサ130は、データベース120(1)~120(N)において第1の脆弱性関連情報及び第1のイベント情報をサーチすることができる。
【0029】
いくつかの実施例において、プロセッサ130は、データベース120(1)~120(N)から第1の脆弱性関連情報及び第1のイベント情報を読み取る前に、送受信機110によってソーシャルメディアデータを受信し、データベース120(1)~120(N)のサンプルソーシャルメディアデータに基づいて、ソーシャルメディアデータの複数の関連度スコア(relevancy scores)を計算することができ、これらの関連度スコアは、ソーシャルメディアデータと情報セキュリティとの関連性を指示する。これにより、プロセッサ130は、複数の関連度スコアに基づいて、ソーシャルメディアデータからテキストデータ(text data)を認識することができる。
【0030】
更なる実施例において、サンプルソーシャルメディアデータは、ソーシャルメディアに関するテキストを含んでよい(例えば、このテキストは、アカウント、ツイート、タグ、タイトル、作者、コンテンツ及び時間等を含んでよい)。また、プロセッサ130は、送受信機110によって上記した様々なソーシャルメディアデータベースからソーシャルメディアデータを受信することができる。
【0031】
更なる実施例において、工程S201において、プロセッサ130は、ソーシャルメディアデータベース120(1)のソーシャルメディアデータからテキストデータを識別することができる。
【0032】
詳しくは、工程S2011において、プロセッサ130は、ソーシャルメディアデータ及びサンプルソーシャルメディアデータに対して、文区切り(sentence segmentation)、単語切り(word hyphenation)、ハイパーリンク(hyperlinks)の削除及び句読点の削除を実行することで、自然言語処理(natural language processing;NLP)を実行し、且つ、NLP処理されたサンプルソーシャルメディアデータをトレーニングデータとして利用することができ、処理されたサンプルソーシャルメディアデータは、複数の用例語及び複数の用例文を含んでよい。
【0033】
工程S2013において、プロセッサ130は、処理されたサンプルソーシャルメディアデータに対応する用例語及び用例文に、各用例語又は各用例文が情報セキュリティに関連するかを指示するラベル(labels)を付けることができる。
【0034】
工程S2015において、プロセッサ130は、ラベリングされた用例語及びラベリングされた用例文によって、相関認識モデル(correlation identification model)をトレーニングしてよい。例えば、プロセッサ130は、ラベリングされた用例語及びラベリングされた用例文に、長短期記憶(long short-term memory;LSTM)アルゴリズムに関連する操作を実行することができる。注意すべきなのは、上記相関認識モデルの生成方法は、任意の分類アルゴリズム(classification algorithm)であってよいが、ここで相関認識モデルの生成方法は、特に制限されない。
【0035】
工程S2017において、プロセッサ130は、相関認識モデルによってソーシャルメディアデータの複数の関連度スコアを計算することができる。これにより、プロセッサ130は、これらの関連度スコアに基づいて、ソーシャルメディアデータからテキストデータを認識することができる。詳しくは、プロセッサ130は、ソーシャルメディアデータからテキストデータを認識することができ、テキストデータの関連度スコアはスコア閾値より大きい。
【0036】
更なる実施例において、プロセッサ130は、サンプルソーシャルメディアデータに基づいて、テキストデータの複数のイベントサブジェクト(event subjects)を認識することができ、複数のイベントサブジェクトは、テキストデータの複数のサブジェクトに関連する複数のキーワード(keywords)を指示する。このように、プロセッサ130は、複数のイベントサブジェクトによってテキストデータをラベリングし、且つ、ラベリングされたテキストデータ及びイベント情報に基づいて第2のイベント情報を生成してデータベース120(1)~120(N)に記憶することができる。
【0037】
更なる実施例において、工程S203において、プロセッサ130は、テキストデータの複数のイベントサブジェクトを認識し、複数のイベントサブジェクトによってテキストデータをラベリングし、更にラベリングされたテキストデータ及び第1のイベント情報に基づいて第2のイベント情報を生成してイベントデータベース120(3)に記憶することができる。
【0038】
詳しくは、工程S2031において、プロセッサ130は、ソーシャルメディアデータ及びサンプルソーシャルメディアデータに対して、文区切り、単語切り、ハイパーリンク削除及び句読点の削除を実行することで、NLP処理を実行し、且つ、NLP処理されたサンプルソーシャルメディアデータをトレーニングデータとして利用することができ、処理されたサンプルソーシャルメディアデータは、複数の用例語及び複数の用例文を含んでよい。
【0039】
これにより、プロセッサ130は、処理されたサンプルソーシャルメディアデータに対応する用例語及び用例文に、各用例語又は各用例文に対応するサンプルイベントサブジェクトを指示するラベルを付けることができる。
【0040】
工程S2033において、プロセッサ130は、ラベリングされた用例語及びラベリングされた用例文によって、サブジェクト認識モデル(subject identification model)をトレーニングすることができる。例えば、プロセッサ130は、ラベリングされた用例語及びラベリングされた用例文に対して、潜在的ディリクレ配分(latent Dirichlet allocation;LDA)アルゴリズムに関連する操作を実行することができる。注意すべきなのは、上記サブジェクト認識モデルの生成方法は、任意の分類アルゴリズムであってよく、ここでサブジェクト認識モデルの生成方法は、特に制限されない。
【0041】
工程S2035において、プロセッサ130は、サブジェクト認識モデルによってテキストデータの複数のイベントサブジェクトを認識することができる。このように、プロセッサ130は、複数のイベントサブジェクトによってテキストデータをラベリングし、且つ、ラベリングされたテキストデータ及び第1のイベント情報に基づいて第2のイベント情報を生成してイベントデータベース120(3)に記憶することができる。
【0042】
詳しくは、プロセッサ130は、第1のイベント情報に基づいて複数の攻撃手法、複数の攻撃手法の攻撃工程及び複数の攻撃手法に対応する脆弱性を認識することができ、これらの攻撃手法、攻撃工程及び脆弱性は、ラベリングされたテキストデータの複数のイベントサブジェクトに対応する。このように、プロセッサ130は、これらの攻撃手法、攻撃工程及び脆弱性に基づいて第2のイベント情報を生成することができる。従って、プロセッサ130は、第2のイベント情報をイベントデータベース120(3)に記憶することができる。
【0043】
いくつかの実施例において、プロセッサ130は、データベース120(1)~120(N)から第1の脆弱性関連情報及び第1のイベント情報を読み取る前に、送受信機110によって脆弱性データを受信し、且つ、第1の脆弱性関連情報に基づいて、脆弱性データの脅威程度を計算することができる。従って、プロセッサ130は、脅威程度及び脆弱性データに基づいて第2の脆弱性関連情報を生成してデータベース120(1)~120(N)に記憶することができる。
【0044】
更なる実施例において、脆弱性データは、攻撃手法、オペレーティングシステム及び脅威タイプ等に関連する複数のタイプの複数の脆弱性及び情報を含んでよく、攻撃手法、オペレーティングシステム及び脅威タイプ等は、複数のタイプの複数の脆弱性に対応する。また、プロセッサ130は、送受信機110によって上記した種々の外部オープンソースソフトウェア脆弱性情報データベース又は上記した種々の外部ソーシャルメディアデータベースから脆弱性に関するデータを受信することができる。
【0045】
更なる実施例において、プロセッサ130は、データベース120(1)~120(N)のサンプルソーシャルメディアデータに基づいて第1の脆弱性関連情報に関連する複数のソーシャル人気度を計算することができ、これらのソーシャル人気度は、第1の脆弱性関連情報がサンプルソーシャルメディアデータに出現する頻度を指示する。これにより、プロセッサ130は、第1の脆弱性関連情報及び複数のソーシャル人気度に基づいて複数の脆弱性特徴を生成し、且つ、複数の脆弱性特徴に基づいて、脆弱性データの脅威程度を計算することができる。
【0046】
更なる実施例において、工程S205において、プロセッサ130は、脆弱性データベース120(2)の第1の脆弱性関連情報に基づいて、受信した脆弱性データの脅威程度を計算し、且つ、脅威程度及び脆弱性データに基づいて第2の脆弱性関連情報を生成して脆弱性データベース120(2)に記憶することができる。
【0047】
詳しくは、工程S2051において、プロセッサ130は、第1の脆弱性関連情報から複数の第1の脆弱性特徴(例えば、脆弱性の説明、共通脆弱性評価システム(common vulnerability scoring system;CVSS)でのスコア、CVE詳細(CVE details)及びゼロディ・アンド・トゥデイ価格(zero-day and today price)等)を生成し、サンプルソーシャルメディアデータから第1の脆弱性関連情報の種々の脆弱性の複数のソーシャル人気度を計算し、更にこれらのソーシャル人気度を複数の第2の脆弱性特徴とすることができ、これらのソーシャル人気度は、第1の脆弱性関連情報がサンプルソーシャルメディアデータに出現する頻度を指示する。
【0048】
工程S2053において、プロセッサ130は、複数の第1の脆弱性特徴、複数の第2の脆弱性特徴及び第1の脆弱性関連情報を利用して、脆弱性攻撃予測モデルをトレーニングすることができる。例として、プロセッサ130は、複数の第1の脆弱性特徴、複数の第2の脆弱性特徴及び第1の脆弱性関連情報に、ランダムフォレストアルゴリズムに関連する操作を実行することができる。注意すべきなのは、上記脆弱性攻撃予測モデルの生成方法は、任意の分類アルゴリズムであってもよく、ここで脆弱性攻撃予測モデルの生成方法は、特に制限されない。
【0049】
工程S2055において、プロセッサ130は、脆弱性攻撃予測モデルによって脆弱性データの脅威程度を計算し、且つ、脅威程度及び脆弱性データに基づいて第2の脆弱性関連情報を生成し、更に第2の脆弱性関連情報を脆弱性データベース120(2)に記憶することができ、脅威程度は、脆弱性データにおける1つの脆弱性が今後利用されて攻撃される確率を指示する。
【0050】
詳しくは、プロセッサ130は、複数の確率閾値に基づいて、脆弱性データの複数の脅威レベルを認識することができる。これに基づいて、プロセッサ130は、複数の脅威レベル及び脆弱性データに基づいて第2の脆弱性関連情報を生成することができる。従って、プロセッサ130は、第2の脆弱性関連情報を脆弱性データベース120(2)に記憶することができる。
【0051】
工程S303において、プロセッサ130は、第1の脆弱性関連情報及び第1のイベント情報に基づいて少なくとも1つの第1の知識グラフ(intelligent graph)を生成し、且つ、シナリオ情報に基づいて第2の知識グラフを生成することができる。
【0052】
つまり、プロセッサ130は、第1の脆弱性関連情報に基づいて第1の脆弱性関連情報に対応する少なくとも1つの第1の知識グラフを生成し、且つ、シナリオ情報に基づいて、シナリオ情報に対応する第2の知識グラフを生成することができる。
【0053】
いくつかの実施例において、プロセッサ130は、それぞれイベントデータベース120(3)及びセキュリティ侵害インジケータデータベース120(5)からシナリオ情報及びIOCデータを読み取り、且つ、シナリオ情報及びIOCデータに基づいて、シナリオ情報に対応する第2の知識グラフを生成することができる。
【0054】
いくつかの実施例において、プロセッサ130は、第1の脆弱性関連情報に基づいて複数の第1の知識サブグラフ(intelligent subgraphs)を生成し、且つ、第1のイベント情報に基づいて複数の第2の知識サブグラフを生成することができる。このように、プロセッサ130は、複数の第1の知識サブグラフの少なくとも1つと複数の第2の知識サブグラフの少なくとも1つとを関連付け(link)、少なくとも1つの第1の知識グラフを生成することができ、複数の第1の知識サブグラフの少なくとも1つと複数の第2の知識サブグラフのうちの少なくとも1つとは、関連する。
【0055】
更なる実施例において、プロセッサ130は、複数の第1の知識サブグラフの少なくとも1つにおける少なくとも1つの第1のノードを複数の第2の知識サブグラフの少なくとも1つにおける少なくとも1つの第2のノードに関連付けることができ、この少なくとも1つの第1のノードとこの少なくとも1つの第2のノードとは同じである。
【0056】
いくつかの実施例において、工程S207の工程S2071において、プロセッサ130は、脆弱性データベース120(2)の第1の脆弱性関連情報に対応する複数の第1の知識サブグラフを生成し、且つ、イベントデータベース120(3)の第1のイベント情報に対応する複数の第2の知識サブグラフを生成し、複数の第1の知識サブグラフの少なくとも1つと複数の第2の知識サブグラフの少なくとも1つに関連する複数の第2の知識サブグラフの少なくとも1つとを関連付け、少なくとも1つの第1の知識グラフを生成することができる。
【0057】
詳しくは、プロセッサ130は、少なくとも1つの第1のノードをサーチすることができ、この少なくとも1つの第1のノードは、複数の第1の知識サブグラフの少なくとも1つにあり、且つ、複数の第2の知識サブグラフの少なくとも1つにおける少なくとも1つの第2のノードと同じである。これにより、プロセッサ130は、全ての第1のノード及び全ての第2のノードを関連付けて、少なくとも1つの第1の知識グラフを生成することができる。
【0058】
例として、プロセッサ130により既に10個の第2の知識サブグラフから10個の第2のノードがサーチされ、且つ、この10個の第2のノードがそれぞれ10個の第1の知識サブグラフにおける10個の第1のノードと同じである場合、プロセッサ130は、それぞれ10個の第1のノードと10個の第2のノードとを関連付けて、10個の第1の知識グラフを生成することができる。
【0059】
別の例では、
図4は、本発明の実施例による第1の知識サブグラフの模式図である。
図4を参照すると、第1の知識サブグラフは、第1の脆弱性関連情報における1つの脆弱性に関連する。更に、第1の知識サブグラフは、1つの脆弱性に関する全ての関連情報を指示する。
【0060】
別の例では、
図5は、本発明の実施例による第2の知識サブグラフの模式図である。
図5を参照すると、第2の知識サブグラフは、第1のイベント情報における1つの情報セキュリティイベントに関連する。更に、第2の知識サブグラフは、攻撃手法(即ち、DarkHotel APT)、攻撃手法のインフラストラクチャ(infrastructure)(4つの要素(即ち、2つの「ドメイン」要素及び2つの「IP」要素)からなる)、攻撃手法に対応する脆弱性(即ち、CVE-2019-1367)及び脆弱性の脆弱性攻撃(即ち、野生化脆弱性攻撃におけるCVE 2019-1367(CVE-2019-1367 in the wild exploitation)により配信されたCVE 2019-1367にドロップされたマルウェア(CVE-2019-1367 dropped malware)及びCVE 2019-1367脆弱性攻撃(CVE-2019-1367 exploit)を含み、CVE-2019-1367にドロップされたマルウェア及びCVE-2019-1367脆弱性攻撃は、それぞれCVE 2019-1367にドロップされたマルウェアのファイルハッシュ(File hash for CVE-2019-1367 dropped malware)及びCVE 2019-1367脆弱性攻撃ペイロードのファイルハッシュ(File hash for CVE-2019-1367 exploit payload)である。
【0061】
最後に、
図1、
図2及び
図3を同時に参照すると、工程S305において、プロセッサ130は、少なくとも1つの第1の知識グラフと第2の知識グラフとを比較することで、少なくとも1つの第1の知識グラフと第2の知識グラフとの類似度を認識し、更に会社に情報セキュリティの脅威が存在するかを判定することができる。
【0062】
つまり、プロセッサ130は、少なくとも1つの第1の知識グラフと第2の知識グラフとを比較することで、少なくとも1つの第1の知識グラフと第2の知識グラフとの類似度を認識することができる。これにより、プロセッサ130は、類似度に基づいて、会社に情報セキュリティの脅威があるかを判定することができる。
【0063】
いくつかの実施例において、プロセッサ130は、少なくとも1つの第1の知識グラフの複数のノードから複数の第1の参照ノードを認識することができる。従って、プロセッサ130は、第2の知識グラフに複数の第1の参照ノードの少なくとも1つとマッチングする少なくとも1つの第2の参照ノードが存在するかを判定することができる。
【0064】
更なる実施例において、第2の知識グラフに複数の第1の参照ノードに対応する少なくとも1つの第2の参照ノードが存在する場合、プロセッサ130は、第2の知識グラフから少なくとも1つの第1の参照ノードに対応する少なくとも1つの知識サブグラフを切り取ることができる。これにより、プロセッサ130は、少なくとも1つの知識サブグラフと少なくとも1つの第1の知識グラフとの類似度を計算し、類似度が閾値より大きいかを判定することができる。
【0065】
いくつかの実施例において、工程S207の工程S2073において、プロセッサ130は、イベントデータベース120(3)におけるシナリオ情報及びIOCデータベース120(5)におけるIOCデータに基づいて第2の知識グラフを生成し、且つ、第2の知識グラフに複数の第1の参照ノードの少なくとも1つとマッチングする少なくとも1つの第2の参照ノードが存在するかを判定することができる。注意すべきなのは、第2の知識グラフは、上記第2の知識サブグラフに類似する構造を有する。
【0066】
詳しくは、プロセッサ130は、シナリオ情報とIOCデータとの関係に基づいて、シナリオ情報に対応する複数のノードとIOCデータに対応する複数のノードとを関連付け(例えば、IOCデータにおけるIOCがシナリオ情報におけるOSバージョンに関連する場合、プロセッサ130は、IOCに対応するノードをOSバージョンに対応するノードに関連付けることができる)、第2の知識グラフを生成することができる。
【0067】
なお、プロセッサ130は、少なくとも1つの第1の知識グラフの全てのノードの重要度値(importance values)を計算し、重要度値が重要度の閾値より大きい複数の第1の参照ノードをサーチすることができる。また、プロセッサ130は、少なくとも1つの第1の知識グラフにグラフ経路探索(graph path finding)アルゴリズムに関連する操作を実行し、複数の第1の参照ノードを認識することもできる。また、プロセッサ130は、複数の脆弱性に対応する少なくとも1つの第1の知識グラフにおける複数の第1の参照ノードを認識することもできる。従って、少なくとも1つの第1の知識グラフにおける複数の第1の参照ノードを認識する方法は、特に制限されない。
【0068】
上記に基づいて、プロセッサ130は、第2の知識グラフに複数の第1の参照ノードの少なくとも1つとマッチングする第2の参照ノードが存在しないと判定した場合、会社に情報セキュリティの脅威がないと判定してよい。逆に、プロセッサ130は、第2の知識グラフに複数の第1の参照ノードの少なくとも1つとマッチングする少なくとも1つの第2の参照ノードが存在すると判定した場合、第2の知識グラフから少なくとも1つの第2の参照ノードに対応する少なくとも1つの知識サブグラフを切り取ってよい。
【0069】
例えば、プロセッサ130は、少なくとも1つの第2の参照ノードにトラストランク(trust rank)アルゴリズム、ランダムウォーク(random walk)アルゴリズム又はページランク(page rank)アルゴリズムを実行することで、第2の知識グラフから少なくとも1つの知識サブグラフを切り取ることができる。従って、第2の知識グラフから少なくとも1つの知識サブグラフを切り取る方法は、特に制限されない。
【0070】
更に、工程S2075において、プロセッサ130は、少なくとも1つの知識サブグラフと少なくとも1つの第1の知識グラフとの類似度を計算することができる。詳しくは、プロセッサ130は、少なくとも1つの知識サブグラフと少なくとも1つの第1の知識グラフとの間にグラフマッチング(graph matching)アルゴリズムを実行して、類似度を計算することができる。
【0071】
いくつかの実施例において、少なくとも1つの類似度の少なくとも1つが閾値より大きい場合、プロセッサ130は、少なくとも1つの類似度の少なくとも1つに対応する少なくとも1つの潜在的脆弱性を認識し、会社に情報セキュリティの脅威が存在するかを判定することができる。
【0072】
いくつかの実施例において、工程S2077において、類似度が閾値より大きい場合、プロセッサ130は、対応する潜在的脆弱性を認識し、会社に情報セキュリティの脅威が存在するかを判定することができる。詳しくは、類似度が閾値より大きい場合、プロセッサ130は、閾値より大きい類似度に対応する知識サブグラフを認識し、知識サブグラフのノードに対応する脆弱性を潜在的脆弱性として認識することができる。
【0073】
いくつかの実施例において、プロセッサ130は、少なくとも1つの潜在的脆弱性のデータを外部警報装置に伝送することができ、外部警報装置は、少なくとも1つの潜在的脆弱性のデータに基づいて、警報メッセージを生成することができる。このように、外部警報装置により、ユーザは警報メッセージに基づいて会社内のどの脆弱性が攻撃されるかを知ることができ、且つ、警報メッセージに基づいて会社に情報セキュリティの脅威が存在することを知ることができる。
【0074】
いくつかの実施例において、情報セキュリティ装置100は、ディスプレイ(図示せず)を更に備える。プロセッサ130は、少なくとも1つの潜在的脆弱性のデータに基づいて、警報メッセージを生成し、ディスプレイにより警報メッセージを表示することができる。このように、ディスプレイにより、ユーザは、警報メッセージに基づいて会社内のどの脆弱性が攻撃されるかを知ることができ、且つ、警報メッセージに基づいて会社に情報セキュリティの脅威が存在することを知ることができる。
【0075】
以上を纏めると、本発明の情報セキュリティ装置及びその方法は、会社シナリオに対応する知識グラフ及びデータベース情報セキュリティイベントに対応する知識グラフを使用して、グラフマッチング分析を行うことで、攻撃されるシナリオの脆弱性を認識する。また、オンラインソーシャルメディア及び脆弱性に関連するデータベースから情報セキュリティに関する有用な情報を更にサーチすることもできる。これにより、本発明の情報セキュリティ装置及びその方法は、如何に情報セキュリティの脅威情報を取得するか、及び如何に脅威情報をフィルタリングして消化するかという問題を解決することができる。
【0076】
本発明は、実施例により前述の通りに開示されたが、実施例が本発明を限定するものではなく、当業者であれば、本発明の精神と範囲から逸脱しない限り、多様の変更や修飾を加えることができる。従って、本発明の保護範囲は、下記特許請求の範囲で指定した内容を基準とするものである。
【符号の説明】
【0077】
100 情報セキュリティ装置
110 送受信機
120 メモリ
130 プロセッサ
120(1)~120(N) データベース
200 ネットワーク
120(1) ソーシャルメディアデータベース
120(2) 脆弱性データベース
120(3) イベントデータベース
120(4) シナリオデータベース
120(5) セキュリティ侵害インジケータデータベース
S301~S305 情報セキュリティ方法の工程