JP7302223B2 - スクリプト検出装置、方法及びプログラム - Google Patents
スクリプト検出装置、方法及びプログラム Download PDFInfo
- Publication number
- JP7302223B2 JP7302223B2 JP2019058148A JP2019058148A JP7302223B2 JP 7302223 B2 JP7302223 B2 JP 7302223B2 JP 2019058148 A JP2019058148 A JP 2019058148A JP 2019058148 A JP2019058148 A JP 2019058148A JP 7302223 B2 JP7302223 B2 JP 7302223B2
- Authority
- JP
- Japan
- Prior art keywords
- script
- behavior
- program
- model
- interpreter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
分析対象のプログラムに関するモデルについて類似度に基づきグループ化できる場合、前記分析対象のプログラムはスクリプトを読み込んで実行するインタプリタであると判断しスクリプトの特定を行うスクリプト検出方法が提供される。
分析対象のプログラムに関するモデルについて類似度に基づきグループ化できる場合、前記分析対象のプログラムはスクリプトを読み込んで実行するインタプリタであると判断しスクリプトの特定を行う処理と、
をコンピュータに実行させるプログラムが提供される。
・インタプリタはスクリプトを実行する前にスクリプトを読み込むはずである。
・プロセスによる子プロセスの実行、及び、
・プロセスによるファイルの読み込み(read)、書き込み(write)を、イベントとして説明する。プロセス間通信やネットワークの通信等の監視可能なプロセスの振る舞いを分析対象に含めるようにしてもよい。この場合、検出精度をさらに高めることができる。
・イベントを発生させたプロセスの情報、
・操作、
・操作対象、及び、
・イベントの発生順序
の情報が含まれる。
・プロセスの実態となるプログラムファイルのパス、及び、
・プロセスを一意に識別可能なID(Identification:識別情報)
が含まれる。なお、プロセスは、プロセッサ上でプログラムを動作させる際にプロセッサが実行するひとまとまりの処理単位のことを意味してもよい(プログラムは複数のプロセスを稼働可能)。
・ファイルのread、write、
・プログラムを子プロセスとして実行するexecute
があるものとする。
・プログラムP1が、プログラムP2を実行する(execute)。
・プログラムP2は、ファイルF1への読み込み/書き込み(read/write)、ファイルF2の読み込み(read)、その後、プログラムP3を実行する(execute)。
・プログラムP3は、ファイルF3の読み込み(read)とファイルF4の書き込み(write)を行う。
・P1の振る舞い(プログラムP2の実行(execute))のほか、
・P2の振る舞い(ファイルF1への読み込み/書き込み(read/write)、ファイルF2の読み込み(read)、その後、プログラムP3を実行(execute))、
・P3の振る舞い(ファイルF3の読み込み(read)とファイルF4の書き込み(write))を展開して埋め込んでいる。
・ファイルF1に対する操作:read/write、
・プログラムP3に対する操作:execute、及び、
・ファイルF3に対する操作:read
が共通している。
モデルの振る舞いの操作対象が同じならばモデル間の距離は近い、
モデルの振る舞いの操作対象に対する操作(read/write/execute)が同じならばモデル間の距離は近い、
モデルの振る舞いの順序が同じならばモデル間の距離は近い、
などの基準を用いてもよい。あるいは、監視対象システム10に合わせて、これらの基準を適宜調整(チューニング)するようにしてもよい。
・類似度の低いモデルが同一グループになる、又は
・モデル数の少ないグループに分かれる、
ことから判断することができる。
・ファイルF1に対する操作:read/write、
・プログラムP3に対する操作:execute、
・ファイルF3に対する操作:read、
は、インタプリタの共通の振る舞いであるとわかっている。このため、図4において、これらを分析の対象から外すと、図9の太線で示した振る舞いが残る。
・インタプリタの共通の振る舞い、及び、
・インタプリタとスクリプトの組み合わせにおけるスクリプトの共通の振る舞い、
を格納する。
監視対象システム上のプロセスの振る舞いの監視の結果収集されたイベント情報を受信し、前記イベント情報に基づきプロセスの振る舞いのモデルを作成する第1の手段と、
分析対象のプログラムに関するモデルについて類似度に基づきグループ化できる場合、前記分析対象のプログラムはスクリプトを読み込んで実行するインタプリタであると判断しスクリプトの特定を行う第2の手段と、
を含む、スクリプト検出装置。
前記第2の手段で特定されたスクリプトが記憶部に格納されているスクリプトであるか否かを判別し、前記特定されたスクリプトが既知のプロセスであるか否かを判別する第3の手段をさらに含む、付記1に記載のスクリプト検出装置。
前記第1乃至第3の手段を備えたスクリプト検出部を備え、さらに、
前記第1の手段と同様に、前記イベント情報を受信し、前記イベント情報に基づきプロセスの振る舞いのモデルを作成するモデル作成部と、
前記第2の手段と同様にして、スクリプトを特定し、特定したスクリプトの情報を前記記憶部に格納するモデル分析部と、
前記記憶部と、
を含む、付記2に記載のスクリプト検出装置。
前記第2の手段は、類似したモデルでグループ化できた場合、前記インタプリタの共通の振る舞いとして、前記インタプリタによる操作と、操作対象を関連付けて前記記憶部に記憶し、
さらに、前記スクリプトの共通の振る舞いとして、前記スクリプトと、前記スクリプトを実行するインタプリタによる操作、操作対象を関連付けて前記記憶部に記憶する、付記2又は3に記載のスクリプト検出装置。
前記第3の手段は、前記第1の手段で組み立てた前記モデルに関して、前記スクリプトの振る舞いが、前記記憶部から取得した前記スクリプトの共通の振る舞いを包含している場合には、前記インタプリタである前記分析対象のプログラムにより前記特定したスクリプトファイルが実行されたと判断し、前記スクリプトの振る舞いが、前記記憶部から取得した前記スクリプトの共通の振る舞いを包含しない場合には、前記分析対象のプログラムは、既知のスクリプトを実行していないと判断する、付記4に記載のスクリプト検出装置。
前記第2の手段は、類似度に基づきグループ化を行うにあたり、スクリプトの相違によらずインタプリタで共通に行われる振る舞いを外した上で前記グループ化を行う、付記1乃至5のいずれかに記載のスクリプト検出装置。
前記第2の手段は、子プロセスの振る舞いを、親プロセスである大元のプログラムの振る舞いに埋め込み、前記大元のプログラムの時間軸上の振る舞いとして展開したモデルを生成する、付記1乃至6のいずれかに記載のスクリプト検出装置。
前記第2の手段は、子プロセスであるプログラムが第1のスクリプトを実行していると判断し、さらに、前記子プロセスの親プロセスであるプログラムが第2のスクリプトを実行していると判断した場合、スクリプト情報の有用性に基づき、前記第1及び第2のスクリプトのいずれか一方のスクリプトを選択して前記記憶部に記憶する、付記1乃至7のいずれかに記載のスクリプト検出装置。
前記第2の手段は、子プロセスであるプログラムが第1のスクリプトを実行していると判断し、さらに、前記子プロセスの親プロセスであるプログラムが第2のスクリプトを実行していると判断した場合、スクリプト全体の振る舞いに与える影響に基づき、スクリプトを選択して前記記憶部に記憶する、付記1乃至8のいずれかに記載のスクリプト検出装置。
付記1乃至9のいずれかに記載の前記スクリプト検出装置と、
前記スクリプト検出装置に通信接続され、前記スクリプト検出装置からスクリプト検出結果を受け取り、前記スクリプト検出結果を利用して前記監視対象システムに関する分析を行うスクリプト情報利用装置と、
を備えた管理システム。
プロセスの振る舞いの監視の結果収集されたイベント情報を受信し、前記イベント情報に基づきプロセスの振る舞いのモデルを作成する第1の処理と、
分析対象のプログラムに関するモデルについて類似度に基づきグループ化できる場合、前記分析対象のプログラムはスクリプトを読み込んで実行するインタプリタであると判断しスクリプトの特定を行う第2の処理を含む、スクリプト検出方法。
前記第2の処理で特定されたスクリプトが記憶部に格納されているスクリプトであるか否かを判別し、前記特定されたスクリプトが既知のプロセスであるか否かを判別する第3の処理をさらに含む、付記11に記載のスクリプト検出方法。
前記第1乃至第3の処理をスクリプト検出部で実行し、
前記第1の処理と同様に、前記イベント情報を受信し、前記イベント情報に基づきプロセスの振る舞いのモデルを作成するモデル作成処理と、
前記第2の処理と同様にして、スクリプトを特定し、特定したスクリプトの情報を前記記憶部に格納するモデル分析処理を含む、付記12に記載のスクリプト検出方法。
前記第2の処理は、類似したモデルでグループ化できた場合、前記インタプリタの共通の振る舞いとして、前記インタプリタによる操作と、操作対象を関連付けて前記記憶部に記憶し、
さらに、前記スクリプトの共通の振る舞いとして、前記スクリプトと、前記スクリプトを実行するインタプリタによる操作、操作対象を関連付けて前記記憶部に記憶する、付記12又は13に記載のスクリプト検出方法。
前記第3の処理は、前記第1の処理で組み立てた前記モデルに関して、前記スクリプトの振る舞いが、前記記憶部から取得した前記スクリプトの共通の振る舞いを包含している場合には、前記インタプリタである前記分析対象のプログラムにより前記特定したスクリプトファイルが実行されたと判断し、前記スクリプトの振る舞いが、前記記憶部から取得した前記スクリプトの共通の振る舞いを包含しない場合には、前記分析対象のプログラムは、既知のスクリプトを実行していないと判断する、付記14に記載のスクリプト検出方法。
前記第2の処理は、類似度に基づきグループ化を行うにあたり、スクリプトの相違によらずインタプリタで共通に行われる振る舞いを外した上で前記グループ化を行う、付記11乃至15のいずれかに記載のスクリプト検出方法。
前記第2の処理は、子プロセスの振る舞いを、親プロセスである大元のプログラムの振る舞いに埋め込み、前記大元のプログラムの時間軸上の振る舞いとして展開したモデルを生成する、付記11乃至16のいずれかに記載のスクリプト検出方法。
前記第2の処理は、子プロセスであるプログラムが第1のスクリプトを実行していると判断し、さらに、前記子プロセスの親プロセスであるプログラムが第2のスクリプトを実行していると判断した場合、スクリプト情報の有用性に基づき、前記第1及び第2のスクリプトのいずれか一方のスクリプトを選択して前記記憶部に記憶する、付記11乃至17のいずれかに記載のスクリプト検出方法。
前記第2の処理は、子プロセスであるプログラムが第1のスクリプトを実行していると判断し、さらに、前記子プロセスの親プロセスであるプログラムが第2のスクリプトを実行していると判断した場合、スクリプト全体の振る舞いに与える影響に基づき、スクリプトを選択して前記記憶部に記憶する、付記11乃至18のいずれかに記載のスクリプト検出方法。
プロセスの振る舞いの監視の結果収集されたイベント情報を受信し、前記イベント情報に基づきプロセスの振る舞いのモデルを作成する第1の処理と、
分析対象のプログラムに関するモデルについて類似度に基づきグループ化できる場合、前記分析対象のプログラムはスクリプトを読み込んで実行するインタプリタであると判断しスクリプトの特定を行う第2の処理と、
をコンピュータに実行させるプログラム。
前記第2の処理で特定されたスクリプトが記憶部に格納されているスクリプトであるか否かを判別し、前記特定されたスクリプトが既知のプロセスであるか否かを判別する第3の処理をさらに前記コンピュータに実行させる付記20に記載のプログラム。
前記第1乃至第3の処理がスクリプト検出モジュールを構成し、
前記第1の処理と同様に、前記イベント情報を受信し、前記イベント情報に基づきプロセスの振る舞いのモデルを作成するモデル作成処理と、
前記第2の処理と同様にして、スクリプトを特定し、特定したスクリプトの情報を前記記憶部に格納するモデル分析処理をさらに含む、付記21に記載のプログラム。
前記第2の処理は、類似したモデルでグループ化できた場合、前記インタプリタの共通の振る舞いとして、前記インタプリタによる操作と、操作対象を関連付けて前記記憶部に記憶し、
さらに、前記スクリプトの共通の振る舞いとして、前記スクリプトと、前記スクリプトを実行するインタプリタによる操作、操作対象を関連付けて前記記憶部に記憶する、付記21又は22に記載のプログラム。
前記第3の処理は、前記第1の処理で組み立てた前記モデルに関して、前記スクリプトの振る舞いが、前記記憶部から取得した前記スクリプトの共通の振る舞いを包含している場合には、前記インタプリタである前記分析対象のプログラムにより前記特定したスクリプトファイルが実行されたと判断し、前記スクリプトの振る舞いが、前記記憶部から取得した前記スクリプトの共通の振る舞いを包含しない場合には、前記分析対象のプログラムは、既知のスクリプトを実行していないと判断する、付記23に記載のプログラム。
前記第2の処理は、類似度に基づきグループ化を行うにあたり、スクリプトの相違によらずインタプリタで共通に行われる振る舞いを外した上で前記グループ化を行う、付記20乃至24のいずれかに記載のプログラム。
前記第2の処理は、子プロセスの振る舞いを、親プロセスである大元のプログラムの振る舞いに埋め込み、前記大元のプログラムの時間軸上の振る舞いとして展開したモデルを生成する、付記20乃至25のいずれかに記載のプログラム。
前記第2の処理は、子プロセスであるプログラムが第1のスクリプトを実行していると判断し、さらに、前記子プロセスの親プロセスであるプログラムが第2のスクリプトを実行していると判断した場合、スクリプト情報の有用性に基づき、前記第1及び第2のスクリプトのいずれか一方のスクリプトを選択して前記記憶部に記憶する、付記20乃至26のいずれかに記載のプログラム。
前記第2の処理は、子プロセスであるプログラムが第1のスクリプトを実行していると判断し、さらに、前記子プロセスの親プロセスであるプログラムが第2のスクリプトを実行していると判断した場合、スクリプト全体の振る舞いに与える影響に基づき、スクリプトを選択して前記記憶部に記憶する、付記20乃至27のいずれかに記載のプログラム。
付記20乃至28のいずれかに記載のプログラムを記憶した非一時的なコンピュータ可読媒体。
11 監視エージェント
20 スクリプト検出装置
21 モデル作成部
22 モデル記憶部
23 モデル分析部
24 分析結果記憶部
25 スクリプト検出部
30 スクリプト情報利用装置
100 コンピュータ装置
101 プロセッサ
102 メモリ
103 表示装置
104 通信インタフェース
110 プログラム
111 モデル作成モジュール
112 モデル分析モジュール
Claims (10)
- 監視対象システム上のプロセスの振る舞いの監視の結果収集されたイベント情報を受信し、前記イベント情報に基づきプロセスの振る舞いのモデルを作成する第1の手段と、
分析対象のプログラムに関するモデルについて類似度に基づきグループ化できる場合、前記分析対象のプログラムはスクリプトを読み込んで実行するインタプリタであると判断しスクリプトの特定を行う第2の手段と、
を含む、スクリプト検出装置。 - 前記第2の手段で特定されたスクリプトが記憶部に格納されているスクリプトであるか否かを判別し、前記特定されたスクリプトが既知のプロセスであるか否かを判別する第3の手段をさらに含む、請求項1に記載のスクリプト検出装置。
- 前記第1乃至第3の手段を備えたスクリプト検出部を備え、さらに、
前記第1の手段と同様に、前記イベント情報を受信し、前記イベント情報に基づきプロセスの振る舞いのモデルを作成するモデル作成部と、
前記第2の手段と同様にして、スクリプトを特定し、特定したスクリプトの情報を前記記憶部に格納するモデル分析部と、
前記記憶部と、
を含む、請求項2に記載のスクリプト検出装置。 - 前記第2の手段は、類似したモデルでグループ化できた場合、前記インタプリタの共通の振る舞いとして、前記インタプリタによる操作と、操作対象を関連付けて前記記憶部に記憶し、
さらに、前記スクリプトの共通の振る舞いとして、前記スクリプトと、前記スクリプトを実行するインタプリタによる操作、操作対象を関連付けて前記記憶部に記憶する、請求項2又は3に記載のスクリプト検出装置。 - 前記第3の手段は、前記第1の手段で組み立てた前記モデルに関して、前記スクリプトの振る舞いが、前記記憶部から取得した前記スクリプトの共通の振る舞いを包含している場合には、前記インタプリタである前記分析対象のプログラムにより前記特定したスクリプトファイルが実行されたと判断し、前記スクリプトの振る舞いが、前記記憶部から取得した前記スクリプトの共通の振る舞いを包含しない場合には、前記分析対象のプログラムは、既知のスクリプトを実行していないと判断する、請求項4に記載のスクリプト検出装置。
- 前記第2の手段は、類似度に基づきグループ化を行うにあたり、スクリプトの相違によらずインタプリタで共通に行われる振る舞いを外した上で前記グループ化を行う、請求項1乃至5のいずれか1項に記載のスクリプト検出装置。
- 前記第2の手段は、子プロセスの振る舞いを、親プロセスである大元のプログラムの振る舞いに埋め込み、前記大元のプログラムの時間軸上の振る舞いとして展開したモデルを生成する、請求項1乃至6のいずれか1項に記載のスクリプト検出装置。
- 請求項1乃至7のいずれか1項に記載のスクリプト検出装置と、
前記スクリプト検出装置に通信接続され、前記スクリプト検出装置からスクリプト検出結果を受け取り、前記スクリプト検出結果を利用して前記監視対象システムに関する分析を行うスクリプト情報利用装置と、
を備えた管理システム。 - コンピュータによって実行されるスクリプト検出方法であって、
プロセスの振る舞いの監視の結果収集されたイベント情報を受信し、前記イベント情報に基づきプロセスの振る舞いのモデルを作成し、
分析対象のプログラムに関するモデルについて類似度に基づきグループ化できる場合、前記分析対象のプログラムはスクリプトを読み込んで実行するインタプリタであると判断しスクリプトの特定を行う、スクリプト検出方法。 - プロセスの振る舞いの監視の結果収集されたイベント情報を受信し、前記イベント情報に基づきプロセスの振る舞いのモデルを作成する処理と、
分析対象のプログラムに関するモデルについて類似度に基づきグループ化できる場合、前記分析対象のプログラムはスクリプトを読み込んで実行するインタプリタであると判断しスクリプトの特定を行う処理と、
をコンピュータに実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019058148A JP7302223B2 (ja) | 2019-03-26 | 2019-03-26 | スクリプト検出装置、方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019058148A JP7302223B2 (ja) | 2019-03-26 | 2019-03-26 | スクリプト検出装置、方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020160679A JP2020160679A (ja) | 2020-10-01 |
JP7302223B2 true JP7302223B2 (ja) | 2023-07-04 |
Family
ID=72643410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019058148A Active JP7302223B2 (ja) | 2019-03-26 | 2019-03-26 | スクリプト検出装置、方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7302223B2 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017018377A1 (ja) | 2015-07-30 | 2017-02-02 | 日本電信電話株式会社 | 分析方法、分析装置、および分析プログラム |
JP2017123142A (ja) | 2015-09-30 | 2017-07-13 | エーオー カスペルスキー ラボAO Kaspersky Lab | フィッシング・スクリプトを検出するためのシステム及び方法 |
JP2017527931A (ja) | 2014-08-11 | 2017-09-21 | センチネル ラボズ イスラエル リミテッド | マルウェア検出の方法及びそのシステム |
-
2019
- 2019-03-26 JP JP2019058148A patent/JP7302223B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017527931A (ja) | 2014-08-11 | 2017-09-21 | センチネル ラボズ イスラエル リミテッド | マルウェア検出の方法及びそのシステム |
WO2017018377A1 (ja) | 2015-07-30 | 2017-02-02 | 日本電信電話株式会社 | 分析方法、分析装置、および分析プログラム |
JP2017123142A (ja) | 2015-09-30 | 2017-07-13 | エーオー カスペルスキー ラボAO Kaspersky Lab | フィッシング・スクリプトを検出するためのシステム及び方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2020160679A (ja) | 2020-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109586282B (zh) | 一种电网未知威胁检测系统及方法 | |
CN107004088B (zh) | 确定装置、确定方法及记录介质 | |
Watanabe et al. | Understanding the inconsistencies between text descriptions and the use of privacy-sensitive resources of mobile apps | |
Gianazza et al. | Puppetdroid: A user-centric ui exerciser for automatic dynamic analysis of similar android applications | |
CN112035354B (zh) | 风险代码的定位方法、装置、设备及存储介质 | |
CN114760106B (zh) | 网络攻击的确定方法、系统、电子设备及存储介质 | |
CN113114680B (zh) | 用于文件上传漏洞的检测方法和检测装置 | |
CN111221625A (zh) | 文件检测方法、装置及设备 | |
JP6282217B2 (ja) | 不正プログラム対策システムおよび不正プログラム対策方法 | |
US20210303435A1 (en) | Method, device, and computer program product for obtaining diagnostic information | |
KR101228902B1 (ko) | 클라우드 컴퓨팅 기반 악성코드 분석 지원 시스템 | |
CN112131571A (zh) | 威胁溯源方法及相关设备 | |
CN110955890B (zh) | 恶意批量访问行为的检测方法、装置和计算机存储介质 | |
CN112685255A (zh) | 一种接口监控方法、装置、电子设备及存储介质 | |
CN112699369A (zh) | 一种通过栈回溯检测异常登录的方法及装置 | |
JP7302223B2 (ja) | スクリプト検出装置、方法及びプログラム | |
CN115296895B (zh) | 请求响应方法、装置、存储介质及电子设备 | |
US10002253B2 (en) | Execution of test inputs with applications in computer security assessment | |
CN117056918A (zh) | 一种代码分析方法及相关设备 | |
CN111886594A (zh) | 恶意进程跟踪 | |
CN111309311B (zh) | 一种漏洞检测工具生成方法、装置、设备及可读存储介质 | |
CN114925365A (zh) | 一种文件处理方法、装置、电子设备及存储介质 | |
CN114064510A (zh) | 功能测试方法、装置、电子设备和存储介质 | |
JP5679347B2 (ja) | 障害検知装置、障害検知方法、及びプログラム | |
CN114090650A (zh) | 一种样本数据识别方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220203 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221213 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230206 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230523 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230605 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7302223 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |