JP4669053B2 - 情報処理装置、情報処理方法及びこれを実現させるためのプログラム - Google Patents
情報処理装置、情報処理方法及びこれを実現させるためのプログラム Download PDFInfo
- Publication number
- JP4669053B2 JP4669053B2 JP2009067407A JP2009067407A JP4669053B2 JP 4669053 B2 JP4669053 B2 JP 4669053B2 JP 2009067407 A JP2009067407 A JP 2009067407A JP 2009067407 A JP2009067407 A JP 2009067407A JP 4669053 B2 JP4669053 B2 JP 4669053B2
- Authority
- JP
- Japan
- Prior art keywords
- read
- write
- sequence
- events
- event
- 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.)
- Expired - Fee Related
Links
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/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
- G06F21/54—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 by adding security routines or objects to programs
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
[1]テイント情報の伝搬の規則
本発明者は、テイント・ビットの伝搬を行う場合の規則について、次のような考察を行った。
[2−1]概要
本実施形態では、コンピュータ・システムの外部からデータが入力された場合、このデータに対してテイント・ビットをセットする。プログラムの依存関係にしたがって、プロセッサによって、依存元から依存先へとテイント・ビットの情報を伝搬させる。データを出力するときは、このデータのテイント・ビットがセットされている(テイントである)か否かを検査する。
[2−2]状態遷移図
図1は、式(1)の正規表現と同じ系列を受理するオートマトンの状態遷移図である。同図中、丸は状態を、矢印は状態遷移を、それぞれ表す。矢印に隣接して書かれたシンボルが入力されたとき、矢印の元の状態から先の状態へと遷移する。
図2は、テイント情報の伝搬を行う部分系列の具体例(例1−a〜c)とテイント情報の伝搬を行わない部分系列の具体例(例2−a〜b)をそれぞれ示す。各例において、テイントであるデータの読み出しをRで示し、上記第1の条件の文字列の一部に対する書き込みをWと示す。また、本図における(1)及び(2)は、上述した第2の条件の第1の部分系列及び第2の部分系列にそれぞれ相当する。なお、本図では、簡単のため、RとWについてのみ示すが、r(テイントでないデータの読み出し)、w(上記第1の条件の文字列に対するものではない書き込み)は任意の位置にいくらでも現れてよい。
図3及び図4は、本実施形態のテイント情報の伝搬を実現するための情報処理装置のブロック図を示す。図3及び図4に示す情報処理装置1は、プロセッサ10、メモリ(記憶部)20、入力部30、出力部40を具備している。プロセッサ10は、読み出し検出手段11、書き込み検出手段12、テイント・ビット付加手段13、検査手段14を具備する。メモリ20は、外部から入力されたテイント情報が付加された文字列データが記憶される第1の記憶部21、処理が実行された後の文字列データが記憶される第2の記憶部22を備えている。なお、第1の記憶部21、第2の記憶部22は、分離されているメモリにそれぞれ記憶されていてもよい。
以上のように、本実施形態によれば、文や命令などのミクロな処理を単位として伝搬していた従来と異なり、プロセッサによる文字列操作毎にテイント情報を伝搬する。したがって、テイント情報の高精度な伝搬が実現でき、注入攻撃の検出漏れや誤検出を抑制することができるため、攻撃耐性の高いサーバ構築が可能となる。
本実施形態に係る情報処理装置は、上記1の実施形態に係る情報処理装置と異なるアルゴリズムを用いてテイント情報の伝搬を行う。
tはt≧2のしきい値、
k≧1、
mk1,mk2,…,mkt≧1、
n1,n2,…,nt≧1、
である。
文字列Wに対する書き込みの系列を
w_1_1,w_1_2,…,w_1_n1,
w_2_1,w_2_2,…,w_2_n2,
…
w_t_1,w_t_2,…,w_t_nt,
…
とし、
文字列Rkに対する読み出しの系列を
rk_1_1,rk_1_2,…,rk_1_mk1,
rk_2_1,rk_2_2,…,rk_2_mk2,
…
rk_t_1,rk_t_2,…,rk_t_mkt,
…
とすると、
これらの書き込みの系列及び読み出しの系列が、
rk_1_1,rk_1_2,…,rk_1_mk1,
w_1_1,w_1_2,…,w_1_n1,
rk_2_1,rk_2_2,…,rk_2_mk2,
w_2_1,w_2_2,…,w_2_n2,
…
rk_t_1,rk_t_2,…,rk_t_mkt,
w_t_1,w_t_2,…,w_t_n2
…
となる互い違いの関係を持つ場合、
i(i≧1)に対して、
r1_i_m1i,r2_i_m2i,…
の中で最後に現れた読み出しイベントに対応するテイント情報を
w_i_1,w_i_2,…,w_i_ni
の書き込みイベントに対して伝搬させる。
本実施形態においては、テイント情報の伝搬を実現する具体的なアルゴリズムについて、文字列アクセスの検出と、この文字列アクセスの検出を用いた伝播とに分けて説明する。
ここでは、文字列アクセスを検出するための文字列検出器の動作について説明する。この文字列検出器は、与えられたアドレスに対して、以下の2つの情報を出力する。なお、この文字列検出器は、プロセッサによって実現されるとしてもよい。
2.バックトラック(後に説明)が必要であるか否か
文字列検出器は、文字列に対するロードとストアをそれぞれ検出するために2つ備えられている。2つの文字列検出器は、それぞれが共通したアルゴリズムにより文字列アクセスを検出する。
文字列アクセスの検出は、ロード命令、及びストア命令が実行された際、以下で説明する動作を、それぞれの文字列検出器に備えられている文字列検出テーブル内の全エントリに対して行うことによって実現される。
上記ステップS1−0において、メモリ・アクセスにおけるアドレスと一致する予測アドレス(next_adr)を持つエントリがテーブル内に1つも存在しなかった場合、テーブルへ新しいエントリが追加される。この場合、追加されるエントリ内の各要素は,以下の様に初期化される.
base_adr:該当アクセスのアドレスに初期化される
next_adr:base_adr+1に初期化される
cnt :1に初期化される
他の全ての要素:0に初期化される
なお,テ−ブルの大きさは有限であるため、もしエントリが不足した場合には、LRUアルゴリズムに基づいた置き換えが行われる。
上記のステップS1−4で行われるアクセスの通知について、この通知を受けた側の動作の一例を図14に示す。この動作は、通知を受けた側の検出器内にある文字列検出テーブルのエントリ全てに対して行われる。この図14の動作は、例えばプロセッサによって実行される。
テイント情報の伝搬は、ロード命令およびストア命令が実行された際の動作によって実現される。これらの動作は,先に説明したロード用およびストア用の文字列検出器からの出力に基づいて、例えばプロセッサなどによって行われる。ロード用およびストア用の文字列検出器は、例えばプロセッサに含まれていてもよく、プロセッサとは別構成でもよい。
図15は、ロード命令が実行された場合の動作の一例を示すフローチャートである。
図16は、ストア命令が実行された場合の動作の一例を示すフローチャートである。
上記図16のステップS4−2において、文字列検出器よってバックトラック要求が出力された場合、以下に示す「2.入力アドレス」から「3.出力アドレス」に対し,「1.伝搬を行うサイズ」で指定されたサイズの伝搬が行われる。なお、この伝搬は、例えばプロセッサによって実行される。
2.入力アドレス:直前に検出された文字列へのロードにおける先頭アドレス(base_adr)
3.出力アドレス:ストア時のアドレスから,上記「1.伝搬を行うサイズ」を引いたアドレス
その他、本発明は、上記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で、種々に変形することが可能である。さらに、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、上記各実施形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
Claims (12)
- 記憶手段から追跡情報の付加された第1の文字列データを読み出すための複数の読み出しイベントを含む第1の読み出し系列と、前記第1の読み出し系列に含まれている複数の読み出しイベントの発生タイミングと、追跡情報の付加された第2の文字列データを読み出すための複数の読み出しイベントを含む第2の読み出し系列と、前記第2の読み出し系列に含まれている複数の読み出しイベントの発生タイミングとを検出する読み出し系列検出手段と、
前記記憶手段に対して第3の文字列データを書き込むための複数の書き込みイベントを含む書き込み系列と、前記複数の書き込みイベントの発生タイミングとを検出する書き込み系列検出手段と、
前記読み出し系列検出手段によって検出された前記第1の読み出し系列、前記第1の読み出し系列に含まれている複数の読み出しイベントの発生タイミング、前記第2の読み出し系列、前記第2の読み出し系列に含まれている複数の読み出しイベントの発生タイミング、前記書き込み系列検出手段によって検出された前記書き込み系列、前記複数の書き込みイベントの発生タイミングに基づいて、「前記第1の読み出し系列に含まれており1つ又は連続する複数の読み出しイベントを含む複数の読み出しイベントグループ」と、「前記書き込み系列に含まれており1つ又は連続する複数の書き込みイベントを含む複数の書き込みイベントグループ」との間で、互い違いの関係を満たすか否か判断する第1の判断を行い、「前記第2の読み出し系列に含まれており1つ又は連続する複数の読み出しイベントを含む複数の読み出しイベントグループ」と、前記複数の書き込みイベントグループとの間で、互い違いの関係を満たすか否か判断する第2の判断を行うインタリービング判断手段と、
前記インタリービング判断手段の前記第1及び第2の判断によって前記互い違いの関係の双方を満たすと判断された場合に、前記書き込みイベントグループに含まれている前記書き込みイベントによって書き込まれる文字列データに、前記書き込みイベントグループとの間で前記互い違いの関係にある直前の読み出しイベントグループに属する読み出しイベントに対応する追跡情報を付加する追跡情報付加手段と
を具備する情報処理装置。 - 請求項1記載の情報処理装置において、
前記インタリービング判断手段は、
前記第1の読み出し系列における第1の読み出しイベントグループの後に、前記書き込み系列における第1の書き込みイベントグループが発生し、その後さらに、前記第1の読み出し系列における第2の読み出しイベントグループの後に、前記書き込み系列における第2の書き込みイベントグループが発生している場合に、前記互い違いの関係を満たすと判断する前記第1の判断を行い、
前記第2の読み出し系列における第3の読み出しイベントグループの後に、前記第1の書き込みイベントグループが発生し、その後さらに、前記第2の読み出し系列における第4の読み出しイベントグループの後に、前記第2の書き込みイベントグループが発生している場合に、前記互い違いの関係を満たすと判断する前記第2の判断を行う
ことを特徴とする情報処理装置。 - 請求項2記載の情報処理装置において、
前記追跡情報付加手段は、前記追跡情報を付与する書き込みイベントが複数の読み出しイベントに基づいて発生している場合に、これら複数の読み出しイベントのうち最後に発生した読み出しイベントにおける追跡情報を、前記書き込まれる文字列データに付与することを特徴とする情報処理装置。 - 請求項1乃至請求項3のいずれか1項に記載の情報処理装置において、
tはt≧2のしきい値であり、
k≧1であり、
mk1,mk2,…,mkt≧1であり、
n1,n2,…,nt≧1であり、
前記書き込み系列検出手段は、前記書き込み系列を検出し、
前記読み出し系列検出手段は、前記第1及び第2の読み出し系列をそれぞれ検出し、
前記書き込み系列を
(w_1_1,w_1_2,…,w_1_n1,
w_2_1,w_2_2,…,w_2_n2,
…
w_t_1,w_t_2,…,w_t_nt,
…)
とし、
前記第1及び第2の読み出し系列のそれぞれを
(rk_1_1,rk_1_2,…,rk_1_mk1,
rk_2_1,rk_2_2,…,rk_2_mk2,
…
rk_t_1,rk_t_2,…,rk_t_mkt,
…)
とすると、
前記インタリービング判断手段は、前記書き込み系列と前記第1及び第2の読み出し系列のそれぞれとの時系列が、
(rk_1_1,rk_1_2,…,rk_1_mk1),
(w_1_1,w_1_2,…,w_1_n1),
(rk_2_1,rk_2_2,…,rk_2_mk2),
(w_2_1,w_2_2,…,w_2_n2),
…
(rk_t_1,rk_t_2,…,rk_t_mkt),
(w_t_1,w_t_2,…,w_t_n2)
…
の前記互い違いの関係の双方を満たすか判断する前記第1及び第2の判断を実行し、
前記追跡情報付加手段は、前記インタリービング判断手段の前記第1及び第2の判断によって前記互い違いの関係を満たすと判断された場合に、
i(i≧1)とし、
前記直前の読み出しイベントグループ(r1_i_m1i,r2_i_m2i,…)
の中で、最後に現れた読み出しイベントにおける読み出し元の追跡情報を
(w_i_1,w_i_2,…,w_i_ni)
の書き込みに対して付加する
ことを特徴とする情報処理装置。 - コンピュータが、記憶手段から追跡情報の付加された第1の文字列データを読み出すための複数の読み出しイベントを含む第1の読み出し系列と、前記第1の読み出し系列に含まれている複数の読み出しイベントの発生タイミングと、追跡情報の付加された第2の文字列データを読み出すための複数の読み出しイベントを含む第2の読み出し系列と、前記第2の読み出し系列に含まれている複数の読み出しイベントの発生タイミングとを検出するとともに、前記記憶手段に対して第3の文字列データを書き込むための複数の書き込みイベントを含む書き込み系列と、前記複数の書き込みイベントの発生タイミングとを検出すること、
前記コンピュータが、前記第1の読み出し系列、前記第1の読み出し系列に含まれている複数の読み出しイベントの発生タイミング、前記第2の読み出し系列、前記第2の読み出し系列に含まれている複数の読み出しイベントの発生タイミング、前記書き込み系列、前記複数の書き込みイベントの発生タイミングに基づいて、「前記第1の読み出し系列に含まれており1つ又は連続する複数の読み出しイベントを含む複数の読み出しイベントグループ」と、「前記書き込み系列に含まれており1つ又は連続する複数の書き込みイベントを含む複数の書き込みイベントグループ」との間で、互い違いの関係を満たすか否か判断する第1の判断を行い、「前記第2の読み出し系列に含まれており1つ又は連続する複数の読み出しイベントを含む複数の読み出しイベントグループ」と、前記複数の書き込みイベントグループとの間で、互い違いの関係を満たすか否か判断する第2の判断を行うこと、
前記コンピュータが、前記第1及び第2の判断によって前記互い違いの関係の双方を満たすと判断された場合に、前記書き込みイベントグループに含まれている前記書き込みイベントによって書き込まれる文字列データに、前記書き込みイベントグループとの間で前記互い違いの関係にある直前の読み出しイベントグループに属する読み出しイベントに対応する追跡情報を付加すること
を含む情報処理方法。 - 請求項5記載の情報処理方法において、
前記判断することは、
前記第1の読み出し系列における第1の読み出しイベントグループの後に、前記書き込み系列における第1の書き込みイベントグループが発生し、その後さらに、前記第1の読み出し系列における第2の読み出しイベントグループの後に、前記書き込み系列における第2の書き込みイベントグループが発生している場合に、前記互い違いの関係を満たすと判断する前記第1の判断を行い、
前記第2の読み出し系列における第3の読み出しイベントグループの後に、前記第1の書き込みイベントグループが発生し、その後さらに、前記第2の読み出し系列における第4の読み出しイベントグループの後に、前記第2の書き込みイベントグループが発生している場合に、前記互い違いの関係を満たすと判断する前記第2の判断を行う
ことを特徴とする情報処理方法。 - 請求項6記載の情報処理方法において、
前記付加することは、前記追跡情報を付与する書き込みイベントが複数の読み出しイベントに基づいて発生している場合に、これら複数の読み出しイベントのうち最後に発生した読み出しイベントにおける追跡情報を、前記書き込まれる文字列データに付与することを特徴とする情報処理方法。 - 請求項5乃至請求項7のいずれか1項に記載の情報処理方法において、
tはt≧2のしきい値であり、
k≧1であり、
mk1,mk2,…,mkt≧1であり、
n1,n2,…,nt≧1であり、
前記検出することは、前記書き込み系列を検出し、
前記検出することは、前記第1及び第2の読み出し系列をそれぞれ検出し、
前記書き込み系列を
(w_1_1,w_1_2,…,w_1_n1,
w_2_1,w_2_2,…,w_2_n2,
…
w_t_1,w_t_2,…,w_t_nt,
…)
とし、
前記第1及び第2の読み出し系列のそれぞれを
(rk_1_1,rk_1_2,…,rk_1_mk1,
rk_2_1,rk_2_2,…,rk_2_mk2,
…
rk_t_1,rk_t_2,…,rk_t_mkt,
…)
とすると、
前記インタリービング判断手段は、前記書き込み系列と前記第1及び第2の読み出し系列のそれぞれとの時系列が、
(rk_1_1,rk_1_2,…,rk_1_mk1),
(w_1_1,w_1_2,…,w_1_n1),
(rk_2_1,rk_2_2,…,rk_2_mk2),
(w_2_1,w_2_2,…,w_2_n2),
…
(rk_t_1,rk_t_2,…,rk_t_mkt),
(w_t_1,w_t_2,…,w_t_n2)
…
の前記互い違いの関係の双方を満たすか判断する前記第1及び第2の判断を実行し、
前記付加することは、前記第1及び第2の判断によって前記互い違いの関係を満たすと判断された場合に、
i(i≧1)とし、
前記直前の読み出しイベントグループ(r1_i_m1i,r2_i_m2i,…)
の中で、最後に現れた読み出しイベントにおける読み出し元の追跡情報を
(w_i_1,w_i_2,…,w_i_ni)
の書き込みに対して付加する
ことを特徴とする情報処理方法。 - コンピュータを、
記憶手段から追跡情報の付加された第1の文字列データを読み出すための複数の読み出しイベントを含む第1の読み出し系列と、前記第1の読み出し系列に含まれている複数の読み出しイベントの発生タイミングと、追跡情報の付加された第2の文字列データを読み出すための複数の読み出しイベントを含む第2の読み出し系列と、前記第2の読み出し系列に含まれている複数の読み出しイベントの発生タイミングとを検出する読み出し系列検出手段、
前記記憶手段に対して第3の文字列データを書き込むための複数の書き込みイベントを含む書き込み系列と、前記複数の書き込みイベントの発生タイミングとを検出する書き込み系列検出手段、
前記読み出し系列検出手段によって検出された前記第1の読み出し系列、前記第1の読み出し系列に含まれている複数の読み出しイベントの発生タイミング、前記第2の読み出し系列、前記第2の読み出し系列に含まれている複数の読み出しイベントの発生タイミング、前記書き込み系列検出手段によって検出された前記書き込み系列、前記複数の書き込みイベントの発生タイミングに基づいて、「前記第1の読み出し系列に含まれており1つ又は連続する複数の読み出しイベントを含む複数の読み出しイベントグループ」と、「前記書き込み系列に含まれており1つ又は連続する複数の書き込みイベントを含む複数の書き込みイベントグループ」との間で、互い違いの関係を満たすか否か判断する第1の判断を行い、「前記第2の読み出し系列に含まれており1つ又は連続する複数の読み出しイベントを含む複数の読み出しイベントグループ」と、前記複数の書き込みイベントグループとの間で、互い違いの関係を満たすか否か判断する第2の判断を行うインタリービング判断手段、
前記インタリービング判断手段の前記前記第1及び第2の判断によって前記互い違いの関係の双方を満たすと判断された場合に、前記書き込みイベントグループに含まれている前記書き込みイベントによって書き込まれる文字列データに、前記書き込みイベントグループとの間で前記互い違いの関係にある直前の読み出しイベントグループに属する読み出しイベントに対応する追跡情報を付加する追跡情報付加手段
として機能させるためのプログラム。 - 請求項9記載のプログラムにおいて、
前記インタリービング判断手段は、
前記第1の読み出し系列における第1の読み出しイベントグループの後に、前記書き込み系列における第1の書き込みイベントグループが発生し、その後さらに、前記第1の読み出し系列における第2の読み出しイベントグループの後に、前記書き込み系列における第2の書き込みイベントグループが発生している場合に、前記互い違いの関係を満たすと判断する前記第1の判断を行い、
前記第2の読み出し系列における第3の読み出しイベントグループの後に、前記第1の書き込みイベントグループが発生し、その後さらに、前記第2の読み出し系列における第4の読み出しイベントグループの後に、前記第2の書き込みイベントグループが発生している場合に、前記互い違いの関係を満たすと判断する前記第2の判断を行う
ことを特徴とするプログラム。 - 請求項10記載のプログラムにおいて、
前記追跡情報付加手段は、前記追跡情報を付与する書き込みイベントが複数の読み出しイベントに基づいて発生している場合に、これら複数の読み出しイベントのうち最後に発生した読み出しイベントにおける追跡情報を、前記書き込まれる文字列データに付与することを特徴とするプログラム。 - 請求項9乃至請求項11のいずれか1項に記載のプログラムにおいて、
tはt≧2のしきい値であり、
k≧1であり、
mk1,mk2,…,mkt≧1であり、
n1,n2,…,nt≧1であり、
前記書き込み系列検出手段は、前記書き込み系列を検出し、
前記読み出し系列検出手段は、前記第1及び第2の読み出し系列をそれぞれ検出し、
前記書き込み系列を
(w_1_1,w_1_2,…,w_1_n1,
w_2_1,w_2_2,…,w_2_n2,
…
w_t_1,w_t_2,…,w_t_nt,
…)
とし、
前記第1及び第2の読み出し系列のそれぞれを
(rk_1_1,rk_1_2,…,rk_1_mk1,
rk_2_1,rk_2_2,…,rk_2_mk2,
…
rk_t_1,rk_t_2,…,rk_t_mkt,
…)
とすると、
前記インタリービング判断手段は、前記書き込み系列と前記第1及び第2の読み出し系列のそれぞれとの時系列が、
(rk_1_1,rk_1_2,…,rk_1_mk1),
(w_1_1,w_1_2,…,w_1_n1),
(rk_2_1,rk_2_2,…,rk_2_mk2),
(w_2_1,w_2_2,…,w_2_n2),
…
(rk_t_1,rk_t_2,…,rk_t_mkt),
(w_t_1,w_t_2,…,w_t_n2)
…
の前記互い違いの関係を満たすか判断する前記第1及び第2の判断を実行し、
前記追跡情報付加手段は、前記第1及び第2の判断によって前記互い違いの関係の双方を満たすと判断された場合に、
i(i≧1)とし、
前記直前の読み出しイベントグループ(r1_i_m1i,r2_i_m2i,…)
の中で、最後に現れた読み出しイベントにおける読み出し元の追跡情報を
(w_i_1,w_i_2,…,w_i_ni)
の書き込みに対して付加する
ことを特徴とするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009067407A JP4669053B2 (ja) | 2008-09-29 | 2009-03-19 | 情報処理装置、情報処理方法及びこれを実現させるためのプログラム |
US12/411,771 US8413240B2 (en) | 2008-09-29 | 2009-03-26 | Information processing device, information processing method, and computer readable recording medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008251255 | 2008-09-29 | ||
JP2009067407A JP4669053B2 (ja) | 2008-09-29 | 2009-03-19 | 情報処理装置、情報処理方法及びこれを実現させるためのプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010102679A JP2010102679A (ja) | 2010-05-06 |
JP4669053B2 true JP4669053B2 (ja) | 2011-04-13 |
Family
ID=42059180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009067407A Expired - Fee Related JP4669053B2 (ja) | 2008-09-29 | 2009-03-19 | 情報処理装置、情報処理方法及びこれを実現させるためのプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8413240B2 (ja) |
JP (1) | JP4669053B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8615804B2 (en) * | 2010-02-18 | 2013-12-24 | Polytechnic Institute Of New York University | Complementary character encoding for preventing input injection in web applications |
KR101409545B1 (ko) * | 2010-08-09 | 2014-06-19 | 도시바 미쓰비시덴키 산교시스템 가부시키가이샤 | 데이터 검색 시스템 |
JP5501156B2 (ja) * | 2010-08-23 | 2014-05-21 | キヤノン株式会社 | 情報処理装置、情報処理方法、及びプログラム |
US9111092B2 (en) | 2011-08-29 | 2015-08-18 | Novell, Inc. | Security event management apparatus, systems, and methods |
CN102651062B (zh) * | 2012-04-09 | 2014-06-18 | 华中科技大学 | 基于虚拟机架构的恶意行为跟踪系统和方法 |
JP5766650B2 (ja) * | 2012-04-27 | 2015-08-19 | 日本電信電話株式会社 | 情報処理装置、監視方法および監視プログラム |
JP5952218B2 (ja) * | 2013-05-16 | 2016-07-13 | 日本電信電話株式会社 | 情報処理装置および情報処理方法 |
US9171028B1 (en) * | 2013-06-11 | 2015-10-27 | Google Inc. | Method of maintaining a large set of taint labels |
US9519533B2 (en) * | 2015-01-28 | 2016-12-13 | Qualcomm Incorporated | Data flow tracking via memory monitoring |
CN109873833B (zh) * | 2019-03-11 | 2021-08-03 | 浙江工业大学 | 一种基于卡方距离knn的数据注入攻击检测方法 |
US11275840B2 (en) | 2019-07-29 | 2022-03-15 | Sap Se | Management of taint information attached to strings |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6567900B1 (en) * | 2000-08-31 | 2003-05-20 | Hewlett-Packard Development Company, L.P. | Efficient address interleaving with simultaneous multiple locality options |
US8010469B2 (en) * | 2000-09-25 | 2011-08-30 | Crossbeam Systems, Inc. | Systems and methods for processing data flows |
US7406714B1 (en) * | 2003-07-01 | 2008-07-29 | Symantec Corporation | Computer code intrusion detection system based on acceptable retrievals |
US7207065B2 (en) * | 2004-06-04 | 2007-04-17 | Fortify Software, Inc. | Apparatus and method for developing secure software |
US7831995B2 (en) * | 2004-10-29 | 2010-11-09 | CORE, SDI, Inc. | Establishing and enforcing security and privacy policies in web-based applications |
US7860842B2 (en) * | 2005-03-16 | 2010-12-28 | Oracle International Corporation | Mechanism to detect and analyze SQL injection threats |
US7757282B2 (en) * | 2005-05-20 | 2010-07-13 | Microsoft Corporation | System and method for distinguishing safe and potentially unsafe data during runtime processing |
US7849509B2 (en) * | 2005-10-07 | 2010-12-07 | Microsoft Corporation | Detection of security vulnerabilities in computer programs |
US7702642B1 (en) * | 2005-12-07 | 2010-04-20 | Precise Software Solutions, Inc. | Method, system and computer-readable code for instrumenting code for logging database-related strings |
US20070156644A1 (en) * | 2006-01-05 | 2007-07-05 | Microsoft Corporation | SQL injection detector |
US20070240141A1 (en) * | 2006-03-30 | 2007-10-11 | Feng Qin | Performing dynamic information flow tracking |
US8510827B1 (en) * | 2006-05-18 | 2013-08-13 | Vmware, Inc. | Taint tracking mechanism for computer security |
US8621607B2 (en) * | 2006-05-18 | 2013-12-31 | Vmware, Inc. | Computational system including mechanisms for tracking taint |
US7788235B1 (en) * | 2006-09-29 | 2010-08-31 | Symantec Corporation | Extrusion detection using taint analysis |
US7870610B1 (en) * | 2007-03-16 | 2011-01-11 | The Board Of Directors Of The Leland Stanford Junior University | Detection of malicious programs |
US7882508B1 (en) * | 2007-04-27 | 2011-02-01 | Hewlett-Packard Development Company, L.P. | Tracing information flow using a signature |
US20090049547A1 (en) * | 2007-08-13 | 2009-02-19 | Yuan Fan | System for real-time intrusion detection of SQL injection web attacks |
US8321840B2 (en) * | 2007-12-27 | 2012-11-27 | Intel Corporation | Software flow tracking using multiple threads |
US8074281B2 (en) * | 2008-01-14 | 2011-12-06 | Microsoft Corporation | Malware detection with taint tracking |
US8117660B2 (en) * | 2008-06-19 | 2012-02-14 | Microsoft Corporation | Secure control flows by monitoring control transfers |
US20090328210A1 (en) * | 2008-06-30 | 2009-12-31 | Microsoft Corporation | Chain of events tracking with data tainting for automated security feedback |
US8893280B2 (en) * | 2009-12-15 | 2014-11-18 | Intel Corporation | Sensitive data tracking using dynamic taint analysis |
US8615804B2 (en) * | 2010-02-18 | 2013-12-24 | Polytechnic Institute Of New York University | Complementary character encoding for preventing input injection in web applications |
US10339575B2 (en) * | 2010-03-05 | 2019-07-02 | International Business Machines Corporation | Method and system for provenance tracking in software ecosystems |
US20110314337A1 (en) * | 2010-06-18 | 2011-12-22 | International Business Machines Corporation | Method and Apparatus for Locating Input-Model Faults Using Dynamic Tainting |
-
2009
- 2009-03-19 JP JP2009067407A patent/JP4669053B2/ja not_active Expired - Fee Related
- 2009-03-26 US US12/411,771 patent/US8413240B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20100083379A1 (en) | 2010-04-01 |
US8413240B2 (en) | 2013-04-02 |
JP2010102679A (ja) | 2010-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4669053B2 (ja) | 情報処理装置、情報処理方法及びこれを実現させるためのプログラム | |
US9824214B2 (en) | High performance software vulnerabilities detection system and methods | |
CN104081350B (zh) | 使用动态编程语言的元数据的运行时优化方法和系统 | |
JP5786512B2 (ja) | インジェクション攻撃を検出するためのセキュリティ・ソフトウェア・モジュールを検証するためのハイブリッド制約条件の求解 | |
EP2479673B1 (en) | Software architecture for validating C++ programs using symbolic execution | |
US8381194B2 (en) | Methods and apparatuses for selective code coverage | |
EP2420931B1 (en) | Solving hybrid constraints to generate test cases for validating a software module | |
EP2407887B1 (en) | Solving hybrid constraints to validate specification requirements of a software module | |
EP2479674A1 (en) | Optimizing libraries for validating C++ programs using symbolic execution | |
US9336125B2 (en) | Systems and methods for hardware-assisted type checking | |
US20110047531A1 (en) | Methods and apparatuses for selective code coverage | |
US20140122836A1 (en) | Confidence-driven selective predication of processor instructions | |
CN104090798A (zh) | 动静态结合的中断驱动程序数据竞争检测方法 | |
US8572748B2 (en) | Label-based taint analysis | |
US8650546B2 (en) | Static analysis based on observed string values during execution of a computer-based software application | |
Monniaux et al. | On the complexity of cache analysis for different replacement policies | |
Song et al. | Infeasible path detection based on code pattern and backward symbolic execution | |
Atig et al. | Context-bounded analysis of TSO systems | |
Jiang et al. | An exploitability analysis technique for binary vulnerability based on automatic exception suppression | |
US20090210655A1 (en) | Processor, method and computer program product including specialized store queue and buffer design for silent store implementation | |
KR20220154821A (ko) | 프로세서 파이프라인에서 간접 점프의 페치 스테이지 처리 | |
US12008149B2 (en) | Method and system for on demand control of hardware support for software pointer authentification in a computing system | |
Saeed et al. | Tag‐Protector: An Effective and Dynamic Detection of Illegal Memory Accesses through Compile Time Code Instrumentation | |
WO2021090497A1 (ja) | 推論装置、推論方法、及びコンピュータ読み取り可能な記録媒体 | |
Fattahi et al. | Introduction to SinJAR (a New Tool for Reverse Engineering Java Applications) and Tracing Its Malicious Actions Using Hidden Markov Models |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100921 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101117 |
|
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: 20101221 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140121 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4669053 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |