JP5389733B2 - 抽出装置及び抽出方法 - Google Patents
抽出装置及び抽出方法 Download PDFInfo
- Publication number
- JP5389733B2 JP5389733B2 JP2010117640A JP2010117640A JP5389733B2 JP 5389733 B2 JP5389733 B2 JP 5389733B2 JP 2010117640 A JP2010117640 A JP 2010117640A JP 2010117640 A JP2010117640 A JP 2010117640A JP 5389733 B2 JP5389733 B2 JP 5389733B2
- Authority
- JP
- Japan
- Prior art keywords
- memory access
- extraction
- tendency
- original code
- candidate
- 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
Description
最初に、図1を用いて、実施例1に係る抽出装置の構成を説明する。図1は、実施例1に係る抽出装置の構成例を示す図である。
次に、図2を用いて、実施例1に係る抽出装置100を含むシステムの全体像を説明する。図2は、実施例1に係る抽出装置100を含むシステムの全体像の例を示す図である。
次に、図3を用いて、実施例1に係る抽出装置100による全体処理の流れを説明する。図3は、実施例1に係る抽出装置100による全体処理の流れの例を示すフローチャートである。
次に、図4を用いて、実施例1に係るメモリアクセス傾向抽出処理の流れを説明する。図4は、実施例1に係るメモリアクセス傾向抽出処理の流れの例を示すフローチャートである。なお、メモリアクセス傾向抽出処理とは、主にメモリアクセス傾向抽出部113による処理を指す。また、図4では、メモリアクセスのうち、読み込みに係るメモリアクセスの傾向抽出について説明する。
上述したように、抽出装置100は、マルウェアを実行させて得られるオリジナルコード候補を抽出し、抽出された時点の前後一定期間におけるプロセスでのメモリアクセス情報からメモリアクセスの傾向を抽出し、メモリアクセスの傾向が大きく変化しているものに該当するオリジナルコード候補をオリジナルコードとして抽出するので、高精度にオリジナルコードを抽出することができる。
図5を用いて、実施例2に係る抽出装置の構成を説明する。図5は、実施例2に係る抽出装置の構成例を示す図である。なお、図5では、実施例1に係る抽出装置100と同様の構成や機能を有するブロックについては同一の符号を付している。以下では、実施例1に係る抽出装置100と同一の処理についてはその説明を省略し、特に、判定部214の処理について説明する。
次に、図6を用いて、実施例2に係る判定処理の流れを説明する。図6は、実施例2に係る判定処理の流れの例を示すフローチャートである。なお、判定処理とは、主に判定部214による処理を指す。
上述したように、抽出装置200は、メモリアクセスの変化の大きいオリジナルコード候補のうち、メモリアクセスにおいて同一のダンプポイントがあれば該当するオリジナルコード候補をオリジナルコードとして決定し、同一のダンプポイントがなければ最も変化の大きいオリジナルコード候補をオリジナルコードとして決定するので、より高精度にオリジナルコードを抽出することができる。
上記実施例では、所定条件に係る処理、すなわちメモリアクセスの傾向が所定閾値以上変化しているか否か、或いは、最も大きく変化しているか否かの判定について、メモリアクセス傾向抽出部113で処理する場合を説明したが、これらの処理を判定部214で実施することにしても良い。例えば、メモリアクセス傾向抽出部113は、ダンプファイル情報とメモリアクセス情報とに基づき変化率等のメモリアクセスの傾向を抽出し、判定部214は、メモリアクセスの傾向について所定条件を満たすか否かを判定し、所定条件を満たすものについて、メモリアクセスのうち複数で同一のダンプポイントを有するか否かを判定し、オリジナルコード候補からオリジナルコードを決定する。
なお、上記文書中や図面中などで示した処理手順、制御手順、具体的名称、各種のデータやパラメタなどを含む情報(例えば、メモリアクセスの種類等)については、特記する場合を除いて任意に変更することができる。
111 メモリダンプ抽出部
112 メモリアクセス情報取得部
113 メモリアクセス傾向抽出部
214 判定部
Claims (7)
- パッキングされたプログラムからオリジナルコードを抽出する抽出装置であって、
前記プログラムを実行させ、前記オリジナルコードの候補を抽出する候補抽出手段と、
前記プログラムを実行するプロセスによるメモリアクセスに関する情報であって、前記候補抽出手段によって抽出された時点の前後一定期間におけるメモリアクセス情報を取得する取得手段と、
前記候補抽出手段によって抽出されたオリジナルコード候補の情報と、前記取得手段によって取得されたメモリアクセス情報とに基づいてメモリアクセスの傾向を抽出し、抽出されたメモリアクセスの傾向について、所定条件を満たすか否かを判定する傾向抽出手段と
を有することを特徴とする抽出装置。 - 前記傾向抽出手段は、前記オリジナルコード候補の情報と、前記メモリアクセス情報とに基づいて、アクセスされたアドレスの範囲の平均値を求め、該平均値をメモリアクセスの傾向として抽出することを特徴とする請求項1に記載の抽出装置。
- 前記傾向抽出手段は、前記メモリアクセスの傾向について、前記候補抽出手段によって抽出された時点の前後で所定閾値以上変化しているか否かを判定することを特徴とする請求項1又は2に記載の抽出装置。
- 前記傾向抽出手段は、前記メモリアクセスの傾向について、前記候補抽出手段によって抽出された時点の前後で最も大きく変化しているか否かを判定することを特徴とする請求項1又は2に記載の抽出装置。
- 前記傾向抽出手段による判定の結果、所定条件を満たすものについて、前記候補抽出手段による抽出時点が複数のメモリアクセスのうち少なくとも2つで一致する場合に、一致した抽出時点でのオリジナルコード候補をオリジナルコードとして判定し、前記候補抽出手段による抽出時点が複数のメモリアクセスで全て一致しない場合に、メモリアクセスの傾向について最も大きな変化を有するオリジナルコード候補をオリジナルコードとして判定する判定手段をさらに有することを特徴とする請求項1〜4のいずれか一つに記載の抽出装置。
- 前記取得手段は、メモリに対する読み込み、書き込み及び命令フェッチのメモリアクセス情報を取得することを特徴とする請求項1に記載の抽出装置。
- パッキングされたプログラムからオリジナルコードを抽出する抽出方法であって、
前記プログラムを実行させ、前記オリジナルコードの候補を抽出する候補抽出工程と、
前記プログラムを実行するプロセスによるメモリアクセスに関する情報であって、前記候補抽出工程によって抽出された時点の前後一定期間におけるメモリアクセス情報を取得する取得工程と、
前記候補抽出工程によって抽出されたオリジナルコード候補の情報と、前記取得工程によって取得されたメモリアクセス情報とに基づいてメモリアクセスの傾向を抽出し、抽出されたメモリアクセスの傾向について、所定条件を満たすか否かを判定する傾向抽出工程と
を含んだことを特徴とする抽出方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010117640A JP5389733B2 (ja) | 2010-05-21 | 2010-05-21 | 抽出装置及び抽出方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010117640A JP5389733B2 (ja) | 2010-05-21 | 2010-05-21 | 抽出装置及び抽出方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011248405A JP2011248405A (ja) | 2011-12-08 |
JP5389733B2 true JP5389733B2 (ja) | 2014-01-15 |
Family
ID=45413635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010117640A Active JP5389733B2 (ja) | 2010-05-21 | 2010-05-21 | 抽出装置及び抽出方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5389733B2 (ja) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5083760B2 (ja) * | 2007-08-03 | 2012-11-28 | 独立行政法人情報通信研究機構 | マルウェアの類似性検査方法及び装置 |
JP5133192B2 (ja) * | 2008-10-06 | 2013-01-30 | 日本電信電話株式会社 | オリジナルコードの抽出装置、抽出方法、および抽出プログラム |
-
2010
- 2010-05-21 JP JP2010117640A patent/JP5389733B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011248405A (ja) | 2011-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6494744B2 (ja) | リターン指向プログラミング攻撃の透過的な検出及び抽出 | |
US7814544B1 (en) | API-profile guided unpacking | |
KR102317833B1 (ko) | 악성 코드 탐지 모델 학습 방법 및 이를 이용한 탐지 방법 | |
JP6170900B2 (ja) | ファイル処理方法及び装置 | |
US10691791B2 (en) | Automatic unpacking of executables | |
US10311233B2 (en) | Generic unpacking of program binaries | |
US8775826B2 (en) | Counteracting memory tracing on computing systems by code obfuscation | |
US20160224791A1 (en) | Process testing apparatus, process testing program, and process testing method | |
EP3570196B1 (en) | Imparting device, imparting method, and imparting program | |
JP5441043B2 (ja) | プログラム、情報処理装置、及び情報処理方法 | |
JP5456715B2 (ja) | データ特定装置、データ特定方法及びデータ特定プログラム | |
JP5952218B2 (ja) | 情報処理装置および情報処理方法 | |
EP4332805A1 (en) | Emulation-based malware detection | |
JP5389734B2 (ja) | 抽出装置及び抽出方法 | |
JP5389733B2 (ja) | 抽出装置及び抽出方法 | |
KR101052735B1 (ko) | 메모리 조작유무를 감지하는 방법 및 이를 이용한 장치 | |
CN110135152B (zh) | 应用程序攻击检测方法及装置 | |
JP2012008825A (ja) | プログラム難読化装置、プログラム制御装置、プログラム難読化方法及びプログラム | |
CN107239703B (zh) | 一种动态链接库缺失的可执行程序的动态分析方法 | |
JP5437913B2 (ja) | コード領域識別装置、コード領域識別方法及びコード領域識別プログラム | |
US20240248990A1 (en) | Machine learning-based malware detection for code reflection | |
JP7259436B2 (ja) | 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理システム | |
Isawa et al. | Generic unpacking method based on detecting original entry point | |
US20230394145A1 (en) | Machine learning-based malware detection in process memory | |
JP5687593B2 (ja) | 解析装置、解析方法および解析プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120928 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130930 |
|
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: 20131008 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131009 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5389733 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |