JP7355211B2 - シグネチャ生成装置、シグネチャ生成方法およびシグネチャ生成プログラム - Google Patents

シグネチャ生成装置、シグネチャ生成方法およびシグネチャ生成プログラム Download PDF

Info

Publication number
JP7355211B2
JP7355211B2 JP2022502747A JP2022502747A JP7355211B2 JP 7355211 B2 JP7355211 B2 JP 7355211B2 JP 2022502747 A JP2022502747 A JP 2022502747A JP 2022502747 A JP2022502747 A JP 2022502747A JP 7355211 B2 JP7355211 B2 JP 7355211B2
Authority
JP
Japan
Prior art keywords
poc
code
signature generation
signature
poc code
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
Application number
JP2022502747A
Other languages
English (en)
Other versions
JPWO2021171524A1 (ja
Inventor
楊 鐘本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2021171524A1 publication Critical patent/JPWO2021171524A1/ja
Application granted granted Critical
Publication of JP7355211B2 publication Critical patent/JP7355211B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、シグネチャ生成装置、シグネチャ生成方法およびシグネチャ生成プログラムに関する。
近年、サーバソフトウェアやサーバ上で動作するアプリケーションには新たな脆弱性が発見され、その脆弱性を検証するPoC(Proof of Concept)コードが公開されている。
また、多くの製品やOSS(Open Source Software)では、シグネチャと呼ばれる攻撃の特徴を記した正規表現を用いて攻撃を検知している。このようなシグネチャを生成する手法として、PoCコードをシンボリック実行エンジンにより実行させることで、PoCコードからシグネチャを生成する手法が知られている(例えば、非特許文献1参照)。
Wang, Ruowen, et al. "MetaSymploit: Day-one defense against script-based attacks with security-enhanced symbolic analysis." Presented as part of the 22nd USENIX Security Symposium (USENIX Security 13). 2013.
しかしながら、従来技術では、PoCコードをシンボリック実行エンジンにより実行させることでシグネチャを生成するため、言語仕様や実行環境の変更によりPoCコード実行環境が更新されるたびに、シンボリック実行エンジンを更新する必要があるためメンテナンス性が低いという課題があった。
上述した課題を解決し、目的を達成するために、本発明のシグネチャ生成装置は、PoCコードを用いてコードの内容がそれぞれ異なるPoCコード候補群を生成する候補生成部と、前記候補生成部によって生成されたPoCコード候補群をそれぞれ実行し、実行時に発生した通信に関する通信データを取得する実行部と、前記実行部によって取得された通信データを用いて、シグネチャを生成するシグネチャ生成部とを有することを特徴とする。
本発明によれば、メンテナンス性の高いシグネチャを作成することができるという効果を奏する。
図1は、第1の実施形態に係るシグネチャ生成装置の構成の一例を示す図である。 図2は、第1の実施形態に係るシグネチャ生成装置による処理の概要を説明する図である。 図3は、PoCコードの一例を示す図である。 図4は、PoCコード候補群を生成する処理例を説明する図である。 図5は、PoCコードから生成されるPoCコード候補群の一例を示す図である。 図6は、通信データの一例を示す図である。 図7は、生成されたシグネチャの一例を示す図である。 図8は、通常リクエストの一例を示す図である。 図9は、第1の実施形態に係るシグネチャ生成装置における処理の流れの一例を示すフローチャートである。 図10は、シグネチャ生成プログラムを実行するコンピュータを示す図である。
以下に、本願に係るシグネチャ生成装置、シグネチャ生成方法およびシグネチャ生成プログラムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態により本願に係るシグネチャ生成装置、シグネチャ生成方法およびシグネチャ生成プログラムが限定されるものではない。
[第1の実施形態]
以下の実施形態では、第1の実施形態に係るシグネチャ生成装置10の構成、シグネチャ生成装置10の処理の流れを順に説明し、最後に第1の実施形態による効果を説明する。
[シグネチャ生成装置の構成]
まず、図1を用いて、シグネチャ生成装置10の構成について説明する。図1は、第1の実施形態に係るシグネチャ生成装置の構成の一例を示す図である。シグネチャ生成装置10は、PoCコードからPoCコードを悪用した攻撃を検知するためのシグネチャと呼ばれる表現を自動的に生成する。図1に示すように、シグネチャ生成装置10は、入力部11、出力部12、制御部13及び記憶部14を有する。以下では、各部について説明する。
入力部11は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部13に対して処理開始などの各種指示情報を入力する。出力部12は、液晶ディスプレイなどの表示装置、プリンタ等の印刷装置等によって実現される。
記憶部14は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現され、シグネチャ生成装置10を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータなどが記憶される。記憶部14は、PoCコード記憶部14aおよびシグネチャ記憶部14bを有する。
PoCコード記憶部14aは、後述するPoCコード候補生成部13aによってPoCコード候補群が生成される際に使用されるPoCコードを記憶する。なお、PoCコード記憶部14aによって記憶されるPoCコードは、予め記憶されていてもよいし、随時PoCコードが更新、追加されるようになっていてもよい。シグネチャ記憶部14bは、後述するシグネチャ生成部13cによって生成されたシグネチャを記憶する。
制御部13は、各種の処理手順などを規定したプログラム及び所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する。例えば、制御部13は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。制御部13は、PoCコード候補生成部13a、PoCコード実行部13bおよびシグネチャ生成部13cを有する。
ここで、制御部13が有する各部について説明する前に、図2を用いて、シグネチャ生成装置10による処理全体の概要を説明する。図2は、第1の実施形態に係るシグネチャ生成装置による処理の概要を説明する図である。図2に例示するように、まず、PoCコード候補生成部13aが、PoCコードを用いてコードの内容がそれぞれ異なるPoCコード候補群を生成する。そして、PoCコード実行部13bは、PoCコード候補群をそれぞれ実行し、実行時に発生した通信に関する通信データを取得する。その後、シグネチャ生成部13cは、通信データを用いて、シグネチャを生成する。
このように、シグネチャ生成装置10は、メンテナンス性が低くなってしまうシンボリック実行ではなく、PoCコードのプログラムを可能な限り実行し、その際に得られた通信データからシグネチャを作成する。これにより、シグネチャ生成装置10は、実PoCコードを実行するため、PoCコードのプログラミング言語に依存するシンボリック実行エンジンといった解析器が必要ないためメンテナンス性が高い。以下に制御部13が有する各部について説明する。
PoCコード候補生成部13aは、PoCコードを用いてコードの内容がそれぞれ異なるPoCコード候補群を生成する。例えば、PoCコード候補生成部13aは、PoCコードに含まれる条件文を書き換えることでPoCコード候補群を生成する。より具体的に説明すると、PoCコード候補生成部13aは、PoCコードに含まれる「if」、「else」、「case」などの制御構造の条件文を書き換えることでPoCコード候補群を生成する。
ここで、PoCコード候補生成部13aは、PoCコードの制御構造を把握するためにはPoCコードに利用されているプログラミング言語(Ruby、Pythonなど)に対して構文解析を行いプログラムコードを抽象構文木(Abstract Syntax Tree:AST)に変換して行う必要があるが、構文解析の機能はプログラミング言語の実行環境が多くの場合有する機能であるため、独自に作成する必要はなく、これを利用することで実現可能である。つまり、プログラミング言語の実行環境については、言語仕様や実行環境が変わるのに合わせて提供されるため、シンボリック実行エンジンのように自前で変化に追従して用意する必要がない。
また、PoCコードの候補を複数生成する理由は充実したPoCコードの通信データを観測するためである。例えば図3に例示するPoCコードがあった場合、変数aが1の場合はsend()関数により通信が発生するが、aが1以外の場合は通信が発生しないため、send()関数による通信データを観測できない。図3は、PoCコードの一例を示す図である。例えば、PoCコード候補生成部13aは、図4に例示するように、図3に例示したPoCコードから複数のPoCコードを生成する。
また、図5の例では、PoCコード候補生成部13aは、PoCコードからPoCコードに含まれる「if」の条件文を書き換えたPoCコード候補(1)~(3)と、条件文がそのままのPoCコード候補(4)とをPoCコード候補群として生成する。図5は、PoCコードから生成されるPoCコード候補群の一例を示す図である。
PoCコード候補生成部13aは、制御構造を改変することでPoCコードを実行した際に、可能な限りPoCコードの実行パスを通ることができ、PoCコードからより充実した通信データを観測できる。
PoCコード実行部13bは、PoCコード候補生成部13aによって生成されたPoCコード候補群をそれぞれ実行し、実行時に発生した通信に関する通信データを取得する。具体的には、PoCコード実行部13bは、PoCコード候補群をPoCコード実行環境で実行し、実行時に発生する通信を観測して通信データを取得する。
例えば、PoCコード実行部13bは、図5に例示したPoCコード候補(1)~(4)をそれぞれ実行することで、図6に例示する通信データ(1)~(4)を取得する。図6は、通信データの一例を示す図である。
シグネチャ生成部13cは、通信データを用いて、シグネチャを生成する。例えば、シグネチャ生成部13cは、通信データに含まれるサーバに対するリクエストから特徴的な文字列またはバイト列を抽出し、該文字列または該バイト列を正規表現に変換してシグネチャを生成する。
より具体的に説明すると、シグネチャ生成部13cは、通信データから複数のリクエストを抽出し、リクエストを長い順にソートしたものをR=(r1,r2・・・)とする。そして、シグネチャ生成部13cは、最長共通部分列CをC=LCS(LCS(r1,r2),r3)・・・のように求める。LCS(X,y)は、バイト列X=(x1,x2,・・・),Y=(y1,Y2,・・・)に対して下記(1)式のような定義である。そして、シグネチャ生成部13cは、Cを正規表現に直し、この正規表現をシグネチャsとする。
Figure 0007355211000001
なお、上述したように、シグネチャ生成部13cが、シグネチャを正規表現として表現する場合を説明したが、攻撃検知ツールによってシグネチャの表現方法は様々存在するため、攻撃検知ツールに合わせたシグネチャの表現方法で生成してもよく、シグネチャの表現を正規表現に限定するものではない。
ここで、図6に例示した通信データを用いてシグネチャを生成する場合を説明する。シグネチャ生成部13cは、PoCコード実行により観測した通信データから抽出されたリクエストr1,r2,r3,r4の最長共通部分列C=LCS(LCS(LCS(r1,r2),r3),r4)を求める。図6の場合、C=(“GET /app”,“.php?id=;cat/etc/”)となる。シグネチャ生成部13cは、Cに対して正規表現で利用する特殊な記号をエスケープした後、複数の任意の文字列を表す”.*”で共有部分列を結合し1つの正規表現を得る。これをシグネチャsとする。上記の場合、エスケープ後のCは、C=(“GET /app”,“\.php\?id=;cat/etc”)となり、シグネチャsは、図7に例示するように、s=“GET /app.*\.php\?id=;cat/etc/.*”となる。
また、シグネチャ生成部13cは、通信データに含まれるサーバに対するリクエストから特徴的な文字列またはバイト列を抽出し、該文字列または該バイト列から正常なリクエストに含まれる要素を除外してシグネチャを生成するようにしてもよい。
つまり、生成したシグネチャが正常な通信を検知してしまう誤検知を減らすため、シグネチャ生成部13cにおいて、リクエスト群Rから最長共通部分列C=(c1,c2,・・・)を抽出した後、Cの各要素c1,c2,・・・に対して、予め観測した正常なリクエスト群に含まれる場合、これを除外する。
具体例を挙げて説明すると、例えば、前述と同様に最長共通部分列として、C=(“GET /app”,“.php?id=;cat/etc/”)が得られ、予め観測した通常リクエストが図8に例示する通常リクエストであったものとする。このような場合に、シグネチャ生成部13cは、Cの要素である文字列“GET /app”が通常リクエストに含まれるため除外し、Cの要素である文字列“.php?id=;cat/etc/”は通常リクエストに含まれないため除外しない。このため、シグネチャ生成部13cは、C=(“.php?id=;cat/etc/”)となり、エスケープ後、シグネチャs=(“\.php\?id=;cat/etc/”)を得る。
[シグネチャ生成装置の処理手順]
次に、図9を用いて、第1の実施形態に係るシグネチャ生成装置10による処理手順の例を説明する。図9は、第1の実施形態に係るシグネチャ生成装置における処理の流れの一例を示すフローチャートである。
図9に例示するように、シグネチャ生成装置10のPoCコード候補生成部13aは、PoCコード記憶部14aからPoCコードを取得し(ステップS101)、PoCコードを用いてコードの内容がそれぞれ異なるPoCコード候補群を生成する(ステップS102)。例えば、PoCコード候補生成部13aは、PoCコードに含まれる条件文を書き換えることでPoCコード候補群を生成する。
そして、PoCコード実行部13bは、PoCコード候補群をPoCコード実行環境で実行し(ステップS103)、実行時に発生する通信を観測して通信データを取得する(ステップS104)。
シグネチャ生成部13cは、通信データからシグネチャを生成する(ステップS105)。例えば、シグネチャ生成部13cは、通信データに含まれるサーバに対するリクエストから特徴的な文字列またはバイト列を抽出し、該文字列または該バイト列を正規表現に変換してシグネチャを生成する。
[第1の実施形態の効果]
このように、第1の実施形態に係るシグネチャ生成装置10は、PoCコードを用いてコードの内容がそれぞれ異なるPoCコード候補群を生成し、PoCコード候補群をそれぞれ実行し、実行時に発生した通信に関する通信データを取得し、通信データを用いて、シグネチャを生成する。これにより、シグネチャ生成装置10は、メンテナンス性の高いシグネチャを作成することが可能である。
つまり、シグネチャ生成装置10では、PoCコード実行環境に依存する部分が少なくなり、維持管理しやすくメンテナンス性が高いシグネチャ生成が可能となる。このため、シグネチャ生成装置10では、多様なプログラミング言語で書かれたPoCコードについて、そのPoCコードを悪用して攻撃を行うことを検知するためのシグネチャを継続的に生成することが可能となる。
[システム構成等]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、本実施の形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
図10は、シグネチャ生成プログラムを実行するコンピュータを示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1051、キーボード1052に接続される。ビデオアダプタ1060は、例えばディスプレイ1061に接続される。
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、シグネチャ生成装置の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、装置における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
また、上述した実施の形態の処理で用いられるデータは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク、WANを介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10 シグネチャ生成装置
11 入力部
12 出力部
13 制御部
13a PoCコード候補生成部
13b PoCコード実行部
13c シグネチャ生成部
14 記憶部
14a PoCコード記憶部
14b シグネチャ記憶部

Claims (7)

  1. PoC(Proof of Concept)コードを用いて当該PoCコードに含まれる条件文を書き換え、コードの内容がそれぞれ異なるPoCコード候補を含むPoCコード候補群を生成する候補生成部と、
    前記候補生成部によって生成されたPoCコード候補群をそれぞれ実行し、実行時に発生した通信の内容を示す通信データを取得する実行部と、
    前記実行部によって取得された通信データを用いて、PoCコードを悪用した攻撃を検知するための正規表現であるシグネチャを生成するシグネチャ生成部と
    を有することを特徴とするシグネチャ生成装置。
  2. 前記候補生成部は、前記PoCコードに含まれる条件文を書き換えることで前記PoCコード候補群を生成することを特徴とする請求項1に記載のシグネチャ生成装置。
  3. 前記実行部は、前記PoCコード候補群をPoCコード実行環境で実行し、実行時に発生する通信を観測して前記通信データを取得することを特徴とする請求項1に記載のシグネチャ生成装置。
  4. 前記シグネチャ生成部は、前記通信データに含まれるサーバに対する複数のリクエストに含まれる共通部分を特徴的な文字列またはバイト列として抽出し、該文字列または該バイト列を正規表現に変換して前記シグネチャを生成することを特徴とする請求項1に記載のシグネチャ生成装置。
  5. 前記シグネチャ生成部は、前記通信データに含まれるサーバに対する複数のリクエストに含まれる共通部分を特徴的な文字列またはバイト列として抽出し、該文字列または該バイト列から正常なリクエストに含まれる要素を除外して前記シグネチャを生成することを特徴とする請求項1に記載のシグネチャ生成装置。
  6. シグネチャ生成装置によって実行されるシグネチャ生成方法であって、
    PoC(Proof of Concept)コードを用いて当該PoCコードに含まれる条件文を書き換え、コードの内容がそれぞれ異なるPoCコード候補を含むPoCコード候補群を生成する候補生成工程と、
    前記候補生成工程によって生成されたPoCコード候補群をそれぞれ実行し、実行時に発生した通信の内容を示す通信データを取得する実行工程と、
    前記実行工程によって取得された通信データを用いて、PoCコードを悪用した攻撃を検知するための正規表現であるシグネチャを生成するシグネチャ生成工程と
    を含むことを特徴とするシグネチャ生成方法。
  7. PoC(Proof of Concept)コードを用いて当該PoCコードに含まれる条件文を書き換え、コードの内容がそれぞれ異なるPoCコード候補を含むPoCコード候補群を生成する候補生成ステップと、
    前記候補生成ステップによって生成されたPoCコード候補群をそれぞれ実行し、実行時に発生した通信の内容を示す通信データを取得する実行ステップと、
    前記実行ステップによって取得された通信データを用いて、PoCコードを悪用した攻撃を検知するための正規表現であるシグネチャを生成するシグネチャ生成ステップと
    をコンピュータに実行させることを特徴とするシグネチャ生成プログラム。
JP2022502747A 2020-02-27 2020-02-27 シグネチャ生成装置、シグネチャ生成方法およびシグネチャ生成プログラム Active JP7355211B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/008176 WO2021171524A1 (ja) 2020-02-27 2020-02-27 シグネチャ生成装置、シグネチャ生成方法およびシグネチャ生成プログラム

Publications (2)

Publication Number Publication Date
JPWO2021171524A1 JPWO2021171524A1 (ja) 2021-09-02
JP7355211B2 true JP7355211B2 (ja) 2023-10-03

Family

ID=77491165

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022502747A Active JP7355211B2 (ja) 2020-02-27 2020-02-27 シグネチャ生成装置、シグネチャ生成方法およびシグネチャ生成プログラム

Country Status (3)

Country Link
US (1) US20230063382A1 (ja)
JP (1) JP7355211B2 (ja)
WO (1) WO2021171524A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017217301A1 (ja) 2016-06-13 2017-12-21 日本電信電話株式会社 ログ分析装置、ログ分析方法およびログ分析プログラム
US20190205543A1 (en) 2018-01-03 2019-07-04 Beijing Jingdong Shangke Information Technology Co., Ltd. System and method for java deserialization vulnerability detection
JP2020021309A (ja) 2018-08-01 2020-02-06 株式会社野村総合研究所 脆弱性管理システム及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017217301A1 (ja) 2016-06-13 2017-12-21 日本電信電話株式会社 ログ分析装置、ログ分析方法およびログ分析プログラム
US20190205543A1 (en) 2018-01-03 2019-07-04 Beijing Jingdong Shangke Information Technology Co., Ltd. System and method for java deserialization vulnerability detection
JP2020021309A (ja) 2018-08-01 2020-02-06 株式会社野村総合研究所 脆弱性管理システム及びプログラム

Also Published As

Publication number Publication date
US20230063382A1 (en) 2023-03-02
WO2021171524A1 (ja) 2021-09-02
JPWO2021171524A1 (ja) 2021-09-02

Similar Documents

Publication Publication Date Title
US9305116B2 (en) Dual DFA decomposition for large scale regular expression matching
US8473899B2 (en) Automatic optimization of string allocations in a computer program
US11907378B2 (en) Automated application vulnerability and risk assessment
US20200380125A1 (en) Method for Detecting Libraries in Program Binaries
US9507933B2 (en) Program execution apparatus and program analysis apparatus
CN109558207B (zh) 在虚拟机中形成用于进行文件的防病毒扫描的日志的系统和方法
JP2018129019A (ja) 仮想マシンにおける悪意のあるファイルを分析するシステム及び方法
EP3547121A1 (en) Combining device, combining method and combining program
EP3355229B1 (en) Analysis device, analysis method, and analysis program
JP6400794B2 (ja) インタプリタによるコード実行のシステム及び方法
JP7355211B2 (ja) シグネチャ生成装置、シグネチャ生成方法およびシグネチャ生成プログラム
KR101995176B1 (ko) 프로그램 실행 컨텍스트 기반의 빅데이터를 활용한 역공학 방법 및 시스템
KR102323621B1 (ko) 펌웨어 퍼징 장치 및 방법
US20240160746A1 (en) Analysis condition generating apparatus, analysis system, analysis condition generating program, analysis program, analysis condition generating method, and analysis method
US20230325476A1 (en) Obfuscation device, obfuscation method, and obfuscation program
JP6984760B2 (ja) 変換装置及び変換プログラム
JP5952218B2 (ja) 情報処理装置および情報処理方法
KR102117165B1 (ko) 바이너리 분석을 위한 중간 언어 테스트 방법 및 장치
EP3799367A1 (en) Generation device, generation method, and generation program
WO2023238239A1 (ja) 修正装置、修正方法及び修正プログラム
JP7424393B2 (ja) 推定システム、推定方法及び推定プログラム
JP7294441B2 (ja) 評価装置、評価システム、評価方法及びプログラム
WO2023238240A1 (ja) 検証装置、検証方法及び検証プログラム
US20230315611A1 (en) Bug-detection assisting device, bug-detection assisting method, and bug-detection assisting program
Lee et al. Vulnerability reports consolidation for network scanners

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220602

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230620

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230810

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: 20230822

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230904

R150 Certificate of patent or registration of utility model

Ref document number: 7355211

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150