JP2013164732A - 情報処理装置 - Google Patents

情報処理装置 Download PDF

Info

Publication number
JP2013164732A
JP2013164732A JP2012027475A JP2012027475A JP2013164732A JP 2013164732 A JP2013164732 A JP 2013164732A JP 2012027475 A JP2012027475 A JP 2012027475A JP 2012027475 A JP2012027475 A JP 2012027475A JP 2013164732 A JP2013164732 A JP 2013164732A
Authority
JP
Japan
Prior art keywords
file
conversion
identity confirmation
confirmation information
converted
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.)
Pending
Application number
JP2012027475A
Other languages
English (en)
Inventor
Kazuki Mae
一樹 前
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.)
ISIS ASSET CO Ltd
Original Assignee
ISIS ASSET CO Ltd
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 ISIS ASSET CO Ltd filed Critical ISIS ASSET CO Ltd
Priority to JP2012027475A priority Critical patent/JP2013164732A/ja
Publication of JP2013164732A publication Critical patent/JP2013164732A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract


【課題】不正プログラム等によって実行形式ファイルやコンテンツファイルの改竄されることによる被害を防止するための情報処理装置を提供する。
【解決手段】不正プログラム等によって改竄される恐れのあるファイルを復元可能な形式で予め変換して保存しておき、アプリケーションプログラムが利用するときに復元する。変換ファイルが書き換えられたか否かは同一性確認情報の比較によって判別できる。ファイルが改竄されている場合には自動的に修復可能である。
【選択図】図9

Description

本発明は、不正プログラム等によって実行形式ファイルやコンテンツファイルが改竄されることを防止するための情報処理装置に関する。
情報セキュリティの重要性に対する社会的認識は向上してきており、システム的な対策が講じられてきたが、コンピュータウイルスなどの不正プログラム(以下、不正プログラム)による重大な事故はあとを絶たない。
これまでの対策はファイアウォール、認証システム、ウイルス対策ソフトなど、内部のシステム環境に外部から不正プログラムが侵入しないようにする考え方のものがほとんどである。
ファイアウォールは、予め許可したIPアドレスやプロトコルのパケットのみを受信可能にする。認証システムはパスワードなどの認証で許可された場合のみネットワークアクセスを許可する。
ウイルス対策ソフトは、不正プログラムの定義ファイルを参照して、条件に合致するデータを含むファイルや通信データを破棄する。
個々の不正プログラムに対する定義ファイルを用いた従来のウイルス対策ソフトでは、一部のコードが異なるいわゆる亜種や新種の不正プログラムを検知することはできないため、より一般化された定義ファイルを用いて類似の不正プログラムに対応できるようにしたり、プログラムの動作から不正プログラムの疑いのあるものを検知したりする技術が開発されてきた。
しかしながら、いわゆる標的型ウイルスと呼ばれる不正プログラムは、受信者が疑いを持たないようなタイトルや文面のメールで送られ、受信者が添付ファイルを開いた際に閲覧に用いるアプリケーションプログラムの脆弱性を利用して不正なコードが実行されるなど、極めて巧妙化されており、現在のシステム的対策で不正プログラムの侵入を完全に防ぐことは事実上達成されていない。
したがって、システム的対策をかいくぐって一旦内部のシステム環境に侵入されてしまうと、被害を食い止めることができないのが実情である。
不正プログラムの多くは、侵入したコンピュータにおいて自身のコピーをハードディスクに保存する。これが後に人の操作またはOS起動時に自動的に起動されることによって、情報を外部に送信するなどの不正プログラムが目的とする不正動作が発現する。
また、すでにインストールされているアプリケーションプログラムの実行形式ファイルに不正プログラムが不正なコードを埋め込んで、これが実行されることで不正プログラムが目的とする不正動作が発現する場合もある。
さらに、不正プログラムが目的とする不正行為の一つとして、Webページなどの改竄があげられる。図1に示すように、Webページを公開しようとする人(法人含む)は、Webサーバ101に公開するコンテンツをWebサーバ101の記憶装置102(例えば、HDD)にコンテンツファイル103として保存し、Webサーバアプリケーションプログラムを稼働させる。コンテンツファイル103の種類には、htmlファイル、画像ファイル、動画ファイル、音声ファイル、プログラムファイル(cgi、phpなど)、ダウンロード対象のファイルなどがある。
Webサーバアプリケーションプログラム101が、インターネット104を経由して、端末105〜107からのリクエストを受信すると、Webサーバアプリケーションプログラム101は、コンテンツファイル103を読み込んで、コンテンツデータを返信する(プログラムファイルの場合は実行結果が返信されるコンテンツデータになる)。
不正プログラムがこれらのコンテンツファイル103を書き換えると、意図しない内容が端末に表示されるだけでなく、不正ファイルが勝手に端末にダウンロードされて拡散するなどさらに被害が拡大する恐れがある。
本発明においては、不正プログラムの侵入を完全に防ぐことは事実上極めて困難であり、不正プログラムは内部のシステム環境に侵入しうるものであることを前提とし、不正プログラムが、自らのコピーを作成したり、インストールされている正常な実行形式ファイルやコンテンツファイルを書き換えたりした場合でも、改竄されたことを検知し、不正なコードが実行されないようにすることで、実害を防ぐことができる情報処理装置を提供することを目的とする。
本発明の第1の発明によれば、ファイルを読み込む読み込み手段と、前記読み込み手段によって読み込まれたファイルの内容をファイル毎に復元可能な方法で変換するコンテンツデータ変換手段と、前記読み込み手段によって読み込まれたファイルの内容を特定できる同一性確認情報を計算する同一性確認情報計算手段と、前記コンテンツデータ変換手段で変換されたファイルの内容を変換ファイルに書き込み、前記同一性確認情報計算手段により計算された同一性確認情報を前記変換ファイルと対応づけて保存する書き込み手段と
を備える変換処理部と、ネットワークを介して、外部の端末から指定されたファイルに対応する前記変換ファイルを変換前のファイルに復元する復元手段と、前記変換ファイルを読み込む又は実行する場合に、前記復元手段により復元された変換ファイルの内容から同一性確認情報を計算し、前記計算された同一性確認情報と、前記外部の端末から指定されたファイルに対応する変換ファイルと対応づけて保存された同一性確認情報とが一致するか否かを判定する同一性確認手段と、前記同一性確認手段により、一致する場合は、前記復元手段により復元されたファイルの内容を用いてプロセスの処理を継続させる実行手段と、前記同一性確認手段により、一致しない場合は、前記プロセス処理をエラーにする実行中止手段とを備える復元処理部と具備することを特徴とする情報処理装置、である。
本発明の第2の発明によれば、 実行ファイルを読み込む読み込み手段と、前記読み込み手段によって読み込まれた実行ファイルの内容をファイル毎に復元可能な方法で変換するコンテンツデータ変換手段と、前記読み込み手段によって読み込まれた実行ファイルの内容を特定できる同一性確認情報を計算する同一性確認情報計算手段と、前記コンテンツデータ変換手段で変換された実行ファイルの内容を変換ファイルに書き込み、前記同一性確認情報計算手段により計算された同一性確認情報を前記変換ファイルと対応づけて保存する書き込み手段とを備える変換処理部と、前記変換ファイルを読み込むまたは実行する場合に、前記変換ファイルを変換前の実行ファイルに復元する復元手段と、前記復元手段により復元された実行ファイルの内容から同一性確認情報を計算し、前記計算された同一性確認情報と、前記変換ファイルと対応づけて保存された同一性確認情報とが一致するか否かを判定する同一性確認手段と、前記同一性確認手段により、一致する場合は、前記復元手段により復元された実行ファイルの内容を用いてプロセスの処理を継続させる実行手段と、前記同一性確認手段により、一致しない場合は、前記プロセス処理をエラーにする実行中止手段とを備える復元処理部を具備することを特徴とする情報処理装置、である。
本発明によれば、不正なコードが実行されないようにすることで、実害を防ぐことができる情報処理装置を提供できる。
本発明の第1の実施の形態に係るWebサーバコンテンツ処理が実行されるWebサーバ101の接続環境を説明するための図である。 本発明の第1の実施の形態に係るWebサーバ101の典型的なハードウェア構成を示す図である。 記憶装置203に記憶されるソフトウェアを説明するための図である。 変換処理アプリケーションプログラム302の動作を説明するためのフローチャートである。 1ファイルで構成される変換ファイルを示す図である。 複数のファイルで構成された変換ファイルを示す図である。 管理ファイルの一例を示す図である。 復元処理モジュールロード時の処理を説明するためのフローチャートである。 ファイルオープンAPIを捕捉(フック)した場合の処理を説明するためのフローチャートである。 ファイルリードAPIを捕捉(フック)した場合の処理を説明するためのフローチャートである。 ファイルクローズAPIを捕捉(フック)した場合の処理を説明するためのフローチャートである。 ファイルオープンAPIを捕捉(フック)した場合の他の処理を説明するためのフローチャートである。 ファイルリードAPIを捕捉(フック)した場合の他の処理を説明するためのフローチャートである。 監視常駐プログラム304の起動時の処理の流れを示すフローチャートである。 監視常駐プログラム304が実行形式ファイルの実行APIを捕捉(フック)した場合の処理を説明するためのフローチャートである。 ライブラリロードAPIを捕捉(フック)した場合の処理を説明するためのフローチャートである。
<実施形態の概要>
本実施形態においては、不正プログラム等によって改竄された場合は、そのままの状態で利用してしまうことがないようにしたいファイル(例えば、実行ファイル、ネットワークを介して外部に提供されるコンテンツ)を復元可能な形式で予め破壊(変換)して保存しておき、利用するときに復元する。
これにより、万一変換状態のファイル(以下、変換ファイル)が不正プログラム等によって書き換えられ、不正なコードが書き込まれたとしても、利用時の復元処理によってその不正なコードは破壊されるため、不正なコードが実行されたり、実行可能な状態で他のに配信されたりすることはない。
復元可能なファイルの破壊(変換)方法としては、AESやDESなど暗号化のアルゴリズムを利用する方法が考えられる。また、変換ファイルは複数のファイルに分散して保存しておく方法もある。
変換アルゴリズムは複数のアルゴリズムのうちからユーザが選択できるようにしてもよいし、復元のオーバーヘッドを抑えるようにファイルサイズなどを参照して変換アルゴリズムを自動的に選択するようにしてもよい。
ファイルを変換して保存する際に、変換前の元データの内容からそれと対応する値を計算して変換ファイルと対応付けて保存しておき、利用時に復元した際に、復元後のファイル内容に対し同様の値を計算して、保存しておいた変換前の値と比較することによって、変換ファイルが書き換えられたか否かを確認することができる。
元データと対応付ける値(以下、同一性確認情報)としては、例えば、元データのハッシュ値を用いる方法が考えられる。変換ファイルの異常が検知された場合は、予めバックアップしておいた正常なファイルを用いて異常なファイルを上書きするなどして、自動的に修復することが可能である。
同一性確認情報や復元に必要な情報(以下、復元情報)は、変換ファイルとは別に管理・保存してもよいし、変換ファイルの一部に復元情報部を設けて同一ファイル内に保持してもよい。なお、同一性確認情報や復元情報を含む復元情報部はセキュリティの観点から、暗号化などを施してそのままでは読み取れないようにしておくことが望ましい。
一般に、ファイルが意図せず書き換えられていないかをチェックする方法として、定期的にファイルのサイズ、タイムスタンプ、ハッシュ値などをチェックする方法がある。しかしながら、定期的なチェックでは、チェックを行ってからアプリケーションプログラムがそのファイルを利用するまでの間に改竄された場合は検知することができない。
本実施形態においては、アプリケーションプログラムがファイルを利用するために当該ファイルにアクセスした際に、ファイルアクセスAPIを捕捉してチェックを行うため、改竄されたままの状態のファイルをアプリケーションプログラムが利用してしまうことを確実に防止できる。
復元処理による処理時間のオーバーヘッドを抑えるため、変換ファイルから復元した元データを一定時間メモリ上に保持しておき、それがメモリ上に保持されている間に、同ファイルに対するアクセスがあった場合には、新たに復元処理を行わず、メモリ上に保持してある元データを利用するようにしてもよい。
上記の付属処理を含めた復号処理全般は、サービスやデーモンなどの常駐プログラムとして提供されてもよいし、対象となるファイルを利用するプロセスにロードされるライブラリとして提供されてもよい。また、OSの一部として動作するドライバとして提供されてもよい。
復元可能な形式でファイルを破壊(変換)し、変換ファイルを作成する処理は、独立したアプリケーションプログラムとして提供される。このアプリケーションプログラムにより変換されたファイルがそのファイルを利用するプロセスにとって正当なファイルとされることになる。
本実施形態により、Webサーバ上でコンテンツファイルが不正プログラム等により意図せず書き換えられたとしても、これを確実に検知して、不正に書き換えられたコンテンツを端末に送信しないようにし、実害を防ぐことができる。
また、サーバまたは端末において実行形式ファイルが不正プログラム等により意図せず書き換えられたり、新たに作成されたりしても、これを確実に検知して、悪意あるコードが実行されないようすることができる。
いずれの場合も、ファイルが書き換えられていることを検知した場合は、これをバックアップファイルから自動的に修復することが可能である。
<実施の形態>
以下、本発明の実施の形態について、図面を参照して説明する。
<第1の実施の形態>(Webサーバコンテンツの保護)
図1は、本発明の第1の実施の形態に係るWebサーバコンテンツ処理が実行されるWebサーバ101の接続環境を説明するための図である。また、図2は、本発明の第1の実施の形態に係るWebサーバの典型的なハードウェア構成を示す図である。
同図に示すように、Webサーバ101は、バス200に接続されたCPU201、メモリ202、記憶装置203及び通信デバイス204を具備する。
CPU201は、記憶装置203に記憶された本発明の実施の形態に係るWebサーバ101のコンテンツ保護プログラム(変換処理アプリケーションプログラム、復元処理モジュール、監視常駐プログラム)などと協働して、本発明の実施の形態に係るコンテンツ保護処理を実行する他、Webサーバ101の全体の制御を司るものである。
メモリ202は、本発明の実施の形態に係るコンテンツ保護プログラムを実行する際に必要とされるワークエリアなどとして使用される。
記憶装置203は、Webサーバ101のコンテンツ保護プログラム、データなどを格納するためのものであり、例えば、ハードディスクドライブ(HDD)、光ディスクドライブ、DVD、MOなどの大容量記憶装置である。
通信デバイス204は、インターネット104を介した外部装置との通信の制御を司る。
記憶装置203には、図3に示すように、保護対象となるコンテンツの他に、OS(オペレーティングシステム)300、Webサーバアプリケーションプログラム301、変換処理アプリケーションプログラム302、復元処理モジュール303及び監視常駐プログラム304などが記憶されている。
保護対象となるコンテンツは、例えば、図1に示したように、Webサーバ上に保存してインターネットに公開するコンテンツファイル(htmlファイル、画像ファイル、動画ファイル、音声ファイル、cgiファイル、phpファイル、ダウンロード対象のファイルなど )である。
変換処理アプリケーションプログラム302は、本発明の第1の実施の形態及び第2の実施の形態に共通に使用されるプログラムであって、指定されたファイルの内容をファイルごとに復元可能な方法で変換し、ファイルの内容を特定できる同一性確認情報を計算し、変換ファイルと同一性確認情報を変換ファイルと対応付けて保存する。
復元処理モジュール303は、Webサーバアプリケーションプログラム301内に設けられてもよく、Web サーバアプリケーションプログラム301を直接変更しない場合には、Webサーバアプリケーションプログラム301によってロードされる動的ライブラリとして提供される。
本ライブラリに含まれる処理としては、復元処理本体のほか、Webサーバアプリケーションプログラム302のプロセス起動時に本ライブラリがロードされた際に、ファイルにアクセスするApplication Program Interface (API)をフックする処理が含まれる。フックするファイルアクセスAPIは少なくとも、ファイルオープンAPI、ファイルリードAPI、ファイルクローズAPIである。なお、監視常駐プログラム304については、第2の実施の形態において説明する。
Webサーバ101上に保存してインターネットに公開するコンテンツファイル(htmlファイル、画像ファイル、動画ファイル、音声ファイル、cgiファイル、phpファイル、ダウンロード対象のファイルなど )は、変換処理アプリケーションプログラム302により、復元可能な形式で変換され保存される。
図4は、変換処理アプリケーションプログラム302の動作を説明するためのフローチャートである。
Webサーバ101は、端末105−107からWebサーバ101のコンテンツファイルのリクエストを受信する。変換処理アプリケーションプログラム302は、このリクエストに対応する変換対象ファイルを指定し(S1)、指定した変換対象ファイルを読み込み(S2)、読み込まれたファイルの同一性確認情報の計算を行なう(S3)。同一性確認情報は、例えば、ハッシュ値である。
次に、読み込まれた変換対象ファイルの変換が行なわれる(S4)。この変換は、例えば、例えば、AESやDESなど暗号化のアルゴリズムである。その後、変換ファイルの書き込み(S5)、復元情報の書き込み(S6)及び同一性確認情報の書き込み(S7)が行なわれる。変換ファイルは、1ファイルであっても良いし、複数のファイルでも良い。
図5は、1ファイルで構成される変換ファイルを示す図である。
同図に示すように、1ファイルで構成された変換ファイル400は、復元情報部401及び変換データ部402を有する。
復元情報部401は、暗号の復号鍵、同一性確認情報などファイルの復元に必要な情報を格納する。変換データ部402は、変換されたデータを格納する。
図6は、複数のファイルで構成された変換ファイルを示す図である。
同図に示すように、最初の変換ファイル410−1は、復元情報部411及び変換データ部412−1を有し、変換ファイル410−2〜410−Nは、変換データ部412−2〜412−Nを有する。
復元情報部411は、同一性確認情報などファイルの復元に必要な情報の他、複数のファイルに対応した復元情報や同一性確認情報があるときは、これらの情報も格納する。
上述の例では、変換ファイルに書き込む場合について説明したが、別途管理ファイルを設けて、管理しても良い。図7は、管理ファイルの一例を示す図である。
同図に示すように、管理ファイル501は、管理ファイルのレコード番号502、元ファイルのファイルパス情報503、復元情報部504、変換ファイルの分割数505及び変換ファイルのファイルパス情報506を有する。
S7において、同一性情報の書き込み終了後、最後の変換対象ファイルか否かの判断が行なわれ(S8)、最後の変換対象ファイルではないと判断された場合にはS2の処理に戻る。一方、最後の変換対象ファイルであると判断された場合には、処理を終了する。
図8は、復元処理モジュールロード時の処理を説明するためのフローチャートである。
復元処理モジュール33がロードされると、当該復元処理モジュール33の初期化処理が行なわれ(S11)、ファイルオープンAPIのフック開始処理(S12)、ファイルリードンAPIのフック開始処理(S13)、ファイルクローズAPIのフック開始処理(S14)、その他APIのフック開始処理(S15)が行なわれ、処理を終了する。
図9は、ファイルオープンAPIを捕捉(フック)した場合の処理を説明するためのフローチャートである。
Webサーバアプリケーションプログラム301がファイルオープンAPIを発行すると(S21)、復元処理モジュール33が当該ファイルオープンAPIを捕捉する(S31)。
次に、ファイルオープンの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルか否かの判断が行なわれる(S32)。なお、この判断は、ファイルを参照して復号情報が存在するか否か、変換ファイルを管理する管理情報を参照するなどして行なわれる。
S32において、ファイルオープンの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルではないと判断された場合には、オリジナルのAPIをOS300に渡し(S33)、Webサーバアプリケーションプログラム301に戻り値を返す処理を行ない(S42)、処理を終了する。
一方、S32において、ファイルオープンの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルであると判断された場合には、変換ファイルのオープンを行ない(S34)、当該変換ファイルの復元情報部の読み込み(S35)、変換データ部の読み込み(S36)を行ない、変換データの復元処理を行なう(S37)。
次に、復元データから同一性確認情報を計算し(S38)、計算した同一性確認情報が元ファイルの同一性確認情報と一致しているか否かの判断が行なわれる(S39)。一致していると判断した場合には、復元データを記憶領域に保持し(S40)、復元データ管理情報の初期化処理を行なう(S41)。ここで、復元データ管理情報とは、例えば、ファイルハンドルや、次に、リードPIを捕捉した際に、メモリに保持した復元データのどの位置からデータを返せば良いかを示すファイルポインタに相当する情報などである。
次に、Webサーバアプリケーションプログラム301に戻り値を返す処理を行ない(S42)、処理を終了する。ここで、戻り値は捕捉したAPIの戻り値であり、OSがファイルオープンAPIが成功した場合に返す値と同じ値である。
一方、一致していないと判断された場合には、バックアップされた正常な変換ファイルで異常が検知された変換ファイルを上書きし、変換ファイルを修復し(S43)、戻り値にエラー値をセットして(S44)、Webサーバアプリケーションプログラム301に戻り値を返す(S42)。ここで、エラー値は、OSがエラー時に返す値の1つである。
Webサーバアプリケーションプログラム301は、ファイルオープンAPIの発行後(S21)、戻り待ち処理(S22)において当該戻り値を復元処理モジュール303から受け取る。これにより、Webサーバアプリケーションプログラム301でファイルオープン処理の成功やエラーが認識される。
図10は、ファイルリードAPIを補足した場合の処理を説明するためのフローチャートである。
Webサーバアプリケーションプログラム301がファイルリードAPIを発行すると(S51)、復元処理モジュール33が当該ファイルリードAPIを捕捉する(S61)。
次に、ファイルリードの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルか否かの判断が行なわれる(S62)。なお、この判断は、復元データ管理情報や、変換ファイルを管理する管理情報を参照するなどして行なわれる。
S62において、ファイルオープンの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルではないと判断された場合には、オリジナルのAPIをOS300に渡し(S63)、Webサーバアプリケーションプログラム301に戻り値を返す処理を行ない(S66)、処理を終了する。
一方、S62において、ファイルリードの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルであると判断された場合には、復元データから指定サイズをリードバッファにコピーし(S64)、復元データ管理情報の更新を行ない(S65)、アプリケーションに戻り値を返す(S66)。ここで、戻り値は、OSがファイルリードAPIが成功した場合に返す値と同じ値である。
Webサーバアプリケーションプログラム301は、ファイルリードAPIの発行後(S51)、戻り待ち処理において当該戻り値を復元処理モジュール303から受け取る(S52)。これにより、Webサーバアプリケーションプログラム301でファイルリード処理が成功したことが認識される。
図11は、ファイルクローズAPIを補足した場合の処理を説明するためのフローチャートである。
Webサーバアプリケーションプログラム301がファイルクローズAPIを発行すると(S71)、復元処理モジュール33が当該ファイルクローズAPIを捕捉する(S81)。
次に、ファイルクローズの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルか否かの判断が行なわれる(S82)。なお、この判断は、復元データ管理情報や、変換ファイルを管理する管理情報を参照するなどして行なわれる。
S82において、ファイルクローズの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルではないと判断された場合には、オリジナルのAPIをOS300に渡し(S83)、Webサーバアプリケーションプログラム301に戻り値を返す処理を行ない(S86)、処理を終了する。
一方、S82において、ファイルクローズの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルであると判断された場合には、復元データのクリアを行ない変換ファイルをクローズする(S84)。なお、変換ファイル修復処理(S43またはS128)において、アプリケーションまたはOSによりファイルがロックされており、バックアップファイルを上書きするなどしてファイルを修復することがその時点でできない場合、修復が必要なことを復元データ管理情報に記憶しておき、ファイルをクローズした後に修復処理を行ってもよい。さらに、復元データ管理情報のクリアを行ない(S85)、アプリケーションに戻り値を返す(S86)。ここで、戻り値は、OSがファイルクローズAPIが成功した場合に返す値と同じ値である。
Webサーバアプリケーションプログラム301は、ファイルクローズAPIの発行後(S71)、戻り待ち処理において当該戻り値を復元処理モジュール303から受け取る(S72)。これにより、Webサーバアプリケーションプログラム301でファイルクローズ処理が成功したことが認識される。
なお、Webサーバアプリケーションプログラム301がコンテンツファイルを読み込む際のブロックサイズ(一回のファイルリードAPIで読み込むサイズ)を復元処理モジュール303が認識している場合は、ファイルオープンAPI、ファイルリードAPIを捕捉した際の処理を図12及び図13に示すように行なっても良い。
この場合、変換アプリケーションプログラムの処理において、ブロック毎の復元情報および同一性確認情報を保管するようにし、復元処理においては、各ブロックを読み込む毎にそのブロックに対応した復元情報および同一性確認情報を用いる。
図12は、ファイルオープンAPIを捕捉した場合の他の処理を説明するためのフローチャートである。
Webサーバアプリケーションプログラム301がファイルオープンAPIを発行すると(S91)、復元処理モジュール33が当該ファイルオープンAPIを捕捉する(S101)。
次に、ファイルオープンの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルか否かの判断が行なわれる(S102)。なお、この判断は、復元データ管理情報や、変換ファイルを管理する管理情報を参照するなどして行なわれる。
S102において、ファイルオープンの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルではないと判断された場合には、オリジナルのAPIをOS300に渡し(S103)、Webサーバアプリケーションプログラム301に戻り値を返す処理を行ない(S107)、処理を終了する。
一方、S102において、ファイルオープンの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルであると判断された場合には、変換ファイルのオープンを行ない(S104)、当該変換ファイルの復元情報部の読み込み(S105)を行ない、復元データ管理情報の初期化処理を行なう(S106)。そして、Webサーバアプリケーションプログラム301に戻り値を返す処理を行ない(S107)、処理を終了する。ここで、戻り値は捕捉したAPIの戻り値であり、OSがファイルオープンAPIが成功した場合に返す値と同じ値である。
Webサーバアプリケーションプログラム301は、ファイルオープンAPIの発行後(S91)、戻り待ち処理において当該戻り値を復元処理モジュール303から受け取る。これにより、Webサーバアプリケーションプログラム301でファイルオープン処理が成功したことが認識される(S92)。
図13は、ファイルリードAPIを捕捉した場合の他の処理を説明するためのフローチャートである。
Webサーバアプリケーションプログラム301がファイルリードAPIを発行すると(S111)、復元処理モジュール33が当該ファイルリードAPIを捕捉する(S121)。
次に、ファイルリードの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルか否かの判断が行なわれる(S122)。なお、この判断は、復元データ管理情報や、変換ファイルを管理する管理情報を参照するなどして行なわれる。
S122において、ファイルオープンの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルではないと判断された場合には、オリジナルのAPIをOS300に渡し(S123)、Webサーバアプリケーションプログラム301に戻り値を返す処理を行ない(S131)、処理を終了する。
一方、S122において、ファイルリードの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルであると判断された場合には、変換データ部の読み込み(S124)を行ない、変換データの復元処理を行なう(S125)。
次に、復元データから同一性確認情報を計算し(S126)、計算した同一性確認情報が元ファイルの同一性確認情報と一致しているか否かの判断が行なわれる(S127)。一致していないと判断された場合には、バックアップされた正常な変換ファイルで異常が検知された変換ファイルを上書きし、変換ファイルを修復し(S128)、戻り値にエラー値をセットして(S129)、Webサーバアプリケーションプログラム301に戻り値を返す(S131)。ここで、エラー値は、OSがファイルオープンAPIのエラー時に返す値の1つである。
一方、一致していると判断された場合には、復元データをリードバッファにコピーし(S130)、アプリケーションに戻り値を返す(S131)。ここで、戻り値は、OSがファイルリードAPIが成功した場合に返す値と同じ値である。
Webサーバアプリケーションプログラム301は、ファイルリードAPIの発行(S111)後、戻り待ち処理(S112)において当該戻り値を復元処理モジュール303から受け取る。これにより、Webサーバアプリケーションプログラム301でファイルリード処理の成功が認識される。
なお、上記のWebサーバに対する実施の形態と同様に、FTPサーバなど、端末からのリクエストにより、ファイルを読み込んでデータを送信する他のアプリケーションプログラムに対しても本実施の形態が応用できることは明らかである。
本実施の形態によれば、Webサーバ上でコンテンツファイルが不正プログラム等により意図せず書き換えられたとしても、これを確実に検知して、不正に書き換えられたコンテンツを端末に送信しないようにし、実害を防ぐことができる。
また、ファイルが書き換えられていることを検知した場合は、これをバックアップファイルから自動的に修復することができる。
<第2の実施の形態>(実行形式ファイルの保護)
本実施の形態においては、実行形式ファイル(exeファイル、dllファイルなど)を、変換処理アプリケーションプログラム302を用いて、復元可能な形式で変換して保存しておく。変換処理アプリケーションプログラム302でファイルを変換する際の処理の流れは、第1の実施の形態と同様であり、図4に示されている。変換アルゴリズム、同一性確認情報の計算方法、復元情報や同一性確認情報の管理方法などの例も第1の実施の形態に準ずる。
復元処理は、常駐プロセスまたはOSの一部として動作するドライバとして提供される。これらの常駐プログラムは、OS起動時に起動されるようにし、全てのプロセスの起動を監視できるように、起動時にアプリケーションプログラム(OSのユーティリティプログラムなども含む)が発行するAPIのうち、少なくともプロセス起動API、ライブラリロードAPIをフックするようにする。
図14は、監視常駐プログラム304の起動時の処理の流れを示すフローチャートである。
同図に示すように、監視常駐プログラム304が起動されると、初期化処理(S141)が行なわれ、実行形式ファイルの実行APIのフック開始処理(S142)、ライブラリロードAPIのフック開始処理(S142)、その他APIのフック開始処理(S144)が行なわれる。
図15は、監視常駐プログラム304が実行形式ファイルの実行APIを捕捉した場合の処理を説明するためのフローチャートである。
Webサーバアプリケーションプログラム301やシェルプログラムなどが実行形式ファイル実行APIを発行すると(S151)、監視常駐プログラム304が当該実行APIを捕捉する(S161)。
次に、実行の対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルか否かの判断が行なわれる(S162)。なお、この判断は、ファイルを参照して復号情報が存在するか否か、変換ファイルを管理する管理情報を参照するなどして行なわれる。
S162において、実行の対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルではないと判断された場合には、オリジナルのAPIをOS300に渡し(S163)、Webサーバアプリケーションプログラム301に戻り値を返す処理を行ない(S171)、処理を終了する。
一方、S162において、実行の対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルであると判断された場合には、変換ファイルのオープンを行ない(S164)、当該変換ファイルの復元情報部の読み込み(S165)、変換データ部の読み込み(S166)を行ない、変換データの復元処理を行なう(S167)。
次に、復元データから同一性確認情報を計算し(S168)、計算した同一性確認情報が元ファイルの同一性確認情報と一致しているか否かの判断が行なわれる(S169)。一致していると判断した場合には、復元データを実行し(S170)、実行された結果を示す値を戻り値としてWebサーバアプリケーションプログラム301に返す(S171)。
一方、S169において一致していないと判断された場合には、バックアップされた正常な変換ファイルで異常が検知された変換ファイルを上書きし、変換ファイルを修復し(S172)、戻り値にエラー値をセットして(S173)、Webサーバアプリケーションプログラム301に戻り値を返す(S171)。ここで、エラー値は、OSが実行形式ファイルの実行APIのエラー時に返す値の1つである。
Webサーバアプリケーションプログラム301やシェルプログラムなどは、実行APIの発行(S151)後、戻り待ち処理(S152)において当該戻り値を監視常駐プログラム304から受け取る。これにより、Webサーバアプリケーションプログラム301やシェルプログラムなどで実行形式ファイルの実行処理のエラーが認識される。
図16は、ライブラリロードAPIを補足した場合の処理を説明するためのフローチャートである。
Webサーバアプリケーションプログラム301や他のプログラムがライブラリロード実行APIを発行すると(S181)、監視常駐プログラム304が当該実行APIを捕捉する(S191)。
次に、ロードの対象とされたライブラリが、変換処理アプリケーションプログラム302によって変換された変換ファイルか否かの判断が行なわれる(S192)。なお、この判断は、ファイルを参照して復号情報が存在するか否か、変換ファイルを管理する管理情報を参照するなどして行なわれる。
S192において、ロードの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルではないと判断された場合には、オリジナルのAPIをOS300に渡し(S193)、API発行元プログラムに戻り値を返す処理を行ない(S201)、処理を終了する。
一方、S192において、ロードの対象とされたファイルが、変換処理アプリケーションプログラム302によって変換された変換ファイルであると判断された場合には、変換ファイルのオープンを行ない(S194)、当該変換ファイルの復元情報部の読み込み(S195)、変換データ部の読み込み(S196)を行ない、変換データの復元処理を行なう(S197)。
次に、復元データから同一性確認情報を計算し(S198)、計算した同一性確認情報が元ファイルの同一性確認情報と一致しているか否かの判断が行なわれる(S199)。一致していると判断した場合には、復元データをロードし(S200)、ライブラリのロードが成功したことを示す値を戻り値としてAPI発行元プログラムに返す(S201)。
一方、S199において一致していないと判断された場合には、バックアップされた正常な変換ファイルで異常が検知された変換ファイルを上書きし、変換ファイルを修復し(S202)、戻り値にエラー値をセットして(S203)、API発行元プログラムに戻り値を返す(S201)。ここで、エラー値は、ライブラリのロードのエラー時に返す値の1つである。
API発行元プログラムは、実行APIの発行(S181)後、戻り待ち処理(S182)において当該戻り値を監視常駐プログラム304から受け取る。これにより、API発行元プログラムでライブラリロードの実行処理のエラーが認識される。
本実施形態によれば、サーバまたは端末において実行形式ファイルがウイルス等により意図せず書き換えられたとしても、これを確実に検知して、不正に書き換えられたコードが実行されないようにし、実害を防ぐことができる。
また、実行形式ファイルが書き換えられていることを検知した場合は、これをバックアップファイルから自動的に修復することができる。また、第1の実施の形態において、Webサーバアプリケーションプログラムにより実行される実行形式ファイルも同様に保護することができる。
上述のように、本実施の形態は、実行形式ファイルの正当性を維持するために利用することができる。なお、プログラムの修復パッチを適用するために用いられる実行形式ファイルに本実施の形態を適用することによって、パッチ適用の正当性を確保することができる。この場合、修復パッチ適用プログラムが発行するファイル書き込みAPIをフックし、変換アプリケーションプログラムで行うファイル変換処理をファイル書き込みAPI捕捉時に行うようにし、パッチデータ適用後の実行形式ファイルの変換処理を行うようにしてもよい。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
101…Webサーバ、102…記憶装置、103…コンテンツファイル、104…インターネット、105…スマートフォン、106…モバイル端末、107…デスクトップ端末、201…CPU、202…メモリ、203…記憶装置、204…通信デバイス、300…OS、301…Webサーバアプリケーションプログラム、302…変換処理アプリケーションプログラム、303…復元処理モジュール、304…監視常駐プログラム、400…変換ファイル、401…復元情報部、402…変換データ部、501…管理ファイル、502…レコード番号、503…元ファイルのファイルパス情報、504…復元情報部、505…変換ファイルの分割数、506…変換ファイルのファイルパス情報。

Claims (9)

  1. ファイルを読み込む読み込み手段と、
    前記読み込み手段によって読み込まれたファイルの内容をファイル毎に復元可能な方法で変換するコンテンツデータ変換手段と、
    前記読み込み手段によって読み込まれたファイルの内容を特定できる同一性確認情報を計算する同一性確認情報計算手段と、
    前記コンテンツデータ変換手段で変換されたファイルの内容を変換ファイルに書き込み、前記同一性確認情報計算手段により計算された同一性確認情報を前記変換ファイルと対応づけて保存する書き込み手段と
    を備える変換処理部と、
    ネットワークを介して、外部の端末から指定されたファイルに対応する前記変換ファイルを変換前のファイルに復元する復元手段と、
    前記変換ファイルを読み込む又は実行する場合に、前記復元手段により復元された変換ファイルの内容から同一性確認情報を計算し、前記計算された同一性確認情報と、前記外部の端末から指定されたファイルに対応する変換ファイルと対応づけて保存された同一性確認情報とが一致するか否かを判定する同一性確認手段と、
    前記同一性確認手段により、一致する場合は、前記復元手段により復元されたファイルの内容を用いてプロセスの処理を継続させる実行手段と、
    前記同一性確認手段により、一致しない場合は、前記プロセス処理をエラーにする実行中止手段と
    を備える復元処理部と
    具備することを特徴とする情報処理装置。
  2. 実行ファイルを読み込む読み込み手段と、
    前記読み込み手段によって読み込まれた実行ファイルの内容をファイル毎に復元可能な方法で変換するコンテンツデータ変換手段と、
    前記読み込み手段によって読み込まれた実行ファイルの内容を特定できる同一性確認情報を計算する同一性確認情報計算手段と、
    前記コンテンツデータ変換手段で変換された実行ファイルの内容を変換ファイルに書き込み、前記同一性確認情報計算手段により計算された同一性確認情報を前記変換ファイルと対応づけて保存する書き込み手段と
    を備える変換処理部と、
    前記変換ファイルを読み込むまたは実行する場合に、前記変換ファイルを変換前の実行ファイルに復元する復元手段と、
    前記復元手段により復元された実行ファイルの内容から同一性確認情報を計算し、前記計算された同一性確認情報と、前記変換ファイルと対応づけて保存された同一性確認情報とが一致するか否かを判定する同一性確認手段と、
    前記同一性確認手段により、一致する場合は、前記復元手段により復元された実行ファイルの内容を用いてプロセスの処理を継続させる実行手段と、
    前記同一性確認手段により、一致しない場合は、前記プロセス処理をエラーにする実行中止手段と
    を備える復元処理部と
    具備することを特徴とする情報処理装置。
  3. 前記情報処理装置は、Webサーバ又はFTPサーバであることを特徴とする請求項1又は請求項2記載の情報処理装置。
  4. 前記実行中止手段は、前記書き込み手段により書き込まれた変換ファイルおよび同一性確認情報の複製を、前記復元手段の対象となった前記変換ファイルおよび前記同一性確認手段で用いた前記変換ファイルと対応づけて保存された前記同一性確認情報に上書きする修復手段をさらに具備することを特徴とする請求項1又は請求項2に記載の情報処理装置。
  5. 前記変換ファイルは、複数のファイルで構成されていることを特徴とする請求項1又は請求項2に記載の情報処理装置。
  6. 前記書き込み手段は、同一性確認情報を変換ファイル内に保存することを特徴とする請求項1又は請求項2に記載の情報処理装置。
  7. 前記実行手段は、
    復元された変換前のファイルを一定時間メモリに保持し、
    前記復元された変換前のファイルがメモリに保持されている間は、前記プロセスによる前記復元された変換前のファイルへのアクセスは、前記メモリに保持されている前記復元された変換前のファイルに行なわれることを特徴とする請求項1又は請求項2に記載の情報処理装置。
  8. ファイルを読み込み、
    前記読み込まれたファイルの内容をファイル毎に復元可能な方法で変換し、
    前記読み込まれたファイルの内容を特定できる同一性確認情報を計算し、
    前記変換されたファイルの内容を変換ファイルに書き込み、前記計算された同一性確認情報を前記変換ファイルと対応づけて保存し、
    ネットワークを介して、外部の端末から指定されたファイルに対応する前記変換ファイルを変換前のファイルに復元し、
    前記変換ファイルを読み込む又は実行する場合に、前記復元された変換ファイルの内容から同一性確認情報を計算し、前記計算された同一性確認情報と、前記外部の端末から指定されたファイルに対応する変換ファイルと対応づけて保存された同一性確認情報とが一致するか否かを判定し、
    一致する場合は、前記復元手段により復元されたファイルの内容を用いてプロセスの処理を継続させ、一致しない場合は、前記プロセス処理をエラーにする情報処理装置におけるコンテンツ保護方法。
  9. 実行ファイルを読み込み、
    前記読み込まれた実行ファイルの内容をファイル毎に復元可能な方法で変換し、
    前記読み込まれた実行ファイルの内容を特定できる同一性確認情報を計算し、
    前記変換された実行ファイルの内容を変換ファイルに書き込み、前記計算された同一性確認情報を前記変換ファイルと対応づけて保存し、
    前記変換ファイルを読み込むまたは実行する場合に、前記変換ファイルを変換前の実行ファイルに復元し、
    前記復元された実行ファイルの内容から同一性確認情報を計算し、前記計算された同一性確認情報と、前記変換ファイルと対応づけて保存された同一性確認情報とが一致するか否かを判定し、
    一致する場合は、前記復元手段により復元された実行ファイルの内容を用いてプロセスの処理を継続させ、一致しない場合は、前記プロセス処理をエラーにする情報処理装置における実行ファイルの保護方法。
JP2012027475A 2012-02-10 2012-02-10 情報処理装置 Pending JP2013164732A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012027475A JP2013164732A (ja) 2012-02-10 2012-02-10 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012027475A JP2013164732A (ja) 2012-02-10 2012-02-10 情報処理装置

Publications (1)

Publication Number Publication Date
JP2013164732A true JP2013164732A (ja) 2013-08-22

Family

ID=49176044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012027475A Pending JP2013164732A (ja) 2012-02-10 2012-02-10 情報処理装置

Country Status (1)

Country Link
JP (1) JP2013164732A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016021220A1 (ja) * 2014-08-04 2016-02-11 根来 文生 侵入したウイルスを自律的に無力化するプログラムの定義構造、及び同構造を備えたプログラム、同プログラムを搭載した記憶媒体、並びにウイルス問題を自律的に解法する方法・装置
JP2016212496A (ja) * 2015-04-30 2016-12-15 富士通株式会社 修正適用情報作成プログラム、修正適用情報作成装置及び修正適用情報作成方法
JP2017075972A (ja) * 2015-10-12 2017-04-20 株式会社コシダカホールディングス ファイルサイズチェック
JP2019079289A (ja) * 2017-10-25 2019-05-23 システムインテリジェント株式会社 情報漏洩防止装置、及び情報漏洩防止プログラム
JP2020135265A (ja) * 2019-02-18 2020-08-31 大日本印刷株式会社 電子情報記憶媒体、icカード、改竄チェック方法、及びプログラム
JP7174468B1 (ja) * 2022-06-13 2022-11-17 文生 根来 ウイルス侵入されたプログラムがプログラム自身でウイルスデータを排除できるプログラム開発方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020024735A (ja) * 2014-08-04 2020-02-13 根来 文生 実行状態にあるプログラムの記憶領域が当該プログラムの本来の意図に反する情報に汚染された場合に当該汚染を除染するための方法及びプログラム
JPWO2016021220A1 (ja) * 2014-08-04 2017-04-27 根来 文生 本来の業務処理を正統な主語の脈略として成立させるための手順をコンピュータに実行させるシナリオ関数として規定されるプログラム
JP2016042361A (ja) * 2014-08-04 2016-03-31 根来 文生 ウィルス侵入検知及び無力化方法
WO2016021220A1 (ja) * 2014-08-04 2016-02-11 根来 文生 侵入したウイルスを自律的に無力化するプログラムの定義構造、及び同構造を備えたプログラム、同プログラムを搭載した記憶媒体、並びにウイルス問題を自律的に解法する方法・装置
JP6086977B2 (ja) * 2014-08-04 2017-03-01 根来 文生 本来の業務処理を正統な主語の脈略として成立させるための手順をコンピュータに実行させるシナリオ関数として規定されるプログラム
US10235522B2 (en) 2014-08-04 2019-03-19 Fumio Negoro Definition structure of program for autonomously disabling invading virus, program equipped with structure, storage medium installed with program, and method/device for autonomously solving virus problem
JP2016035762A (ja) * 2014-08-04 2016-03-17 根来 文生 ウィルス侵入検知及び無力化方法
JP2016212496A (ja) * 2015-04-30 2016-12-15 富士通株式会社 修正適用情報作成プログラム、修正適用情報作成装置及び修正適用情報作成方法
JP2017075972A (ja) * 2015-10-12 2017-04-20 株式会社コシダカホールディングス ファイルサイズチェック
JP2019079289A (ja) * 2017-10-25 2019-05-23 システムインテリジェント株式会社 情報漏洩防止装置、及び情報漏洩防止プログラム
JP2020135265A (ja) * 2019-02-18 2020-08-31 大日本印刷株式会社 電子情報記憶媒体、icカード、改竄チェック方法、及びプログラム
JP7247638B2 (ja) 2019-02-18 2023-03-29 大日本印刷株式会社 電子情報記憶媒体、icカード、改竄チェック方法、及びプログラム
JP7174468B1 (ja) * 2022-06-13 2022-11-17 文生 根来 ウイルス侵入されたプログラムがプログラム自身でウイルスデータを排除できるプログラム開発方法
WO2023242901A1 (ja) * 2022-06-13 2023-12-21 文生 根来 ウイルス侵入されたプログラムがプログラム自身でウイルスデータを排除できるプログラム開発方法

Similar Documents

Publication Publication Date Title
US10303877B2 (en) Methods of preserving and protecting user data from modification or loss due to malware
JP5460698B2 (ja) 安全なアプリケーションストリーミング
US8555089B2 (en) Program execution apparatus, control method, control program, and integrated circuit
JP5191043B2 (ja) プログラムの不正起動防止システム及び方法
US8522015B2 (en) Authentication of binaries in memory with proxy code execution
US20170249483A1 (en) Information processing apparatus, information processing system, information processing method, and computer-readable medium
US20160078238A1 (en) Data leakage prevention system, method, and computer program product for preventing a predefined type of operation on predetermined data
JP7537661B2 (ja) 高度なランサムウェア検出
JP2013164732A (ja) 情報処理装置
US20110283358A1 (en) Method and system to detect malware that removes anti-virus file system filter driver from a device stack
KR101828600B1 (ko) 상황 인식 기반의 랜섬웨어 탐지
US20100235916A1 (en) Apparatus and method for computer virus detection and remediation and self-repair of damaged files and/or objects
TWI607338B (zh) 儲存裝置及其資料保護方法與資料保護系統
CN107330328A (zh) 防御病毒攻击的方法、装置及服务器
CN113946873B (zh) 离盘文件追溯方法、装置、终端及存储介质
US20100037066A1 (en) Information processing apparatus, method, program, and information processing system
US20130067238A1 (en) Security mechanism for developmental operating systems
JP2007072969A (ja) 動作履歴保護装置及び動作履歴保護プログラム
US8341428B2 (en) System and method to protect computing systems
JP2022553061A (ja) ランサムウェア防止
CN109145602B (zh) 一种勒索软件攻击的防护方法及装置
US9202065B2 (en) Detecting sensitive data access by reporting presence of benign pseudo virus signatures
KR102557007B1 (ko) 바이너리 파일 재구성 방법 및 그 장치
KR101673369B1 (ko) 모바일 단말기에서 수행되는 무결성 검증을 통해 모바일 단말기의 어플리케이션의 보안을 향상시키는 보안 제공 방법
US11899782B1 (en) Preserving DLL hooks