JP2019079289A - Information leakage prevention device, and information leakage prevention program - Google Patents
Information leakage prevention device, and information leakage prevention program Download PDFInfo
- Publication number
- JP2019079289A JP2019079289A JP2017205913A JP2017205913A JP2019079289A JP 2019079289 A JP2019079289 A JP 2019079289A JP 2017205913 A JP2017205913 A JP 2017205913A JP 2017205913 A JP2017205913 A JP 2017205913A JP 2019079289 A JP2019079289 A JP 2019079289A
- Authority
- JP
- Japan
- Prior art keywords
- security
- mode
- storage unit
- api
- application program
- 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.)
- Granted
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
Description
本発明は、コンピュータからの情報の漏洩防止技術に関する。 The present invention relates to a technique for preventing information leakage from a computer.
コンピュータの振る舞いは,セキュリティの観点から制限される場合がある。例えば、外部メディア、ネットワーク、又は出力機器へのアクセス、実行できるプログラムの種類、ファイルが書き込み可能な場所等につき、制限される場合がある。このコンピュータの振る舞いを制限する基準を本明細書においてセキュリティポリシーと称し、セキュリティポリシーが適用されたコンピュータの状態をセキュリティモードと称する。
通常、セキュリティポリシーは、使用中のコンピュータにおいて一種類のみが適用され、異なるセキュリティポリシーを適用する場合には、使用中の状態を終了してログオンし直すことが一般的である。
Computer behavior may be restricted from a security point of view. For example, access to external media, networks, or output devices, types of programs that can be executed, places where files can be written, etc. may be limited. The criteria for restricting the behavior of the computer are referred to herein as a security policy, and the state of the computer to which the security policy is applied is referred to as a security mode.
Usually, only one type of security policy is applied on the computer in use, and when applying different security policies, it is common to exit the in-use state and log on again.
しかしながら、このようにコンピュータにログオンし直すことなく、ユーザの使用状況に応じてコンピュータのセキュリティポリシーを柔軟かつ即時に変更することができれば、利便性が高く、セキュリティの観点からもより好ましい。
例えば、ユーザがある特定のファイルやネットワーク、あるいはファイルサーバにアクセスしたタイミングで、コンピュータのセキュリティポリシーを状況に応じた様々な内容に変更することができれば大変有用である。
However, if it is possible to change the security policy of the computer flexibly and immediately according to the user's usage condition without logging on the computer in this way, it is highly convenient and preferable from the viewpoint of security.
For example, it is very useful if the security policy of the computer can be changed to various contents according to the situation when the user accesses a specific file or network or file server.
そこで、本発明者は鋭意研究して、特定種類のアプリケーションプログラムインタフェース(API)が呼び出された時に、その呼び出し処理を横取りして、状況に応じたセキュリティポリシーにもとづきコンピュータの動作を制御することで、コンピュータのセキュリティモードを柔軟かつ即時に変更することを可能とすることに成功した。 Therefore, the present inventors diligently research to intercept the calling process when a specific type of application program interface (API) is called, and control the operation of the computer based on the security policy according to the situation. It succeeded in making it possible to change the security mode of the computer flexibly and instantly.
このようなAPIの呼び出し処理の横取りを利用する技術として、特許文献1にはアプリケーションからのファイルアクセスを横取りして、ユーザが意図しないファイルの転送が行われないようにすることが開示されている。また、特許文献2には、APIフックを用いてコンピュータシステムにおけるプロセスの不正アクセスを防止することが開示されている。
しかしながら、これらいずれの文献にも、APIの呼び出し処理を横取りすることによって、コンピュータのセキュリティモードを状況に応じた様々な内容に変更することについては記載されていない。
Patent Document 1 discloses that a file access from an application is intercepted so that transfer of a file unintended by the user is not performed, as a technology that uses such interception of API call processing. . Further,
However, none of these documents describes changing the security mode of the computer to various contents according to the situation by intercepting the API call process.
また、本発明者は、APIフックを用いることによって、一定の場合に一時的に、周辺機器へのアクセス等を制限し、コンピュータを擬似的にシンクライアント化する技術(特許文献3)や、APIによる処理対象のファイルがウイルスに感染しているか否かを検知することで、ウイルスの拡散を防止する技術(特許文献4)、ファイル名に特定の文字列が含まれているか否かを判定することで、そのファイルを暗号化又は復号化することを可能にする技術(特許文献5)を既に開発している。
しかしながら、これらはいずれもコンピュータのセキュリティモードを状況に応じた様々な内容に変更することを可能にするものではなかった。
In addition, the present inventor temporarily limits access to peripheral devices, etc. in certain cases by using an API hook, and a technology for making a computer into a thin client virtually (API Patent Document 3), an API Technology to prevent the spread of virus by detecting whether the file to be processed by the virus is infected with the virus (Patent Document 4), it is determined whether the file name contains a specific character string Technology has already been developed that enables the file to be encrypted or decrypted (Patent Document 5).
However, none of these have made it possible to change the security mode of the computer to various contents according to the situation.
さらに、本発明者は、ユーザがコンピュータを使用中の状態において、アプリケーションプログラム毎に異なるセキュリティポリシーを適用すると、より安全かつ便利にコンピュータを使用することができることに想到した。
具体的には、ブラウザはインターネットに接続できるが、その他のプログラムはインターネットに接続できないようにすれば、例えばウイルスソフトウェアが隠れて動作していても、インターネット経由でそのウイルスソフトウェアを使って情報を持ち出すことを防止でき、かつインターネットの閲覧はブラウザによってできるといった使用方法が可能となる。
Furthermore, the present inventor has conceived that applying a different security policy to each application program while the user is using the computer makes it possible to use the computer more safely and conveniently.
Specifically, if a browser can connect to the Internet but other programs can not connect to the Internet, for example, even if virus software is hidden and operating, information is taken out using the virus software via the Internet In addition, it is possible to prevent Internet browsing by using a browser.
そこで、本発明者は、さらに鋭意研究して、一台のコンピュータにおいて、アプリケーション毎に、異なる複数のセキュリティポリシーを同時に適用可能な情報漏洩防止装置を開発することに成功した。
このような情報漏洩防止装置について記載のある先行文献は見あたらなかった。
Therefore, the inventor of the present invention has conducted further intensive research and succeeded in developing an information leak prevention device capable of simultaneously applying a plurality of different security policies for each application in one computer.
There is no prior art document that describes such an information leak prevention device.
本発明は、上記の事情にかんがみなされたものであり、コンピュータの再起動やログオンなどを行うことなく、コンピュータのセキュリティモードを状況に応じた様々な内容に変更可能な情報漏洩防止装置、及び情報漏洩防止プログラムの提供を目的とする。
また、一台のコンピュータにおいて、アプリケーション毎に、異なる複数のセキュリティポリシーを同時に適用可能な情報漏洩防止装置、及び情報漏洩防止プログラムの提供を目的とする。
The present invention has been considered in view of the above-mentioned circumstances, and it is possible to change the security mode of the computer to various contents according to the situation without restarting the computer and logging on, and information It aims to provide a leak prevention program.
Another object of the present invention is to provide an information leak prevention device and an information leak prevention program capable of simultaneously applying a plurality of different security policies to each application in one computer.
上記目的を達成するため、本発明の情報漏洩防止装置は、セキュリティのモードを変更することにより情報の漏洩を防止する情報漏洩防止装置であって、前記モードを切り替える条件毎に対応するモードを記憶する切替条件記憶部と、モードの切替により設定するモードを記憶する設定モード記憶部と、アプリケーションプログラムから特定種類のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りし、前記切替条件記憶部の切替条件を参照して、前記アプリケーションプログラムが実行しようとする内容と一致する条件が存在する場合、当該条件に対応するモードを取得する横取り処理部と、前記横取り処理部から前記モードを取得して、前記設定モード記憶部に設定するモード切替部とを備え、前記横取り処理部は、アプリケーションプログラムから前記特定種類と同一又は異なる所定のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りし、前記設定モード記憶部を参照して、当該モードに対応するモード内容にしたがって、前記アプリケーションプログラムインタフェースによる処理を許可又は禁止することによって、当該情報漏洩防止装置の内部における動作の制御、及び/又は、当該情報漏洩防止装置の外部に対する動作の制御を行う構成としてある。 In order to achieve the above object, an information leakage prevention device of the present invention is an information leakage prevention device which prevents information leakage by changing a security mode, and stores a mode corresponding to each of the conditions for switching the mode. When the switching condition storage unit to perform, the setting mode storage unit storing the mode to be set by switching the mode, and the application program interface call processing from the application program is performed, the call processing is intercepted and the switching is performed Condition reference to the switching condition of the condition storage unit If there is a condition that matches the content to be executed by the application program, there is a takeover processing unit that acquires a mode corresponding to the condition, and the mode from the takeover processing unit Mode switching unit that acquires the setting mode and stores it in the setting mode storage unit The takeover processing unit intercepts the calling process when the application program calls a predetermined application program interface that is the same as or different from the specific type, and refers to the setting mode storage unit. According to the mode content corresponding to the mode, by permitting or prohibiting the process by the application program interface, the control of the operation inside the information leak prevention device and / or the operation to the outside of the information leak prevention device It is configured to control.
また、本発明の情報漏洩防止装置を、前記横取り処理部として前記APIフックが、前記アプリケーションプログラムごとに二以上備えられると共に、前記APIフックにそれぞれ対応する二以上で別個のセキュリティ記憶部が備えられ、前記セキュリティ記憶部にはセキュリティの内容が記憶され、前記アプリケーションプログラムに対して使用される前記APIフックが設定されており、全ての前記APIフックが順次実行されて、前記アプリケーションプログラムに対して使用される前記APIフックのみが、対応する前記セキュリティ記憶部から前記セキュリティ内容を取得して、当該APIフックにより、前記セキュリティ内容にしたがって前記アプリケーションプログラムインタフェースによる処理が許可又は禁止される構成とすることも好ましい。 Furthermore, the information leakage prevention device of the present invention is provided with two or more API hooks as the takeover processing unit for each application program, and two or more separate security storage units respectively corresponding to the API hooks. The content of security is stored in the security storage unit, and the API hook used for the application program is set, and all the API hooks are sequentially executed and used for the application program Only the API hook to be acquired acquires the security content from the corresponding security storage unit, and the API hook permits or prohibits processing by the application program interface according to the security content. Rukoto also preferred.
また、本発明の情報漏洩防止装置を、前記横取り処理部として前記DLLインジェクションが、前記アプリケーションプログラムごとに備えられると共に、二以上で別個のセキュリティ記憶部が備えられ、前記セキュリティ記憶部にはセキュリティの内容が記憶され、前記アプリケーションプログラムに対して使用されるセキュリティが設定されており、前記DLLインジェクションが実行されて、前記アプリケーションプログラムに対応する前記セキュリティの内容を前記セキュリティ記憶部から取得して、当該DLLインジェクションにより、前記セキュリティの内容にしたがって前記アプリケーションプログラムインタフェースによる処理が許可又は禁止される構成とすることも好ましい。 Further, the information leakage prevention device of the present invention is provided with the DLL injection as the takeover processing unit for each application program, and two or more separate security storage units are provided, and the security storage unit has security Contents are stored, and security to be used for the application program is set, and the DLL injection is executed to acquire the contents of the security corresponding to the application program from the security storage unit, It is also preferable that the DLL program permits or prohibits processing by the application program interface according to the content of the security.
また、本発明の情報漏洩防止プログラムは、セキュリティのモードを変更することによりコンピュータからの情報の漏洩を防止するための情報漏洩防止プログラムであって、前記モードを切り替える条件毎に対応するモードを記憶する切替条件記憶部と、モードの切替により設定するモードを記憶する設定モード記憶部とを備えたコンピュータに、アプリケーションプログラムから特定種類のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りさせ、前記切替条件記憶部の切替条件を参照させて、前記アプリケーションプログラムが実行しようとする内容と一致する条件が存在する場合、当該条件に対応するモードを取得させ、前記設定モード記憶部に設定させ、アプリケーションプログラムから前記特定種類と同一又は異なる所定のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りさせ、前記設定モード記憶部を参照させて、当該モードに対応するモード内容にしたがって、前記アプリケーションプログラムインタフェースによる処理を許可又は禁止することによって、当該情報漏洩防止装置の内部における動作の制御、及び/又は、当該情報漏洩防止装置の外部に対する動作の制御を行わせる構成としてある。 Further, the information leakage prevention program of the present invention is an information leakage prevention program for preventing leakage of information from a computer by changing a security mode, and stores a mode corresponding to each of the conditions for switching the mode. When a call processing of a specific type of application program interface is performed from an application program to a computer provided with a switching condition storage unit and a setting mode storage unit storing a mode to be set by mode switching, the call processing is performed If there is a condition that matches the content to be executed by the application program with reference to the switching condition of the switching condition storage unit, the mode corresponding to the condition is acquired and the setting mode storage unit is made to take over. Application program When a calling process of a predetermined application program interface which is the same as or different from the specific type is performed, the calling process is intercepted and the setting mode storage unit is referred to according to the mode content corresponding to the mode By permitting or prohibiting the processing by the application program interface, control of the operation inside the information leakage prevention device and / or control of the operation to the outside of the information leakage prevention device are performed.
また、本発明の情報漏洩防止装置プログラムを、APIフックが、前記アプリケーションプログラムごとに二以上備えられると共に、セキュリティの内容を記憶する、前記APIフックにそれぞれ対応する二以上で別個のセキュリティ記憶部をさらに備え、かつ前記アプリケーションプログラムに対して使用される前記APIフックが設定されている前記コンピュータに、全ての前記APIフックを順次実行させて、前記アプリケーションプログラムに対して使用される前記APIフックのみに、対応する前記セキュリティ記憶部から前記セキュリティの内容を取得させ、当該APIフックにより、前記セキュリティの内容にしたがって前記アプリケーションプログラムインタフェースによる処理を許可又は禁止させる構成とすることも好ましい。 Further, the information leak prevention device program of the present invention is provided with two or more API hooks for each of the application programs, and stores security contents. Two or more separate security storage units respectively corresponding to the API hooks Further, the computer in which the API hook used for the application program is set is caused to sequentially execute all the API hooks, and only for the API hook used for the application program It is also preferable that the content of the security is acquired from the corresponding security storage unit, and that processing by the application program interface is permitted or prohibited according to the content of the security by the API hook. There.
また、本発明の情報漏洩防止装置プログラムを、DLLインジェクションが、前記アプリケーションプログラムごとに備えられると共に、セキュリティの内容を記憶する二以上で別個のセキュリティ記憶部をさらに備え、かつ前記アプリケーションプログラムに対して使用されるセキュリティが設定されている前記コンピュータに、前記DLLインジェクションを実行させて、前記アプリケーションプログラムに対応する前記セキュリティの内容を前記セキュリティ記憶部から取得させ、当該DLLインジェクションにより、前記セキュリティの内容にしたがって前記アプリケーションプログラムインタフェースによる処理を許可又は禁止させる構成とすることも好ましい。 Further, the information leak prevention device program of the present invention is provided with DLL injection for each of the application programs, and further comprises two or more separate security storage units for storing security content, and the application program In the computer in which the security to be used is set, the DLL injection is executed, the content of the security corresponding to the application program is acquired from the security storage unit, and the content of the security is set by the DLL injection. Therefore, it is also preferable to allow or prohibit processing by the application program interface.
本発明によれば、コンピュータの再起動やログオンなどを行うことなく、コンピュータのセキュリティモードを状況に応じた様々な内容に変更することが可能となる。
また、一台のコンピュータにおいて、アプリケーション毎に、異なる複数のセキュリティポリシーを同時に適用することも可能となる。
According to the present invention, it is possible to change the security mode of the computer to various contents according to the situation without restarting the computer, logging on and the like.
In addition, it is possible to simultaneously apply a plurality of different security policies for each application in one computer.
以下、本発明の情報漏洩防止装置、及び情報漏洩防止プログラムの好ましい実施形態について、図面を参照しつつ説明する。 Hereinafter, preferred embodiments of the information leak prevention device and the information leak prevention program of the present invention will be described with reference to the drawings.
[第一実施形態]
まず、本発明の第一実施形態について、図1〜図4を参照して説明する。図1は、本実施形態の情報漏洩防止装置の構成を示すブロック図であり、図2は、本実施形態の情報漏洩防止装置において使用されるデータの構成を示す図である。また、図3は、本実施形態の情報漏洩防止装置の処理手順(モード切替)を示すフローチャートであり、図4は、本実施形態の情報漏洩防止装置の処理手順(設定モードの実行)を示すフローチャートである。
First Embodiment
First, a first embodiment of the present invention will be described with reference to FIGS. 1 to 4. FIG. 1 is a block diagram showing the configuration of the information leak prevention device of the present embodiment, and FIG. 2 is a view showing the configuration of data used in the information leak prevention device of the present embodiment. Further, FIG. 3 is a flowchart showing the processing procedure (mode switching) of the information leak prevention device of the present embodiment, and FIG. 4 shows the processing procedure (execution of the setting mode) of the information leak prevention device of the present embodiment. It is a flowchart.
本実施形態の情報漏洩防止装置1は、ユーザにより使用されるパソコンやタブレットなどのコンピュータ(情報処理装置)である。また、情報漏洩防止装置1には、スマートフォンなどのコンピュータと同様の機能を有する装置も含まれる。情報漏洩防止装置1の具体的な用途は特に限定されないが、情報漏洩防止装置1は、企業や学校などにおいて好適に使用することが可能である。 The information leakage prevention device 1 of the present embodiment is a computer (information processing device) such as a personal computer or a tablet used by a user. The information leak prevention device 1 also includes a device having the same function as a computer such as a smartphone. Although the specific application of the information leakage prevention device 1 is not particularly limited, the information leakage prevention device 1 can be suitably used in a company, a school or the like.
情報漏洩防止装置1は、実行プログラム11により使用されるメモリ領域10、モード切替部20、及び情報漏洩防止装置1において使用される各種データを記憶する共有メモリ30を備えている。
また、情報漏洩防止装置1は、アプリケーションプログラムインタフェース(API)40、このAPI40や実行プログラム11を実行する環境、例えばオペレーティングシステム(OS)50、記憶装置用ドライバ60、プリンタ用ドライバ70、ネットワーク用ドライバ80を備えている。なお、情報漏洩防止装置1において、ドライバはこれらのもののみならず、その他各種ドライバを有する構成とすることができる。また、ドライバは、OS50の内部に備える構成としてもよい。
The information leak prevention device 1 includes a
The information leak prevention device 1 also includes an application program interface (API) 40, an environment for executing the
実行プログラム11は、アプリケーションプログラム(AP)であり、その種類や機能は特に限定されない。例えば、ブラウザプログラム、ワープロプログラム、電子メールプログラム、表計算プログラム、描画プログラム等、種々のアプリケーションプログラムを実行プログラム11として用いることができる。
The
また、横取り処理部12が、実行プログラム11により使用されるメモリ領域10に読み込まれて備えられている。この横取り処理部12は、例えばAPIフック(DLL)やDLLインジェクションにより構成することができる。
横取り処理部12としてAPIフックを用いる場合は、OSの起動時に実行プログラム11と共にメモリ領域10に読み込まれて備えられる。
Further, the
When an API hook is used as the
また、横取り処理部12としてDLLインジェクションを用いる場合は、実行プログラム11の起動時にメモリ領域10に読み込まれて備えられる。
横取り処理部12は、実行プログラム11によるAPI40の呼び出し処理が行われると、API40の代わりに、共有メモリ30に記憶された設定モードにもとづいて、様々な動作を実行することができる。また、API40の実行を許可することも、禁止することもできる。
When DLL injection is used as the
The
横取り処理部12には、切替検知部12−1とモード実行部12−2が備えられている。
切替検知部12−1は、実行プログラム11により呼び出された処理内容が、共有メモリ30に記憶された切替条件と一致するか否かを判定する。そして、一致する場合、その切替条件に対応する切替モードをモード切替部20へ出力する。
モード実行部12−2は、共有メモリ30に記憶された設定モードにもとづき動作を実行する。
The
The switching detection unit 12-1 determines whether the process content called by the
The mode execution unit 12-2 executes an operation based on the setting mode stored in the shared memory 30.
モード切替部20は、切替検知部12−1から切替モードを入力すると、この切替モードを共有メモリ30に設定モードとして記憶させる。
また、モード切替部20は、ユーザにより入力されたモード切替指示情報、特定のアプリケーションプログラムを起動することを示す情報、又は、ユーザ認証に成功したことを示す情報の入力にもとづいて、特定の切替モードを共有メモリ30に設定モードとして記憶させることもできる。
When the switching mode is input from the switching detection unit 12-1, the
In addition, the
共有メモリ30は、切替条件記憶部31、設定モード記憶部32、及びモード内容記憶部33を備えている。
切替条件記憶部31は、図2に示すように、切替条件毎に切替モードを記憶する。例えば、「機密ファイルAへのアクセス」が行われた場合に、モード(1)に切り替えることや、「ネットワークBへのアクセス」が行われた場合に、モード(2)に切り替えること等を記憶する。
なお、切替条件記憶部31へのデータの設定をモード切替部20により行わせるようにすることもできる。
The shared memory 30 includes a switching
The switching
Note that setting of data in the switching
設定モード記憶部32は、情報漏洩防止装置1に設定されたモードを記憶する。例えば、設定モードとして、モード(1)を記憶する。
モード内容記憶部33は、図2に示すように、モード毎にモード内容を記憶する。例えば、モード(1)として、「ハードディスク(HD)への書き込み:不可,インターネットへのアクセス:不可,印刷:不可,等」、モード(2)として、「ハードディスクへの書き込み:不可,インターネットへのアクセス:可,印刷:可,等」などを記憶する。
The setting
As shown in FIG. 2, the mode
ここで、本実施形態の情報漏洩防止装置1において、切替条件記憶部31、設定モード記憶部32、及びモード内容記憶部33を、共有メモリ30として備えた理由は、以下の通りである。
すなわち、一般に、通常のパソコンにおいては、数十を超える実行プログラム11が動作している。また、例えばサーバのようなコンピュータにおいては、数百を超える実行プログラム11が動作している場合もある。そして、上記各記憶部は、これら全ての実行プログラム11に対応する横取り処理部12により使用される。したがって、これらの記憶部を横取り処理部12毎に備える構成とすれば、実行プログラム11の数だけそれぞれを備えることが必要になる。また、これらの記憶部の内容を変更しようとした場合、それら全ての記憶部を変更する必要が生じるため、その設定変更に時間がかかることが懸念される。
Here, the reason why the switching
That is, generally, in a normal personal computer, more than several tens of
そこで、本実施形態では、切替条件記憶部31、設定モード記憶部32、及びモード内容記憶部33を、共有メモリ30として備えている。また、これにより記憶容量を節約できるという効果も得ることができる。
さらに、共有メモリ30は、半導体メモリのような高速アクセス可能な記憶領域に構成することが好ましい。一方、プログラムの実行速度を重視しない場合、共有メモリ30をハードディスクのようなすべてのプログラムから共有可能な記憶装置に実現することも可能である。
Therefore, in the present embodiment, the switching
Furthermore, the shared memory 30 is preferably configured in a high-speed accessible storage area such as a semiconductor memory. On the other hand, if the execution speed of the program is not important, it is also possible to realize the shared memory 30 from all programs such as a hard disk to a storage device that can be shared.
API(アプリケーションプログラムインタフェース)40は、実行プログラム11によって呼び出し処理が行われる対象のAPIである。すなわち、API40は、実行プログラム11により本来呼び出されるはずのAPIであるが、横取り処理部12が処理を横取りし、設定モードの内容にしたがって、例えば、APIの処理の実行が許可されたり、禁止されたりする。
An API (application program interface) 40 is an API to be called by the
API40の種類としては特に限定されないが、例えば、特定のファイルへのアクセス、特定のネットワークへのアクセス、又は、特定のファイルサーバへのアクセス等とすることができる。また、ハードディスクドライブに対する書き込み、デスクトップに対する書き込み、特定のアプリケーションの起動、特定のデバイスへのアクセス処理、特定の出力機器へのアクセス等とすることもできる。
The type of the
オペレーティングシステム50は、API40からの指示にしたがって、記憶装置用ドライバ60、プリンタ用ドライバ70、又はネットワーク用ドライバ80等を制御して、それぞれ記憶装置2への書き込み処理や、プリンタ3への出力処理、又はネットワーク装置4へのアクセス処理を実行する。
このオペレーティングシステム50としては特に限定されないが、例えばWINDOWS(登録商標)やmacOS(登録商標)、Linux(登録商標)、SOLARIS(登録商標)、FREEBSD(登録商標)等の各種OSを用いることができる。
The
The
次に、本実施形態の情報漏洩防止装置1によるモード切替の処理手順について、図3を参照して説明する。
まず、実行プログラム11により特定種類のAPIの呼び出し処理が行われる(ステップ10)。例えば、実行プログラム11が「機密ファイルAを開く」という処理を行うために、対応するAPIの呼び出しを行う。
Next, a processing procedure of mode switching by the information leak prevention device 1 of the present embodiment will be described with reference to FIG.
First, a calling process of a specific type of API is performed by the execution program 11 (step 10). For example, in order to execute the processing of “open confidential file A”, the
横取り処理部12は、上記APIの呼び出し処理を横取りする(ステップ11)。
また、横取り処理部12は、切替検知部12−1により切替条件記憶部31を参照して(ステップ12)、実行プログラム11が行おうとした処理が、切替条件に一致するか否かを判定する(ステップ13)。
The
Further, the
ここで、切替検知部12−1に、実行プログラム11が開こうとしたファイルが「機密ファイルA」に該当するか否かの判断を、例えばファイル名、ファイルの拡張子、ファイルの保存されている場所(ディレクトリやサーバなどのアドレス)、ファイルの保存されているメディア(USBメモリやSDカード等)、ファイルの内容等にもとづいて、行わせるようにすることができる。
Here, it is judged by the switching detection unit 12-1 whether the file that the
実行プログラム11が行おうとした処理が「機密ファイルAを開く」の場合、切替条件記憶部31に当該条件が存在しているため(ステップ13のYes)、切替検知部12−1がこれに対応する切替モード(この場合、モード(1))を切替条件記憶部31から取得して、モード切替部20へ出力する。
そして、モード切替部20が、入力した切替モードを設定モード記憶部32に記憶させることにより、情報漏洩防止装置1におけるセキュリティモードを設定(変更)する(ステップ14)。
If the process that the
Then, the
次に、本実施形態の情報漏洩防止装置1による設定モードの実行の処理手順について、図4を参照して説明する。
まず、実行プログラム11により特定種類のAPIの呼び出し処理が行われる(ステップ20)。そして、横取り処理部12が、このAPIの呼び出し処理を横取りする(ステップ21)。
このとき、特定種類のAPIは、モード切替条件の判定対象のものと同一のものを含んでいてもよく、異なるAPIを横取りの対象としてもよい。ここでは、実行プログラム11により、「ハードディスクへの書き込み」を行うAPIが呼び出されたとする。
Next, a processing procedure of execution of the setting mode by the information leak prevention device 1 of the present embodiment will be described with reference to FIG.
First, a calling process of a specific type of API is performed by the execution program 11 (step 20). Then, the
At this time, the specific type of API may include the same one as the determination target of the mode switching condition, or a different API may be the target of interception. Here, it is assumed that the
次に、横取り処理部12が、モード実行部12−2により設定モード記憶部32から設定モードを取得する。また、モード実行部12−2が取得した設定モードに対応するモード内容をモード内容記憶部33から取得して、そのモード内容にしたがって、制御を実行する(ステップ23)。
Next, the
例えば、モード実行部12−2は、設定モード記憶部32から「モード(1)」を取得すると共に、モード内容記憶部33からこれに対応するモード内容を取得する。図2の例では、モード(1)に対応するモード内容において、「ハードディスクへの書き込み:不可」というセキュリティポリシーが設定されている。
このため、横取り処理部12は、API40を呼び出すことなく、当該処理を許可しないことを示す情報を、実行プログラム11に返却する。これによって、実行プログラム11による「ハードディスクへの書き込み」が行われないように制御される。
For example, the mode execution unit 12-2 acquires “mode (1)” from the setting
Therefore, the
また、例えば、実行プログラム11により、「インターネットへのアクセス」を行うAPIが呼び出され、設定モード記憶部32に「モード(2)」が設定されていたとする。
この場合、モード実行部12−2は、設定モード記憶部32から「モード(2)」を取得すると共に、モード内容記憶部33からこれに対応するモード内容を取得する。図2の例では、モード(2)に対応するモード内容において、「インターネットへのアクセス:可」というセキュリティポリシーが設定されている。
このため、横取り処理部12は、API40を呼び出して、その実行を許可する。これによって、実行プログラム11による「インターネットへのアクセス」が行われるように制御される。
Further, for example, it is assumed that an API for performing “access to the Internet” is called by the
In this case, the mode execution unit 12-2 acquires “mode (2)” from the setting
For this reason, the
以上のように、本実施形態の情報漏洩防止装置1によれば、モード切替部20、切替条件記憶部31、設定モード記憶部32、及びモード内容記憶部33を備えると共に、様々なアプリケーションプログラムが使用するメモリ領域10に横取り処理部12を備えることによって、情報漏洩防止装置1を再起動やログオンなどを行うことなく、そのセキュリティモードを状況に応じた様々な内容に変更することが可能となっている。
As described above, according to the information leak prevention device 1 of the present embodiment, the
[第二実施形態]
次に、本発明の第二実施形態について、図5〜図8を参照して説明する。図5は、本実施形態の情報漏洩防止装置の構成を示すブロック図であり、図6は、本実施形態の情報漏洩防止装置において使用されるデータの構成を示す図である。また、図7は、本実施形態の情報漏洩防止装置の処理手順(実行プログラム毎のセキュリティ設定切替(1))を示すフローチャートであり、図8は、本実施形態の情報漏洩防止装置の処理手順(実行プログラム毎のセキュリティ設定切替(2))を示すフローチャートである。
Second Embodiment
Next, a second embodiment of the present invention will be described with reference to FIGS. FIG. 5 is a block diagram showing the configuration of the information leak prevention device of the present embodiment, and FIG. 6 is a view showing the configuration of data used in the information leak prevention device of the present embodiment. FIG. 7 is a flowchart showing the processing procedure of the information leak prevention device of the present embodiment (security setting switching for each execution program (1)), and FIG. 8 is the processing procedure of the information leak prevention device of the present embodiment It is a flowchart which shows (security setting switch (2) for every execution program).
本実施形態の情報漏洩防止装置1−2は、第一実施形態の情報漏洩防止装置1の構成に加えて、アプリケーションプログラム毎に異なるセキュリティポリシーを適用可能な構成を備えている点で、第一実施形態と相違する。その他の点については、第一実施形態と同様のものとすることができる。 In addition to the configuration of the information leak prevention device 1 of the first embodiment, the information leak prevention device 1-2 of the present embodiment has a configuration in which different security policies can be applied to each application program. It differs from the embodiment. The other points can be the same as in the first embodiment.
また、本実施形態の情報漏洩防止装置1−2を、第一実施形態における切替検知部12−1、モード実行部12−2、モード切替部20、切替条件記憶部31、設定モード記憶部32、及びモード内容記憶部33を有しないものとすることもできる。後述する第三実施形態についても同様である。
Further, the information leak prevention device 1-2 of this embodiment is the same as the switch detection unit 12-1, the mode execution unit 12-2, the
本実施形態の情報漏洩防止装置1−2は、実行プログラム11aにより使用されるメモリ領域10a、実行プログラム11bにより使用されるメモリ領域10b、及び情報漏洩防止装置1−2において使用される各種データを記憶する共有メモリ30−2(図5では省略してその内部の記憶部のみを示している)を備えている。
The information leakage prevention device 1-2 according to the present embodiment includes the
実行プログラム11aにより使用されるメモリ領域10a及び実行プログラム11bにより使用されるメモリ領域10bには、横取り処理部として、APIフック(DLL)121とAPIフック(DLL)122とが備えられており、これらは順次実行される。
また、実行プログラムにより使用される各メモリ領域に、より多くのAPIフックを備えて、これらを順次実行させる構成とすることもできる。
さらに、本実施形態の情報漏洩防止装置1−2において、より多くの数の実行プログラムにより使用されるメモリ領域を備えることもできる。
In the
Also, each memory area used by the execution program may be configured to have more API hooks and sequentially execute them.
Furthermore, in the information leak prevention device 1-2 of the present embodiment, a memory area used by a larger number of execution programs can also be provided.
また、共有メモリ30−2には、使用横取り処理記憶部34、セキュリティ1記憶部35、及びセキュリティ2記憶部36が備えられている。
使用横取り処理記憶部34は、実行プログラム毎に、使用する横取り処理(APIフック)を記憶する。例えば、実行プログラム11a(ブラウザ)についてAPIフック121を使用し、実行プログラム11b(ワープロ、その他)についてAPIフック122を使用することを記憶する。
この使用横取り処理記憶部34に記憶される使用する横取り処理の情報を変更することで、実行プログラム毎に適用するセキュリティポリシーを変更することができる。
In addition, the shared memory 30-2 is provided with a use preemptive processing storage unit 34, a security 1 storage unit 35, and a
The used takeover process storage unit 34 stores, for each execution program, the takeover process (API hook) to be used. For example, the API hook 121 is used for the execution program 11a (browser), and the use of the API hook 122 for the execution program 11b (word processor, etc.) is stored.
By changing the information on the preemption process to be used stored in the use preemptive process storage unit 34, it is possible to change the security policy to be applied to each execution program.
セキュリティ1記憶部35とセキュリティ2記憶部36は、セキュリティポリシー毎のセキュリティ内容を記憶するものであり、それぞれAPIフック121、APIフック122によりアクセスされる。
例えば、セキュリティ1記憶部35には、セキュリティ1として、「ハードディスク(HD)への書き込み:不可,インターネットへのアクセス:可,等」などのセキュリティポリシーを記憶させることができる。また、セキュリティ2記憶部36には、セキュリティ2として、「ハードディスク(HD)への書き込み:可,インターネットへのアクセス:不可,等」などのセキュリティポリシーを記憶させることができる。
The security 1 storage unit 35 and the
For example, the security 1 storage unit 35 can store a security policy such as “write to hard disk (HD): no, access to the Internet: yes, etc.” as security 1. Further, the
さらに、セキュリティ1記憶部35やセキュリティ2記憶部36において、「ファイルを暗号化した後にハードディスク(HD)への書き込み:可」や、「「ファイルを復号化した後にハードディスク(HD)からの読み込み:可」などのセキュリティポリシーを記憶させることもできる。また、これらのセキュリティポリシーにおいて、ハードディスクに替えて、メモリ領域やUSBメモリなどその他の記憶装置への書き込みなどとすることもできる。
この場合、実行プログラムにより使用されるメモリ領域において、横取り処理部として、暗号化処理部と復号化処理部とをさらに備えて、APIフック121やAPIフック122によりこれらを実行させる構成とすることにより、APIフック121やAPIフック122を使用して、ファイルの暗号化処理や復号化処理を行うことが可能となる。なお、当該構成を、第三実施形態におけるDLLインジェクションに適用することも可能である。
Furthermore, in the security 1 storage unit 35 and the
In this case, in the memory area used by the execution program, an encryption processing unit and a decryption processing unit are further provided as a takeover processing unit, and these functions are executed by the API hook 121 and the API hook 122. Using the API hook 121 and the API hook 122, it is possible to perform file encryption and decryption processing. In addition, it is also possible to apply the said structure to the DLL injection in 3rd embodiment.
APIフック121は、実行プログラム11aによる特定種類のAPI40の呼び出し処理を横取りする。APIフック121は、実行プログラム11aについて使用するAPIフックについての情報を使用横取り処理記憶部34から取得することができる。APIフック121による、使用するAPIフックについての情報の取得は、APIフック121のメモリへの読み込み時に行わせることができる。また、実行プログラム11aから呼び出されたタイミングで行うこともできる。これは以下においても同様である。
例えば、使用横取り処理記憶部34において、実行プログラム11aにAPIフック121が対応付けられて記憶されている場合、APIフック121に対応するセキュリティ1記憶部35に記憶されているセキュリティ1の内容にもとづいて、実行プログラム11aの動作を制御する。
The API hook 121 intercepts the process of calling a specific type of
For example, when the API hook 121 is stored in association with the execution program 11 a in the use takeover process storage unit 34, the content is based on the content of the security 1 stored in the security 1 storage unit 35 corresponding to the API hook 121. Control the operation of the execution program 11a.
図6の例では、APIフック121に対応するセキュリティ1の内容として、「ハードディスクへの書き込み:不可,インターネットへのアクセス:可」が記憶されている。このため、実行プログラム11aがハードディスクへの書き込みを行うためのAPIを呼び出した場合、APIフック121は、API40を呼び出すことなく、実行プログラム11aに当該APIの呼び出しを許可しないことを示す情報を返却する。これによって、実行プログラム11aの動作を制御することができる。
In the example of FIG. 6, “write to hard disk: no, access to the Internet: yes” is stored as the contents of security 1 corresponding to the API hook 121. Therefore, when the execution program 11a calls an API for writing on the hard disk, the API hook 121 returns information indicating that the execution program 11a is not permitted to call the API without calling the
次に、APIフック121は、APIフック122を実行させる。
APIフック122は、実行プログラム11aについて使用するAPIフックについての情報を使用横取り処理記憶部34から取得することができる。なお、APIフック122による、使用するAPIフックについての情報の取得は、APIフック122のメモリへの読み込み時に行わせることができる。また、実行プログラム11aから呼び出されたタイミングで行うこともできる。これは以下においても同様である。
図6の場合、上述の通り、使用横取り処理記憶部34において、実行プログラム11aにAPIフック121が対応付けられて記憶されているため、APIフック122はそのまま何もせずに処理を終了する。
Next, the API hook 121 causes the API hook 122 to be executed.
The API hook 122 can acquire information on the API hook to be used for the execution program 11a from the usage interception processing storage unit 34. The acquisition of the information on the API hook to be used by the API hook 122 can be performed at the time of reading into the memory of the API hook 122. It can also be performed at the timing called from the execution program 11a. The same applies to the following.
In the case of FIG. 6, as described above, the API hook 121 is stored in association with the execution program 11a in the use preemptive processing storage unit 34, so the API hook 122 does nothing and ends the processing.
一方、実行プログラム11bより使用されるメモリ領域10bにおいて、APIフック121は、実行プログラム11bによる特定種類のAPI40の呼び出し処理を横取りする。APIフック121は、実行プログラム11bについて使用するAPIについての情報を使用横取り処理記憶部34から取得することができる。
図6の例では、使用横取り処理記憶部34において、実行プログラム11bにAPIフック122が対応付けられて記憶されているため、APIフック121はそのまま何もせずに処理を終了して、APIフック122を実行させる。
On the other hand, in the
In the example of FIG. 6, since the API hook 122 is stored in association with the execution program 11b in the use preemption processing storage unit 34, the API hook 121 ends the processing without doing anything, and the API hook 122 is completed. Run
APIフック122は、実行プログラム11bについて使用するAPIについての情報を使用横取り処理記憶部34から取得することができる。この場合、使用横取り処理記憶部34において、実行プログラム11bにAPIフック122が対応付けられて記憶されているため、APIフック122に対応するセキュリティ2記憶部36に記憶されているセキュリティ2の内容にもとづいて、実行プログラム11bの動作を制御する。
The API hook 122 can acquire information on the API to be used for the execution program 11 b from the usage interception processing storage unit 34. In this case, since the API hook 122 is stored in association with the execution program 11b in the use takeover process storage unit 34, the contents of the
図6の例では、APIフック122に対応するセキュリティ内容として、「ハードディスクへの書き込み:可,インターネットへのアクセス:不可」が記憶されている。このため、実行プログラム11bがハードディスクへの書き込みを行うためのAPIを呼び出した場合、APIフック122は、API40を呼び出して、その実行を許可することができる。これによって、実行プログラム11bの動作を制御することができる。
In the example of FIG. 6, “write to hard disk: OK, access to the Internet: not allowed” is stored as the security content corresponding to the API hook 122. Therefore, when the execution program 11b calls an API for writing to the hard disk, the API hook 122 can call the
本実施形態において、実行プログラム毎にAPIフック121とAPIフック122のどちらを使って制御するのかを、それぞれのDLLが呼び出されるタイミングで(初期化時に)、使用横取り処理記憶部34の情報にもとづき判断させることができる。
また、使用横取り処理記憶部34の情報に変えて、例えば、実行しようとするファイルの保存場所や、ファイル名、実行ファイルに埋め込まれた情報にもとづいて、実行プログラム毎にAPIフック121とAPIフック122のどちらを使って制御するのか決定する構成とすることもできる。
さらに、実行プログラムが、既にAPIフック121又はAPIフック122で制御されている実行プログラムのチャイルドプロセスに相当するものである場合、親のプロセスと同じAPIフックを選択させるようにすることも可能である。
In the present embodiment, which of the API hook 121 and the API hook 122 is to be controlled for each execution program is controlled based on the information of the usage interception processing storage unit 34 at the timing when each DLL is called (at the time of initialization). It can be made to judge.
Also, instead of the information in the use preemption processing storage unit 34, for example, based on the storage location of the file to be executed, the file name, and the information embedded in the executable file, the API hook 121 and API hook for each execution program It can also be configured to determine which of the two is used to control.
Furthermore, if the execution program corresponds to a child process of the execution program already controlled by the API hook 121 or the API hook 122, it is possible to select the same API hook as the parent process. .
次に、本実施形態の情報漏洩防止装置1−2による実行プログラム毎のセキュリティ設定切替(1)処理手順について、図7を参照して説明する。ここでは、実行プログラム11aが、ブラウザプログラム(ブラウザ)であるとする。 Next, the security setting switching (1) process procedure for each execution program by the information leak prevention device 1-2 of the present embodiment will be described with reference to FIG. Here, it is assumed that the execution program 11a is a browser program (browser).
まず、ブラウザにより特定種類のAPI、例えば「インターネットへのアクセス」の呼び出し処理が行われる(ステップ30)。そして、APIフック121が、このAPIの呼び出し処理を横取りする(ステップ31)。 First, the browser performs call processing of a specific type of API, for example, "access to the Internet" (step 30). Then, the API hook 121 intercepts the process of calling this API (step 31).
ブラウザに使用されるAPIフックは、使用横取り処理記憶部34に記憶されているように、APIフック121である。
したがって、APIフック121は、対応するセキュリティ1記憶部35に記憶されているセキュリティ1の内容にしたがって、実行プログラム11aの動作を制御する(ステップ32)。
The API hook used for the browser is the API hook 121 as stored in the use preemption processing storage unit 34.
Therefore, the API hook 121 controls the operation of the execution program 11a according to the contents of the security 1 stored in the corresponding security 1 storage unit 35 (step 32).
このとき、APIは「インターネットへのアクセス」であり、セキュリティ1記憶部35にはセキュリティ1の内容として「インターネットへのアクセス:可」が記憶されているため、APIフック121は、API40を呼び出して、その動作を許可する。
At this time, the API is “access to the Internet”, and “access to the Internet: yes” is stored in the security 1 storage unit 35 as the content of the security 1, so the API hook 121 calls the
次に、APIフック121は、APIフック122を実行させる(ステップ33)。
ブラウザに使用されるAPIフックはAPIフック121であるため、APIフック122は、そのまま何もせずに動作を終了する。
Next, the API hook 121 executes the API hook 122 (step 33).
Since the API hook used for the browser is the API hook 121, the API hook 122 ends the operation without doing anything.
一方、ブラウザによって、「ハードディスクへの書き込み」を行うためのAPIが呼び出されたとする(ステップ30)。APIフック121が、このAPIの呼び出し処理を横取りする(ステップ31)。 On the other hand, it is assumed that the API for “writing to hard disk” is called by the browser (step 30). The API hook 121 intercepts this API call process (step 31).
ブラウザに使用されるAPIフックはAPIフック121であるため、APIフック121は、対応するセキュリティ1記憶部35に記憶されているセキュリティ1の内容にしたがって、実行プログラム11aの動作を制御する(ステップ32)。 Since the API hook used for the browser is the API hook 121, the API hook 121 controls the operation of the execution program 11a according to the contents of the security 1 stored in the corresponding security 1 storage unit 35 (step 32). ).
このとき、APIは「ハードディスクへの書き込み」であり、セキュリティ1記憶部35にはセキュリティ1の内容として「ハードディスクへの書き込み:不可」が記憶されているため、APIフック121は、API40を呼び出すことなく、実行プログラム11aに処理を許可できないことを示す情報を返却する。
At this time, the API is “write to hard disk”, and “write to hard disk: not possible” is stored in the security 1 storage unit 35 as the contents of security 1, and therefore the API hook 121 calls the
次に、APIフック121は、APIフック122を実行させる(ステップ33)。
ブラウザに使用されるAPIフックはAPIフック121であるため、APIフック122は、そのまま何もせずに処理を終了する。
Next, the API hook 121 executes the API hook 122 (step 33).
Since the API hook used for the browser is the API hook 121, the API hook 122 ends the process without doing anything.
次に、本実施形態の情報漏洩防止装置1−2による実行プログラム毎のセキュリティ設定切替(2)処理手順について、図8を参照して説明する。ここでは、実行プログラム11bが、ブラウザ以外のアプリケーションプログラム、例えばワープロプログラム(ワープロ)であるとする。 Next, security setting switching (2) for each execution program by the information leak prevention device 1-2 of the present embodiment will be described with reference to FIG. Here, it is assumed that the execution program 11b is an application program other than the browser, for example, a word processor program (word processor).
まず、ワープロにより特定種類のAPI、例えばインターネットへのアクセスの呼び出し処理が行われる(ステップ40)。そして、APIフック121が、このAPIの呼び出し処理を横取りする(ステップ41)。 First, the word processor performs call processing of access to a specific type of API, for example, the Internet (step 40). Then, the API hook 121 intercepts the process of calling this API (step 41).
ワープロに使用されるAPIフックは、使用横取り処理記憶部34に記憶されているように、APIフック122である。
したがって、APIフック121は、何も処理を行うことなく、APIフック122を実行させる(ステップ42)。
The API hook used by the word processor is the API hook 122 as stored in the used takeover process storage unit 34.
Therefore, the API hook 121 causes the API hook 122 to execute without performing any processing (step 42).
ワープロに使用されるAPIフックはAPIフック122であるため、APIフック122は、対応するセキュリティ2記憶部36に記憶されているセキュリティ2の内容にしたがって、実行プログラム11bの動作を制御する(ステップ43)。
Since the API hook used for the word processor is the API hook 122, the API hook 122 controls the operation of the execution program 11b in accordance with the contents of the
このとき、APIは「インターネットへのアクセス」であり、セキュリティ2記憶部36にはセキュリティ2の内容として「インターネットへのアクセス:不可」が記憶されているため、APIフック122は、API40を呼び出すことなく、実行プログラム11bに処理を許可できないことを示す情報を返却する。
At this time, the API is “Access to the Internet”, and “Access to the Internet: Impossible” is stored in the
一方、ワープロによって、「ハードディスクへの書き込み」を行うためのAPIが呼び出されたとする(ステップ40)。APIフック121が、このAPIの呼び出し処理を横取りする(ステップ41)。 On the other hand, it is assumed that an API for “writing to hard disk” is called by the word processor (step 40). The API hook 121 intercepts this API call process (step 41).
ワープロに使用されるAPIフックはAPIフック122であるため、APIフック121は、何も処理を行うことなく、APIフック122を実行させる(ステップ42)。 Since the API hook used by the word processor is the API hook 122, the API hook 121 causes the API hook 122 to execute without performing any processing (step 42).
ワープロに使用されるAPIフックは、APIフック122であるため、APIフック122は対応するセキュリティ2記憶部36に記憶されているセキュリティ2の内容にしたがって、実行プログラム11bの動作を制御する(ステップ43)。
Since the API hook used for the word processor is the API hook 122, the API hook 122 controls the operation of the execution program 11b according to the contents of the
このとき、APIは「ハードディスクへの書き込み」であり、セキュリティ2記憶部36にはセキュリティ2の内容として「ハードディスクへの書き込み:可」が記憶されているため、APIフック122は、API40を呼び出して、その動作を許可する。
At this time, the API is “write to hard disk”, and “write to hard disk: OK” is stored in the
ここで、実行プログラム毎に、いずれのセキュリティポリシーを適用するかの設定(例えば、使用横取り処理記憶部34への設定)は、様々な条件にもとづいて行うことができる。
例えば、ある特定の場所(ディレクトリ)の中にある実行ファイルを使用する実行プログラムだけに、セキュリティ2の内容を適用し(APIフック122を使用)、その他の実行プログラムには、セキュリティ1の内容を適用する(APIフック121)ことができる。
また、ある特定のプログラムから起動された子プロセスには、セキュリティ2の内容を適用することもできる。
Here, for each execution program, setting of which security policy is to be applied (for example, setting in the usage interception processing storage unit 34) can be performed based on various conditions.
For example, the contents of
Also, the contents of
さらに、ある特定のファイルにアクセスするプログラムはその特定のファイルにアクセスしたとたんに、セキュリティ2の内容を適用するといった設定にすることもできる。この場合、例えば特定のファイルが機密情報に分類されるファイルとして扱われているとすると、機密情報のファイルを開いたとたんに、その開いたプログラムにセキュリティ2の内容を適用するようにすることができる。
ここで、セキュリティ2の内容を、ファイルは開けるが保存できないとか、ネットワークへのアクセスを禁止するとか、印刷を禁止する、といった開いたファイルの情報を外部に漏洩できなくするようなものにしておくことによって、情報漏洩防止の内容を柔軟かつきめ細かに設定することが可能である。
Furthermore, the program for accessing a specific file can be set to apply the contents of
Here, the contents of
以上のように、本実施形態の情報漏洩防止装置1−2によれば、実行プログラムにより使用されるメモリ領域において、APIフックを順次実行させることにより、この実行プログラムに対応するAPIフックが使用する共有メモリに記憶された情報にしたがって、その動作を制御することができる。
したがって、本実施形態の情報漏洩防止装置によれば、アプリケーションプログラム毎に異なるセキュリティポリシーを適用することが可能になっている。
As described above, according to the information leak prevention device 1-2 of the present embodiment, the API hook corresponding to the execution program is used by sequentially executing the API hook in the memory area used by the execution program. The operation can be controlled according to the information stored in the shared memory.
Therefore, according to the information leak prevention device of the present embodiment, it is possible to apply different security policies to each application program.
これにより、例えば、ブラウザはインターネットアクセスできるが、ファイルをダウロードするなどの操作はできず、その他のプログラム、例えばワープロでは、ブラウザの表示を見ながら原稿を書いてファイルに保存することはできるが、その内容をネットで送信することはできない、といったセキュリティポリシーを適用することができる。このようにすれば、安全にインターネットに接続できると同時に、編集されたワープロのファイルが不用意にインターネットで流出する危険を回避することができるという優れた効果を得ることが可能となる。 As a result, for example, the browser can access the Internet but can not perform operations such as downloading the file, and other programs, such as a word processor, can write the manuscript while viewing the browser and save it in the file, It is possible to apply a security policy that the content can not be sent over the net. In this way, it is possible to obtain the excellent effect that it is possible to connect to the Internet safely and at the same time avoid the risk of inadvertently leaking edited word processor files on the Internet.
なお、OSによっては、各プログラム間で直接データを送受信する機能(プロセス間通信機能等)が備わっている場合があり、それを使ってワープロのデータをブラウザに送信し、ブラウザからワープロのデータを送信するといったことが可能である。しかし、これらの機能も各プログラムはAPIを用いて実行するため、本実施形態におけるAPIフック121及びAPIフック122によって制御することが可能である。 Depending on the OS, there may be a function (such as an inter-process communication function) to transmit and receive data directly between each program, which is used to transmit word processor data to the browser and the word processor data from the browser It is possible to transmit. However, since these functions are also executed using the API, they can be controlled by the API hook 121 and the API hook 122 in the present embodiment.
[第三実施形態]
次に、本発明の第三実施形態について、図9〜図12を参照して説明する。図9は、本実施形態の情報漏洩防止装置の構成を示すブロック図であり、図10は、本実施形態の情報漏洩防止装置において使用されるデータの構成を示す図である。また、図11は、本実施形態の情報漏洩防止装置の処理手順(実行プログラム毎のセキュリティ設定切替(3))を示すフローチャートであり、図12は、本実施形態の情報漏洩防止装置の処理手順(実行プログラム毎のセキュリティ設定切替(4))を示すフローチャートである。
Third Embodiment
Next, a third embodiment of the present invention will be described with reference to FIGS. FIG. 9 is a block diagram showing the configuration of the information leak prevention device of the present embodiment, and FIG. 10 is a view showing the configuration of data used in the information leak prevention device of the present embodiment. FIG. 11 is a flowchart showing the processing procedure of the information leak prevention device of the present embodiment (security setting switching for each execution program (3)), and FIG. 12 is the processing procedure of the information leak prevention device of the present embodiment It is a flowchart which shows (security setting switch (4) for every execution program).
本実施形態の情報漏洩防止装置1−3は、第一実施形態の情報漏洩防止装置1の構成に加えて、アプリケーションプログラム毎に異なるセキュリティポリシーを適用可能な構成を備えている点で、第一実施形態と相違する。また、本実施形態の情報漏洩防止装置1−3は、APIフックではなく、DLLインジェクションを用いることにより、アプリケーションプログラム毎に異なるセキュリティポリシーを適用可能な構成を実現している点で、第二実施形態と相違する。その他の点については、第一実施形態と同様のものとすることができる。 In addition to the configuration of the information leak prevention device 1 of the first embodiment, the information leak prevention device 1-3 of the present embodiment has a configuration in which different security policies can be applied to each application program. It differs from the embodiment. Further, the information leakage prevention device 1-3 according to the second embodiment realizes a configuration in which a different security policy can be applied to each application program by using the DLL injection instead of the API hook. It is different from the form. The other points can be the same as in the first embodiment.
本実施形態の情報漏洩防止装置1−3は、実行プログラム11a’により使用されるメモリ領域10a’、実行プログラム11b’により使用されるメモリ領域10b’、及び情報漏洩防止装置1−3において使用される各種データを記憶する共有メモリ30−3(図9では省略してその内部の記憶部のみを示している)を備えている。本実施形態の情報漏洩防止装置1−3においても、より多くの数の実行プログラムにより使用されるメモリ領域を備えることができる。
The information leakage prevention device 1-3 according to the present embodiment is used in the
共有メモリ30−3には、使用セキュリティ記憶部37、セキュリティ1記憶部35、及びセキュリティ2記憶部36が備えられている。
使用セキュリティ記憶部37は、実行プログラム毎に、使用するセキュリティを記憶する。例えば、実行プログラム11a(ブラウザ)についてセキュリティ1を使用し、実行プログラム11b(ワープロ、その他)についてセキュリティ2を使用することを記憶する。
この使用セキュリティ記憶部37に記憶される使用するセキュリティの情報を変更することで、実行プログラム毎に適用するセキュリティポリシーを変更することができる。
The shared memory 30-3 includes a use security storage unit 37, a security 1 storage unit 35, and a
The use security storage unit 37 stores the security to be used for each execution program. For example, the security 1 is used for the execution program 11a (browser), and the use of the
By changing the security information to be used stored in the usage security storage unit 37, it is possible to change the security policy to be applied to each execution program.
セキュリティ1記憶部35とセキュリティ2記憶部36は、セキュリティポリシー毎のセキュリティ内容を記憶するものであり、本実施形態ではDLLインジェクション13a’又はDLLインジェクション13b’によりアクセスされる。
例えば、セキュリティ1記憶部35には、セキュリティ1として、「ハードディスク(HD)への書き込み:不可,インターネットへのアクセス:可,等」のセキュリティポリシーを記憶させることができる。また、セキュリティ2記憶部36には、セキュリティ2として、「ハードディスク(HD)への書き込み不可,インターネットへのアクセス:不可,等」のセキュリティポリシーを記憶させることができる。
The security 1 storage unit 35 and the
For example, the security 1 storage unit 35 can store a security policy of “writing to hard disk (HD): no, access to the Internet: yes, etc.” as security 1. In addition, the
横取り処理部として、実行プログラム11a’により使用されるメモリ領域10a’には、DLLインジェクション13a’が備えられ、実行プログラム11b’により使用されるメモリ領域10b’には、DLLインジェクション13b’が備えられている。
As the takeover processing unit, the
なお、DLLインジェクションは、通常実行プログラムの起動時にAPIの呼び出しを横取りするDLLが読み込まれて、実行プログラムと共に実行される仕組みとなっている。このため、実行プログラムの起動時にどのDLLを読み込むかを実行プログラムに選択させることにより、特定のDLLインジェクションを実行プログラムの実行開始時に選択させることが可能となっている。 In DLL injection, a DLL that intercepts API calls is loaded at the time of startup of a normal execution program, and is executed together with the execution program. For this reason, it is possible to select a specific DLL injection at the start of the execution of the execution program by making the execution program select which DLL to load at the start of the execution program.
DLLインジェクション13a’は、実行プログラム11a’による特定種類のAPI40の呼び出し処理を横取りする。DLLインジェクション13a’は、実行プログラム11a’について使用するセキュリティについての情報を使用セキュリティ記憶部37から取得することができる。DLLインジェクション13a’による、使用するセキュリティについての情報の取得は、DLLインジェクション13a’のメモリへの読み込み時に行わせることができる。また、実行プログラム11a’から呼び出されたタイミングで行うこともできる。これはDLLインジェクション13b’についても同様である。
例えば、使用セキュリティ記憶部37において、実行プログラム11a’にセキュリティ1が対応付けられて記憶されている場合、セキュリティ1記憶部35に記憶されているセキュリティ1の内容にもとづいて、実行プログラム11a’の動作を制御する。
The DLL injection 13a 'intercepts the process of calling the
For example, in the use security storage unit 37, when the security 1 is stored in association with the execution program 11a ′, the execution program 11a ′ is stored based on the contents of the security 1 stored in the security 1 storage unit 35. Control the operation.
図10の例では、セキュリティ1の内容として、「ハードディスクへの書き込み:不可,インターネットへのアクセス:可」がセキュリティ1記憶部35に記憶されている。このため、実行プログラム11a’がハードディスクへの書き込みを行うためのAPIを呼び出した場合、DLLインジェクション13a’は、API40を呼び出すことなく、実行プログラム11a’に当該APIの呼び出しを許可しないことを示す情報を返却する。これによって、実行プログラム11a’の動作を制御することができる。
In the example of FIG. 10, “write to hard disk: no, access to the Internet: yes” is stored in the security 1 storage unit 35 as the contents of the security 1. Therefore, when the execution program 11a 'calls an API for writing to the hard disk, the DLL injection 13a' does not call the
また、DLLインジェクション13b’は、実行プログラム11b’による特定種類のAPI40の呼び出し処理を横取りする。使用セキュリティ記憶部37において、実行プログラム11b’にセキュリティ2が対応付けられて記憶されている場合、セキュリティ2記憶部36に記憶されているセキュリティ2の内容にもとづいて、実行プログラム11b’の動作を制御する。
Also, the DLL injection 13 b ′ intercepts the process of calling the
図10の例では、DLLインジェクション13b’に対応するセキュリティ2の内容として、「ハードディスクへの書き込み:可,インターネットへのアクセス:不可」がセキュリティ2記憶部36に記憶されている。このため、実行プログラム11b’がハードディスクへの書き込みを行うためのAPIを呼び出した場合、DLLインジェクション13b’は、API40を呼び出して、その実行を許可する。これによって、実行プログラム11b’の動作を制御することができる。
In the example of FIG. 10, “write to hard disk: OK, access to Internet: not allowed” is stored in the
次に、本実施形態の情報漏洩防止装置1−3による実行プログラム毎のセキュリティ設定切替(3)処理手順について、図11を参照して説明する。ここでは、実行プログラム11a’が、ブラウザであるとする。 Next, the security setting switching (3) process procedure for each execution program by the information leak prevention device 1-3 of the present embodiment will be described with reference to FIG. Here, it is assumed that the execution program 11a 'is a browser.
まず、ブラウザにより特定種類のAPI、例えばインターネットへのアクセスの呼び出し処理が行われる(ステップ50)。そして、DLLインジェクション13a’が、このAPIの呼び出し処理を横取りする(ステップ51)。
ブラウザに使用されるセキュリティは、使用セキュリティ記憶部37に記憶されているように、セキュリティ1である。
したがって、DLLインジェクション13a’は、セキュリティ1記憶部35に記憶されているセキュリティ1の内容にしたがって、実行プログラム11a’の動作を制御する(ステップ52)。
First, the browser performs call processing of access to a specific type of API, for example, the Internet (step 50). Then, the DLL injection 13a 'intercepts the calling process of this API (step 51).
The security used for the browser is security 1 as stored in the usage security storage unit 37.
Therefore, the DLL injection 13a 'controls the operation of the execution program 11a' according to the contents of the security 1 stored in the security 1 storage unit 35 (step 52).
このとき、APIは「インターネットへのアクセス」であり、セキュリティ1記憶部35にはセキュリティ1の内容として「インターネットへのアクセス:可」が記憶されているため、DLLインジェクション13a’は、API40を呼び出して、その動作を許可する。
At this time, the API is “access to the Internet”, and “access to the Internet: yes” is stored in the security 1 storage unit 35 as the content of the security 1, so the DLL injection 13a ′ calls the
一方、ブラウザによって、ハードディスクへの書き込みを行うためのAPIが呼び出されたとする(ステップ50)。DLLインジェクション13a’が、このAPIの呼び出し処理を横取りする(ステップ51)。
ブラウザに使用されるセキュリティは、セキュリティ1であるため、DLLインジェクション13a’は、セキュリティ1記憶部35に記憶されているセキュリティ1の内容にしたがって、実行プログラム11a’の動作を制御する(ステップ52)。
On the other hand, it is assumed that the API for writing to the hard disk is called by the browser (step 50). The DLL injection 13a 'intercepts this API call process (step 51).
Since the security used for the browser is security 1, the DLL injection 13a 'controls the operation of the execution program 11a' according to the contents of security 1 stored in the security 1 storage unit 35 (step 52) .
このとき、APIは「ハードディスクへの書き込み」であり、セキュリティ1記憶部35にはセキュリティ1の内容として「ハードディスクへの書き込み:不可」が記憶されているため、DLLインジェクション13a’は、API40を呼び出すことなく、実行プログラム11a’に処理を許可できないことを示す情報を返却する。
At this time, the API is “write to hard disk”, and “write to hard disk: not possible” is stored in the security 1 storage unit 35 as the content of security 1, so DLL injection 13a ′ calls
次に、本実施形態の情報漏洩防止装置1−3による実行プログラム毎のセキュリティ設定切替(4)処理手順について、図12を参照して説明する。ここでは、実行プログラム11b’が、ブラウザ以外のアプリケーションプログラム、例えばワープロであるとする。 Next, the security setting switching (4) process procedure for each execution program by the information leak prevention device 1-3 of the present embodiment will be described with reference to FIG. Here, it is assumed that the execution program 11b 'is an application program other than the browser, for example, a word processor.
まず、ワープロにより特定種類のAPI、例えばインターネットへのアクセスの呼び出し処理が行われる(ステップ60)。そして、DLLインジェクション13b’が、このAPIの呼び出し処理を横取りする(ステップ61)。
ワープロに使用されるセキュリティは、使用セキュリティ記憶部37に記憶されているように、セキュリティ2である。
したがって、DLLインジェクション13b’は、セキュリティ2記憶部36に記憶されているセキュリティ2の内容にしたがって、実行プログラム11b’の動作を制御する(ステップ62)。
First, the word processor performs call processing of access to a specific type of API, for example, the Internet (step 60). Then, the DLL injection 13b 'intercepts the calling process of this API (step 61).
The security used by the word processor is
Therefore, the DLL injection 13b 'controls the operation of the execution program 11b' according to the contents of the
このとき、APIは「インターネットへのアクセス」であり、セキュリティ2記憶部36にはセキュリティ2の内容として「インターネットへのアクセス:不可」が記憶されているため、DLLインジェクション13b’は、API40を呼び出すことなく、実行プログラム11b’に処理を許可できないことを示す情報を返却する。
At this time, the API is “access to the Internet”, and “access to the Internet: not allowed” is stored in the
一方、ワープロによって、ハードディスクへの書き込みを行うためのAPIが呼び出されたとする(ステップ60)。DLLインジェクション13b’が、このAPIの呼び出し処理を横取りする(ステップ61)。
ワープロに使用されるセキュリティは、セキュリティ2であるため、DLLインジェクション13b’は、セキュリティ2記憶部36に記憶されているセキュリティ2の内容にしたがって、実行プログラム11b’の動作を制御する(ステップ62)。
On the other hand, it is assumed that the API for writing to the hard disk is called by the word processor (step 60). The DLL injection 13b 'intercepts this API call process (step 61).
The security used for the word processor is
このとき、APIは「ハードディスクへの書き込み」であり、セキュリティ2記憶部36にはセキュリティ2の内容として「ハードディスクへの書き込み:可」が記憶されているため、DLLインジェクション13b’は、API40を呼び出して、その動作を許可する。
At this time, the API is “write to hard disk”, and “write to hard disk: OK” is stored in the
以上のように、本実施形態の情報漏洩防止装置1−3によれば、実行プログラムにより使用されるメモリ領域において、DLLインジェクションを実行させ、その実行プログラムに対応するセキュリティポリシーにしたがって、動作を制御することができ、アプリケーションプログラム毎に異なるセキュリティポリシーを適用することが可能になっている。 As described above, according to the information leak prevention device 1-3 of the present embodiment, DLL injection is executed in the memory area used by the execution program, and the operation is controlled according to the security policy corresponding to the execution program. It is possible to apply different security policies to each application program.
また、上記各実施形態によれば、APIフックやDLLインジェクションのようなアプリケーションプログラムがAPIを呼び出す部分に横取り処理部を構成することによって、OSやOS内部などのドライバに手を加えることなく、アプリケーションプログラム(実行プログラム)の動きを制御することが可能となっている。さらに、アプリケーションプログラムに手を加える必要もない。
仮に、OSの内部やドライバに手を加えてアプリケーションプログラムの動きを制御する仕組みにすると、APIフックやDLLインジェクションのような仕組みが第三者によって設定された場合には、アプリケーションプログラムとOSとの間の情報のやり取りが傍受されたり、改ざんされたりする虞がある。
このため、アプリケーションプログラムがAPIを呼び出す部分に横取り処理部を構成することは、セキュリティ上も好ましいと考えられる。
Further, according to each of the above embodiments, the application processing such as the API hook or the DLL injection configures the takeover processing unit in a portion where the API is called, so that the application can be performed without modifying the OS or the driver inside the OS. It is possible to control the movement of a program (execution program). Furthermore, there is no need to modify the application program.
Temporarily, if the mechanism inside the OS or driver is modified to control the movement of the application program, and a mechanism such as API hook or DLL injection is set by a third party, the application program and the OS There is a risk that the exchange of information between the parties may be intercepted or falsified.
For this reason, configuring the interception processing unit in the portion where the application program calls the API is considered to be preferable in terms of security.
また、上記各実施形態において、横取り処理部として、暗号化処理部と復号化処理部とをさらに備えた場合に関し、仮にこれらをOS内部やドライバに備えて実現すると、アプリケーションプログラムとOSとの間には暗号化されていないデータがやり取りされることになる。これに対して、上記各実施形態によれば、アプリケーションプログラムによるAPIの呼び出し直後に暗号化や復号化を行うことができるため、盗聴・傍受の危険性を軽減させることが可能となる。 Further, in each of the above embodiments, regarding the case where an encryption processing unit and a decryption processing unit are further provided as a takeover processing unit, if these are realized by being provided inside the OS or in a driver, it is possible to Will exchange unencrypted data. On the other hand, according to each of the above embodiments, since encryption and decryption can be performed immediately after calling of the API by the application program, the risk of eavesdropping and interception can be reduced.
さらに、アプリケーションの動きを完全に制御するという観点からも、OSの内部においてその仕組みを完全に構築するよりも、アプリケーションが直接呼び出すAPIを横取りすることで、その動きを制御するほうが容易である。すなわち、アプリケーションの外部への呼び出しはすべてAPIで行われているため、APIの動きを制御することにより、例外なくアプリケーションの外部との呼び出しを制御することができるからである。 Furthermore, from the viewpoint of completely controlling the behavior of the application, it is easier to control the behavior by intercepting the API that the application directly calls, rather than completely constructing the mechanism inside the OS. That is, since all calls to the outside of the application are performed by the API, it is possible to control the call with the outside of the application without exception by controlling the behavior of the API.
上記の各実施形態の情報漏洩防止装置は、本発明の情報漏洩防止プログラムに制御されたコンピュータを用いて実現することができる。コンピュータのCPUは、情報漏洩防止プログラムにもとづいてコンピュータの各構成要素に指令を送り、情報漏洩防止装置の動作に必要となる所定の処理、例えば、モード切替処理、設定モードの実行処理、実行プログラム毎のセキュリティ設定切替処理等を行わせる。このように、本発明の情報漏洩防止装置における各処理、動作は、プログラムとコンピュータとが協働した具体的手段により実現できるものである。 The information leak prevention apparatus of each of the above embodiments can be realized using a computer controlled by the information leak prevention program of the present invention. The CPU of the computer sends an instruction to each component of the computer based on the information leakage prevention program, and predetermined processing required for the operation of the information leakage prevention apparatus, for example, mode switching processing, setting mode execution processing, execution program Each security setting switching process is performed. As described above, each process and operation in the information leak prevention device of the present invention can be realized by specific means in which a program and a computer cooperate.
プログラムは予めROM,RAM等の記録媒体に格納され、コンピュータに実装された記録媒体から当該コンピュータにプログラムを読み込ませて実行されるが、例えば通信回線を介してコンピュータに読み込ませることもできる。
また、プログラムを格納する記録媒体は、例えば半導体メモリ、磁気ディスク、光ディスク、その他任意のコンピュータで読取り可能な任意の記録手段により構成できる。
The program is stored in advance in a recording medium such as a ROM, a RAM, etc., and the program is read from the recording medium mounted on the computer into the computer and executed. However, the program may be read by the computer via, for example, a communication line.
Further, the recording medium for storing the program can be constituted by, for example, a semiconductor memory, a magnetic disk, an optical disk, or any other computer readable means.
以上説明したように、本発明の実施形態に係る情報漏洩防止装置、及び情報漏洩防止プログラムによれば、コンピュータの再起動やログオンなどを行うことなく、コンピュータのセキュリティモードを状況に応じた様々な内容に変更することが可能である。
また、一台のコンピュータにおいて、アプリケーション毎に、異なる複数のセキュリティポリシーを同時に適用することも可能となる。
As described above, according to the information leakage prevention device and the information leakage prevention program according to the embodiment of the present invention, various security modes of the computer can be used according to the situation without restarting the computer or performing logon or the like. It is possible to change to the contents.
In addition, it is possible to simultaneously apply a plurality of different security policies for each application in one computer.
本発明は、以上の実施形態に限定されるものではなく、本発明の範囲内において、種々の変更実施が可能であることは言うまでもない。
例えば、第一から第三までの各実施形態を様々に組み合わせた構成とするなど適宜変更することが可能である。
It goes without saying that the present invention is not limited to the above embodiments, and various modifications can be made within the scope of the present invention.
For example, various modifications can be made as appropriate, such as various combinations of the first to third embodiments.
本発明は、例えば企業や学校等において、情報の漏洩を簡易に抑制可能したい場合などに好適に利用することが可能である。 The present invention can be suitably used, for example, in a company, a school, etc. when it is desired to easily suppress information leakage.
1,1−2,1−3 情報漏洩防止装置
10,10a,10b,10a’,10b’ 実行プログラム使用メモリ領域
11,11a,11b,11a’,11b’ 実行プログラム
12 横取り処理部
12−1 切替検知部
12−2 モード実行部
121,122 APIフック(DLL)
13a’,13b’ DLLインジェクション
20 モード切替部
30 共有メモリ
31 切替条件記憶部
32 設定モード記憶部
33 モード内容記憶部
34 使用横取り処理記憶部
35 セキュリティ1記憶部
36 セキュリティ2記憶部
37 使用セキュリティ記憶部
40 API(本来呼び出されるもの)
50 オペレーティングシステム
60 記憶装置用ドライバ
70 プリンタ用ドライバ
80 ネットワーク用ドライバ
2 記憶装置
3 プリンタ
4 ネットワーク装置
1, 1-2, 1-3 Information
13a ', 13b'
50
Claims (11)
前記モードを切り替える条件毎に対応するモードを記憶する切替条件記憶部と、
モードの切替により設定するモードを記憶する設定モード記憶部と、
アプリケーションプログラムから特定種類のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りし、前記切替条件記憶部の切替条件を参照して、前記アプリケーションプログラムが実行しようとする内容と一致する条件が存在する場合、当該条件に対応するモードを取得する横取り処理部と、
前記横取り処理部から前記モードを取得して、前記設定モード記憶部に設定するモード切替部と、を備え、
前記横取り処理部は、アプリケーションプログラムから前記特定種類と同一又は異なる所定のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りし、前記設定モード記憶部を参照して、当該モードに対応するモード内容にしたがって、前記アプリケーションプログラムインタフェースによる処理を許可又は禁止することによって、当該情報漏洩防止装置の内部における動作の制御、及び/又は、当該情報漏洩防止装置の外部に対する動作の制御を行う
ことを特徴とする情報漏洩防止装置。 An information leakage prevention device that prevents information leakage by changing the security mode,
A switching condition storage unit that stores a mode corresponding to each of the conditions for switching the mode;
A setting mode storage unit that stores a mode to be set by mode switching;
When call processing of a specific type of application program interface is performed from an application program, the call processing is intercepted, and the switching condition of the switching condition storage unit is referred to and matches the content to be executed by the application program. If there is a condition, a takeover processor that acquires a mode corresponding to the condition;
The mode switching unit configured to obtain the mode from the takeover processing unit and set the mode in the setting mode storage unit;
When the call processing of a predetermined application program interface which is the same as or different from the specific type is performed from the application program, the takeover processing unit intercepts the call processing, refers to the setting mode storage unit, and Control of operation inside the information leak prevention device and / or control of operation outside the information leak prevention device are performed by permitting or prohibiting the processing by the application program interface according to the corresponding mode contents. An information leak prevention device characterized by
ことを特徴とする請求項1又は2記載の情報漏洩防止装置。 The information according to claim 1 or 2, wherein the specific type of application program interface is for accessing a specific file, accessing a specific network, or accessing a specific file server. Leakage prevention device.
ことを特徴とする請求項1〜3のいずれかに記載の情報漏洩防止装置。 The mode switching unit is set by mode switching based on input of mode switching instruction information input by a user, information indicating that a specific application program is to be activated, or information indicating that user authentication has succeeded. The information leakage prevention device according to any one of claims 1 to 3, wherein the setting mode storage unit stores the mode to be stored.
前記セキュリティ記憶部にはセキュリティの内容が記憶され、
前記アプリケーションプログラムに対して使用される前記APIフックが設定されており、
全ての前記APIフックが順次実行されて、前記アプリケーションプログラムに対して使用される前記APIフックのみが、対応する前記セキュリティ記憶部から前記セキュリティ内容を取得して、
当該APIフックにより、前記セキュリティ内容にしたがって前記アプリケーションプログラムインタフェースによる処理が許可又は禁止される
ことを特徴とする請求項2〜4のいずれかに記載の情報漏洩防止装置。 While two or more API hooks are provided as the takeover processing unit for each application program, two or more separate security storage units respectively corresponding to the API hooks are provided.
The security storage unit stores security content,
The API hook used for the application program is set,
All the API hooks are sequentially executed, and only the API hook used for the application program acquires the security content from the corresponding security storage unit.
The information leak prevention device according to any one of claims 2 to 4, wherein processing by the application program interface is permitted or prohibited according to the security content by the API hook.
前記セキュリティ記憶部にはセキュリティの内容が記憶され、
前記アプリケーションプログラムに対して使用されるセキュリティが設定されており、
前記DLLインジェクションが実行されて、前記アプリケーションプログラムに対応する前記セキュリティの内容を前記セキュリティ記憶部から取得して、
当該DLLインジェクションにより、前記セキュリティの内容にしたがって前記アプリケーションプログラムインタフェースによる処理が許可又は禁止される
ことを特徴とする請求項2〜5のいずれかに記載の情報漏洩防止装置。 The DLL injection is provided as the takeover processing unit for each application program, and two or more separate security storage units are provided.
The security storage unit stores security content,
The security used for the application program is set,
The DLL injection is executed to acquire the content of the security corresponding to the application program from the security storage unit.
The information leak prevention device according to any one of claims 2 to 5, wherein processing by the application program interface is permitted or prohibited according to the contents of the security by the DLL injection.
ことを特徴とする請求項1〜6のいずれかに記載の情報漏洩防止装置。 The control of the operation inside the information leakage prevention device is characterized in that the information leakage prevention device prohibits writing to a hard disk drive, prohibits writing to a desktop, and / or prohibits activation of a specific application. The information leak prevention device according to any one of 1 to 6.
ことを特徴とする請求項1〜7のいずれかに記載の情報漏洩防止装置。 Control of the operation to the outside of the information leak prevention device prohibits access to a specific network, prohibits access to a specific file server, prohibits access to a specific device, and / or prohibits access to a specific output device The information leak prevention device according to any one of claims 1 to 7, which is characterized in that.
前記モードを切り替える条件毎に対応するモードを記憶する切替条件記憶部と、モードの切替により設定するモードを記憶する設定モード記憶部とを備えたコンピュータに、
アプリケーションプログラムから特定種類のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りさせ、前記切替条件記憶部の切替条件を参照させて、前記アプリケーションプログラムが実行しようとする内容と一致する条件が存在する場合、当該条件に対応するモードを取得させ、
前記設定モード記憶部に設定させ、
アプリケーションプログラムから前記特定種類と同一又は異なる所定のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りさせ、前記設定モード記憶部を参照させて、当該モードに対応するモード内容にしたがって、前記アプリケーションプログラムインタフェースによる処理を許可又は禁止することによって、当該情報漏洩防止装置の内部における動作の制御、及び/又は、当該情報漏洩防止装置の外部に対する動作の制御を行わせる
ことを実行させるための情報漏洩防止プログラム。 An information leakage prevention program for preventing information leakage from a computer by changing a security mode,
A computer comprising: a switching condition storage unit storing a mode corresponding to each mode switching condition; and a setting mode storage unit storing a mode to be set by switching the mode.
When a calling process of a specific type of application program interface is performed from an application program, the calling process is intercepted, the switching condition of the switching condition storage unit is referred to, and the content to be executed by the application program matches. If a condition exists, get the mode corresponding to the condition,
Set in the setting mode storage unit,
When a call processing of a predetermined application program interface which is the same as or different from the specific type is performed from the application program, the call processing is intercepted, the setting mode storage unit is referred to, and the mode content corresponding to the mode is To permit control of operation inside the information leak prevention device and / or control of operation outside the information leak prevention device by permitting or prohibiting processing by the application program interface Information leak prevention program.
全ての前記APIフックを順次実行させて、前記アプリケーションプログラムに対して使用される前記APIフックのみに、対応する前記セキュリティ記憶部から前記セキュリティの内容を取得させ、
当該APIフックにより、前記セキュリティの内容にしたがって前記アプリケーションプログラムインタフェースによる処理を許可又は禁止させる
ことを実行させるための請求項9記載の情報漏洩防止プログラム。 More than one API hook is provided for each of the application programs, and further includes two or more separate security storage units respectively corresponding to the API hooks, which store security contents, and used for the application programs On the computer on which the API hook is set,
All the API hooks are sequentially executed, and only the API hooks used for the application program are made to acquire the contents of the security from the corresponding security storage unit.
The information leak prevention program according to claim 9, for executing permission or prohibition of processing by the application program interface according to the contents of the security by the API hook.
前記DLLインジェクションを実行させて、前記アプリケーションプログラムに対応する前記セキュリティの内容を前記セキュリティ記憶部から取得させ、
当該DLLインジェクションにより、前記セキュリティの内容にしたがって前記アプリケーションプログラムインタフェースによる処理を許可又は禁止させる
ことを実行させるための請求項9又は10記載の情報漏洩防止プログラム。
While the DLL injection is provided for each of the application programs, the computer further includes two or more separate security storage units for storing security content, and the security used for the application programs is set to the computer ,
Causing the DLL injection to be executed to acquire the contents of the security corresponding to the application program from the security storage unit;
The information leak prevention program according to claim 9 or 10, which executes permission or prohibition of processing by the application program interface according to the contents of the security by the DLL injection.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017205913A JP6957311B2 (en) | 2017-10-25 | 2017-10-25 | Information leakage prevention device and information leakage prevention program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017205913A JP6957311B2 (en) | 2017-10-25 | 2017-10-25 | Information leakage prevention device and information leakage prevention program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019079289A true JP2019079289A (en) | 2019-05-23 |
JP6957311B2 JP6957311B2 (en) | 2021-11-02 |
Family
ID=66627853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017205913A Active JP6957311B2 (en) | 2017-10-25 | 2017-10-25 | Information leakage prevention device and information leakage prevention program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6957311B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111737738A (en) * | 2020-06-11 | 2020-10-02 | 浙江华途信息安全技术股份有限公司 | Windows prevents information leakage system |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007286905A (en) * | 2006-04-17 | 2007-11-01 | Nec System Technologies Ltd | Information processing terminal device, file leakage prevention method, and file leakage prevention program |
US20100162349A1 (en) * | 2008-12-19 | 2010-06-24 | Fuji Xerox Co., Ltd. | Content protection device, content protection method, and computer readable medium |
JP2011040044A (en) * | 2010-06-10 | 2011-02-24 | System Intelligent Kk | Device, system, program and method for integrating virtual thin client |
JP2013164732A (en) * | 2012-02-10 | 2013-08-22 | Isis Asset Co Ltd | Information processor |
JP2014518582A (en) * | 2011-04-28 | 2014-07-31 | ファスドットコム カンパニー リミテッド | Computer apparatus having DLL injection function and DLL injection method |
JP2015225571A (en) * | 2014-05-29 | 2015-12-14 | 日本電信電話株式会社 | Application execution device and method and program thereof |
-
2017
- 2017-10-25 JP JP2017205913A patent/JP6957311B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007286905A (en) * | 2006-04-17 | 2007-11-01 | Nec System Technologies Ltd | Information processing terminal device, file leakage prevention method, and file leakage prevention program |
US20100162349A1 (en) * | 2008-12-19 | 2010-06-24 | Fuji Xerox Co., Ltd. | Content protection device, content protection method, and computer readable medium |
JP2010146325A (en) * | 2008-12-19 | 2010-07-01 | Fuji Xerox Co Ltd | Content protection apparatus and content protection program |
JP2011040044A (en) * | 2010-06-10 | 2011-02-24 | System Intelligent Kk | Device, system, program and method for integrating virtual thin client |
JP2014518582A (en) * | 2011-04-28 | 2014-07-31 | ファスドットコム カンパニー リミテッド | Computer apparatus having DLL injection function and DLL injection method |
JP2013164732A (en) * | 2012-02-10 | 2013-08-22 | Isis Asset Co Ltd | Information processor |
JP2015225571A (en) * | 2014-05-29 | 2015-12-14 | 日本電信電話株式会社 | Application execution device and method and program thereof |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111737738A (en) * | 2020-06-11 | 2020-10-02 | 浙江华途信息安全技术股份有限公司 | Windows prevents information leakage system |
Also Published As
Publication number | Publication date |
---|---|
JP6957311B2 (en) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9934407B2 (en) | Apparatus for and method of preventing unsecured data access | |
US9246948B2 (en) | Systems and methods for providing targeted data loss prevention on unmanaged computing devices | |
JP6397500B2 (en) | Selective code integrity enforcement assisted by virtual machine manager | |
US8161563B2 (en) | Running internet applications with low rights | |
US20100024036A1 (en) | System and Methods Providing Secure Workspace Sessions | |
US11893123B2 (en) | Systems and methods for screenshot mediation based on policy | |
Amiri Sani | Schrodintext: Strong protection of sensitive textual content of mobile applications | |
US10171502B2 (en) | Managed applications | |
US20150264047A1 (en) | Method and system for providing secure communication between multiple operating systems in a communication device | |
US11636228B2 (en) | Policy based persistence | |
US10303885B2 (en) | Methods and systems for securely executing untrusted software | |
US9460305B2 (en) | System and method for controlling access to encrypted files | |
JP2018124893A (en) | Computer system and file access controlling method | |
Sze et al. | Provenance-based integrity protection for windows | |
US20160342788A1 (en) | Generating packages for managed applications | |
US9749498B2 (en) | Computer device and method for controlling access to a printer | |
EP3298534B1 (en) | Creating multiple workspaces in a device | |
US20190370436A1 (en) | Memory assignment for guest operating systems | |
JP6957311B2 (en) | Information leakage prevention device and information leakage prevention program | |
JP4538838B1 (en) | Virtual thin client device, virtual thin client system, virtual thin client program, and virtual thin client method | |
US20210103528A1 (en) | Protection of data in memory of an integrated circuit using a secret token | |
JP2018124850A (en) | Program protection apparatus, program protection method, and program protection program | |
JP2011040044A (en) | Device, system, program and method for integrating virtual thin client | |
Carikli et al. | The Intel Management Engine: An Attack on Computer Users’ Freedom | |
JP2007219786A (en) | System for preventing information leakage by unknown malware |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201013 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210721 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210803 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210922 |
|
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: 20211005 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211006 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6957311 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |