JP6957311B2 - Information leakage prevention device and information leakage prevention program - Google Patents

Information leakage prevention device and information leakage prevention program Download PDF

Info

Publication number
JP6957311B2
JP6957311B2 JP2017205913A JP2017205913A JP6957311B2 JP 6957311 B2 JP6957311 B2 JP 6957311B2 JP 2017205913 A JP2017205913 A JP 2017205913A JP 2017205913 A JP2017205913 A JP 2017205913A JP 6957311 B2 JP6957311 B2 JP 6957311B2
Authority
JP
Japan
Prior art keywords
security
mode
application program
storage unit
leakage prevention
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017205913A
Other languages
Japanese (ja)
Other versions
JP2019079289A (en
Inventor
章弘 長谷川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SYSTEM INTELLIGENT CORP.
Original Assignee
SYSTEM INTELLIGENT CORP.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SYSTEM INTELLIGENT CORP. filed Critical SYSTEM INTELLIGENT CORP.
Priority to JP2017205913A priority Critical patent/JP6957311B2/en
Publication of JP2019079289A publication Critical patent/JP2019079289A/en
Application granted granted Critical
Publication of JP6957311B2 publication Critical patent/JP6957311B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、コンピュータからの情報の漏洩防止技術に関する。 The present invention relates to a technique for preventing information leakage from a computer.

コンピュータの振る舞いは,セキュリティの観点から制限される場合がある。例えば、外部メディア、ネットワーク、又は出力機器へのアクセス、実行できるプログラムの種類、ファイルが書き込み可能な場所等につき、制限される場合がある。このコンピュータの振る舞いを制限する基準を本明細書においてセキュリティポリシーと称し、セキュリティポリシーが適用されたコンピュータの状態をセキュリティモードと称する。
通常、セキュリティポリシーは、使用中のコンピュータにおいて一種類のみが適用され、異なるセキュリティポリシーを適用する場合には、使用中の状態を終了してログオンし直すことが一般的である。
Computer behavior may be restricted from a security standpoint. For example, access to external media, networks, or output devices, types of programs that can be executed, locations where files can be written, etc. may be restricted. The criteria for limiting the behavior of this computer are referred to as security policies in the present specification, and the state of the computer to which the security policy is applied is referred to as security mode.
Normally, only one type of security policy is applied on the computer in use, and when applying a different security policy, it is common to end the state of use and log on again.

特開2007−286905号公報JP-A-2007-286905 特開2005−166051号公報Japanese Unexamined Patent Publication No. 2005-166051 特開2011−39953号公報Japanese Unexamined Patent Publication No. 2011-39953 特開2010−97550号公報Japanese Unexamined Patent Publication No. 2010-97550 特開2011−113361号公報Japanese Unexamined Patent Publication No. 2011-113361

しかしながら、このようにコンピュータにログオンし直すことなく、ユーザの使用状況に応じてコンピュータのセキュリティポリシーを柔軟かつ即時に変更することができれば、利便性が高く、セキュリティの観点からもより好ましい。
例えば、ユーザがある特定のファイルやネットワーク、あるいはファイルサーバにアクセスしたタイミングで、コンピュータのセキュリティポリシーを状況に応じた様々な内容に変更することができれば大変有用である。
However, if the security policy of the computer can be changed flexibly and immediately according to the usage situation of the user without logging on to the computer again in this way, it is highly convenient and more preferable from the viewpoint of security.
For example, it would be very useful if the security policy of a computer could be changed to various contents according to the situation when a user accesses a specific file, network, or file server.

そこで、本発明者は鋭意研究して、特定種類のアプリケーションプログラムインタフェース(API)が呼び出された時に、その呼び出し処理を横取りして、状況に応じたセキュリティポリシーにもとづきコンピュータの動作を制御することで、コンピュータのセキュリティモードを柔軟かつ即時に変更することを可能とすることに成功した。 Therefore, the present inventor has studied diligently, and when a specific type of application program interface (API) is called, the call processing is intercepted and the operation of the computer is controlled based on the security policy according to the situation. , Succeeded in making it possible to change the security mode of a computer flexibly and instantly.

このようなAPIの呼び出し処理の横取りを利用する技術として、特許文献1にはアプリケーションからのファイルアクセスを横取りして、ユーザが意図しないファイルの転送が行われないようにすることが開示されている。また、特許文献2には、APIフックを用いてコンピュータシステムにおけるプロセスの不正アクセスを防止することが開示されている。
しかしながら、これらいずれの文献にも、APIの呼び出し処理を横取りすることによって、コンピュータのセキュリティモードを状況に応じた様々な内容に変更することについては記載されていない。
As a technique for utilizing such API call processing interception, Patent Document 1 discloses that file access from an application is intercepted to prevent a user from unintentionally transferring a file. .. Further, Patent Document 2 discloses that an API hook is used to prevent unauthorized access of a process in a computer system.
However, neither of these documents describes changing the security mode of a computer to various contents depending on the situation by intercepting the API call processing.

また、本発明者は、APIフックを用いることによって、一定の場合に一時的に、周辺機器へのアクセス等を制限し、コンピュータを擬似的にシンクライアント化する技術(特許文献3)や、APIによる処理対象のファイルがウイルスに感染しているか否かを検知することで、ウイルスの拡散を防止する技術(特許文献4)、ファイル名に特定の文字列が含まれているか否かを判定することで、そのファイルを暗号化又は復号化することを可能にする技術(特許文献5)を既に開発している。
しかしながら、これらはいずれもコンピュータのセキュリティモードを状況に応じた様々な内容に変更することを可能にするものではなかった。
Further, the present inventor has a technique (Patent Document 3) of temporarily restricting access to peripheral devices and the like to make a computer a pseudo thin client by using an API hook, and an API. By detecting whether or not the file to be processed by is infected with a virus, it is determined whether or not the file name contains a specific character string, which is a technique for preventing the spread of the virus (Patent Document 4). As a result, a technique (Patent Document 5) that enables the file to be encrypted or decrypted has already been developed.
However, none of these made it possible to change the security mode of the computer to various contents depending on the situation.

さらに、本発明者は、ユーザがコンピュータを使用中の状態において、アプリケーションプログラム毎に異なるセキュリティポリシーを適用すると、より安全かつ便利にコンピュータを使用することができることに想到した。
具体的には、ブラウザはインターネットに接続できるが、その他のプログラムはインターネットに接続できないようにすれば、例えばウイルスソフトウェアが隠れて動作していても、インターネット経由でそのウイルスソフトウェアを使って情報を持ち出すことを防止でき、かつインターネットの閲覧はブラウザによってできるといった使用方法が可能となる。
Furthermore, the present inventor has come up with the idea that the computer can be used more safely and conveniently by applying a different security policy to each application program while the user is using the computer.
Specifically, if the browser can connect to the Internet but other programs cannot connect to the Internet, for example, even if the virus software is hidden and running, the information can be taken out via the Internet using the virus software. This can be prevented, and the Internet can be browsed by a browser.

そこで、本発明者は、さらに鋭意研究して、一台のコンピュータにおいて、アプリケーション毎に、異なる複数のセキュリティポリシーを同時に適用可能な情報漏洩防止装置を開発することに成功した。
このような情報漏洩防止装置について記載のある先行文献は見あたらなかった。
Therefore, the present inventor has made further diligent research and succeeded in developing an information leakage prevention device that can simultaneously apply a plurality of different security policies for each application on one computer.
No prior literature has been found that describes such an information leakage prevention device.

本発明は、上記の事情にかんがみなされたものであり、コンピュータの再起動やログオンなどを行うことなく、コンピュータのセキュリティモードを状況に応じた様々な内容に変更可能な情報漏洩防止装置、及び情報漏洩防止プログラムの提供を目的とする。
また、一台のコンピュータにおいて、アプリケーション毎に、異なる複数のセキュリティポリシーを同時に適用可能な情報漏洩防止装置、及び情報漏洩防止プログラムの提供を目的とする。
The present invention is based on the above circumstances, and is an information leakage prevention device and information that can change the security mode of a computer to various contents according to the situation without restarting or logging on to the computer. The purpose is to provide a leak prevention program.
Another object of the present invention is to provide an information leakage prevention device and an information leakage prevention program that can simultaneously apply a plurality of different security policies for each application on one computer.

上記目的を達成するため、本発明の情報漏洩防止装置は、セキュリティのモードを変更することにより情報の漏洩を防止する情報漏洩防止装置であって、前記モードを切り替える条件毎に対応するモードを記憶する切替条件記憶部と、モードの切替により設定するモードを記憶する設定モード記憶部と、アプリケーションプログラムから特定種類のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りし、前記切替条件記憶部の切替条件を参照して、前記アプリケーションプログラムが実行しようとする内容と一致する条件が存在する場合、当該条件に対応するモードを取得する横取り処理部と、前記横取り処理部から前記モードを取得して、前記設定モード記憶部に設定するモード切替部とを備え、前記横取り処理部は、アプリケーションプログラムから前記特定種類と同一又は異なる所定のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りし、前記設定モード記憶部を参照して、当該モードに対応するモード内容にしたがって、前記アプリケーションプログラムインタフェースによる処理を許可又は禁止することによって、当該情報漏洩防止装置の内部における動作の制御、及び/又は、当該情報漏洩防止装置の外部に対する動作の制御を行う構成としてある。 In order to achieve the above object, the information leakage prevention device of the present invention is an information leakage prevention device that prevents information leakage by changing the security mode, and stores the mode corresponding to each condition for switching the mode. When a specific type of application program interface call processing is performed from the switching condition storage unit, the setting mode storage unit that stores the mode to be set by switching the mode, and the application program, the call processing is intercepted and the switching is performed. When there is a condition that matches the content to be executed by the application program with reference to the switching condition of the condition storage unit, the interception processing unit that acquires the mode corresponding to the condition and the mode from the interception processing unit. When a predetermined application program interface of the same or different from the specific type is called from the application program, the interception processing unit includes a mode switching unit that acquires and sets the setting mode storage unit. By intercepting the call process, referring to the setting mode storage unit, and permitting or prohibiting the process by the application program interface according to the mode content corresponding to the mode, the operation inside the information leakage prevention device is performed. And / or the operation of the information leakage prevention device to the outside is controlled.

また、本発明の情報漏洩防止装置を、前記横取り処理部として前記APIフックが、前記アプリケーションプログラムごとに二以上備えられると共に、前記APIフックにそれぞれ対応する二以上で別個のセキュリティ記憶部が備えられ、前記セキュリティ記憶部にはセキュリティの内容が記憶され、前記アプリケーションプログラムに対して使用される前記APIフックが設定されており、全ての前記APIフックが順次実行されて、前記アプリケーションプログラムに対して使用される前記APIフックのみが、対応する前記セキュリティ記憶部から前記セキュリティ内容を取得して、当該APIフックにより、前記セキュリティ内容にしたがって前記アプリケーションプログラムインタフェースによる処理が許可又は禁止される構成とすることも好ましい。 Further, the information leakage prevention device of the present invention is provided with two or more API hooks as the interception processing unit for each application program, and two or more separate security storage units corresponding to the API hooks. , The security content is stored in the security storage unit, the API hooks used for the application program are set, and all the API hooks are sequentially executed and used for the application program. It is also possible that only the API hook to be used acquires the security content from the corresponding security storage unit, and the API hook allows or prohibits processing by the application program interface according to the security content. preferable.

また、本発明の情報漏洩防止装置を、前記横取り処理部として前記DLLインジェクションが、前記アプリケーションプログラムごとに備えられると共に、二以上で別個のセキュリティ記憶部が備えられ、前記セキュリティ記憶部にはセキュリティの内容が記憶され、前記アプリケーションプログラムに対して使用されるセキュリティが設定されており、前記DLLインジェクションが実行されて、前記アプリケーションプログラムに対応する前記セキュリティの内容を前記セキュリティ記憶部から取得して、当該DLLインジェクションにより、前記セキュリティの内容にしたがって前記アプリケーションプログラムインタフェースによる処理が許可又は禁止される構成とすることも好ましい。 Further, the information leakage prevention device of the present invention is provided with the DLL injection as the interception processing unit for each application program, and two or more separate security storage units are provided, and the security storage unit is provided with security. The contents are stored, the security to be used for the application program is set, the DLL injection is executed, the contents of the security corresponding to the application program are acquired from the security storage unit, and the said It is also preferable that the DLL injection allows 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 information leakage from a computer by changing the security mode, and stores the mode corresponding to each condition for switching the mode. When a specific type of application program interface is called from an application program on a computer equipped with a switching condition storage unit and a setting mode storage unit that stores a mode to be set by switching modes, the call processing is performed. If there is a condition that matches the content to be executed by the application program by intercepting and referring 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 acquire the mode. When the application program performs a call process of a predetermined application program interface that is the same as or different from the specific type, the call process is intercepted and the setting mode storage unit is referred to to perform a mode corresponding to the mode. By permitting or prohibiting processing by the application program interface according to the content, the operation of the information leakage prevention device is controlled and / or the operation of the information leakage prevention device is controlled to the outside. be.

また、本発明の情報漏洩防止装置プログラムを、APIフックが、前記アプリケーションプログラムごとに二以上備えられると共に、セキュリティの内容を記憶する、前記APIフックにそれぞれ対応する二以上で別個のセキュリティ記憶部をさらに備え、かつ前記アプリケーションプログラムに対して使用される前記APIフックが設定されている前記コンピュータに、全ての前記APIフックを順次実行させて、前記アプリケーションプログラムに対して使用される前記APIフックのみに、対応する前記セキュリティ記憶部から前記セキュリティの内容を取得させ、当該APIフックにより、前記セキュリティの内容にしたがって前記アプリケーションプログラムインタフェースによる処理を許可又は禁止させる構成とすることも好ましい。 Further, the information leakage prevention device program of the present invention is provided with two or more API hooks for each application program, and two or more separate security storage units corresponding to the API hooks for storing the contents of security. Further, the computer in which the API hook used for the application program is set is made to execute all the API hooks in sequence, and only the API hook used for the application program is provided. It is also preferable that the security content is acquired from the corresponding security storage unit, and the API hook allows or prohibits processing by the application program interface according to the security content.

また、本発明の情報漏洩防止装置プログラムを、DLLインジェクションが、前記アプリケーションプログラムごとに備えられると共に、セキュリティの内容を記憶する二以上で別個のセキュリティ記憶部をさらに備え、かつ前記アプリケーションプログラムに対して使用されるセキュリティが設定されている前記コンピュータに、前記DLLインジェクションを実行させて、前記アプリケーションプログラムに対応する前記セキュリティの内容を前記セキュリティ記憶部から取得させ、当該DLLインジェクションにより、前記セキュリティの内容にしたがって前記アプリケーションプログラムインタフェースによる処理を許可又は禁止させる構成とすることも好ましい。 Further, the information leakage prevention device program of the present invention is provided with DLL injection for each of the application programs, and is further provided with two or more separate security storage units for storing the contents of security, and for the application program. The computer in which the security to be used is set is made to execute the DLL injection to acquire the security content corresponding to the application program from the security storage unit, and the DLL injection is used to obtain the security content. Therefore, it is also preferable to configure the configuration to allow or prohibit the processing by the application program interface.

本発明によれば、コンピュータの再起動やログオンなどを行うことなく、コンピュータのセキュリティモードを状況に応じた様々な内容に変更することが可能となる。
また、一台のコンピュータにおいて、アプリケーション毎に、異なる複数のセキュリティポリシーを同時に適用することも可能となる。
According to the present invention, it is possible to change the security mode of a computer to various contents according to a situation without restarting or logging on to the computer.
It is also possible to apply a plurality of different security policies to each application at the same time on one computer.

本発明の第一実施形態の情報漏洩防止装置の構成を示すブロック図である。It is a block diagram which shows the structure of the information leakage prevention apparatus of 1st Embodiment of this invention. 本発明の第一実施形態の情報漏洩防止装置において使用されるデータの構成を示す図である。It is a figure which shows the structure of the data used in the information leakage prevention apparatus of the 1st Embodiment of this invention. 本発明の第一実施形態の情報漏洩防止装置の処理手順(モード切替)を示すフローチャートである。It is a flowchart which shows the processing procedure (mode switching) of the information leakage prevention apparatus of 1st Embodiment of this invention. 本発明の第一実施形態の情報漏洩防止装置の処理手順(設定モードの実行)を示すフローチャートである。It is a flowchart which shows the processing procedure (execution of a setting mode) of the information leakage prevention apparatus of 1st Embodiment of this invention. 本発明の第二実施形態の情報漏洩防止装置の構成を示すブロック図である。It is a block diagram which shows the structure of the information leakage prevention apparatus of the 2nd Embodiment of this invention. 本発明の第二実施形態の情報漏洩防止装置において使用されるデータの構成を示す図である。It is a figure which shows the structure of the data used in the information leakage prevention apparatus of the 2nd Embodiment of this invention. 本発明の第二実施形態の情報漏洩防止装置の処理手順(実行プログラム毎のセキュリティ設定切替(1))を示すフローチャートである。It is a flowchart which shows the processing procedure (security setting switching (1) for every execution program) of the information leakage prevention apparatus of the 2nd Embodiment of this invention. 本発明の第二実施形態の情報漏洩防止装置の処理手順(実行プログラム毎のセキュリティ設定切替(2))を示すフローチャートである。It is a flowchart which shows the processing procedure (security setting switching (2) for each execution program) of the information leakage prevention apparatus of the 2nd Embodiment of this invention. 本発明の第三実施形態の情報漏洩防止装置の構成を示すブロック図である。It is a block diagram which shows the structure of the information leakage prevention apparatus of the 3rd Embodiment of this invention. 本発明の第三実施形態の情報漏洩防止装置において使用されるデータの構成を示す図である。It is a figure which shows the structure of the data used in the information leakage prevention apparatus of the 3rd Embodiment of this invention. 本発明の第三実施形態の情報漏洩防止装置の処理手順(実行プログラム毎のセキュリティ設定切替(3))を示すフローチャートである。It is a flowchart which shows the processing procedure (security setting switching (3) for each execution program) of the information leakage prevention apparatus of the 3rd Embodiment of this invention. 本発明の第三実施形態の情報漏洩防止装置の処理手順(実行プログラム毎のセキュリティ設定切替(4))を示すフローチャートである。It is a flowchart which shows the processing procedure (security setting switching (4) for every execution program) of the information leakage prevention apparatus of the 3rd Embodiment of this invention.

以下、本発明の情報漏洩防止装置、及び情報漏洩防止プログラムの好ましい実施形態について、図面を参照しつつ説明する。 Hereinafter, a preferred embodiment of the information leakage prevention device and the information leakage prevention program of the present invention will be described with reference to the drawings.

[第一実施形態]
まず、本発明の第一実施形態について、図1〜図4を参照して説明する。図1は、本実施形態の情報漏洩防止装置の構成を示すブロック図であり、図2は、本実施形態の情報漏洩防止装置において使用されるデータの構成を示す図である。また、図3は、本実施形態の情報漏洩防止装置の処理手順(モード切替)を示すフローチャートであり、図4は、本実施形態の情報漏洩防止装置の処理手順(設定モードの実行)を示すフローチャートである。
[First Embodiment]
First, the 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 leakage prevention device of the present embodiment, and FIG. 2 is a diagram showing the configuration of data used in the information leakage prevention device of the present embodiment. Further, FIG. 3 is a flowchart showing a processing procedure (mode switching) of the information leakage prevention device of the present embodiment, and FIG. 4 shows a processing procedure (execution of the setting mode) of the information leakage 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 leakage prevention device 1 also includes a device having the same function as a computer such as a smartphone. The specific use of the information leakage prevention device 1 is not particularly limited, but 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 leakage prevention device 1 includes a memory area 10 used by the execution program 11, a mode switching unit 20, and a shared memory 30 for storing various data used in the information leakage prevention device 1.
Further, the information leakage prevention device 1 includes an application program interface (API) 40, an environment for executing the API 40 and the execution program 11, for example, an operating system (OS) 50, a storage device driver 60, a printer driver 70, and a network driver. It has 80. In the information leakage prevention device 1, the driver may be configured to include not only these drivers but also various other drivers. Further, the driver may be configured to be provided inside the OS 50.

実行プログラム11は、アプリケーションプログラム(AP)であり、その種類や機能は特に限定されない。例えば、ブラウザプログラム、ワープロプログラム、電子メールプログラム、表計算プログラム、描画プログラム等、種々のアプリケーションプログラムを実行プログラム11として用いることができる。 The execution program 11 is an application program (AP), and its type and function are not particularly limited. For example, various application programs such as a browser program, a word processor program, an e-mail program, a spreadsheet program, and a drawing program can be used as the execution program 11.

また、横取り処理部12が、実行プログラム11により使用されるメモリ領域10に読み込まれて備えられている。この横取り処理部12は、例えばAPIフック(DLL)やDLLインジェクションにより構成することができる。
横取り処理部12としてAPIフックを用いる場合は、OSの起動時に実行プログラム11と共にメモリ領域10に読み込まれて備えられる。
Further, the interception processing unit 12 is provided by being read into the memory area 10 used by the execution program 11. The interception processing unit 12 can be configured by, for example, an API hook (DLL) or a DLL injection.
When the API hook is used as the interception processing unit 12, it is read and provided in the memory area 10 together with the execution program 11 when the OS is started.

また、横取り処理部12としてDLLインジェクションを用いる場合は、実行プログラム11の起動時にメモリ領域10に読み込まれて備えられる。
横取り処理部12は、実行プログラム11によるAPI40の呼び出し処理が行われると、API40の代わりに、共有メモリ30に記憶された設定モードにもとづいて、様々な動作を実行することができる。また、API40の実行を許可することも、禁止することもできる。
Further, when the DLL injection is used as the interception processing unit 12, it is read into the memory area 10 and provided when the execution program 11 is started.
When the execution program 11 calls the API 40, the interception processing unit 12 can execute various operations based on the setting mode stored in the shared memory 30 instead of the API 40. In addition, the execution of API40 can be permitted or prohibited.

横取り処理部12には、切替検知部12−1とモード実行部12−2が備えられている。
切替検知部12−1は、実行プログラム11により呼び出された処理内容が、共有メモリ30に記憶された切替条件と一致するか否かを判定する。そして、一致する場合、その切替条件に対応する切替モードをモード切替部20へ出力する。
モード実行部12−2は、共有メモリ30に記憶された設定モードにもとづき動作を実行する。
The interception processing unit 12 is provided with a switching detection unit 12-1 and a mode execution unit 12-2.
The switching detection unit 12-1 determines whether or not the processing content called by the execution program 11 matches the switching condition stored in the shared memory 30. Then, if they match, the switching mode corresponding to the switching condition is output to the mode switching unit 20.
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 mode switching unit 20 stores this switching mode in the shared memory 30 as a setting mode.
Further, the mode switching unit 20 performs specific switching based on input of mode switching instruction information input by the user, information indicating that a specific application program is started, or information indicating that the user authentication has been successful. The mode can also be stored in the shared memory 30 as a setting mode.

共有メモリ30は、切替条件記憶部31、設定モード記憶部32、及びモード内容記憶部33を備えている。
切替条件記憶部31は、図2に示すように、切替条件毎に切替モードを記憶する。例えば、「機密ファイルAへのアクセス」が行われた場合に、モード(1)に切り替えることや、「ネットワークBへのアクセス」が行われた場合に、モード(2)に切り替えること等を記憶する。
なお、切替条件記憶部31へのデータの設定をモード切替部20により行わせるようにすることもできる。
The shared memory 30 includes a switching condition storage unit 31, a setting mode storage unit 32, and a mode content storage unit 33.
As shown in FIG. 2, the switching condition storage unit 31 stores the switching mode for each switching condition. For example, memorize switching to mode (1) when "access to confidential file A" is performed, switching to mode (2) when "access to network B" is performed, and the like. do.
It is also possible to have the mode switching unit 20 set the data in the switching condition storage unit 31.

設定モード記憶部32は、情報漏洩防止装置1に設定されたモードを記憶する。例えば、設定モードとして、モード(1)を記憶する。
モード内容記憶部33は、図2に示すように、モード毎にモード内容を記憶する。例えば、モード(1)として、「ハードディスク(HD)への書き込み:不可,インターネットへのアクセス:不可,印刷:不可,等」、モード(2)として、「ハードディスクへの書き込み:不可,インターネットへのアクセス:可,印刷:可,等」などを記憶する。
The setting mode storage unit 32 stores the mode set in the information leakage prevention device 1. For example, the mode (1) is stored as the setting mode.
As shown in FIG. 2, the mode content storage unit 33 stores the mode content for each mode. For example, as mode (1), "write to hard disk (HD): not possible, access to the Internet: not possible, print: not possible, etc.", and as mode (2), "write to hard disk (HD): not possible, to the Internet". Access: Yes, Print: Yes, etc. "

ここで、本実施形態の情報漏洩防止装置1において、切替条件記憶部31、設定モード記憶部32、及びモード内容記憶部33を、共有メモリ30として備えた理由は、以下の通りである。
すなわち、一般に、通常のパソコンにおいては、数十を超える実行プログラム11が動作している。また、例えばサーバのようなコンピュータにおいては、数百を超える実行プログラム11が動作している場合もある。そして、上記各記憶部は、これら全ての実行プログラム11に対応する横取り処理部12により使用される。したがって、これらの記憶部を横取り処理部12毎に備える構成とすれば、実行プログラム11の数だけそれぞれを備えることが必要になる。また、これらの記憶部の内容を変更しようとした場合、それら全ての記憶部を変更する必要が生じるため、その設定変更に時間がかかることが懸念される。
Here, the reason why the information leakage prevention device 1 of the present embodiment includes the switching condition storage unit 31, the setting mode storage unit 32, and the mode content storage unit 33 as the shared memory 30 is as follows.
That is, in general, in a normal personal computer, more than several tens of execution programs 11 are operating. Further, in a computer such as a server, there are cases where more than several hundred execution programs 11 are operating. Then, each of the above storage units is used by the interception processing unit 12 corresponding to all of these execution programs 11. Therefore, if these storage units are provided for each of the interception processing units 12, it is necessary to provide each of the number of execution programs 11. Further, when it is attempted to change the contents of these storage units, it is necessary to change all the storage units, so that there is a concern that it may take time to change the settings.

そこで、本実施形態では、切替条件記憶部31、設定モード記憶部32、及びモード内容記憶部33を、共有メモリ30として備えている。また、これにより記憶容量を節約できるという効果も得ることができる。
さらに、共有メモリ30は、半導体メモリのような高速アクセス可能な記憶領域に構成することが好ましい。一方、プログラムの実行速度を重視しない場合、共有メモリ30をハードディスクのようなすべてのプログラムから共有可能な記憶装置に実現することも可能である。
Therefore, in the present embodiment, the switching condition storage unit 31, the setting mode storage unit 32, and the mode content storage unit 33 are provided as the shared memory 30. In addition, this also has the effect of saving storage capacity.
Further, the shared memory 30 is preferably configured in a high-speed accessible storage area such as a semiconductor memory. On the other hand, when the execution speed of the program is not emphasized, the shared memory 30 can be realized as a storage device that can be shared by all programs such as a hard disk.

API(アプリケーションプログラムインタフェース)40は、実行プログラム11によって呼び出し処理が行われる対象のAPIである。すなわち、API40は、実行プログラム11により本来呼び出されるはずのAPIであるが、横取り処理部12が処理を横取りし、設定モードの内容にしたがって、例えば、APIの処理の実行が許可されたり、禁止されたりする。 The API (application program interface) 40 is an API to be called by the execution program 11. That is, the API 40 is an API that should be originally called by the execution program 11, but the interception processing unit 12 intercepts the processing, and the execution of the API processing is permitted or prohibited according to the contents of the setting mode, for example. Or

API40の種類としては特に限定されないが、例えば、特定のファイルへのアクセス、特定のネットワークへのアクセス、又は、特定のファイルサーバへのアクセス等とすることができる。また、ハードディスクドライブに対する書き込み、デスクトップに対する書き込み、特定のアプリケーションの起動、特定のデバイスへのアクセス処理、特定の出力機器へのアクセス等とすることもできる。 The type of the API 40 is not particularly limited, and may be, for example, an access to a specific file, an access to a specific network, an access to a specific file server, or the like. It can also write to a hard disk drive, write to a desktop, launch a specific application, process access to a specific device, access a specific output device, and so on.

オペレーティングシステム50は、API40からの指示にしたがって、記憶装置用ドライバ60、プリンタ用ドライバ70、又はネットワーク用ドライバ80等を制御して、それぞれ記憶装置2への書き込み処理や、プリンタ3への出力処理、又はネットワーク装置4へのアクセス処理を実行する。
このオペレーティングシステム50としては特に限定されないが、例えばWINDOWS(登録商標)やmacOS(登録商標)、Linux(登録商標)、SOLARIS(登録商標)、FREEBSD(登録商標)等の各種OSを用いることができる。
The operating system 50 controls the storage device driver 60, the printer driver 70, the network driver 80, and the like according to the instructions from the API 40, and writes to the storage device 2 and outputs to the printer 3, respectively. Or, the access process to the network device 4 is executed.
The operating system 50 is not particularly limited, and various OSs such as WINDOWS (registered trademark), macOS (registered trademark), Linux (registered trademark), ORACLE (registered trademark), and FREEBSD (registered trademark) can be used. ..

次に、本実施形態の情報漏洩防止装置1によるモード切替の処理手順について、図3を参照して説明する。
まず、実行プログラム11により特定種類のAPIの呼び出し処理が行われる(ステップ10)。例えば、実行プログラム11が「機密ファイルAを開く」という処理を行うために、対応するAPIの呼び出しを行う。
Next, a processing procedure for mode switching by the information leakage prevention device 1 of the present embodiment will be described with reference to FIG.
First, the execution program 11 performs a call process for a specific type of API (step 10). For example, the execution program 11 calls the corresponding API in order to perform the process of "opening the confidential file A".

横取り処理部12は、上記APIの呼び出し処理を横取りする(ステップ11)。
また、横取り処理部12は、切替検知部12−1により切替条件記憶部31を参照して(ステップ12)、実行プログラム11が行おうとした処理が、切替条件に一致するか否かを判定する(ステップ13)。
The interception processing unit 12 intercepts the API call processing (step 11).
Further, the interception processing unit 12 refers to the switching condition storage unit 31 by the switching detection unit 12-1 (step 12), and determines whether or not the processing attempted by the execution program 11 matches the switching condition. (Step 13).

ここで、切替検知部12−1に、実行プログラム11が開こうとしたファイルが「機密ファイルA」に該当するか否かの判断を、例えばファイル名、ファイルの拡張子、ファイルの保存されている場所(ディレクトリやサーバなどのアドレス)、ファイルの保存されているメディア(USBメモリやSDカード等)、ファイルの内容等にもとづいて、行わせるようにすることができる。 Here, the switching detection unit 12-1 determines whether or not the file that the execution program 11 tried to open corresponds to "confidential file A", for example, the file name, the file extension, and the file are saved. It can be performed based on the location (address of a directory, server, etc.), the medium in which the file is stored (USB memory, SD card, etc.), the contents of the file, and the like.

実行プログラム11が行おうとした処理が「機密ファイルAを開く」の場合、切替条件記憶部31に当該条件が存在しているため(ステップ13のYes)、切替検知部12−1がこれに対応する切替モード(この場合、モード(1))を切替条件記憶部31から取得して、モード切替部20へ出力する。
そして、モード切替部20が、入力した切替モードを設定モード記憶部32に記憶させることにより、情報漏洩防止装置1におけるセキュリティモードを設定(変更)する(ステップ14)。
When the process attempted by the execution program 11 is "open confidential file A", the condition exists in the switching condition storage unit 31 (Yes in step 13), and the switching detection unit 12-1 corresponds to this. The switching mode (in this case, mode (1)) to be switched is acquired from the switching condition storage unit 31 and output to the mode switching unit 20.
Then, the mode switching unit 20 sets (changes) the security mode in the information leakage prevention device 1 by storing the input switching mode in the setting mode storage unit 32 (step 14).

次に、本実施形態の情報漏洩防止装置1による設定モードの実行の処理手順について、図4を参照して説明する。
まず、実行プログラム11により特定種類のAPIの呼び出し処理が行われる(ステップ20)。そして、横取り処理部12が、このAPIの呼び出し処理を横取りする(ステップ21)。
このとき、特定種類のAPIは、モード切替条件の判定対象のものと同一のものを含んでいてもよく、異なるAPIを横取りの対象としてもよい。ここでは、実行プログラム11により、「ハードディスクへの書き込み」を行うAPIが呼び出されたとする。
Next, a processing procedure for executing the setting mode by the information leakage prevention device 1 of the present embodiment will be described with reference to FIG.
First, the execution program 11 performs a call process for a specific type of API (step 20). Then, the interception processing unit 12 intercepts the API call processing (step 21).
At this time, the specific type of API may include the same API as the one to be determined for the mode switching condition, or a different API may be the target of interception. Here, it is assumed that the execution program 11 calls the API that "writes to the hard disk".

次に、横取り処理部12が、モード実行部12−2により設定モード記憶部32から設定モードを取得する。また、モード実行部12−2が取得した設定モードに対応するモード内容をモード内容記憶部33から取得して、そのモード内容にしたがって、制御を実行する(ステップ23)。 Next, the interception processing unit 12 acquires the setting mode from the setting mode storage unit 32 by the mode execution unit 12-2. Further, the mode content corresponding to the setting mode acquired by the mode execution unit 12-2 is acquired from the mode content storage unit 33, and control is executed according to the mode content (step 23).

例えば、モード実行部12−2は、設定モード記憶部32から「モード(1)」を取得すると共に、モード内容記憶部33からこれに対応するモード内容を取得する。図2の例では、モード(1)に対応するモード内容において、「ハードディスクへの書き込み:不可」というセキュリティポリシーが設定されている。
このため、横取り処理部12は、API40を呼び出すことなく、当該処理を許可しないことを示す情報を、実行プログラム11に返却する。これによって、実行プログラム11による「ハードディスクへの書き込み」が行われないように制御される。
For example, the mode execution unit 12-2 acquires the "mode (1)" from the setting mode storage unit 32, and acquires the corresponding mode content from the mode content storage unit 33. In the example of FIG. 2, a security policy of "write to hard disk: not possible" is set in the mode content corresponding to the mode (1).
Therefore, the interception processing unit 12 returns the information indicating that the processing is not permitted to the execution program 11 without calling the API 40. As a result, it is controlled so that "writing to the hard disk" by the execution program 11 is not performed.

また、例えば、実行プログラム11により、「インターネットへのアクセス」を行うAPIが呼び出され、設定モード記憶部32に「モード(2)」が設定されていたとする。
この場合、モード実行部12−2は、設定モード記憶部32から「モード(2)」を取得すると共に、モード内容記憶部33からこれに対応するモード内容を取得する。図2の例では、モード(2)に対応するモード内容において、「インターネットへのアクセス:可」というセキュリティポリシーが設定されている。
このため、横取り処理部12は、API40を呼び出して、その実行を許可する。これによって、実行プログラム11による「インターネットへのアクセス」が行われるように制御される。
Further, for example, it is assumed that the execution program 11 calls the API for "accessing the Internet" and the "mode (2)" is set in the setting mode storage unit 32.
In this case, the mode execution unit 12-2 acquires the "mode (2)" from the setting mode storage unit 32 and the corresponding mode content from the mode content storage unit 33. In the example of FIG. 2, a security policy of "access to the Internet: possible" is set in the mode content corresponding to the mode (2).
Therefore, the interception processing unit 12 calls the API 40 and permits its execution. As a result, the execution program 11 is controlled to perform "access to the Internet".

以上のように、本実施形態の情報漏洩防止装置1によれば、モード切替部20、切替条件記憶部31、設定モード記憶部32、及びモード内容記憶部33を備えると共に、様々なアプリケーションプログラムが使用するメモリ領域10に横取り処理部12を備えることによって、情報漏洩防止装置1を再起動やログオンなどを行うことなく、そのセキュリティモードを状況に応じた様々な内容に変更することが可能となっている。 As described above, according to the information leakage prevention device 1 of the present embodiment, the mode switching unit 20, the switching condition storage unit 31, the setting mode storage unit 32, and the mode content storage unit 33 are provided, and various application programs are provided. By providing the interception processing unit 12 in the memory area 10 to be used, it is possible to change the security mode of the information leakage prevention device 1 to various contents according to the situation without restarting or logging on. ing.

[第二実施形態]
次に、本発明の第二実施形態について、図5〜図8を参照して説明する。図5は、本実施形態の情報漏洩防止装置の構成を示すブロック図であり、図6は、本実施形態の情報漏洩防止装置において使用されるデータの構成を示す図である。また、図7は、本実施形態の情報漏洩防止装置の処理手順(実行プログラム毎のセキュリティ設定切替(1))を示すフローチャートであり、図8は、本実施形態の情報漏洩防止装置の処理手順(実行プログラム毎のセキュリティ設定切替(2))を示すフローチャートである。
[Second Embodiment]
Next, the second embodiment of the present invention will be described with reference to FIGS. 5 to 8. FIG. 5 is a block diagram showing the configuration of the information leakage prevention device of the present embodiment, and FIG. 6 is a diagram showing the configuration of data used in the information leakage prevention device of the present embodiment. Further, FIG. 7 is a flowchart showing a processing procedure of the information leakage prevention device of the present embodiment (security setting switching (1) for each execution program), and FIG. 8 is a processing procedure of the information leakage prevention device of the present embodiment. It is a flowchart which shows (security setting switching (2) for every execution program).

本実施形態の情報漏洩防止装置1−2は、第一実施形態の情報漏洩防止装置1の構成に加えて、アプリケーションプログラム毎に異なるセキュリティポリシーを適用可能な構成を備えている点で、第一実施形態と相違する。その他の点については、第一実施形態と同様のものとすることができる。 The information leakage prevention device 1-2 of the present embodiment has a configuration in which a different security policy can be applied to each application program in addition to the configuration of the information leakage prevention device 1 of the first embodiment. Different from the embodiment. Other points may be the same as in the first embodiment.

また、本実施形態の情報漏洩防止装置1−2を、第一実施形態における切替検知部12−1、モード実行部12−2、モード切替部20、切替条件記憶部31、設定モード記憶部32、及びモード内容記憶部33を有しないものとすることもできる。後述する第三実施形態についても同様である。 Further, the information leakage prevention device 1-2 of the present embodiment can be used in the switching detection unit 12-1, the mode execution unit 12-2, the mode switching unit 20, the switching condition storage unit 31, and the setting mode storage unit 32 in the first embodiment. , And the mode content storage unit 33 may not be provided. The same applies to the third embodiment described later.

本実施形態の情報漏洩防止装置1−2は、実行プログラム11aにより使用されるメモリ領域10a、実行プログラム11bにより使用されるメモリ領域10b、及び情報漏洩防止装置1−2において使用される各種データを記憶する共有メモリ30−2(図5では省略してその内部の記憶部のみを示している)を備えている。 The information leakage prevention device 1-2 of the present embodiment displays the memory area 10a used by the execution program 11a, the memory area 10b used by the execution program 11b, and various data used in the information leakage prevention device 1-2. It is provided with a shared memory 30-2 for storing (not shown in FIG. 5 and only the internal storage portion is shown).

実行プログラム11aにより使用されるメモリ領域10a及び実行プログラム11bにより使用されるメモリ領域10bには、横取り処理部として、APIフック(DLL)121とAPIフック(DLL)122とが備えられており、これらは順次実行される。
また、実行プログラムにより使用される各メモリ領域に、より多くのAPIフックを備えて、これらを順次実行させる構成とすることもできる。
さらに、本実施形態の情報漏洩防止装置1−2において、より多くの数の実行プログラムにより使用されるメモリ領域を備えることもできる。
The memory area 10a used by the execution program 11a and the memory area 10b used by the execution program 11b are provided with an API hook (DLL) 121 and an API hook (DLL) 122 as interception processing units. Is executed sequentially.
Further, each memory area used by the execution program may be provided with more API hooks so that they can be executed sequentially.
Further, the information leakage prevention device 1-2 of the present embodiment may include a memory area used by a larger number of execution programs.

また、共有メモリ30−2には、使用横取り処理記憶部34、セキュリティ1記憶部35、及びセキュリティ2記憶部36が備えられている。
使用横取り処理記憶部34は、実行プログラム毎に、使用する横取り処理(APIフック)を記憶する。例えば、実行プログラム11a(ブラウザ)についてAPIフック121を使用し、実行プログラム11b(ワープロ、その他)についてAPIフック122を使用することを記憶する。
この使用横取り処理記憶部34に記憶される使用する横取り処理の情報を変更することで、実行プログラム毎に適用するセキュリティポリシーを変更することができる。
Further, the shared memory 30-2 is provided with a use interception processing storage unit 34, a security 1 storage unit 35, and a security 2 storage unit 36.
The use interception process storage unit 34 stores the interception process (API hook) to be used for each execution program. For example, it is stored that the API hook 121 is used for the execution program 11a (browser) and the API hook 122 is used for the execution program 11b (word processor, etc.).
By changing the information of the interception process to be used stored in the use interception process storage unit 34, the security policy applied to each execution program can be changed.

セキュリティ1記憶部35とセキュリティ2記憶部36は、セキュリティポリシー毎のセキュリティ内容を記憶するものであり、それぞれAPIフック121、APIフック122によりアクセスされる。
例えば、セキュリティ1記憶部35には、セキュリティ1として、「ハードディスク(HD)への書き込み:不可,インターネットへのアクセス:可,等」などのセキュリティポリシーを記憶させることができる。また、セキュリティ2記憶部36には、セキュリティ2として、「ハードディスク(HD)への書き込み:可,インターネットへのアクセス:不可,等」などのセキュリティポリシーを記憶させることができる。
The security 1 storage unit 35 and the security 2 storage unit 36 store the security contents for each security policy, and are accessed by the API hook 121 and the API hook 122, respectively.
For example, the security 1 storage unit 35 can store a security policy such as "write to hard disk (HD): not possible, access to the Internet: possible, etc." as security 1. Further, the security 2 storage unit 36 can store a security policy such as "write to hard disk (HD): possible, access to the Internet: not possible, etc." as security 2.

さらに、セキュリティ1記憶部35やセキュリティ2記憶部36において、「ファイルを暗号化した後にハードディスク(HD)への書き込み:可」や、「「ファイルを復号化した後にハードディスク(HD)からの読み込み:可」などのセキュリティポリシーを記憶させることもできる。また、これらのセキュリティポリシーにおいて、ハードディスクに替えて、メモリ領域やUSBメモリなどその他の記憶装置への書き込みなどとすることもできる。
この場合、実行プログラムにより使用されるメモリ領域において、横取り処理部として、暗号化処理部と復号化処理部とをさらに備えて、APIフック121やAPIフック122によりこれらを実行させる構成とすることにより、APIフック121やAPIフック122を使用して、ファイルの暗号化処理や復号化処理を行うことが可能となる。なお、当該構成を、第三実施形態におけるDLLインジェクションに適用することも可能である。
Further, in the security 1 storage unit 35 and the security 2 storage unit 36, "write to the hard disk (HD) after encrypting the file: possible" and "read from the hard disk (HD) after decrypting the file: possible: It is also possible to store a security policy such as "OK". Further, in these security policies, instead of the hard disk, writing to a memory area or another storage device such as a USB memory can be performed.
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 the interception processing unit, and these are executed by the API hook 121 or the API hook 122. , API hook 121 and API hook 122 can be used to perform file encryption processing and decryption processing. It is also possible to apply the configuration to the DLL injection in the third 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 call processing of a specific type of API 40 by the execution program 11a. The API hook 121 can acquire information about the API hook used for the execution program 11a from the use interception processing storage unit 34. The API hook 121 can acquire information about the API hook to be used when the API hook 121 is read into the memory. It can also be performed at the timing called from the execution program 11a. This also applies to the following.
For example, in the use interception processing storage unit 34, when the API hook 121 is associated with the execution program 11a and stored, the content of the security 1 stored in the security 1 storage unit 35 corresponding to the API hook 121 is used. The operation of the execution program 11a is controlled.

図6の例では、APIフック121に対応するセキュリティ1の内容として、「ハードディスクへの書き込み:不可,インターネットへのアクセス:可」が記憶されている。このため、実行プログラム11aがハードディスクへの書き込みを行うためのAPIを呼び出した場合、APIフック121は、API40を呼び出すことなく、実行プログラム11aに当該APIの呼び出しを許可しないことを示す情報を返却する。これによって、実行プログラム11aの動作を制御することができる。 In the example of FIG. 6, "write to hard disk: not possible, access to the Internet: possible" is stored as the content of security 1 corresponding to the API hook 121. Therefore, when the execution program 11a calls the API for writing to the hard disk, the API hook 121 returns the information indicating that the execution program 11a is not allowed to call the API without calling the API 40. .. Thereby, the operation of the execution program 11a can be controlled.

次に、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 about the API hook used for the execution program 11a from the use interception processing storage unit 34. It should be noted that the API hook 122 can acquire information about the API hook to be used when the API hook 122 is read into the memory. It can also be performed at the timing called from the execution program 11a. This also applies to the following.
In the case of FIG. 6, as described above, since the API hook 121 is associated with and stored in the execution program 11a in the use interception processing storage unit 34, the API hook 122 ends the processing without doing anything as it is.

一方、実行プログラム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 memory area 10b used by the execution program 11b, the API hook 121 intercepts the call processing of the specific type API 40 by the execution program 11b. The API hook 121 can acquire information about the API used for the execution program 11b from the use interception processing storage unit 34.
In the example of FIG. 6, in the use interception processing storage unit 34, since the API hook 122 is associated with the execution program 11b and stored, the API hook 121 ends the processing without doing anything as it is, and the API hook 122 To execute.

APIフック122は、実行プログラム11bについて使用するAPIについての情報を使用横取り処理記憶部34から取得することができる。この場合、使用横取り処理記憶部34において、実行プログラム11bにAPIフック122が対応付けられて記憶されているため、APIフック122に対応するセキュリティ2記憶部36に記憶されているセキュリティ2の内容にもとづいて、実行プログラム11bの動作を制御する。 The API hook 122 can acquire information about the API used for the execution program 11b from the use interception processing storage unit 34. In this case, since the API hook 122 is associated with the execution program 11b and stored in the use interception processing storage unit 34, the content of the security 2 stored in the security 2 storage unit 36 corresponding to the API hook 122 is included. Therefore, the operation of the execution program 11b is controlled.

図6の例では、APIフック122に対応するセキュリティ内容として、「ハードディスクへの書き込み:可,インターネットへのアクセス:不可」が記憶されている。このため、実行プログラム11bがハードディスクへの書き込みを行うためのAPIを呼び出した場合、APIフック122は、API40を呼び出して、その実行を許可することができる。これによって、実行プログラム11bの動作を制御することができる。 In the example of FIG. 6, as the security content corresponding to the API hook 122, "write to hard disk: possible, access to the Internet: not possible" is stored. Therefore, when the execution program 11b calls the API for writing to the hard disk, the API hook 122 can call the API 40 and permit the execution. Thereby, the operation of the execution program 11b can be controlled.

本実施形態において、実行プログラム毎に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 used for each execution program is controlled at the timing when each DLL is called (at the time of initialization), based on the information of the use interception processing storage unit 34. You can make a judgment.
Further, instead of the information of the use interception processing storage unit 34, the API hook 121 and the API hook for each executable program are based on, for example, the storage location of the file to be executed, the file name, and the information embedded in the executable file. It is also possible to configure the configuration to determine which of 122 is used for control.
Further, if the executable program corresponds to the child process of the executable program already controlled by API hook 121 or API hook 122, it is possible to have the same API hook selected as the parent process. ..

次に、本実施形態の情報漏洩防止装置1−2による実行プログラム毎のセキュリティ設定切替(1)処理手順について、図7を参照して説明する。ここでは、実行プログラム11aが、ブラウザプログラム(ブラウザ)であるとする。 Next, the security setting switching (1) processing procedure for each execution program by the information leakage prevention device 1-2 of the present embodiment will be described with reference to FIG. 7. Here, it is assumed that the execution program 11a is a browser program (browser).

まず、ブラウザにより特定種類のAPI、例えば「インターネットへのアクセス」の呼び出し処理が行われる(ステップ30)。そして、APIフック121が、このAPIの呼び出し処理を横取りする(ステップ31)。 First, the browser performs a call process for a specific type of API, for example, "access to the Internet" (step 30). Then, the API hook 121 intercepts the API call process (step 31).

ブラウザに使用されるAPIフックは、使用横取り処理記憶部34に記憶されているように、APIフック121である。
したがって、APIフック121は、対応するセキュリティ1記憶部35に記憶されているセキュリティ1の内容にしたがって、実行プログラム11aの動作を制御する(ステップ32)。
The API hook used in the browser is the API hook 121 as stored in the use interception 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, since the API is "access to the Internet" and the security 1 storage unit 35 stores "access to the Internet: possible" as the content of the security 1, the API hook 121 calls the API 40. , Allow its operation.

次に、APIフック121は、APIフック122を実行させる(ステップ33)。
ブラウザに使用されるAPIフックはAPIフック121であるため、APIフック122は、そのまま何もせずに動作を終了する。
Next, the API hook 121 causes the API hook 122 to be executed (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 as it is.

一方、ブラウザによって、「ハードディスクへの書き込み」を行うためのAPIが呼び出されたとする(ステップ30)。APIフック121が、このAPIの呼び出し処理を横取りする(ステップ31)。 On the other hand, it is assumed that the browser calls the API for "writing to the hard disk" (step 30). The API hook 121 intercepts the 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, since the API is "write to the hard disk" and the security 1 storage unit 35 stores "write to the hard disk: not possible" as the content of the security 1, the API hook 121 calls the API 40. The information indicating that the processing cannot be permitted to the execution program 11a is returned.

次に、APIフック121は、APIフック122を実行させる(ステップ33)。
ブラウザに使用されるAPIフックはAPIフック121であるため、APIフック122は、そのまま何もせずに処理を終了する。
Next, the API hook 121 causes the API hook 122 to be executed (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 as it is.

次に、本実施形態の情報漏洩防止装置1−2による実行プログラム毎のセキュリティ設定切替(2)処理手順について、図8を参照して説明する。ここでは、実行プログラム11bが、ブラウザ以外のアプリケーションプログラム、例えばワープロプログラム(ワープロ)であるとする。 Next, the security setting switching (2) processing procedure for each execution program by the information leakage 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 a call process for accessing a specific type of API, for example, the Internet (step 40). Then, the API hook 121 intercepts the API call process (step 41).

ワープロに使用されるAPIフックは、使用横取り処理記憶部34に記憶されているように、APIフック122である。
したがって、APIフック121は、何も処理を行うことなく、APIフック122を実行させる(ステップ42)。
The API hook used in the word processor is the API hook 122 as stored in the use interception processing storage unit 34.
Therefore, the API hook 121 causes the API hook 122 to be executed 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 security 2 stored in the corresponding security 2 storage unit 36 (step 43). ).

このとき、APIは「インターネットへのアクセス」であり、セキュリティ2記憶部36にはセキュリティ2の内容として「インターネットへのアクセス:不可」が記憶されているため、APIフック122は、API40を呼び出すことなく、実行プログラム11bに処理を許可できないことを示す情報を返却する。 At this time, since the API is "access to the Internet" and the security 2 storage unit 36 stores "access to the Internet: Impossible" as the content of the security 2, the API hook 122 calls the API 40. It returns the information indicating that the processing cannot be permitted to the execution program 11b.

一方、ワープロによって、「ハードディスクへの書き込み」を行うためのAPIが呼び出されたとする(ステップ40)。APIフック121が、このAPIの呼び出し処理を横取りする(ステップ41)。 On the other hand, it is assumed that the word processor calls the API for "writing to the hard disk" (step 40). The API hook 121 intercepts the API call process (step 41).

ワープロに使用されるAPIフックはAPIフック122であるため、APIフック121は、何も処理を行うことなく、APIフック122を実行させる(ステップ42)。 Since the API hook used in the word processor is the API hook 122, the API hook 121 causes the API hook 122 to be executed 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 security 2 stored in the corresponding security 2 storage unit 36 (step 43). ).

このとき、APIは「ハードディスクへの書き込み」であり、セキュリティ2記憶部36にはセキュリティ2の内容として「ハードディスクへの書き込み:可」が記憶されているため、APIフック122は、API40を呼び出して、その動作を許可する。 At this time, since the API is "write to the hard disk" and the security 2 storage unit 36 stores "write to the hard disk: OK" as the content of the security 2, the API hook 122 calls the API 40. , Allow its operation.

ここで、実行プログラム毎に、いずれのセキュリティポリシーを適用するかの設定(例えば、使用横取り処理記憶部34への設定)は、様々な条件にもとづいて行うことができる。
例えば、ある特定の場所(ディレクトリ)の中にある実行ファイルを使用する実行プログラムだけに、セキュリティ2の内容を適用し(APIフック122を使用)、その他の実行プログラムには、セキュリティ1の内容を適用する(APIフック121)ことができる。
また、ある特定のプログラムから起動された子プロセスには、セキュリティ2の内容を適用することもできる。
Here, the setting of which security policy is applied to each execution program (for example, the setting in the use interception processing storage unit 34) can be made based on various conditions.
For example, apply the contents of security 2 only to executable programs that use executable files in a specific location (directory) (using API hook 122), and apply the contents of security 1 to other executable programs. Can be applied (API hook 121).
Further, the content of security 2 can be applied to a child process started from a specific program.

さらに、ある特定のファイルにアクセスするプログラムはその特定のファイルにアクセスしたとたんに、セキュリティ2の内容を適用するといった設定にすることもできる。この場合、例えば特定のファイルが機密情報に分類されるファイルとして扱われているとすると、機密情報のファイルを開いたとたんに、その開いたプログラムにセキュリティ2の内容を適用するようにすることができる。
ここで、セキュリティ2の内容を、ファイルは開けるが保存できないとか、ネットワークへのアクセスを禁止するとか、印刷を禁止する、といった開いたファイルの情報を外部に漏洩できなくするようなものにしておくことによって、情報漏洩防止の内容を柔軟かつきめ細かに設定することが可能である。
Further, a program that accesses a specific file can be set to apply the contents of Security 2 as soon as the specific file is accessed. In this case, for example, if a specific file is treated as a file classified as confidential information, the contents of Security 2 can be applied to the opened program as soon as the confidential information file is opened. can.
Here, the contents of security 2 are set so that the information of the opened file cannot be leaked to the outside, such as the file can be opened but cannot be saved, access to the network is prohibited, or printing is prohibited. This makes it possible to flexibly and finely set the content of information leakage prevention.

以上のように、本実施形態の情報漏洩防止装置1−2によれば、実行プログラムにより使用されるメモリ領域において、APIフックを順次実行させることにより、この実行プログラムに対応するAPIフックが使用する共有メモリに記憶された情報にしたがって、その動作を制御することができる。
したがって、本実施形態の情報漏洩防止装置によれば、アプリケーションプログラム毎に異なるセキュリティポリシーを適用することが可能になっている。
As described above, according to the information leakage prevention device 1-2 of the present embodiment, the API hooks corresponding to this execution program are used by sequentially executing the API hooks 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 leakage prevention device of the present embodiment, it is possible to apply a different security policy for each application program.

これにより、例えば、ブラウザはインターネットアクセスできるが、ファイルをダウロードするなどの操作はできず、その他のプログラム、例えばワープロでは、ブラウザの表示を見ながら原稿を書いてファイルに保存することはできるが、その内容をネットで送信することはできない、といったセキュリティポリシーを適用することができる。このようにすれば、安全にインターネットに接続できると同時に、編集されたワープロのファイルが不用意にインターネットで流出する危険を回避することができるという優れた効果を得ることが可能となる。 This allows, for example, the browser to access the Internet, but not to download files, and other programs, such as word processors, allow you to write a manuscript and save it to a file while looking at the browser display. You can apply a security policy that the content cannot be sent over the net. By doing so, it is possible to obtain an excellent effect that the edited word processor file can be safely connected to the Internet and at the same time, the risk of accidentally leaking the edited word processor file to the Internet can be avoided.

なお、OSによっては、各プログラム間で直接データを送受信する機能(プロセス間通信機能等)が備わっている場合があり、それを使ってワープロのデータをブラウザに送信し、ブラウザからワープロのデータを送信するといったことが可能である。しかし、これらの機能も各プログラムはAPIを用いて実行するため、本実施形態におけるAPIフック121及びAPIフック122によって制御することが可能である。 Depending on the OS, there may be a function to directly send and receive data between each program (interprocess communication function, etc.), which is used to send word processor data to the browser, and the word processor data is sent from the browser. It is possible to send. However, since each program also executes these functions using the API, it 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, the third embodiment of the present invention will be described with reference to FIGS. 9 to 12. FIG. 9 is a block diagram showing the configuration of the information leakage prevention device of the present embodiment, and FIG. 10 is a diagram showing the configuration of data used in the information leakage prevention device of the present embodiment. Further, FIG. 11 is a flowchart showing a processing procedure of the information leakage prevention device of the present embodiment (security setting switching (3) for each execution program), and FIG. 12 is a processing procedure of the information leakage prevention device of the present embodiment. It is a flowchart which shows (security setting switching (4) for every execution program).

本実施形態の情報漏洩防止装置1−3は、第一実施形態の情報漏洩防止装置1の構成に加えて、アプリケーションプログラム毎に異なるセキュリティポリシーを適用可能な構成を備えている点で、第一実施形態と相違する。また、本実施形態の情報漏洩防止装置1−3は、APIフックではなく、DLLインジェクションを用いることにより、アプリケーションプログラム毎に異なるセキュリティポリシーを適用可能な構成を実現している点で、第二実施形態と相違する。その他の点については、第一実施形態と同様のものとすることができる。 The information leakage prevention device 1-3 of the present embodiment has a configuration in which a different security policy can be applied to each application program in addition to the configuration of the information leakage prevention device 1 of the first embodiment. Different from the embodiment. Further, the information leakage prevention device 1-3 of the present embodiment is the second embodiment in that it realizes a configuration in which a different security policy can be applied to each application program by using DLL injection instead of the API hook. Different from the form. Other points may 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 of the present embodiment is used in the memory area 10a'used by the execution program 11a', the memory area 10b'used by the execution program 11b', and the information leakage prevention device 1-3. It is provided with a shared memory 30-3 (which is omitted in FIG. 9 and shows only the internal storage portion) for storing various types of data. The information leakage prevention device 1-3 of the present embodiment can also be provided with a memory area used by a larger number of execution programs.

共有メモリ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 security 2 storage unit 36.
The use security storage unit 37 stores the security to be used for each execution program. For example, it is stored that security 1 is used for the execution program 11a (browser) and security 2 is used for the execution program 11b (word processor, etc.).
By changing the security information to be used stored in the security storage unit 37, the security policy applied to each execution program can be changed.

セキュリティ1記憶部35とセキュリティ2記憶部36は、セキュリティポリシー毎のセキュリティ内容を記憶するものであり、本実施形態ではDLLインジェクション13a’又はDLLインジェクション13b’によりアクセスされる。
例えば、セキュリティ1記憶部35には、セキュリティ1として、「ハードディスク(HD)への書き込み:不可,インターネットへのアクセス:可,等」のセキュリティポリシーを記憶させることができる。また、セキュリティ2記憶部36には、セキュリティ2として、「ハードディスク(HD)への書き込み不可,インターネットへのアクセス:不可,等」のセキュリティポリシーを記憶させることができる。
The security 1 storage unit 35 and the security 2 storage unit 36 store the security contents for each security policy, and are accessed by the DLL injection 13a'or the DLL injection 13b' in the present embodiment.
For example, the security 1 storage unit 35 can store a security policy of "write to hard disk (HD): not possible, access to the Internet: possible, etc." as security 1. Further, the security 2 storage unit 36 can store a security policy of "write to hard disk (HD) not possible, access to the Internet: not possible, etc." as security 2.

横取り処理部として、実行プログラム11a’により使用されるメモリ領域10a’には、DLLインジェクション13a’が備えられ、実行プログラム11b’により使用されるメモリ領域10b’には、DLLインジェクション13b’が備えられている。 As the interception processing unit, the memory area 10a'used by the execution program 11a'is provided with the DLL injection 13a', and the memory area 10b'used by the execution program 11b'is provided with the DLL injection 13b'. ing.

なお、DLLインジェクションは、通常実行プログラムの起動時にAPIの呼び出しを横取りするDLLが読み込まれて、実行プログラムと共に実行される仕組みとなっている。このため、実行プログラムの起動時にどのDLLを読み込むかを実行プログラムに選択させることにより、特定のDLLインジェクションを実行プログラムの実行開始時に選択させることが可能となっている。 Note that the DLL injection is a mechanism in which the DLL that intercepts the API call is read when the normal execution program is started, and is executed together with the execution program. Therefore, by letting the execution program select which DLL to read when the execution program is started, it is possible to select a specific DLL injection at the start of execution 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'interprets the call processing of a specific type of API 40 by the execution program 11a'. The DLL injection 13a'can acquire information about the security used for the execution program 11a' from the usage security storage unit 37. The acquisition of information about the security to be used by the DLL injection 13a'can be performed at the time of reading the DLL injection 13a' into the memory. It can also be performed at the timing called from the execution program 11a'. This also applies to the DLL injection 13b'.
For example, in the usage security storage unit 37, when the security 1 is associated with the execution program 11a'and stored, 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, as the content of the security 1, "write to the hard disk: not possible, access to the Internet: possible" is stored in the security 1 storage unit 35. Therefore, when the execution program 11a'calls the API for writing to the hard disk, the DLL injection 13a'indicates that the execution program 11a'is not allowed to call the API without calling the API 40. Will be returned. Thereby, the operation of the execution program 11a'can be controlled.

また、DLLインジェクション13b’は、実行プログラム11b’による特定種類のAPI40の呼び出し処理を横取りする。使用セキュリティ記憶部37において、実行プログラム11b’にセキュリティ2が対応付けられて記憶されている場合、セキュリティ2記憶部36に記憶されているセキュリティ2の内容にもとづいて、実行プログラム11b’の動作を制御する。 Further, the DLL injection 13b'interprets the call processing of the specific type of API 40 by the execution program 11b'. When the execution program 11b'is stored in association with the security 2 in the used security storage unit 37, the operation of the execution program 11b'is performed based on the contents of the security 2 stored in the security 2 storage unit 36. Control.

図10の例では、DLLインジェクション13b’に対応するセキュリティ2の内容として、「ハードディスクへの書き込み:可,インターネットへのアクセス:不可」がセキュリティ2記憶部36に記憶されている。このため、実行プログラム11b’がハードディスクへの書き込みを行うためのAPIを呼び出した場合、DLLインジェクション13b’は、API40を呼び出して、その実行を許可する。これによって、実行プログラム11b’の動作を制御することができる。 In the example of FIG. 10, as the content of the security 2 corresponding to the DLL injection 13b', "write to the hard disk: possible, access to the Internet: not possible" is stored in the security 2 storage unit 36. Therefore, when the execution program 11b'calls the API for writing to the hard disk, the DLL injection 13b'calls the API 40 and permits the execution. Thereby, the operation of the execution program 11b'can be controlled.

次に、本実施形態の情報漏洩防止装置1−3による実行プログラム毎のセキュリティ設定切替(3)処理手順について、図11を参照して説明する。ここでは、実行プログラム11a’が、ブラウザであるとする。 Next, the security setting switching (3) processing procedure for each execution program by the information leakage 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 a call process for accessing 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 by 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 the security 1 storage unit 35 stores "access to the Internet: possible" as the content of the security 1, so the DLL injection 13a'calls the API 40. And allow the operation.

一方、ブラウザによって、ハードディスクへの書き込みを行うためのAPIが呼び出されたとする(ステップ50)。DLLインジェクション13a’が、このAPIの呼び出し処理を横取りする(ステップ51)。
ブラウザに使用されるセキュリティは、セキュリティ1であるため、DLLインジェクション13a’は、セキュリティ1記憶部35に記憶されているセキュリティ1の内容にしたがって、実行プログラム11a’の動作を制御する(ステップ52)。
On the other hand, it is assumed that the browser calls the API for writing to the hard disk (step 50). The DLL injection 13a'interprets the 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 the 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 the hard disk", and the security 1 storage unit 35 stores "write to the hard disk: not possible" as the content of the security 1, so the DLL injection 13a'calls the API 40. Without doing so, the information indicating that the processing cannot be permitted to the execution program 11a'is returned.

次に、本実施形態の情報漏洩防止装置1−3による実行プログラム毎のセキュリティ設定切替(4)処理手順について、図12を参照して説明する。ここでは、実行プログラム11b’が、ブラウザ以外のアプリケーションプログラム、例えばワープロであるとする。 Next, the security setting switching (4) processing procedure for each execution program by the information leakage 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 a call process for accessing 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 in the word processor is security 2, as stored in the usage security storage unit 37.
Therefore, the DLL injection 13b'controls the operation of the execution program 11b' according to the contents of the security 2 stored in the security 2 storage unit 36 (step 62).

このとき、APIは「インターネットへのアクセス」であり、セキュリティ2記憶部36にはセキュリティ2の内容として「インターネットへのアクセス:不可」が記憶されているため、DLLインジェクション13b’は、API40を呼び出すことなく、実行プログラム11b’に処理を許可できないことを示す情報を返却する。 At this time, the API is "access to the Internet", and the security 2 storage unit 36 stores "access to the Internet: Impossible" as the content of the security 2, so the DLL injection 13b'calls the API 40. Without doing so, the information indicating that the processing cannot be permitted to the execution program 11b'is returned.

一方、ワープロによって、ハードディスクへの書き込みを行うためのAPIが呼び出されたとする(ステップ60)。DLLインジェクション13b’が、このAPIの呼び出し処理を横取りする(ステップ61)。
ワープロに使用されるセキュリティは、セキュリティ2であるため、DLLインジェクション13b’は、セキュリティ2記憶部36に記憶されているセキュリティ2の内容にしたがって、実行プログラム11b’の動作を制御する(ステップ62)。
On the other hand, it is assumed that the word processor calls the API for writing to the hard disk (step 60). The DLL injection 13b'intercepts the calling process of this API (step 61).
Since the security used in the word processor is security 2, the DLL injection 13b'controls the operation of the execution program 11b' according to the contents of the security 2 stored in the security 2 storage unit 36 (step 62). ..

このとき、APIは「ハードディスクへの書き込み」であり、セキュリティ2記憶部36にはセキュリティ2の内容として「ハードディスクへの書き込み:可」が記憶されているため、DLLインジェクション13b’は、API40を呼び出して、その動作を許可する。 At this time, the API is "write to the hard disk", and the security 2 storage unit 36 stores "write to the hard disk: OK" as the content of the security 2, so the DLL injection 13b'calls the API 40. And allow the operation.

以上のように、本実施形態の情報漏洩防止装置1−3によれば、実行プログラムにより使用されるメモリ領域において、DLLインジェクションを実行させ、その実行プログラムに対応するセキュリティポリシーにしたがって、動作を制御することができ、アプリケーションプログラム毎に異なるセキュリティポリシーを適用することが可能になっている。 As described above, according to the information leakage prevention device 1-3 of the present embodiment, the 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, by configuring the interception processing unit in the portion where the application program such as the API hook or the DLL injection calls the API, the application can be applied without modifying the OS or the driver inside the OS. It is possible to control the movement of the program (execution program). Moreover, there is no need to modify the application program.
If a mechanism is used to control the operation of the application program by modifying the inside of the OS or the driver, if 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 them will be intercepted or tampered with.
Therefore, it is considered preferable from the viewpoint of security to configure the interception processing unit in the portion where the application program calls the API.

また、上記各実施形態において、横取り処理部として、暗号化処理部と復号化処理部とをさらに備えた場合に関し、仮にこれらをOS内部やドライバに備えて実現すると、アプリケーションプログラムとOSとの間には暗号化されていないデータがやり取りされることになる。これに対して、上記各実施形態によれば、アプリケーションプログラムによるAPIの呼び出し直後に暗号化や復号化を行うことができるため、盗聴・傍受の危険性を軽減させることが可能となる。 Further, in each of the above embodiments, when the encryption processing unit and the decryption processing unit are further provided as the interception processing unit, if these are realized inside the OS or in the driver, between the application program and the OS. Unencrypted data will be exchanged with. On the other hand, according to each of the above embodiments, encryption or decryption can be performed immediately after the API is called by the application program, so that the risk of eavesdropping / interception can be reduced.

さらに、アプリケーションの動きを完全に制御するという観点からも、OSの内部においてその仕組みを完全に構築するよりも、アプリケーションが直接呼び出すAPIを横取りすることで、その動きを制御するほうが容易である。すなわち、アプリケーションの外部への呼び出しはすべてAPIで行われているため、APIの動きを制御することにより、例外なくアプリケーションの外部との呼び出しを制御することができるからである。 Furthermore, from the viewpoint of completely controlling the movement of the application, it is easier to control the movement by intercepting the API directly called by the application rather than completely constructing the mechanism inside the OS. That is, since all calls to the outside of the application are made by the API, it is possible to control the calls to the outside of the application without exception by controlling the movement of the API.

上記の各実施形態の情報漏洩防止装置は、本発明の情報漏洩防止プログラムに制御されたコンピュータを用いて実現することができる。コンピュータのCPUは、情報漏洩防止プログラムにもとづいてコンピュータの各構成要素に指令を送り、情報漏洩防止装置の動作に必要となる所定の処理、例えば、モード切替処理、設定モードの実行処理、実行プログラム毎のセキュリティ設定切替処理等を行わせる。このように、本発明の情報漏洩防止装置における各処理、動作は、プログラムとコンピュータとが協働した具体的手段により実現できるものである。 The information leakage prevention device of each of the above embodiments can be realized by using a computer controlled by the information leakage prevention program of the present invention. The CPU of the computer sends a command 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 device, for example, mode switching processing, setting mode execution processing, execution program. Have each security setting switching process performed. As described above, each process and operation in the information leakage prevention device of the present invention can be realized by specific means in which the program and the computer cooperate.

プログラムは予めROM,RAM等の記録媒体に格納され、コンピュータに実装された記録媒体から当該コンピュータにプログラムを読み込ませて実行されるが、例えば通信回線を介してコンピュータに読み込ませることもできる。
また、プログラムを格納する記録媒体は、例えば半導体メモリ、磁気ディスク、光ディスク、その他任意のコンピュータで読取り可能な任意の記録手段により構成できる。
The program is stored in a recording medium such as ROM or RAM in advance, and the program is read by the computer from the recording medium mounted on the computer and executed. However, the program can also be read by the computer via a communication line, for example.
Further, the recording medium for storing the program can be configured by, for example, a semiconductor memory, a magnetic disk, an optical disk, or any other recording means that can be read by any computer.

以上説明したように、本発明の実施形態に係る情報漏洩防止装置、及び情報漏洩防止プログラムによれば、コンピュータの再起動やログオンなどを行うことなく、コンピュータのセキュリティモードを状況に応じた様々な内容に変更することが可能である。
また、一台のコンピュータにおいて、アプリケーション毎に、異なる複数のセキュリティポリシーを同時に適用することも可能となる。
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 set according to the situation without restarting or logging on to the computer. It is possible to change the content.
It is also possible to apply a plurality of different security policies to each application at the same time on 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, it is possible to appropriately change the configuration such that each of the first to third embodiments is combined in various ways.

本発明は、例えば企業や学校等において、情報の漏洩を簡易に抑制可能したい場合などに好適に利用することが可能である。 The present invention can be suitably used when, for example, a company, a school, or the like wants 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 leakage prevention device 10,10a, 10b, 10a', 10b' Execution program used memory area 11, 11a, 11b, 11a', 11b' Execution program 12 Pre-emption processing unit 12-1 Switching Detection unit 12-2 Mode execution unit 121,122 API hook (DLL)
13a', 13b' DLL injection 20 Mode switching unit 30 Shared memory 31 Switching condition storage unit 32 Setting mode storage unit 33 Mode content storage unit 34 Use interception processing storage unit 35 Security 1 storage unit 36 Security 2 storage unit 37 Use security storage unit 40 API (what is originally called)
50 Operating system 60 Storage device driver 70 Printer driver 80 Network driver 2 Storage device 3 Printer 4 Network device

Claims (11)

セキュリティのモードを変更することにより情報の漏洩を防止する情報漏洩防止装置であって、
前記モードを切り替える条件毎に対応するモードを記憶する切替条件記憶部と、
モードの切替により設定するモードを記憶する設定モード記憶部と、
アプリケーションプログラムから特定種類のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りし、前記切替条件記憶部の切替条件を参照して、前記アプリケーションプログラムが実行しようとする内容と一致する条件が存在する場合、当該条件に対応するモードを取得する横取り処理部と、
前記横取り処理部から前記モードを取得して、前記設定モード記憶部に設定するモード切替部と、を備え、
前記横取り処理部は、アプリケーションプログラムから前記特定種類と同一又は異なる所定のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りし、前記設定モード記憶部を参照して、当該モードに対応するモード内容にしたがって、前記アプリケーションプログラムインタフェースによる処理を許可又は禁止することによって、当該情報漏洩防止装置の内部における動作の制御、及び/又は、当該情報漏洩防止装置の外部に対する動作の制御を行う
ことを特徴とする情報漏洩防止装置。
An information leakage prevention device that prevents information leakage by changing the security mode.
A switching condition storage unit that stores the corresponding mode for each condition for switching the mode, and a switching condition storage unit.
A setting mode storage unit that stores the mode to be set by switching the mode,
When a specific type of application program interface call processing is performed from the application program, the call processing is intercepted, the switching condition of the switching condition storage unit is referred to, and the content matches the content to be executed by the application program. If a condition exists, the interception processing unit that acquires the mode corresponding to the condition and
A mode switching unit that acquires the mode from the interception processing unit and sets it in the setting mode storage unit is provided.
When a predetermined application program interface call process of the same or different from the specific type is performed from the application program, the interception processing unit intercepts the call processing, refers to the setting mode storage unit, and switches to the mode. By permitting or prohibiting processing by the application program interface according to the corresponding mode content, the operation inside the information leakage prevention device is controlled and / or the operation outside the information leakage prevention device is controlled. An information leakage prevention device characterized by this.
前記横取り処理部が、各種OSにおけるAPIフック、及び/又は、DLLインジェクションであることを特徴とする請求項1記載の情報漏洩防止装置。 The information leakage prevention device according to claim 1, wherein the interception processing unit is an API hook and / or a DLL injection in various OSs. 前記特定種類のアプリケーションプログラムインタフェースが、特定のファイルへのアクセス、特定のネットワークへのアクセス、又は、特定のファイルサーバへのアクセスを行うものである
ことを特徴とする請求項1又は2記載の情報漏洩防止装置。
The information according to claim 1 or 2, wherein the specific type of application program interface provides access to a specific file, access to a specific network, or access to a specific file server. Leakage prevention device.
前記モード切替部が、ユーザにより入力されたモード切替指示情報、特定のアプリケーションプログラムを起動することを示す情報、又は、ユーザ認証に成功したことを示す情報の入力にもとづいて、モードの切替により設定するモードを前記設定モード記憶部に記憶させる
ことを特徴とする請求項1〜3のいずれかに記載の情報漏洩防止装置。
The mode switching unit is set by switching modes based on the mode switching instruction information input by the user, the information indicating that a specific application program is started, or the information indicating that the user authentication has been successful. The information leakage prevention device according to any one of claims 1 to 3, wherein the mode to be input is stored in the setting mode storage unit.
前記横取り処理部として前記APIフックが、前記アプリケーションプログラムごとに二以上備えられると共に、前記APIフックにそれぞれ対応する二以上で別個のセキュリティ記憶部が備えられ、
前記セキュリティ記憶部にはセキュリティの内容が記憶され、
前記アプリケーションプログラムに対して使用される前記APIフックが設定されており、
全ての前記APIフックが順次実行されて、前記アプリケーションプログラムに対して使用される前記APIフックのみが、対応する前記セキュリティ記憶部から前記セキュリティ内容を取得して、
当該APIフックにより、前記セキュリティ内容にしたがって前記アプリケーションプログラムインタフェースによる処理が許可又は禁止される
ことを特徴とする請求項記載の情報漏洩防止装置。
Two or more API hooks are provided for each application program as the interception processing unit, and two or more separate security storage units corresponding to the API hooks are provided.
The contents of security are stored in the security storage unit.
The API hook used for the application program is set and
All the API hooks are executed sequentially, and only the API hook used for the application program acquires the security content from the corresponding security storage unit.
The information leakage prevention device according to claim 2 , wherein processing by the application program interface is permitted or prohibited by the API hook according to the security content.
前記横取り処理部として前記DLLインジェクションが、前記アプリケーションプログラムごとに備えられると共に、二以上で別個のセキュリティ記憶部が備えられ、
前記セキュリティ記憶部にはセキュリティの内容が記憶され、
前記アプリケーションプログラムに対して使用されるセキュリティが設定されており、
前記DLLインジェクションが実行されて、前記アプリケーションプログラムに対応する前記セキュリティの内容を前記セキュリティ記憶部から取得して、
当該DLLインジェクションにより、前記セキュリティの内容にしたがって前記アプリケーションプログラムインタフェースによる処理が許可又は禁止される
ことを特徴とする請求項記載の情報漏洩防止装置。
The DLL injection is provided as the interception processing unit for each application program, and two or more separate security storage units are provided.
The contents of security are stored in the security storage unit.
The security used for the application program is set
The DLL injection is executed to acquire the security content corresponding to the application program from the security storage unit.
The information leakage prevention device according to claim 2 , wherein processing by the application program interface is permitted or prohibited by the DLL injection according to the content of the security.
前記情報漏洩防止装置の内部における動作の制御が、当該情報漏洩防止装置における、ハードディスクドライブに対する書き込み禁止、デスクトップに対する書き込み禁止、及び/又は、特定のアプリケーションの起動禁止である
ことを特徴とする請求項1〜6のいずれかに記載の情報漏洩防止装置。
A claim characterized in that the control of the operation inside the information leakage prevention device is write-protection to a hard disk drive, write-protection to a desktop, and / or startup prohibition of a specific application in the information leakage prevention device. The information leakage prevention device according to any one of 1 to 6.
前記情報漏洩防止装置の外部に対する動作の制御が、特定のネットワークへのアクセス禁止、特定のファイルサーバへのアクセス禁止、特定のデバイスへのアクセス禁止、及び/又は、特定の出力機器へのアクセス禁止である
ことを特徴とする請求項1〜7のいずれかに記載の情報漏洩防止装置。
The control of the external operation of the information leakage 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 leakage prevention device according to any one of claims 1 to 7, wherein the information leakage prevention device is characterized by the above.
セキュリティのモードを変更することによりコンピュータからの情報の漏洩を防止するための情報漏洩防止プログラムであって、
前記モードを切り替える条件毎に対応するモードを記憶する切替条件記憶部と、モードの切替により設定するモードを記憶する設定モード記憶部とを備えたコンピュータに、
アプリケーションプログラムから特定種類のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りさせ、前記切替条件記憶部の切替条件を参照させて、前記アプリケーションプログラムが実行しようとする内容と一致する条件が存在する場合、当該条件に対応するモードを取得させ、
前記設定モード記憶部に設定させ、
アプリケーションプログラムから前記特定種類と同一又は異なる所定のアプリケーションプログラムインタフェースの呼び出し処理が行われたとき、前記呼び出し処理を横取りさせ、前記設定モード記憶部を参照させて、当該モードに対応するモード内容にしたがって、前記アプリケーションプログラムインタフェースによる処理を許可又は禁止することによって、当該コンピュータの内部における動作の制御、及び/又は、当該コンピュータの外部に対する動作の制御を行わせる
ことを実行させるための情報漏洩防止プログラム。
An information leakage prevention program to prevent information leakage from a computer by changing the security mode.
A computer provided with a switching condition storage unit that stores a mode corresponding to each of the mode switching conditions and a setting mode storage unit that stores a mode to be set by switching the mode.
When a specific type of application program interface call processing is performed from the application program, the call processing is intercepted and the switching condition of the switching condition storage unit is referred to, which matches the content to be executed by the application program. If a condition exists, get the mode corresponding to the condition and
Set in the setting mode storage unit
When a predetermined application program interface call process of the same or different from the specific type is performed from the application program, the call process is intercepted, the setting mode storage unit is referred to, and the mode content corresponding to the mode is followed. by enabling or disabling the processing by the application program interface, control of the operation in the interior of the computer, and / or, information leakage prevention program for executing that causes the control behavior for the outside of the computer.
APIフックが、前記アプリケーションプログラムごとに二以上備えられると共に、セキュリティの内容を記憶する、前記APIフックにそれぞれ対応する二以上で別個のセキュリティ記憶部をさらに備え、かつ前記アプリケーションプログラムに対して使用される前記APIフックが設定されている前記コンピュータに、
全ての前記APIフックを順次実行させて、前記アプリケーションプログラムに対して使用される前記APIフックのみに、対応する前記セキュリティ記憶部から前記セキュリティの内容を取得させ、
当該APIフックにより、前記セキュリティの内容にしたがって前記アプリケーションプログラムインタフェースによる処理を許可又は禁止させる
ことを実行させるための請求項9記載の情報漏洩防止プログラム。
Two or more API hooks are provided for each application program, and two or more separate security storage units corresponding to the API hooks for storing the contents of security are further provided, and the API hooks are used for the application program. To the computer to 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 leakage prevention program according to claim 9, wherein the API hook allows or prohibits processing by the application program interface according to the content of the security.
DLLインジェクションが、前記アプリケーションプログラムごとに備えられると共に、セキュリティの内容を記憶する二以上で別個のセキュリティ記憶部をさらに備え、かつ前記アプリケーションプログラムに対して使用されるセキュリティが設定されている前記コンピュータに、
前記DLLインジェクションを実行させて、前記アプリケーションプログラムに対応する前記セキュリティの内容を前記セキュリティ記憶部から取得させ、
当該DLLインジェクションにより、前記セキュリティの内容にしたがって前記アプリケーションプログラムインタフェースによる処理を許可又は禁止させる
ことを実行させるための請求項9又は10記載の情報漏洩防止プログラム。
The computer is provided with DLL injection for each application program, is further provided with two or more separate security storage units for storing security contents, and is set with security used for the application program. ,
The DLL injection is executed to acquire the security content corresponding to the application program from the security storage unit.
The information leakage prevention program according to claim 9 or 10, wherein the DLL injection enables or prohibits processing by the application program interface according to the content of the security.
JP2017205913A 2017-10-25 2017-10-25 Information leakage prevention device and information leakage prevention program Active JP6957311B2 (en)

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 JP2019079289A (en) 2019-05-23
JP6957311B2 true 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)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111737738A (en) * 2020-06-11 2020-10-02 浙江华途信息安全技术股份有限公司 Windows prevents information leakage system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
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
JP5293151B2 (en) * 2008-12-19 2013-09-18 富士ゼロックス株式会社 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
KR101242127B1 (en) * 2011-04-28 2013-03-12 주식회사 파수닷컴 Computing device having a function of DLL injection and method for DLL injection
JP2013164732A (en) * 2012-02-10 2013-08-22 Isis Asset Co Ltd Information processor
JP6151218B2 (en) * 2014-05-29 2017-06-21 日本電信電話株式会社 Application execution device, method and program

Also Published As

Publication number Publication date
JP2019079289A (en) 2019-05-23

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
CN108140097B (en) Passive encryption of organised data
US10061928B2 (en) Security-enhanced computer systems and methods
JP6347831B2 (en) Method, data processing program, computer program product, and data processing system for handling guest events in a system controlled by a hypervisor
KR101705550B1 (en) Method and software product for controlling application program which access secure saving area
JP5719244B2 (en) Method, program, and computer apparatus for constructing a safely managed virtual machine execution environment
KR101054981B1 (en) Computer-implemented methods, information processing systems, and computer-readable recording media for securely storing the context of a program
RU2559728C2 (en) System and method of encoding files from encrypted drive
JP7146812B2 (en) Auxiliary storage device with independent restoration area and equipment to which this is applied
WO2009110275A1 (en) Classified information leakage prevention system and classified information leakage prevention method
Amiri Sani Schrodintext: Strong protection of sensitive textual content of mobile applications
US9881142B2 (en) Method and apparatus for preventing and investigating software piracy
US20170329963A1 (en) Method for data protection using isolated environment in mobile device
WO2012094969A1 (en) Data protection method and apparatus
US10303885B2 (en) Methods and systems for securely executing untrusted software
JP6270780B2 (en) Data management apparatus, data management method, and data management program
CN115758420A (en) File access control method, device, equipment and medium
JP2009059008A (en) File management system
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
KR20220085786A (en) Ransomware Protection
JP2011040044A (en) Device, system, program and method for integrating virtual thin client
JP2008083886A (en) Confidential information leakage prevention method and system
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 Written amendment

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