JP6968145B2 - システム呼び出しのシーケンスを用いた異常検出 - Google Patents
システム呼び出しのシーケンスを用いた異常検出 Download PDFInfo
- Publication number
- JP6968145B2 JP6968145B2 JP2019502667A JP2019502667A JP6968145B2 JP 6968145 B2 JP6968145 B2 JP 6968145B2 JP 2019502667 A JP2019502667 A JP 2019502667A JP 2019502667 A JP2019502667 A JP 2019502667A JP 6968145 B2 JP6968145 B2 JP 6968145B2
- Authority
- JP
- Japan
- Prior art keywords
- identifier
- activation
- hash
- call sequence
- program procedure
- 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
- 238000001514 detection method Methods 0.000 title description 5
- 238000000034 method Methods 0.000 claims description 186
- 230000004913 activation Effects 0.000 claims description 182
- 238000001994 activation Methods 0.000 claims description 182
- 230000008569 process Effects 0.000 claims description 152
- 238000006243 chemical reaction Methods 0.000 claims description 21
- 230000002547 anomalous effect Effects 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 9
- 230000002159 abnormal effect Effects 0.000 claims description 8
- 230000008859 change Effects 0.000 claims description 6
- 230000015654 memory Effects 0.000 description 35
- 230000001052 transient effect Effects 0.000 description 14
- 238000012545 processing Methods 0.000 description 10
- 230000006399 behavior Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 206010000117 Abnormal behaviour Diseases 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
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/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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3017—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
-
- 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/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
-
- 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
-
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Virology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Description
本願は、呼び出しシーケンス異常検出、特に、オペレーティングシステム呼び出しにおける異常検出に関する。
本発明はさらに、例えば、以下を提供する。
(項目1)
メッセージベースのオペレーティングシステムにおける呼び出しシーケンス異常を検出する方法であって、前記方法は、
オペレーティングシステムのプログラムプロシージャの起動を示すメッセージを受信することであって、前記メッセージは、プログラムプロシージャ識別子と、送信側プロセス識別子と、受信側プロセス識別子とを含み、前記プログラムプロシージャの前記起動は、前記送信側プロセス識別子によって識別されるプロセスから生じるオペレーティングシステムプログラムプロシージャの一連の起動における1回の起動である、ことと、
少なくとも前記プログラムプロシージャ識別子および前記受信側プロセス識別子に基づいて、起動ハッシュを生成することと、
前記起動ハッシュを起動識別子に変換することと、
前記一連の起動のための起動識別子を備えている変換された呼び出しシーケンスに前記起動識別子を含むことと、
前記変換された呼び出しシーケンスが、複数の事前決定された呼び出しシーケンスに含まれているかどうかを決定することであって、前記事前決定された呼び出しシーケンスの各々は、対応する起動識別子を備え、前記対応する起動識別子の各々は、起動ハッシュにマッピングされる、ことと、
前記変換された呼び出しシーケンスが前記事前決定された呼び出しシーケンスに含まれていない場合、前記変換された呼び出しシーケンスを異常として識別し、そうでなければ、前記変換された呼び出しシーケンスが異常ではないと決定することと
を含む、方法。
(項目2)
前記起動ハッシュは、前記送信側プロセス識別子にも基づく、項目1に記載の方法。
(項目3)
前記メッセージは、前記プログラムプロシージャに渡されるパラメータの指示を含み、前記起動ハッシュは、前記プログラムプロシージャに渡されるパラメータの指示にも基づく、項目1または項目2に記載の方法。
(項目4)
前記メッセージは、チャネル識別子を含み、前記起動ハッシュは、前記チャネル識別子にも基づく、項目1−3のうちのいずれか1項に記載の方法。
(項目5)
前記メッセージは、受信側ノード識別子を含み、前記起動ハッシュは、前記受信側ノード識別子にも基づく、項目1−4のうちのいずれか1項に記載の方法。
(項目6)
前記起動ハッシュを変換することは、前記起動識別子に関連付けられた起動ハッシュを備えている変換テーブルにおいて前記起動ハッシュに対して検索することを含む、項目1−5のうちのいずれか1項に記載の方法。
(項目7)
前記起動識別子は、前記起動ハッシュを含む前記変換テーブルにおける行番号である、項目6に記載の方法。
(項目8)
コンピュータ実行可能命令を備えている非一過性コンピュータ読み取り可能な記憶媒体であって、前記コンピュータ実行可能命令は、プロセッサによって実行可能であり、前記コンピュータ実行可能命令は、
オペレーティングシステムのプログラムプロシージャの起動を示すメッセージを受信するために実行可能な命令であって、前記メッセージは、プログラムプロシージャ識別子と、送信側プロセス識別子と、受信側プロセス識別子とを含み、前記プログラムプロシージャの前記起動は、前記送信側プロセス識別子によって識別されるプロセスから生じるオペレーティングシステムプログラムプロシージャの一連の起動における1回の起動である、命令と、
前記メッセージの少なくとも一部に基づいて、起動ハッシュを生成するために実行可能な命令と、
前記起動ハッシュを起動識別子に変換するために実行可能な命令と、
前記一連の起動のための起動識別子を備えている変換された呼び出しシーケンスに前記起動識別子を含むために実行可能な命令と、
前記変換された呼び出しシーケンスが、複数の事前決定された呼び出しシーケンスに含まれているかどうかを決定するために実行可能な命令であって、前記事前決定された呼び出しシーケンスの各々は、対応する起動識別子を備え、前記対応する起動識別子の各々は、起動ハッシュにマッピングされる、命令と、
前記変換された呼び出しシーケンスが前記事前決定された呼び出しシーケンスに含まれていない場合、前記変換された呼び出しシーケンスを異常として識別し、そうでなければ、前記変換された呼び出しシーケンスが異常ではないと決定するために実行可能な命令と
を備えている、非一過性コンピュータ読み取り可能な記憶媒体。
(項目9)
前記変換された呼び出しシーケンスが、前記事前決定された呼び出しシーケンスに含まれているかどうかの決定は、テーブルにおける前記変換された呼び出しシーケンスに対する検索に基づき、前記テーブルは、起動識別子の組の行を備え、前記起動識別子の各々は、変換データ構造において対応する起動ハッシュに関連付けられている、項目8に記載の非一過性コンピュータ読み取り可能な記憶媒体。
(項目10)
前記メッセージの受信は、トレースファイルからの前記プログラムプロシージャの前記起動についての情報の読み取りを含む、項目8または項目9に記載の非一過性コンピュータ読み取り可能な記憶媒体。
(項目11)
前記メッセージの受信は、前記オペレーティングシステムからの登録されたコールバックの形態における前記メッセージの受信を含む、項目8−10のうちのいずれか1項に記載の非一過性コンピュータ読み取り可能な記憶媒体。
(項目12)
前記起動ハッシュの生成は、恣意的サイズのデータを固定サイズのデータにマッピングするハッシュ関数の適用を含み、前記ハッシュ関数は、前記プログラムプロシージャ識別子と、前記送信側プロセス識別子と、前記受信側プロセス識別子とを含むデータに適用される、項目8−11のうちのいずれか1項に記載の非一過性コンピュータ読み取り可能な記憶媒体。
(項目13)
メッセージベースのオペレーティングシステムにおける呼び出しシーケンス異常を検出するためのシステムであって、前記システムは、プロセッサを備え、
前記プロセッサは、
オペレーティングシステムのプログラムプロシージャの起動を示すメッセージを受信することであって、前記メッセージは、プログラムプロシージャ識別子と、送信側プロセス識別子と、受信側プロセス識別子とを含み、前記プログラムプロシージャの前記起動は、前記送信側プロセス識別子によって識別されるプロセスから生じるオペレーティングシステムプログラムプロシージャの一連の起動における1回の起動である、ことと、
前記メッセージの少なくとも一部に基づいて、起動ハッシュを生成することと、
前記起動ハッシュを起動識別子に変換することと、
前記一連の起動のための起動識別子を備えている変換された呼び出しシーケンスに前記起動識別子を含むことと、
前記変換された呼び出しシーケンスが、複数の事前決定された呼び出しシーケンスに含まれているかどうかを決定することであって、前記事前決定された呼び出しシーケンスの各々は、対応する起動識別子を備え、前記対応する起動識別子の各々は、起動ハッシュにマッピングされる、ことと、
前記変換された呼び出しシーケンスが前記事前決定された呼び出しシーケンスに含まれていない場合、前記変換された呼び出しシーケンスを異常として識別し、そうでなければ、前記変換された呼び出しシーケンスが異常ではないと決定することと
を行うように構成されている、システム。
(項目14)
前記プロセッサは、少なくとも前記受信側プロセス識別子に基づいて、前記起動ハッシュを生成するように構成されている、項目13に記載のシステム。
(項目15)
前記プロセッサは、少なくとも前記送信側プロセス識別子および前記受信側プロセス識別子に基づいて、前記起動ハッシュを生成するように構成されている、項目13または項目14に記載のシステム。
(項目16)
前記メッセージは、前記プログラムプロシージャ識別子、前記送信側プロセス識別子、前記受信側プロセス識別子、チャネル識別子、受信側ノード識別子、前記プログラムプロシージャのパラメータ、および/または前記プログラムプロシージャに渡される前記パラメータの指示を備えている、項目13−15のうちのいずれか1項に記載のシステム。
(項目17)
前記プロセッサは、前記プログラムプロシージャ識別子、前記送信側プロセス識別子、前記受信側プロセス識別子、前記チャネル識別子、前記受信側ノード識別子、前記プログラムプロシージャのパラメータ、および/または前記プログラムプロシージャに渡されるパラメータの指示のうちの少なくとも1つに基づいて、前記起動ハッシュを生成するように構成されている、項目16に記載のシステム。
(項目18)
前記プロセッサは、異常としての前記変換された呼び出しシーケンスの識別に応答して、セキュリティレベルを変更するように構成されている、項目13−17のうちのいずれか1項に記載のシステム。
(項目19)
前記プロセッサは、異常としての前記変換された呼び出しシーケンスの前記識別がある閾値数の異常を超えているという決定に応答して、前記セキュリティレベルを変更するように構成されている、項目18に記載のシステム。
1. メッセージベースのオペレーティングシステムにおける呼び出しシーケンス異常を検出する方法であって、方法は、
オペレーティングシステムのプログラムプロシージャの起動を示すメッセージを受信することであって、メッセージは、プログラムプロシージャ識別子と、送信側プロセス識別子と、受信側プロセス識別子とを含み、プログラムプロシージャの起動は、送信側プロセス識別子によって識別されるプロセスから生じるオペレーティングシステムプログラムプロシージャの一連の起動における1回の起動である、ことと、
少なくともプログラムプロシージャ識別子および受信側プロセス識別子に基づいて、起動ハッシュを生成することと、
起動ハッシュを起動識別子に変換することと、
一連の起動のための起動識別子を備えている変換された呼び出しシーケンスに起動識別子を含むことと、
変換された呼び出しシーケンスが、複数の事前決定された呼び出しシーケンスに含まれているかどうかを決定することであって、事前決定された呼び出しシーケンスの各々は、対応する起動識別子を備え、対応する起動識別子の各々は、起動ハッシュにマッピングされる、ことと、
変換された呼び出しシーケンスが事前決定された呼び出しシーケンスに含まれていない場合、変換された呼び出しシーケンスを異常として識別し、そうでなければ、変換された呼び出しシーケンスが異常ではないと決定することと
を含む、方法。
2. 起動ハッシュは、送信側プロセス識別子にも基づく、側面1に記載の方法。
3. メッセージは、プログラムプロシージャに渡されるパラメータの指示を含み、起動ハッシュは、プログラムプロシージャに渡されるパラメータの指示にも基づく、側面1−2のいずれかに記載の方法。
4. メッセージは、チャネル識別子を含み、起動ハッシュは、チャネル識別子にも基づく、側面1−3のいずれかに記載の方法。
5. メッセージは、受信側ノード識別子を含み、起動ハッシュは、受信側ノード識別子にも基づく、側面1−4のいずれかに記載の方法。
6. 起動ハッシュを変換することは、起動識別子に関連付けられた起動ハッシュを備えている変換テーブルにおいて起動ハッシュに対して検索することを含む、側面1−5のいずれかに記載の方法。
7. 起動識別子は、起動ハッシュを含む変換テーブルにおける行番号である、側面6に記載の方法。
8. コンピュータ実行可能命令を備えている非一過性コンピュータ読み取り可能な記憶媒体であって、コンピュータ実行可能命令は、プロセッサによって実行可能であり、コンピュータ実行可能命令は、
オペレーティングシステムのプログラムプロシージャの起動を示すメッセージを受信するために実行可能な命令であって、メッセージは、プログラムプロシージャ識別子と、送信側プロセス識別子と、受信側プロセス識別子とを含み、プログラムプロシージャの起動は、送信側プロセス識別子によって識別されるプロセスから生じるオペレーティングシステムプログラムプロシージャの一連の起動における1回の起動である、命令と、
メッセージの少なくとも一部に基づいて、起動ハッシュを生成するために実行可能な命令と、
起動ハッシュを起動識別子に変換するために実行可能な命令と、
一連の起動のための起動識別子を備えている変換された呼び出しシーケンスに起動識別子を含むために実行可能な命令と、
変換された呼び出しシーケンスが、複数の事前決定された呼び出しシーケンスに含まれているかどうかを決定するために実行可能な命令であって、事前決定された呼び出しシーケンスの各々は、対応する起動識別子を備え、対応する起動識別子の各々は、起動ハッシュにマッピングされる、命令と、
変換された呼び出しシーケンスが事前決定された呼び出しシーケンスに含まれていない場合、変換された呼び出しシーケンスを異常として識別し、そうでなければ、変換された呼び出しシーケンスが異常ではないと決定するために実行可能な命令と
を備えている、非一過性コンピュータ読み取り可能な記憶媒体。
9. 変換された呼び出しシーケンスが、事前決定された呼び出しシーケンスに含まれているかどうかの決定は、テーブルにおいて変換された呼び出しシーケンスに対する検索に基づき、テーブルは、起動識別子の組の行を備え、起動識別子の各々は、変換データ構造において対応する起動ハッシュに関連付けられている、側面8に記載の非一過性コンピュータ読み取り可能な記憶媒体。
10. メッセージの受信は、トレースファイルからのプログラムプロシージャの起動についての情報の読み取りを備えている、側面8−9のいずれかに記載の非一過性コンピュータ読み取り可能な記憶媒体。
11. メッセージの受信は、オペレーティングシステムからの登録されたコールバックの形態におけるメッセージの受信を備えている、側面8−10のいずれかに記載の非一過性コンピュータ読み取り可能な記憶媒体。
12. 起動ハッシュの生成は、恣意的サイズのデータを固定サイズのデータにマッピングするハッシュ関数の適用を備え、ハッシュ関数は、プログラムプロシージャ識別子と、送信側プロセス識別子と、受信側プロセス識別子とを備えているデータに適用される、側面8−11のいずれかに記載の非一過性コンピュータ読み取り可能な記憶媒体。
13. メッセージベースのオペレーティングシステムにおける呼び出しシーケンス異常を検出するためのシステムであって、プロセッサを備え、
プロセッサは、
オペレーティングシステムのプログラムプロシージャの起動を示すメッセージを受信することであって、メッセージは、プログラムプロシージャ識別子と、送信側プロセス識別子と、受信側プロセス識別子とを含み、プログラムプロシージャの起動は、送信側プロセス識別子によって識別されるプロセスから生じるオペレーティングシステムプログラムプロシージャの一連の起動における1回の起動である、ことと、
メッセージの少なくとも一部に基づいて、起動ハッシュを生成することと、
起動ハッシュを起動識別子に変換することと、
一連の起動のための起動識別子を備えている変換された呼び出しシーケンスに起動識別子を含むことと、
変換された呼び出しシーケンスが、複数の事前決定された呼び出しシーケンスに含まれているかどうかを決定し、事前決定された呼び出しシーケンスの各々は、対応する起動識別子を備え、対応する起動識別子の各々は、起動ハッシュにマッピングされる、ことと、
変換された呼び出しシーケンスが事前決定された呼び出しシーケンスに含まれていない場合、変換された呼び出しシーケンスを異常として識別し、そうでなければ、変換された呼び出しシーケンスが異常ではないと決定することと
を行うように構成されている、システム。
14. プロセッサは、少なくとも受信側プロセス識別子に基づいて、起動ハッシュを生成するように構成されている、側面13に記載のシステム。
15. プロセッサは、少なくとも送信側プロセス識別子および受信側プロセス識別子に基づいて、起動ハッシュを生成するように構成されている、側面13−14のいずれかに記載のシステム。
16. メッセージは、プログラムプロシージャ識別子、送信側プロセス識別子、受信側プロセス識別子、チャネル識別子、受信側ノード識別子、プログラムプロシージャのパラメータ、および/またはプログラムプロシージャに渡されるパラメータの指示を備えている、側面13−15のいずれかに記載のシステム。
17. プロセッサは、プログラムプロシージャ識別子、送信側プロセス識別子、受信側プロセス識別子、チャネル識別子、受信側ノード識別子、プログラムプロシージャのパラメータ、および/またはプログラムプロシージャに渡されるパラメータの指示のうちの少なくとも1つに基づいて、起動ハッシュを生成するように構成されている、側面13−16のいずれかに記載のシステム。
18. プロセッサは、異常としての変換された呼び出しシーケンスの識別に応答して、セキュリティレベルを変更するように構成されている、側面13−17のいずれかに記載のシステム。
19. プロセッサは、異常としての変換された呼び出しシーケンスの識別がある閾値数の異常を超えているという決定に応答して、セキュリティレベルを変更するように構成されている、側面18に記載のシステム。
Claims (20)
- 呼び出しシーケンス異常を検出するためのシステムを動作させる方法であって、前記システムは、プロセッサを備え、前記方法は、
前記プロセッサが、オペレーティングシステムのプログラムプロシージャの起動を示すメッセージを受信することであって、前記メッセージは、プログラムプロシージャ識別子と、送信側プロセス識別子と、受信側プロセス識別子とを含み、前記プログラムプロシージャの前記起動は、前記送信側プロセス識別子によって識別されるプロセスから生じるオペレーティングシステムプログラムプロシージャの一連の起動における1回の起動である、ことと、
前記プロセッサが、前記メッセージの少なくとも一部に基づいて、起動ハッシュを生成することと、
前記プロセッサが、前記起動ハッシュを起動識別子に変換することと、
前記プロセッサが、前記一連の起動のための起動識別子を備えている変換された呼び出しシーケンスに前記起動識別子を含むことと、
前記プロセッサが、前記変換された呼び出しシーケンスが、複数の事前決定された呼び出しシーケンスに含まれているかどうかを決定することであって、前記事前決定された呼び出しシーケンスの各々は、対応する起動識別子を備え、前記対応する起動識別子の各々は、起動ハッシュにマッピングされる、ことと、
前記変換された呼び出しシーケンスが前記事前決定された呼び出しシーケンスに含まれていない場合、前記プロセッサが、前記変換された呼び出しシーケンスを異常として識別し、そうでなければ、前記変換された呼び出しシーケンスが異常ではないと決定することと
を含む、方法。 - 前記起動ハッシュは、少なくとも前記受信側プロセス識別子に基づく、請求項1に記載の方法。
- 前記起動ハッシュは、少なくとも前記送信側プロセス識別子と前記受信側プロセス識別子とに基づく、請求項1に記載の方法。
- 前記メッセージは、前記プログラムプロシージャに渡されるパラメータの指示を含み、前記起動ハッシュは、前記プログラムプロシージャに渡されるパラメータの指示にも基づく、請求項1〜3のうちのいずれか1項に記載の方法。
- 前記メッセージは、チャネル識別子を含み、前記起動ハッシュは、前記チャネル識別子にも基づく、請求項1〜4のうちのいずれか1項に記載の方法。
- 前記メッセージは、受信側ノード識別子を含み、前記起動ハッシュは、前記受信側ノード識別子にも基づく、請求項1〜5のうちのいずれか1項に記載の方法。
- 前記プロセッサが、前記起動ハッシュを変換することは、前記プロセッサが、前記起動識別子に関連付けられた起動ハッシュを備えている変換テーブルにおいて前記起動ハッシュに対して検索することを含む、請求項1〜6のうちのいずれか1項に記載の方法。
- 前記起動識別子は、前記起動ハッシュを含む前記変換テーブルにおける行番号である、請求項7に記載の方法。
- コンピュータ実行可能命令を備えているコンピュータ読み取り可能な記憶媒体であって、前記コンピュータ実行可能命令は、プロセッサによって実行可能であり、前記コンピュータ実行可能命令は、
オペレーティングシステムのプログラムプロシージャの起動を示すメッセージを受信するために実行可能な命令であって、前記メッセージは、プログラムプロシージャ識別子と、送信側プロセス識別子と、受信側プロセス識別子とを含み、前記プログラムプロシージャの前記起動は、前記送信側プロセス識別子によって識別されるプロセスから生じるオペレーティングシステムプログラムプロシージャの一連の起動における1回の起動である、命令と、
前記メッセージの少なくとも一部に基づいて、起動ハッシュを生成するために実行可能な命令と、
前記起動ハッシュを起動識別子に変換するために実行可能な命令と、
前記一連の起動のための起動識別子を備えている変換された呼び出しシーケンスに前記起動識別子を含むために実行可能な命令と、
前記変換された呼び出しシーケンスが、複数の事前決定された呼び出しシーケンスに含まれているかどうかを決定するために実行可能な命令であって、前記事前決定された呼び出しシーケンスの各々は、対応する起動識別子を備え、前記対応する起動識別子の各々は、起動ハッシュにマッピングされる、命令と、
前記変換された呼び出しシーケンスが前記事前決定された呼び出しシーケンスに含まれていない場合、前記変換された呼び出しシーケンスを異常として識別し、そうでなければ、前記変換された呼び出しシーケンスが異常ではないと決定するために実行可能な命令と
を備えている、コンピュータ読み取り可能な記憶媒体。 - 前記変換された呼び出しシーケンスが、前記事前決定された呼び出しシーケンスに含まれているかどうかの決定は、テーブルにおける前記変換された呼び出しシーケンスに対する検索に基づき、前記テーブルは、起動識別子の組の行を備え、前記起動識別子の各々は、変換データ構造において対応する起動ハッシュに関連付けられている、請求項9に記載のコンピュータ読み取り可能な記憶媒体。
- 前記メッセージの受信は、トレースファイルからの前記プログラムプロシージャの前記起動についての情報の読み取りを含む、請求項9または請求項10に記載のコンピュータ読み取り可能な記憶媒体。
- 前記メッセージの受信は、前記オペレーティングシステムからの登録されたコールバックの形態における前記メッセージの受信を含む、請求項9〜11のうちのいずれか1項に記載のコンピュータ読み取り可能な記憶媒体。
- 前記起動ハッシュの生成は、恣意的サイズのデータを固定サイズのデータにマッピングするハッシュ関数の適用を含み、前記ハッシュ関数は、前記プログラムプロシージャ識別子と、前記送信側プロセス識別子と、前記受信側プロセス識別子とを含むデータに適用される、請求項9〜12のうちのいずれか1項に記載のコンピュータ読み取り可能な記憶媒体。
- 呼び出しシーケンス異常を検出するためのシステムであって、前記システムは、プロセッサを備え、
前記プロセッサは、
オペレーティングシステムのプログラムプロシージャの起動を示すメッセージを受信することであって、前記メッセージは、プログラムプロシージャ識別子と、送信側プロセス識別子と、受信側プロセス識別子とを含み、前記プログラムプロシージャの前記起動は、前記送信側プロセス識別子によって識別されるプロセスから生じるオペレーティングシステムプログラムプロシージャの一連の起動における1回の起動である、ことと、
前記メッセージの少なくとも一部に基づいて、起動ハッシュを生成することと、
前記起動ハッシュを起動識別子に変換することと、
前記一連の起動のための起動識別子を備えている変換された呼び出しシーケンスに前記起動識別子を含むことと、
前記変換された呼び出しシーケンスが、複数の事前決定された呼び出しシーケンスに含まれているかどうかを決定することであって、前記事前決定された呼び出しシーケンスの各々は、対応する起動識別子を備え、前記対応する起動識別子の各々は、起動ハッシュにマッピングされる、ことと、
前記変換された呼び出しシーケンスが前記事前決定された呼び出しシーケンスに含まれていない場合、前記変換された呼び出しシーケンスを異常として識別し、そうでなければ、前記変換された呼び出しシーケンスが異常ではないと決定することと
を行うように構成されている、システム。 - 前記プロセッサは、少なくとも前記受信側プロセス識別子に基づいて、前記起動ハッシュを生成するように構成されている、請求項14に記載のシステム。
- 前記プロセッサは、少なくとも前記送信側プロセス識別子および前記受信側プロセス識別子に基づいて、前記起動ハッシュを生成するように構成されている、請求項14または請求項15に記載のシステム。
- 前記メッセージは、前記プログラムプロシージャ識別子、前記送信側プロセス識別子、前記受信側プロセス識別子、チャネル識別子、受信側ノード識別子、前記プログラムプロシージャのパラメータ、および/または前記プログラムプロシージャに渡される前記パラメータの指示を備えている、請求項14〜16のうちのいずれか1項に記載のシステム。
- 前記プロセッサは、前記プログラムプロシージャ識別子、前記送信側プロセス識別子、前記受信側プロセス識別子、前記チャネル識別子、前記受信側ノード識別子、前記プログラムプロシージャのパラメータ、および/または前記プログラムプロシージャに渡されるパラメータの指示のうちの少なくとも1つに基づいて、前記起動ハッシュを生成するように構成されている、請求項17に記載のシステム。
- 前記プロセッサは、異常としての前記変換された呼び出しシーケンスの識別に応答して、セキュリティレベルを変更するように構成されている、請求項14〜18のうちのいずれか1項に記載のシステム。
- 前記プロセッサは、異常としての前記変換された呼び出しシーケンスの前記識別がある閾値数の異常を超えているという決定に応答して、前記セキュリティレベルを変更するように構成されている、請求項19に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/213,874 US10241847B2 (en) | 2016-07-19 | 2016-07-19 | Anomaly detection using sequences of system calls |
US15/213,874 | 2016-07-19 | ||
PCT/CA2017/050869 WO2018014129A1 (en) | 2016-07-19 | 2017-07-19 | Anomaly detection using sequences of system calls |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019527429A JP2019527429A (ja) | 2019-09-26 |
JP6968145B2 true JP6968145B2 (ja) | 2021-11-17 |
Family
ID=60988032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019502667A Active JP6968145B2 (ja) | 2016-07-19 | 2017-07-19 | システム呼び出しのシーケンスを用いた異常検出 |
Country Status (7)
Country | Link |
---|---|
US (2) | US10241847B2 (ja) |
EP (1) | EP3488346B1 (ja) |
JP (1) | JP6968145B2 (ja) |
KR (1) | KR102408847B1 (ja) |
CN (1) | CN109661652B (ja) |
CA (1) | CA3030927A1 (ja) |
WO (1) | WO2018014129A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10241847B2 (en) * | 2016-07-19 | 2019-03-26 | 2236008 Ontario Inc. | Anomaly detection using sequences of system calls |
US10891370B2 (en) * | 2016-11-23 | 2021-01-12 | Blackberry Limited | Path-based access control for message-based operating systems |
US10599845B2 (en) * | 2016-12-13 | 2020-03-24 | Npcore, Inc. | Malicious code deactivating apparatus and method of operating the same |
US11144375B2 (en) | 2018-10-09 | 2021-10-12 | Argo AI, LLC | Execution sequence integrity parameter monitoring system |
US11138085B2 (en) | 2018-10-09 | 2021-10-05 | Argo AI, LLC | Execution sequence integrity monitoring system |
CN111506513B (zh) * | 2020-06-04 | 2021-06-22 | 南京大学 | 一种基于层次化模型的文件系统测试方法 |
CN112231174B (zh) * | 2020-09-30 | 2024-02-23 | 中国银联股份有限公司 | 异常告警方法、装置、设备及存储介质 |
US11789743B2 (en) * | 2021-01-15 | 2023-10-17 | Tenable, Inc. | Host operating system identification using transport layer probe metadata and machine learning |
Family Cites Families (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2136367A1 (en) * | 1993-12-20 | 1995-06-21 | John Scott Anderson | Dynamically specifying invocations in compiled objects |
JP3985461B2 (ja) | 2000-05-02 | 2007-10-03 | 日本ビクター株式会社 | 認証方法、コンテンツ送信側機器、コンテンツ受信側機器、認証システム |
US6735703B1 (en) * | 2000-05-08 | 2004-05-11 | Networks Associates Technology, Inc. | Multi-platform sequence-based anomaly detection wrapper |
US6742124B1 (en) * | 2000-05-08 | 2004-05-25 | Networks Associates Technology, Inc. | Sequence-based anomaly detection using a distance matrix |
US20040073617A1 (en) | 2000-06-19 | 2004-04-15 | Milliken Walter Clark | Hash-based systems and methods for detecting and preventing transmission of unwanted e-mail |
US7162741B2 (en) * | 2001-07-30 | 2007-01-09 | The Trustees Of Columbia University In The City Of New York | System and methods for intrusion detection with dynamic window sizes |
WO2004059961A1 (en) * | 2002-12-26 | 2004-07-15 | Oki Electric Industry Co., Ltd. | Voice communications system |
WO2005059720A1 (en) * | 2003-12-17 | 2005-06-30 | Telecom Italia S.P.A. | Method and apparatus for monitoring operation of processing systems, related network and computer program product therefor |
US20050229250A1 (en) * | 2004-02-26 | 2005-10-13 | Ring Sandra E | Methodology, system, computer readable medium, and product providing a security software suite for handling operating system exploitations |
US7900194B1 (en) | 2004-03-25 | 2011-03-01 | Verizon Corporate Services Group Inc. | Kernel-based intrusion detection using bloom filters |
US20060190218A1 (en) * | 2005-02-22 | 2006-08-24 | Agrawal Subhash C | Generative instrumentation framework |
US7954112B2 (en) * | 2005-05-20 | 2011-05-31 | Microsoft Corporation | Automatic recovery from failures of messages within a data interchange |
US8544058B2 (en) * | 2005-12-29 | 2013-09-24 | Nextlabs, Inc. | Techniques of transforming policies to enforce control in an information management system |
WO2007120360A2 (en) * | 2005-12-29 | 2007-10-25 | Blue Jungle | Information management system |
US7716240B2 (en) * | 2005-12-29 | 2010-05-11 | Nextlabs, Inc. | Techniques and system to deploy policies intelligently |
EP1999925B1 (en) * | 2006-03-27 | 2011-07-06 | Telecom Italia S.p.A. | A method and system for identifying malicious messages in mobile communication networks, related network and computer program product therefor |
JP4749915B2 (ja) * | 2006-03-31 | 2011-08-17 | 株式会社日立製作所 | Sip交換システム |
JP5090661B2 (ja) * | 2006-04-12 | 2012-12-05 | 株式会社エヌ・ティ・ティ・ドコモ | ソフトウェア動作モデル化装置、ソフトウェア動作監視装置、ソフトウェア動作モデル化方法及びソフトウェア動作監視方法 |
WO2008055156A2 (en) * | 2006-10-30 | 2008-05-08 | The Trustees Of Columbia University In The City Of New York | Methods, media, and systems for detecting an anomalous sequence of function calls |
JP4938576B2 (ja) * | 2007-07-24 | 2012-05-23 | 日本電信電話株式会社 | 情報収集システムおよび情報収集方法 |
US9240945B2 (en) | 2008-03-19 | 2016-01-19 | Citrix Systems, Inc. | Access, priority and bandwidth management based on application identity |
JP5191043B2 (ja) * | 2008-04-21 | 2013-04-24 | 学校法人東京電機大学 | プログラムの不正起動防止システム及び方法 |
CN102301374B (zh) | 2009-02-16 | 2014-06-25 | 松下电器产业株式会社 | 非法模块确定装置、信息处理装置、非法模块确定方法、非法模块无效化系统及非法模块无效化方法 |
WO2011149552A1 (en) * | 2010-05-28 | 2011-12-01 | The Mathworks, Inc. | Message-based modeling |
JP2011258019A (ja) * | 2010-06-09 | 2011-12-22 | Nippon Telegr & Teleph Corp <Ntt> | 異常検知装置、異常検知プログラムおよび異常検知方法 |
US20140281539A1 (en) * | 2012-03-30 | 2014-09-18 | Goldman, Sachs & Co. | Secure Mobile Framework With Operating System Integrity Checking |
US8931101B2 (en) * | 2012-11-14 | 2015-01-06 | International Business Machines Corporation | Application-level anomaly detection |
US9146787B2 (en) * | 2013-11-07 | 2015-09-29 | Accenture Global Services Limited | Analytics for application programming interfaces |
CN104751053A (zh) * | 2013-12-30 | 2015-07-01 | 南京理工大学常熟研究院有限公司 | 移动智能终端软件的静态行为分析方法 |
CN104751055B (zh) * | 2013-12-31 | 2017-11-03 | 北京启明星辰信息安全技术有限公司 | 一种基于纹理的分布式恶意代码检测方法、装置及系统 |
US10074374B2 (en) * | 2014-04-07 | 2018-09-11 | Barco N.V. | Ad hoc one-time pairing of remote devices using online audio fingerprinting |
US10348724B2 (en) * | 2014-04-07 | 2019-07-09 | Barco N.V. | Ad hoc one-time pairing of remote devices using online audio fingerprinting |
US9832213B2 (en) * | 2014-10-31 | 2017-11-28 | Cyber Crucible Inc. | System and method for network intrusion detection of covert channels based on off-line network traffic |
US10372906B2 (en) * | 2015-02-17 | 2019-08-06 | International Business Machines Corporation | Behavioral model based on short and long range event correlations in system traces |
US20160342453A1 (en) * | 2015-05-20 | 2016-11-24 | Wanclouds, Inc. | System and methods for anomaly detection |
US10536357B2 (en) * | 2015-06-05 | 2020-01-14 | Cisco Technology, Inc. | Late data detection in data center |
US9699205B2 (en) * | 2015-08-31 | 2017-07-04 | Splunk Inc. | Network security system |
JP5933797B1 (ja) * | 2015-10-07 | 2016-06-15 | 株式会社ソリトンシステムズ | ログ情報生成装置及びプログラム並びにログ情報抽出装置及びプログラム |
US9817971B2 (en) * | 2015-10-29 | 2017-11-14 | International Business Machines Corporation | Using call stack snapshots to detect anomalous computer behavior |
US9892253B1 (en) * | 2016-06-20 | 2018-02-13 | Amazon Technologies, Inc. | Buffer overflow exploit detection |
US10241847B2 (en) | 2016-07-19 | 2019-03-26 | 2236008 Ontario Inc. | Anomaly detection using sequences of system calls |
-
2016
- 2016-07-19 US US15/213,874 patent/US10241847B2/en active Active
-
2017
- 2017-07-19 EP EP17830152.9A patent/EP3488346B1/en active Active
- 2017-07-19 KR KR1020197004735A patent/KR102408847B1/ko active IP Right Grant
- 2017-07-19 WO PCT/CA2017/050869 patent/WO2018014129A1/en unknown
- 2017-07-19 JP JP2019502667A patent/JP6968145B2/ja active Active
- 2017-07-19 CN CN201780054298.6A patent/CN109661652B/zh active Active
- 2017-07-19 CA CA3030927A patent/CA3030927A1/en active Pending
-
2019
- 2019-03-25 US US16/363,150 patent/US10656981B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20190220334A1 (en) | 2019-07-18 |
CN109661652A (zh) | 2019-04-19 |
US10241847B2 (en) | 2019-03-26 |
KR20190030728A (ko) | 2019-03-22 |
WO2018014129A1 (en) | 2018-01-25 |
US10656981B2 (en) | 2020-05-19 |
CN109661652B (zh) | 2023-09-01 |
CA3030927A1 (en) | 2018-01-25 |
JP2019527429A (ja) | 2019-09-26 |
KR102408847B1 (ko) | 2022-06-13 |
US20180024874A1 (en) | 2018-01-25 |
EP3488346B1 (en) | 2024-01-24 |
EP3488346A4 (en) | 2019-12-11 |
EP3488346A1 (en) | 2019-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6968145B2 (ja) | システム呼び出しのシーケンスを用いた異常検出 | |
EP3547170B1 (en) | Blockchain-based consensus method and device | |
US10599662B2 (en) | Query engine for remote endpoint information retrieval | |
US9823942B2 (en) | Virtual machine discovery and identification | |
US12003527B2 (en) | Automatically detecting vulnerability regressions | |
CN110232279A (zh) | 一种漏洞检测方法及装置 | |
JP2017191604A (ja) | エクスプロイトアクティビティーの相関ベースの検知 | |
US11251976B2 (en) | Data security processing method and terminal thereof, and server | |
US10394820B2 (en) | Constructing and querying a bloom filter to detect the absence of data from one or more endpoints | |
JP2017068691A (ja) | 診断プログラム、診断方法および診断装置 | |
GB2589790A (en) | Security of server hosting remote application | |
AU2016253706B2 (en) | Data structure and algorithm to track machines | |
CN107635002A (zh) | 一种容器化应用的访问方法及装置 | |
JP2021077373A (ja) | 脅威検出方法及びコンピュータ装置 | |
JP6821089B2 (ja) | ホストシステム内の同じ場所にあるコンテナの監視 | |
WO2017099066A1 (ja) | 診断装置、診断方法、及び、診断プログラムが記録された記録媒体 | |
WO2017099062A1 (ja) | 診断装置、診断方法、及び、診断プログラムが記録された記録媒体 | |
WO2015116195A1 (en) | Performing processing tasks using an auxiliary processing unit | |
US20240289464A1 (en) | Techniques for the unification of raw cyber data collected from different sources for vulnerability management | |
CN111476663B (zh) | 一种数据处理方法、装置、节点设备及存储介质 | |
US20240289435A1 (en) | Techniques for the execution of workflows on uber objects and compact representation in storage thereof | |
CN117494115A (zh) | 容器环境下的反弹shell检测方法、装置、设备和介质 | |
JP6749508B2 (ja) | 攻撃検知装置 | |
JP2009080753A (ja) | 異常検知システム及び異常検知プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190319 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200612 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20200622 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210528 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210602 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210901 |
|
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: 20210928 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211026 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6968145 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |