JP5518158B2 - Data verification apparatus and program - Google Patents
Data verification apparatus and program Download PDFInfo
- Publication number
- JP5518158B2 JP5518158B2 JP2012213158A JP2012213158A JP5518158B2 JP 5518158 B2 JP5518158 B2 JP 5518158B2 JP 2012213158 A JP2012213158 A JP 2012213158A JP 2012213158 A JP2012213158 A JP 2012213158A JP 5518158 B2 JP5518158 B2 JP 5518158B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- verification
- check
- unit
- communication data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
本発明は、マルウエアに対処するための技術に関する。 The present invention relates to a technique for dealing with malware.
近年、マルウエアが機密情報を組織外に漏洩させる事故が問題となっている。
マルウエアを用いたサイバー攻撃は高度化され、非特許文献1に示されるAdvanced Persistent Threat(以下、「APT」という)と呼ばれる攻撃では、電子メールの添付ファイルなどで組織に侵入したマルウエアが、計算機に感染し、さらに、攻撃者が運用するインターネット上のCommand & Controlサーバ(以下、「C&Cサーバ」という」と通信し、新しいマルウエアや攻撃ツールをダウンロードしたり自身をアップデートする。
そして、マルウエアは、組織内を偵察し、ファイルサーバを見つけ、機密ファイルをC&Cサーバへ漏洩する。
マルウエアがC&Cサーバとの通信やファイルの漏洩に用いる通信は、一般的に組織とインターネット間で許可されているプロトコルであるHTTP(HyperText Transfer Protocol)が多く、ファイルの漏洩はPOSTが多い。
また、APTにおいては、マルウエアはユーザの計算機の画面をキャプチャしてC&Cサーバへ送信し、攻撃者は画面キャプチャを観察してどのような操作をユーザが実施しているか把握するケースもある。
また、C&Cサーバの命令を受け、マルウエアがファイルを検索しファイルを移動する、などの操作を行う場合もある。
このように、近年の組織へのサイバー攻撃は高度化しており、決定的な対策が無い状況にある。
In recent years, accidents in which malware leaks confidential information outside the organization have become a problem.
Cyber attacks using malware have become sophisticated, and in attacks called Advanced Persistent Threat (hereinafter referred to as “APT”) shown in Non-Patent
The malware then scouts the organization, finds the file server, and leaks the confidential file to the C & C server.
The communication that Malware uses for communication with the C & C server and file leakage is generally HTTP (HyperText Transfer Protocol), which is a protocol that is permitted between the organization and the Internet, and file leakage is often POST.
In APT, the malware captures the screen of the user's computer and sends it to the C & C server, and the attacker may observe what the user is performing by observing the screen capture.
Also, in response to an instruction from the C & C server, the malware may perform an operation such as searching for a file and moving the file.
In this way, cyber attacks on organizations in recent years have become sophisticated and there is no definitive countermeasure.
インターネットへのファイルの情報漏洩対策として、非特許文献2に記載の技術がある。
当技術では、ファイルが組織外に送信されようとしていることを検知し、そのファイルの情報が、流通許可リストに登録されているか否かをもって、送信の可否を判断する。
As a countermeasure for information leakage of files to the Internet, there is a technique described in Non-Patent
In the present technology, it is detected that a file is about to be transmitted outside the organization, and whether or not transmission is possible is determined based on whether or not the information of the file is registered in the distribution permission list.
非特許文献2に記載の技術では、ユーザは、事前に流通許可リストへ公開可能なファイルの情報を登録する必要があり、さらに、公開可能なファイルの情報を追加/削除し常にメンテナンスする必要がある。
また、流通許可リストへのファイルの情報の登録方法についてはGUI(Graphical User Interface)を使うなどの具体的な方法が記述されていない。
近年の高度化したサイバー攻撃においては、前述したように、攻撃者がユーザの操作を観察し、どのような処理を行っているか把握したうえで、マルウエアを操作するので、流通許可リストの登録方法を模擬し、漏洩したいファイルの情報を流通許可リストに登録して、ファイルを漏洩する可能性がある。
In the technique described in Non-Patent
In addition, a specific method such as using GUI (Graphical User Interface) is not described as a method for registering file information in the distribution permission list.
In recent cyber attacks, as described above, the attacker operates the malware after observing the user's operation and understanding what kind of processing is being performed. There is a possibility of leaking the file by registering the information of the file to be leaked in the distribution permission list.
本発明は、上述のような事情に鑑みたものであり、公開可能なファイルの情報を登録せずに、マルウエア又は不正なユーザによる情報漏洩を防止することを主な目的とする。 The present invention has been made in view of the circumstances as described above, and has as its main object to prevent information leakage by malware or an unauthorized user without registering information on a file that can be made public.
本発明に係るデータ検証装置は、
検証の対象となる検証対象データが含まれる通信データを受信する通信データ受信部と、
前記検証対象データがマルウエア及び不正なユーザの少なくともいずれかにより不正に操作されたデータでないことを検証するのに用いられる検証情報が前記通信データに含まれているか否かを検証し、前記通信データに前記検証情報が含まれている場合に、前記検証対象データと前記検証情報とを用いて、前記検証対象データが不正に操作されたデータでないことを検証するデータ検証部と、
前記データ検証部により前記検証対象データが不正に操作されたデータでないと判定された場合に、前記通信データから前記検証情報を除外し、前記検証情報が除外された通信データを転送する通信データ転送部とを有することを特徴とする。
The data verification device according to the present invention is:
A communication data receiving unit that receives communication data including verification target data to be verified;
Verifying whether the verification data used for verifying that the verification target data is not data illegally operated by at least one of malware and an unauthorized user is included in the communication data; A data verification unit that verifies that the verification target data is not illegally operated data using the verification target data and the verification information,
Communication data transfer for excluding the verification information from the communication data and transferring the communication data excluding the verification information when the data verification unit determines that the verification target data is not illegally operated data Part.
本発明によれば、通信データに検証対象データとともに検証情報が含まれ、検証情報により検証対象データが不正に操作されたデータでないと検証できた場合のみ、通信データから検証情報を除外し、通信データを転送する。
このため、公開可能なファイルの情報を登録せずに、マルウエア又は不正なユーザによる情報漏洩を防止することができる。
According to the present invention, the verification information is included in the communication data, and the verification information is included in the communication data, and the verification information is excluded from the communication data only when the verification information includes the verification information. Transfer data.
For this reason, it is possible to prevent information leakage by malware or an unauthorized user without registering information of a file that can be opened.
実施の形態1〜8では、HTTP POSTや電子メールの添付ファイルで組織外に送信するファイルに検印を付与し、プロキシサーバやメールサーバで検印を確認し、検印が正しく付与されている場合に、検印を除去したうえで組織外に送信を許可することで、マルウエアによる情報漏洩を防止する構成を説明する。
つまり、実施の形態1〜8では、ユーザがHTTP POSTでインターネット上のWebサイトへファイル送信を行っていることを確実に識別し、それ以外のHTTP POSTによるファイル送信をブロックすることで、ユーザが意図せぬファイル送信をブロックし、情報漏洩を防止する。
そして、本方式では、組織外に送信可能なリストを管理する必要が無く、マルウエアによる本方式の模擬による不正なHTTP POSTについても対策を講じてある。
In the first to eighth embodiments, when a check is given to a file to be transmitted outside the organization using an HTTP POST or an email attachment, and the check is confirmed by a proxy server or a mail server, the check is correctly given. A configuration for preventing information leakage by malware by permitting transmission outside the organization after removing the seal will be described.
In other words, in the first to eighth embodiments, the user can be surely identified that the user is performing file transmission to a website on the Internet using HTTP POST, and the user can block the file transmission using the other HTTP POST. Block unintentional file transmission and prevent information leakage.
In this method, it is not necessary to manage a list that can be transmitted outside the organization, and countermeasures are taken against illegal HTTP POST by malware simulating this method.
実施の形態1.
本実施の形態に係る通信システムの構成例と動作の概要を図9に示す。
FIG. 9 shows a configuration example of the communication system according to the present embodiment and an outline of the operation.
図9において、端末装置5000は、ユーザ5005が利用するコンピュータである。
端末装置5000は、通信装置の例に相当する。
端末装置5000は、ハードウエアとして、例えば、CPU(Central Processing Unit)、メモリ、ハードディスク装置、通信カードが配備されている。
また、端末装置5000には、ソフトウエアとして、例えば、ブラウザ5004と検印処理部5002が含まれている。
ファイル5001は、端末装置5000が、ブラウザ5004を用いて、Webサーバ装置5012にHTTPにより送信するファイルである。
検印処理部5002は、ファイル5001に検印を付与する手段である。
検印付きファイル5003は、検印処理部5002によりファイル5001に検印が付与されたファイルである。
In FIG. 9, a
The
The
Further, the
A file 5001 is a file that the
A
A file 5003 with a check is a file in which a check is given to the file 5001 by the
検査サーバ装置5009は、プロキシサーバ装置5008と連携し、HTTP POSTデータ内のデータを検査し、HTTP POSTされる内容を検査する。
検査サーバ装置5009は、データ検証装置の例に相当する。
The
The
動作の概要について図9を用いて以下に記述する。
なお、以下の(1)〜(5)は、図9の(1)〜(5)に対応している。
An outline of the operation will be described below with reference to FIG.
The following (1) to (5) correspond to (1) to (5) in FIG.
(1)ユーザ5005は、Webサーバ装置5012にHTTPでPOSTしたいファイル5001に対して、本実施の形態に係る検印処理部5002で検印を付与し、検印付きファイル5003を生成する。
検印付きファイル5003は、もとのファイル5001と検印データとユーザ識別子に分離可能である。
検印データ及びユーザ識別子は、ファイル5001がマルウエアにより操作されたデータでないことを検証するのに用いられる情報である。
(1) The user 5005 gives a check to the file 5001 to be POSTed to the
The file with check 5003 can be separated into the original file 5001, check data, and a user identifier.
The check data and the user identifier are information used to verify that the file 5001 is not data operated by malware.
(2)ユーザ5005は、ブラウザ5004でWebサーバ装置5012のWebページを表示し、ファイル送信のページにおいて、ファイル5001の代わりに、検印付きファイル5003を端末装置5000から送信する。
この時、ブラウザ5004は、HTTPのボディ(メッセージボディ、以下、HTTPボディと表記する)に、検印付きファイル5003を含めるが、この処理は一般のブラウザに備わっている機能である。
なお、端末装置5000からは、検印付きファイル5003はHTTP POSTデータ5006として送信される。
HTTP POSTデータ5006は、HTTPヘッダとHTTPボディで構成される。
なお、厳密には、HTTP POSTデータ5006には、HTTPヘッダとHTTPボディの他に、リクエストラインや空行も含まれるが、これらは、本実施の形態の説明に直接関係しないため割愛する。
(2) The user 5005 displays the Web page of the
At this time, the
Note that the file 5003 with a check is transmitted as
The
Strictly speaking, the
(3)検印付きファイル5003が含まれるHTTP POSTデータ5006は、端末装置5000からLAN5013を経由し、(ネットワーク)スイッチ5007を通りプロキシサーバ装置5008に送信される。
なお、プロキシサーバ装置5008へは、HTTP POSTデータ5006にIPヘッダ、TCPヘッダ等が付加されたパケットとして送信される。
(3) The
Note that the
(4)プロキシサーバ装置5008は、受信した、検印付きファイル5003を含んだHTTP POSTデータ5006をネットワーク経由などで検査サーバ装置5009に転送する。
プロキシサーバ装置5008が外部機能を利用するプロトコルである「internet content adaptation protocol」などを使用してもよい。
なお、ネットワーク経由だけでなく、プロキシサーバ装置5008と検査サーバ装置5009間において、検印付きファイル5003を含んだHTTP POSTデータ5006を物理媒体経由(オフライン)で受け渡しするようにしてもよい。
(4) The
The
Note that the
(5)検査サーバ装置5009は、検印付きファイル5003を含んだHTTP POSTデータ5006を受信する。
また、検査サーバ装置5009は、抽出したHTTP POSTデータ5006の検印を検証する。
つまり、検査サーバ装置5009は、HTTP POSTデータ5006に検印データ及びユーザ識別子が含まれているかを判定し、HTTP POSTデータ5006に検印データ及びユーザ識別子が含まれている場合は、ファイル5001がマルウエアにより操作されたデータでないかどうかを検証する。
検印データ及びユーザ識別子が存在し、検印データ及びユーザ識別子が正しければ(ファイル5001がマルウエアにより操作されたデータでなければ)、検査サーバ装置5009は、検印付きファイル5003から検印データ及びユーザ識別子を削除し、ファイル5001を含んだHTTP POSTデータ5010を生成する。
一方、HTTP POSTデータ5006に検証データ及びユーザ識別子が含まれていない場合や、検印データ及びユーザ識別子が正しくない場合は、検査サーバ装置5009は、エラーを出力する。
(5) The
Also, the
In other words, the
If the check data and user identifier exist and the check data and user identifier are correct (if the file 5001 is not data operated by malware), the
On the other hand, when the verification data and the user identifier are not included in the
(6)検査サーバ装置5009は、検印データ及びユーザ識別子が正しい場合は、ファイル5001を含んだHTTP POSTデータ5010をプロキシサーバ装置5008へネットワーク経由などで転送する。
検査サーバ装置5009がエラーを出力した場合は、これをプロキシサーバ装置5008へ転送する。
(6) When the check data and the user identifier are correct, the
If the
(7)プロキシサーバ装置5008は、検査サーバ装置5009から受け取った、ファイル5001を含んだHTTP POSTデータ5010を、インターネット5011を経由してWebサーバ装置5012へ送信する。
プロキシサーバ装置5008は、検査サーバ装置5009からエラーを受け取った場合は、インターネットへ何も送信せず、ユーザ5005の端末装置5000へHTTPのエラーメッセージを送る。
(7) The
When the
次に、図9の端末装置5000の詳細を図1及び図2を用いて説明する。
図1は、端末装置5000の内部構成例を示し、図2は、端末装置5000の動作例を示す。
なお、図1及び図2では、端末装置1及び検印処理部100と表記している。
また、図1では、本実施の形態の説明に必要な要素だけを示しており、図1に示す以外の要素が端末装置1に追加されてもよい。
Next, details of the
FIG. 1 shows an internal configuration example of the
In FIG. 1 and FIG. 2, the
Further, FIG. 1 shows only elements necessary for the description of the present embodiment, and elements other than those shown in FIG. 1 may be added to the
図1に示すように、検印処理部100は、データ入力部101、検印生成部102、検印鍵保存部103、検印追加部105及び検印データ出力部106に大別される。
As shown in FIG. 1, the
検印処理部100において、データ入力部101は、検印対象データ1201を入力する。
検印対象データ1201は、例えば、図9におけるファイル5001である。
データ入力部101は、入力された検印対象データ1201を被検印データ1101として出力する(図2のS101)。
データ入力部101は、例えば、ファイル5001のファイル構造から、実際のデータ部分を取り出す処理を行い、被検印データ1101として出力する。
なお、被検印データ1101は検証対象データの例に相当する。
In the
The check target data 1201 is, for example, the file 5001 in FIG.
The
For example, the
The test mark data 1101 corresponds to an example of verification target data.
検印生成部102は、被検印データ1101を入力し、また、ユーザ5005の識別子である、ユーザ識別子1207を入力する。
ユーザ識別子1207は、GUIから入力してもよいし、設定ファイルから読み込んでもよい。
次に、検印生成部102は、検印鍵保存部103に検印鍵読み込み命令1102を出力する。
検印鍵読み込み命令1102には、ユーザ識別子1207が含まれている。
The check
The user identifier 1207 may be input from a GUI or may be read from a setting file.
Next, the check
The verification key read command 1102 includes a user identifier 1207.
検印鍵保存部103は、内部に、ユーザ識別子1207に対応付けて検印鍵1103を保存している。
検印鍵保存部103は、検印鍵読み込み命令1102に含まれるユーザ識別子1207に該当する検印鍵1103を取り出し、取り出した検印鍵1103を検印生成部102に出力し、検印生成部102は、検印鍵1103を入力する(図2のS102_1)。
検印鍵1103は、図9のユーザ5005が保持する公開鍵暗号のprivate keyであり、ユーザ5005しかその値を知らないものである。
The check
The check
The verification key 1103 is a private key for private key encryption held by the user 5005 in FIG. 9, and only the user 5005 knows its value.
検印生成部102は、被検印データ1101に対して、検印鍵1103を用いて検印データ1105を生成する(図2のS102_2)。
検印データの生成手順を、図3のフローチャートを用いて説明する。
The check
The procedure for generating the check data will be described with reference to the flowchart of FIG.
検印生成部102は、被検印データ1101を一方向性ハッシュ関数h()に入力する(図3のS201_sp1)。
次に、検印生成部102は、一方向性ハッシュ関数h()の出力を、検印鍵1103(private key)で暗号化する。
この処理は、一般的な公開鍵暗号を用いた署名処理である。
そして、暗号化した結果を、検印データ1105とする(図3のS201_sp2)。
The check
Next, the
This process is a signature process using general public key cryptography.
Then, the result of encryption is used as verification data 1105 (S201_sp2 in FIG. 3).
検印生成部102は、生成した検印データ1105を検印追加部105へ出力する(図2のS102_3)。
The
検印追加部105は、被検印データ1101と、検印データ1105と、ユーザ識別子1207を入力し、これらを連結して検印付きデータ1106を生成し、生成した検印付きデータ1106を検印データ出力部106へ出力する(図2のS105)。
検印データ1105及びユーザ識別子1207は検証情報の例に相当する。
The
The check data 1105 and the user identifier 1207 correspond to examples of verification information.
検印データ出力部106は入力した検印付きデータ1106を検印付きデータ1204として出力する。
検印付きデータ1204は、例えば、図9における検印付きファイル5003である(図2のS106)。
検印データ出力部106は、検印付きデータ1106をファイル構造へ変換して出力する。
The check
The data 1204 with a seal is, for example, the file 5003 with a seal in FIG. 9 (S106 in FIG. 2).
The check
パケット生成部107は、検印データ出力部106から検印付きデータ1204を入力し、検印付きデータ1204をHTTPボディとし、HTTPボディにHTTPヘッダを付加してHTTP POSTデータを生成する。
このHTTP POSTデータが通信データの例に相当する。
更に、パケット生成部107は、HTTP POSTデータにIPヘッダ、TCPヘッダ等を追加して、パケットを生成する。
パケット生成部107は、例えば、ブラウザ5004に含まれる機能である。
The
This HTTP POST data corresponds to an example of communication data.
Further, the
The
パケット送信部108は、パケット生成部107により生成されたパケットをLAN5013に送信する。
パケット送信部108も、例えば、ブラウザ5004に含まれる機能である。
The
The
次に、検査サーバ装置5009の詳細を図5及び図6を用いて説明する。
図5は、検査サーバ装置5009の内部構成例を示し、図6は、検査サーバ装置5009の動作例を示す。
なお、図5及び図6では、検査サーバ装置3と表記している。
また、図5では、本実施の形態の説明に必要な要素だけを示しており、図5に示す以外の要素が検査サーバ装置3に追加されてもよい。
Next, details of the
FIG. 5 shows an example of the internal configuration of the
5 and 6, the
FIG. 5 shows only elements necessary for the description of the present embodiment, and elements other than those shown in FIG. 5 may be added to the
検査サーバ装置3において、データ入力部301は、送信対象データ3201を入力する。
送信対象データ3201は、端末装置1から送信されたパケットである。
送信対象データ3201は、ネットワークから入力されるため、図9における、検印付きファイル5003を含んだHTTP POSTデータ5006以外の要素を含む。
検印付きファイル5003を含んだHTTP POSTデータ5006は、送信対象データ3201のボディ部に含まれる。
ボディ部以外は、ヘッダ部であり、HTTP POSTデータ5006とは関係がない。
このため、データ入力部301は送信対象データ3201を解釈し、送信対象データ3201からボディ部を取り出すことで、検印付きファイルを含んだHTTP POSTデータ5006を取り出す処理を行う。
この取り出したデータを、送信対象データ3101とする。
つまり、データ入力部301は、入力された送信対象データ3201を送信対象データ3101として出力する(図6のS301)。
In the
The transmission target data 3201 is a packet transmitted from the
Since the transmission target data 3201 is input from the network, the transmission target data 3201 includes elements other than the
The part other than the body part is a header part and has nothing to do with the
For this reason, the
This extracted data is set as transmission target data 3101.
That is, the
送信対象データ分解部302は、送信対象データ3101を入力し、非検査対象データ3103と検査対象データ3102に分解し、各々を出力する(図6のS302)。
例えば、検印付きファイル5003を含んだHTTP POSTデータ5006を送信対象データ3101とした場合、非検査対象データ3103は、HTTPヘッダが該当し、検査対象データ3102は、HTTPボディが該当する。
The transmission target data decomposition unit 302 receives the transmission target data 3101, decomposes it into non-inspection target data 3103 and inspection target data 3102, and outputs each of them (S302 in FIG. 6).
For example, when the
以下はHTTP POSTデータのフォーマット例であるが、リクエストライン〜空行までは、前記のHTTPヘッダが該当し、メッセージボディが、前記のHTTPボディに該当する。
なお、xxxには実際には適切な値が設定される。
The following is an example format of HTTP POST data. From the request line to the blank line, the HTTP header corresponds to the message body, and the message body corresponds to the HTTP body.
Note that an appropriate value is actually set for xxx.
・リクエストライン
POST/cgi−bin/submit.xxx HTTP/1.1
・リクエスト・ヘッダフィールド
Accept:xxx
Accept−Language:ja
Accept−Encoding:xxx
Referer:http://○○○.sample.△△△/shinsei.html
User−Agent:xxx
Host:○○○.sample.△△△
・一般ヘッダフィールド
Pragma:xxx
Cookie:xxx
・エンティティヘッダフィールド
Content−Type:xxx
Content−Length:xx
・空行(CR(0x0d)+LF(0x0a)のみの行)
・メッセージ・ボディ(POSTするファイルのデータが入る)
xxx
Request line POST / cgi-bin / submit. xxx HTTP / 1.1
Request header field Accept: xxx
Accept-Language: ja
Accept-Encoding: xxx
Referer: http: // OOXXX. sample. ΔΔΔ / shinsei. html
User-Agent: xxx
Host: XXX. sample. △△△
General header field Pragma: xxx
Cookie: xxx
Entity header field Content-Type: xxx
Content-Length: xx
・ Empty line (CR (0x0d) + LF (0x0a) only line)
-Message body (contains data of the file to be posted)
xxx
検査対象データ分解部303は、検査対象データ3102を入力し、検印データ3104と被検印データ3105とユーザ識別子3109に分解して各々を出力する(図6のS303)。
検印データ3104は、図1における検印データ1105であり、被検印データ3105は、図1における被検印データ1101である。
ユーザ識別子3109は、図1におけるユーザ識別子1207である。
The inspection object data decomposing unit 303 receives the inspection object data 3102, decomposes it into the check data 3104, the test mark data 3105, and the user identifier 3109 and outputs each of them (S 303 in FIG. 6).
The check data 3104 is the check data 1105 in FIG. 1, and the check data 3105 is the check data 1101 in FIG.
The user identifier 3109 is the user identifier 1207 in FIG.
検印検証部304は、検印データ3104と被検印データ3105とユーザ識別子1207を入力する。
検印検証部304は、検証鍵保存部305に、検証鍵読み込み命令3106を出力する。
検証鍵読み込み命令3106には、ユーザ識別子3109が含まれる。
検証鍵保存部305は、ユーザ識別子3109に該当する検証鍵3107を取り出し、取り出した検証鍵3107を検印検証部304へ出力し、検印検証部304は検証鍵3107を入力する(図6のS304_1)。
The
The
The verification key read command 3106 includes a user identifier 3109.
The verification
検印検証部304は、検証鍵3107を用いて、検印データ3104と被検印データ3105から、検印データ3104を検証する(図6のS304_2)。
検印データ3104の検証手順を図7のフローチャートを用いて説明する。
The
A verification procedure of the check data 3104 will be described with reference to the flowchart of FIG.
検印検証部304は、被検印データ3105を一方向性ハッシュ関数h()に入力し、この結果をh1とする(図7のS304_vp1)。
また、検印検証部304は、検印データ3104を検証鍵3107(図9のユーザ5005の公開鍵暗号のpublic key)で復号し、結果をh2とする(図7のS304_vp2)。
次に、検印検証部304は、前記h1と、h2の結果を比較し、一致するか確認する(図7のS304_vp3)。
一致すれば検印データ3104は検証成功と判断する(図7のS304_vp4)。
つまり、被検印データ3105はマルウエアにより送信されたものではないと判断する。
一方、h1とh2が一致しない場合は、検証失敗と判断する(図7のS304_vp5)。
この処理は、一般的な公開鍵暗号による署名の検証処理である。
暗号化/復号処理においては、データをpublic keyで暗号化し、private keyで復号を行うが、署名/検証処理においては、private keyで暗号化し、public keyで復号する。
また、署名対象のデータが大きい場合に、署名対象のデータそのものではなく、一方向性ハッシュ関数で縮小したデータに対して署名/検証を行う(本実施の形態で示した例が該当する)。
The
Further, the
Next, the
If they match, it is determined that the verification data 3104 is successfully verified (S304_vp4 in FIG. 7).
That is, it is determined that the test mark data 3105 is not transmitted by malware.
On the other hand, if h1 and h2 do not match, it is determined that the verification has failed (S304_vp5 in FIG. 7).
This process is a signature verification process using general public key cryptography.
In the encryption / decryption process, data is encrypted with the public key and decrypted with the private key. In the signature / verification process, the data is encrypted with the private key and decrypted with the public key.
Further, when the data to be signed is large, the signature / verification is performed not on the data to be signed itself but on the data reduced by the one-way hash function (the example shown in this embodiment corresponds).
なお、検印処理部100における検印生成部102が保持する一方向性ハッシュ関数と、公開鍵暗号のアルゴリズムは、各々、検査サーバ装置3における検印検証部304が保持する一方向性ハッシュ関数と、公開鍵暗号のアルゴリズムと一致させる。
予め、検印処理部100と検査サーバ装置3で使用するアルゴリズムを合意し、実装してもよい。
また、複数のアルゴリズムを実装可能である場合、署名のフォーマットに何のアルゴリズムを使用したか含める方法がある。
検印処理部100は、署名に使用した一方向性ハッシュ関数と、公開鍵暗号のアルゴリズムの識別子を署名のフォーマットに含め、検査サーバ装置3は署名のフォーマットから署名に使用した一方向性ハッシュ関数と、公開鍵暗号のアルゴリズムの識別子を取り出し、検証に使用するアルゴリズムを判断する。
この様な方法は、既存の技術を使用してもよい。
It should be noted that the one-way hash function held by the check-
An algorithm used in advance by the
In addition, when a plurality of algorithms can be implemented, there is a method of including what algorithm is used in the signature format.
The
Such a method may use existing technology.
検印検証部304は、検印データ3104が空ではなく、かつ、検印が正しければ、被検印データ3105を出力する(図7のS304_3)。
検印検証部304は、検印データ3104が空の場合(検印データ3104が存在しない)、或いは、検印データの検証が正しく無い場合は、エラー通知3203を出力する。
If the verification data 3104 is not empty and the verification is correct, the
The
送信データ生成部306は、被検印データ3105と非検査対象データ3103を入力し、これらを連結し、修正送信データ3108を出力する(図7のS306)。
修正送信データ3108は、図9における、ファイル5001を含んだHTTP POSTデータ5010が該当する。
すなわち、修正送信データ3108は、送信対象データ3101から検印データ3104及びユーザ識別子3109が除外されたデータである。
The transmission
The modified transmission data 3108 corresponds to the
That is, the corrected transmission data 3108 is data obtained by excluding the verification data 3104 and the user identifier 3109 from the transmission target data 3101.
データ出力部307は、修正送信データ3108を入力し、修正送信データ3202を出力する(図7のS307)。
修正送信データ3202は、例えば、ネットワークへ出力されるため、ファイル5001を含んだHTTP POSTデータ5010をボディ部に含めたネットワークデータ(パケット)である必要がある。
データ出力部307はネットワークデータを生成し、ボディ部にファイル5001を含んだHTTP POSTデータ5010を含めることで、ネットワークデータとして修正送信データ3202を出力する。
The
The modified transmission data 3202 is output to a network, for example, and therefore needs to be network data (packet) including
The
なお、図5において、データ入力部301は通信データ受信部の例に相当し、検印検証部304はデータ検証部の例に相当し、送信データ生成部306及びデータ出力部307は通信データ転送部の例に相当する。
In FIG. 5, the
図9の検印処理部5002(図1の検印処理部100)がユーザ5005に提示する画面データの例を検印処理用画面6001として、図10に示す。
検印処理用画面6001において、ユーザ5005は、送信するファイルを、送信対象ファイル6002の欄において指定する。
図10の例では、「C:¥work¥sample.csv」を指定している。
次に、ユーザ5005は、検印したファイルを出力するファイル名を、検印付きファイルの出力パス6003の欄に指定する。
図10の例では、「C:¥work¥sample.csv.sig」を指定している。
次に、ユーザ5005は、検印ボタン6004を押す。
この時、検印処理部5002(検印処理部100)は、認証画面6005を表示して、ユーザ5005にパスワードを入力させてもよい。
この結果、「C:¥work¥sample.csv」(図9のファイル5001に相当)に検印を付与したファイルである、「C:¥work¥sample.csv.sig」が出力される(図9の検印付きファイル5003に相当)。
また、図1においては、送信対象ファイル6002は、送信対象ファイル1205に該当し、検印付きファイルの出力パス6003は、検印付きファイルの出力パス1206に該当する。
An example of screen data presented to the user 5005 by the
In the check processing screen 6001, the user 5005 designates a file to be transmitted in the field of the transmission target file 6002.
In the example of FIG. 10, “C: ¥ work ¥ sample.csv” is designated.
Next, the user 5005 designates the file name for outputting the checked file in the column of the output path 6003 of the file with the check.
In the example of FIG. 10, “C: ¥ work ¥ sample.csv.sig” is designated.
Next, the user 5005 presses a
At this time, the check processing unit 5002 (the check processing unit 100) may display the authentication screen 6005 and allow the user 5005 to input a password.
As a result, “C: ¥ work ¥ sample.csv.sig”, which is a file to which “C: ¥ work ¥ sample.csv” (corresponding to the file 5001 in FIG. 9) is added, is output (FIG. 9). Equivalent to a file 5003 with a check mark).
In FIG. 1, the transmission target file 6002 corresponds to the transmission target file 1205, and the output path 6003 of the file with a check corresponds to the output path 1206 of the file with a check.
図9のファイル5001と、検印付きファイル5003の関係を図11に示す。
ファイル7001(図9のファイル5001)に検印を付与すると、検印付きファイル7002(図9の検印付きファイル5003)の様に、ファイル7001の前に検印データ(B&M9`@/Q!…)とユーザ識別子が連結される。
なお、図11の形式は一例であり、検印のアルゴリズムによっては、他のフォーマットをとり得る。
FIG. 11 shows the relationship between the file 5001 in FIG. 9 and the file 5003 with a check.
When a check is added to the file 7001 (file 5001 in FIG. 9), the check data (B & M9 ` @ / Q! ...) and the user are added to the file 7001 like the file 7002 with the check (file 5003 with the check in FIG. 9). Identifiers are concatenated.
Note that the format of FIG. 11 is an example, and other formats may be used depending on the algorithm of the check.
本実施の形態における、検印鍵1103と検証鍵3107の運用は例えば以下がある。 Examples of operations of the verification key 1103 and the verification key 3107 in the present embodiment are as follows.
ユーザ5005が、公開鍵暗号の鍵ペア(private key/public key)を生成し、private keyをユーザ識別子1207と共に検印処理部100の検印鍵保存部103に保存する。
さらに、検査サーバ装置3の管理者に依頼して、public keyをユーザ5005のユーザ識別子1207と共に検査サーバ装置3の検証鍵保存部305に保存してもらう。
The user 5005 generates a public key encryption key pair (private key / public key), and stores the private key together with the user identifier 1207 in the check
Further, the administrator of the
或いは、ユーザ5005が、公開鍵暗号の鍵ペア(private key/public key)を生成し、private keyをユーザ識別子1207と共に検印処理部100の検印鍵保存部103に保存する。
さらに、ユーザ5005は認証局にpublic key とユーザ識別子1207を提示し、公開鍵証明書として発行してもらう(ユーザ識別子を含む)。
さらに、ユーザ5005は、検査サーバ装置3の管理者に依頼して、公開鍵証明書を検査サーバ装置3の検証鍵保存部305に保存してもらう。
この場合、ユーザ識別子は公開鍵証明書に含まれている。
Alternatively, the user 5005 generates a public key encryption key pair (private key / public key), and stores the private key together with the user identifier 1207 in the verification
Furthermore, the user 5005 presents the public key and the user identifier 1207 to the certificate authority, and is issued as a public key certificate (including the user identifier).
Further, the user 5005 requests the administrator of the
In this case, the user identifier is included in the public key certificate.
検証鍵保存部305は、図6のS304_1において、外部の公開鍵証明書のレポジトリと通信し、ユーザ識別子1207に相当する公開外証明書をレポジトリから取得してもよい。
In S304_1 in FIG. 6, the verification
本実施の形態では、検印の方法として、公開鍵暗号に基づく方法を示したが、以下の様に共通鍵暗号に基づく方法を適用してもよい。
以下にて、共通鍵暗号を適用する場合の差異のみ示す。
In the present embodiment, a method based on public key cryptography is shown as a method for checking, but a method based on common key cryptography may be applied as follows.
Only the differences when applying the common key encryption are shown below.
まず、検印処理部100の動作について差異のみ説明する。
図1における検印鍵保存部103に保存されている検印鍵1103は、検印処理部100を保持するユーザと、検査サーバ装置3で共有している、共通鍵暗号の共通鍵である。
そして、検印生成部102の検印の処理は、図4に従う。
まず、被検印データ1101と検印鍵1103(共通鍵)を連結する(図4のS201_skh1)。
次に、被検印データ1101と検印鍵1103(共通鍵)を連結した結果を、一方向性ハッシュ関数h()に入力し結果を検印データ1105とする(図4のS201_skh2)。
First, only the differences in the operation of the
The verification key 1103 stored in the verification
Then, the check processing of the
First, the seal data 1101 and the seal key 1103 (common key) are connected (S201_skh1 in FIG. 4).
Next, the result of concatenating the check data 1101 and the check key 1103 (common key) is input to the one-way hash function h (), and the result is set as the check data 1105 (S201_skh2 in FIG. 4).
次に、検査サーバ装置3の動作について差異のみ説明する。
図5における検証鍵保存部305に保存されている検証鍵3107は、検印処理部100を保持するユーザと、検査サーバ装置3で共有している共通鍵暗号の共通鍵である。
検印検証部304の検印の検証の処理は、図8に従う。
まず、被検印データ3105と検証鍵3107(共通鍵)を連結する(図8のS304_vkh1)。
次に、被検印データ3105と検証鍵3107(共通鍵)を連結した結果を一方向性ハッシュ関数h()に入力する(結果をh1とする)(図8のS304_vkh2)。
次にh1と検印データ3104は一致するか確認する(図8のS304_vkh3)。
一致した場合、検証成功と判断する(図8のS304_vkh4)。
一致しない場合は、検証失敗と判断する(図8のS304_vkh5)。
Next, only the differences in the operation of the
A verification key 3107 stored in the verification
The verification verification process of the
First, the test mark data 3105 and the verification key 3107 (common key) are connected (S304_vkh1 in FIG. 8).
Next, the result of concatenating the test mark data 3105 and the verification key 3107 (common key) is input to the one-way hash function h () (the result is h1) (S304_vkh2 in FIG. 8).
Next, it is confirmed whether h1 and the check data 3104 match (S304_vkh3 in FIG. 8).
If they match, it is determined that the verification is successful (S304_vkh4 in FIG. 8).
If they do not match, it is determined that the verification has failed (S304_vkh5 in FIG. 8).
また、検印において、暗号を用いた検印の例を示してきたが、例えば、検印処理部100が固定で保持するキーワードを検印データ1105としてもよい。
検印処理部100と検査サーバ装置3の動作について、差異のみ示す。
この場合は、検印処理部100において、検印鍵保存部103は使用しない(図2のS102_1を行わない)。
ここでは、例えば「abcdefghijklmn」という文字列を、検印データ1105とする(図2のS102_2を当処理に置き換える)。
この文字列は、検査サーバ装置3側でも予め固定で保持する。
検査サーバ装置3においては、検印データ3104として、「abcdefghijklmn」が現れた場合に、検印が正しいと判断する(図6のS304_2を当処理に置き換える)。
この場合、検査サーバ装置3において、検証鍵保存部305は使用しない(図6のS304_1を行わない)。
In addition, although an example of a seal using encryption has been shown, for example, a keyword that the
Only the differences between the operations of the
In this case, the check
Here, for example, a character string “abcdefghijklmn” is used as the check data 1105 (S102_2 in FIG. 2 is replaced with this processing).
This character string is also held fixed in advance on the
In the
In this case, in the
この様に、本実施の形態では、ユーザは、HTTP POSTするファイルに検印を付与し、検査サーバ装置では、HTTPデータのボディ部に検印が付与されたファイルのデータが存在するか検査する。
マルウエアは、通常、ファイルをそのままHTTP POSTするため、検査サーバ装置で検査した場合に、HTTPデータのボディ部に検印が存在しないため、エラー通知が発生し、検査サーバ装置からプロキシサーバ装置へ、POSTしようとしているHTTPデータが転送されない。
従って、マルウエアはインターネットへファイルを漏洩できない。
In this way, in this embodiment, the user gives a check to a file to be HTTP POSTed, and the inspection server device checks whether the data of the file with the check attached to the body portion of the HTTP data exists.
Since the malware normally HTTP-posts the file as it is, when the inspection server device inspects the file, there is no seal in the body part of the HTTP data, so an error notification is generated, and the inspection server device transfers to the proxy server device. The HTTP data that is about to be transferred is not transferred.
Therefore, malware cannot leak files to the Internet.
このように、本実施の形態によれば、マルウエアは、インターネットへファイルを送信できないため、マルウエアによるインターネットへのファイルの漏洩を防止する効果がある。
さらに、検印処理部や、検査サーバ装置において、送信を許可するファイルのリストを管理する必要が無いという効果がある。
As described above, according to this embodiment, since malware cannot transmit a file to the Internet, there is an effect of preventing leakage of the file to the Internet by the malware.
Further, there is an effect that it is not necessary to manage a list of files permitted to be transmitted in the check processing unit or the inspection server device.
実施の形態2.
本実施の形態では、高度な機能を持つマルウエアが、端末上のファイルを盗み、検印処理部を起動して、検印付きファイルとしてHTTP POSTする場合への対策として、検印時の処理において、USB(Universal Serial Bus)トークンやスマートカードなどの外部デバイスを組み合わせる構成を説明する。
なお、以下では、実施の形態1との差異のみ説明する。
また、以下では、検印の方法は、公開鍵暗号と一方向性ハッシュ関数を用いる例で示す。
In this embodiment, as a countermeasure against a case where malware with advanced functions steals a file on the terminal, activates the check processing unit, and performs HTTP POST as a file with a check, in the process at the time of check, USB ( A configuration in which an external device such as a Universal Serial Bus) token or a smart card is combined will be described.
In the following, only differences from the first embodiment will be described.
In the following, a method for checking is shown by an example using public key cryptography and a one-way hash function.
図12は、本実施の形態に係る端末装置1の構成例を示す。
図12では、図1の構成と比較して、検印鍵保存部103が省略され、代わりに、外部機器2とのインタフェースとなる外部機器連携部104が設けられている。
外部機器2は、例えば、USBトークンやスマートカードである。
他の要素は、図1に示したものと同様であるため、説明を省略する。
FIG. 12 shows a configuration example of the
In FIG. 12, compared to the configuration of FIG. 1, the verification
The
The other elements are the same as those shown in FIG.
次に、本実施の形態に係る検印処理を、図13を参照して説明する。 Next, the marking process according to the present embodiment will be described with reference to FIG.
本実施の形態に係る検印処理部100では、検印生成部102は、検印鍵保存部103を使用せず、外部機器連携部104へ、被検印データ1101と検印命令1104を出力する(図13のS102_es1)。
検印命令1104は、被検印データ1101に対して、一方向性ハッシュ関数h()と公開鍵暗号のprivate keyによる暗号化を行え、という命令である。
例えば、図示していないが、外部機器2が、どのように検印を行うべきか(この場合は、公開鍵暗号と一方向性ハッシュ関数を用いた電子署名)の識別子や、一方向性ハッシュ関数h()や公開鍵暗号のアルゴリズムの識別子で構成される。
また、検印命令1104にはユーザ識別子も含まれる。
In the
The check instruction 1104 is an instruction that the check data 1101 can be encrypted using a one-way hash function h () and a public key encryption private key.
For example, although not shown, an identifier of how the
The check command 1104 also includes a user identifier.
外部機器連携部104は、外部機器2とデータを受け渡し可能なフォーマットに、被検印データ1101と検印命令1104を変換し、各々、被検印データ2201と検印命令2202として外部機器2に出力する(図13のS104_es1)。
The external
外部機器2は、実施の形態1の検印生成部102における検印の処理の代わりに、被検印データ2201に検印を行い、検印データ2203を生成し、外部機器連携部104へ出力する(図13のS2_es1)。
検印の際に、外部機器2内に保存されているprivate keyを探す必要があるが、外部機器2は、ユーザ識別子と併せて管理されているprivate keyを探す。
The
At the time of marking, it is necessary to search for a private key stored in the
外部機器連携部104は、外部機器2から、検印データ2203を入力し、検印生成部102が解釈可能なフォーマットに変換して、検印データ1105として出力する(図13のS104_es2)。
The external
検印生成部102は、外部機器連携部104から検印データ1105を入力し、入力した検印データ1105を検印追加部105へ出力する(図2のS102_3に相当する処理であり、図13ではS102_es2として示している)。
The
外部機器2は、公開鍵暗号と一方向性ハッシュ関数を処理可能なスマートカードやUSBトークンである。
外部機器連携部104は、外部機器2がUSBトークンであれば、USBの機能を呼び出すソフトウエア機能として実装する。
外部機器2がスマートカードであれば、外部機器連携部104と、外部機器2の間に(図示していないが)、リーダライタが介在する。
そして、外部機器連携部は、リーダライタの機能を呼び出すソフトウエア機能として実装する。
The
If the
If the
Then, the external device cooperation unit is implemented as a software function for calling a reader / writer function.
また、外部機器2において、公開鍵暗号の処理のみを実施する場合は次のように処理する。
検印生成部102から外部機器連携部104へ出力する被検印データ1101を、「データ入力部101の出力である被検印データ1101」に対し検印生成部102が一方向性ハッシュ関数を適用した値に置き換える。
この値は、被検印データ2201として外部機器2に出力されるので、外部機器2は、被検印データ2201に対して、公開鍵暗号のprivate keyによる暗号化のみ行い、検印データ2203を生成する。
さらに、外部機器2は、検印データ2203を外部機器連携部104へ出力する。
この場合、検印命令1104は、被検印データ1101に対して、公開鍵暗号のprivate keyによる暗号化を行え、という命令である。
When the
The test mark data 1101 output from the
Since this value is output to the
Further, the
In this case, the verification instruction 1104 is an instruction that the data to be checked 1101 can be encrypted by a public key encryption private key.
上記した処理以外は、端末装置1及び検査サーバ装置3において実施の形態1と同じ処理が行われる。
検印の生成は、実施の形態1に示したように共通鍵暗号を使う方式でもよい。
Except for the processing described above, the same processing as in the first embodiment is performed in the
As shown in the first embodiment, the method of using the common key cryptography may be used for generating the seal.
本実施の形態では、検印の生成処理の一部を外部機器に処理させるので、外部機器を利用できないマルウエアは、ファイルに検印を付与できないので、インターネット上のWebサーバ装置にHTTP POSTしても、検査サーバ装置における検印の検査でエラーとなり、ファイルを漏洩できない効果がある。
このため、高度化されたマルウエアが、当方式を悪用しファイルを漏洩しようとしても、外部機器による検印が必要となり、悪用できない効果がある。
In this embodiment, since a part of the generation process of the seal is processed by the external device, malware that cannot use the external device cannot attach the seal to the file. Therefore, even if HTTP POST is performed on the Web server device on the Internet, There is an effect that an error occurs in the inspection of the seal in the inspection server device and the file cannot be leaked.
For this reason, even if sophisticated malware attempts to misuse this method and leak a file, it requires an inspection by an external device and has an effect that cannot be exploited.
実施の形態3.
実施の形態2では、外部機器2に検印の生成処理の一部を処理させた。
本実施の形態では、外部機器2に検印の生成処理の一部を処理させるのではなく、検印の生成処理を行うために、外部機器が存在することを条件とする方式を示す。
以下では、検印時の処理について実施の形態2との差異のみ説明する。
In the second embodiment, the
In the present embodiment, a method is shown in which the
Below, only the difference from
本実施の形態では、検印生成部102と外部機器連携部104と外部機器2の間で入出力する追加のデータは図14のようになる。
図14では、作図上の理由で図示を省略しているが、図12と同様に、被検印データ1101、検印命令1104、検印データ1105、被検印データ2201、検印命令2202、検印データ2203が入出力されるとともに、図14に示すデータが入出力される。
In the present embodiment, additional data to be input / output among the marking
In FIG. 14, the illustration is omitted for the reason of drawing. However, as in FIG. 12, the check mark data 1101, the check instruction 1104, the check data 1105, the check mark data 2201, the check instruction 2202, and the check data 2203 are input. In addition to the output, the data shown in FIG. 14 is input / output.
図15は、本実施の形態における検印生成の処理を示したものである。
検印処理部100における他の動作は、実施の形態1に同じである。
図14と図15を用いて本実施の形態における検印生成部102の処理を示す。
FIG. 15 shows the process of generating a seal in the present embodiment.
Other operations in the
Processing of the marking
まず、検印生成部102は、検印処理を行う前に、外部機器連携部104に対して、認証命令1107を出力する(図15のS102_a1)。
First, the
外部機器連携部104は、認証命令1107を入力すると、外部機器2との間で認証情報2205の交換を行い、外部機器2の認証を行う(図15のS104_1)。
例えば、認証方法として、外部機器2が保持している社員IDを外部機器連携部104が読み出せるか否かをチェックする。
この場合は、外部機器連携部104は、外部機器2に対して、社員ID読み出しの命令を出力し、外部機器2は内部に格納している社員IDを読み出し、外部機器連携部104へ出力する。
従って、社員ID読み出しの命令と社員IDが、認証情報2205に該当する。
この例では、外部機器2が内部の決められた場所に社員IDを保存しており、外部機器連携部104に対して、社員IDを読み出して提供できることをもって、外部機器2を認証する、簡易な認証の例である。
When the authentication command 1107 is input, the external
For example, as an authentication method, it is checked whether or not the external
In this case, the external
Therefore, the employee ID read command and the employee ID correspond to the authentication information 2205.
In this example, the
別の例として、チャレンジアンドレスポンスの認証情報を交換する例を示す。
この場合、外部機器連携部104が生成した乱数Cを外部機器2に出力すると、外部機器2はCに対して、予め外部機器連携部104と外部機器2の間で共有している鍵(SK)と関数fを用い演算を施す。
これを、R=f(C,SK)と表す。
関数fは、アルゴリズムとして、外部機器連携部104と外部機器2で予め実装しておく。
外部機器2は、この結果のRを外部機器連携部104へ出力する。
外部機器連携部104は、Cに対して、自身の保持している鍵SKを用いて、R’=f(C,SK)を演算する。
そして、外部機器2から入力されたRとR’の比較を行い、R’=Rであるか否かを確認する。
R’=Rであれば、外部機器2は、外部機器連携部104と同じ鍵SKを共有していると判断し、認証成功とする。
この例においては、CとRが認証情報2205に該当する。
As another example, an example of exchanging challenge and response authentication information is shown.
In this case, when the random number C generated by the external
This is expressed as R = f (C, SK).
The function f is implemented in advance by the external
The
The external
Then, R and R ′ input from the
If R ′ = R, it is determined that the
In this example, C and R correspond to the authentication information 2205.
次に、外部機器連携部104は外部機器2を認証した結果を、認証結果1109として検印生成部102へ出力する(図15のS104_2)。
Next, the external
検印生成部102は、認証結果1109がOK(外部機器2の認証成功)かNG(外部機器2の認証失敗)を調べる(図15のS102_a2)。
OKの場合、検印生成部102は、図2(実施の形態1)のS102_1、S102_2、S103_3を処理する(図15のS102_123)。
NGの場合、検印生成部102は、エラー通知1208を検印処理部の外へ出力する(図15のS102_a3)。
NGの場合、検印処理部100は、ユーザに、GUIにエラーメッセージを表示するなどで、検印処理部100がエラーとなったことをユーザへ通知する。
この場合は、検印付きデータは検印処理部100からは出力されない。
The check
In the case of OK, the marking
In the case of NG, the
In the case of NG, the
In this case, the data with a check is not output from the
また、外部機器2を使用する場合に、外部機器2を利用するための認証データ2204を外部機器2に入力してもよい。
認証データ2204を外部機器2に入力する方法は、外部機器2に依存するが、外部機器2に端末装置5000(図9)から入力するための、専用のGUI(アプリケーション)が別途用意される場合がある。
また、検印処理部100において、認証データ2204を入力するためのGUIを表示し、ユーザに認証データ2204を入力させ、外部機器連携部104を経由して、外部機器2に対して入力する方法がある(図14の破線)。
When using the
The method of inputting the authentication data 2204 to the
Also, there is a method of displaying a GUI for inputting the authentication data 2204 in the
本実施の形態では、検印処理に外部機器との連携を必要とするため、外部機器を利用できないマルウエアは、ファイルに検印を付与できないので、インターネット上のWebサーバ装置にHTTP POSTしても、検査サーバ装置における検印の検査でエラーとなり、ファイルを漏洩できない効果がある。
このため、高度化されたマルウエアが、当方式を悪用しファイルを漏洩しようとしても、外部機器が必要となり、悪用できない効果がある。
In the present embodiment, since cooperation with an external device is required for the check processing, malware that cannot use the external device cannot attach a check to the file. Therefore, even if HTTP POST is performed on the Web server device on the Internet, the check is not performed. There is an effect that an error occurs in the inspection of the seal in the server device and the file cannot be leaked.
For this reason, even if sophisticated malware tries to exploit this method and leak a file, an external device is required and there is an effect that cannot be exploited.
実施の形態4.
本実施の形態では、検印生成部102において、画像による認証を行う。
検印時の処理について実施の形態1との差異のみ説明する。
In the present embodiment, the marking
Only the difference between the first embodiment and the processing at the time of the check will be described.
検印生成部102は、検印の処理の前に、検印処理部100を使用するユーザに対して、CAPTCHAなどの画像による認証を要求する。
画像による認証に成功した場合に、実施の形態1に従った検印処理を行う。
本実施の形態に係る端末装置1の構成は、図1、図12又は図14に示す構成と同じである。
The
When the authentication by the image is successful, the marking process according to the first embodiment is performed.
The configuration of
本実施の形態に係る検印生成部102の処理を、図16を用いて説明する。
Processing of the marking
検印生成部102は、「歪んだ文字列の画像と、その画像で表示された実際の文字列の対」を検印処理部100の起動前に予め、複数対、保存する。
そして、検印処理部100の起動タイミングで、前記複数対のうちの一対をランダムに選択する。
そして、検印生成部102は、画像による認証データとして選択した「歪んだ文字列の画像」をGUIでユーザに表示する(図16のS102_ag1)。
ここで、歪んだ文字列の画像の表示は、ユーザに対する認証データの要求である。
また、このGUIは、歪んだ文字列の画像の表示の他に、文字列を入力するインタフェースも備えている。
The marking
Then, at the start timing of the
Then, the check
Here, the display of the distorted character string image is a request for authentication data to the user.
In addition to displaying a distorted character string image, this GUI also includes an interface for inputting a character string.
次に、ユーザは、歪んだ画像の文字列を、何の文字列か目視で判断して、GUIに文字列を入力する。
入力した文字列は、図14に示す、ユーザからの認証データ1203に該当する(図16のS102_ag2)。
Next, the user visually determines the character string of the distorted image and inputs the character string to the GUI.
The input character string corresponds to the authentication data 1203 from the user shown in FIG. 14 (S102_ag2 in FIG. 16).
検印生成部102は、入力された認証データと、GUIで表示した歪んだ文字列の画像と対になる文字列(内部に保存している)の一致を比較し(図16のS102_ag3)、一致している場合(Yes)、図2のS102_1,S102_2,S102_3を処理する(図16のS102_123)。
一致していない場合(No)、検印生成部102は、エラー通知1208を検印処理部100の外へ出力する(図16のS102_ag4)。
The check
If they do not match (No), the
マルウエアがGUIからの入力文字列を監視して悪用する可能性があるため、検印生成部102は歪んだ画像のパターン、及び、対となる文字列の組を、検印生成部102自身で生成し、あらかじめ大量に保持し、検印処理部100を起動するたびにランダムに表示してもよい。
Since the malware may monitor and misuse the input character string from the GUI, the check
或いは、例えば図17において、システムの管理者が、画像系認証データ配信サーバ装置4を運用し、画像による認証データ(例:歪んだ画像のパターン)と対になる文字列について、複数の対を、画像系認証データ1024として生成し、ネットワークを通じて、検印処理部100に配信する。
検印処理部100の検印生成部102(図17では、それ以外の要素の記載は省いている)における通信部1022は、画像系認証データ1024を受信し、画像系認証データ更新部1021に入力する。
画像系認証データ更新部1021は、画像系認証データ保存部1023に、画像系認証データ1024を更新保存する。
そして、検印処理部100が起動されるたびに、検印生成部102は、画像系認証データ保存部1023から、ランダムに、或いは、決まった順番で、画像による認証データと対になる文字列を選択し、画像による認証データを、図14の認証データ要求1202としてGUIで表示してもよい。
或いは、この例における、画像系認証データ1024をネットワーク経由で、検印処理部100に取り込むのではなく、ファイルなどで、画像系認証データ更新部1021に入力してもよい。
Alternatively, for example, in FIG. 17, the system administrator operates the image-based authentication data
The
The image system authentication
Each time the
Alternatively, the image-based authentication data 1024 in this example may be input to the image-based authentication
また、画像を用いた認証の方法は、CAPTCHAでなくてもよく、複数の異なる動物の画像を表示して、ライオンは何番の画像か答えよ、という認証方法でもよい。
この場合は、認証データ要求1202は、複数の異なる動物の画像であり、認証データ1203は、“3番目の画像”である。
この認証データ1203が、答えとして適切かを、検印生成部102が確認する。
Further, the authentication method using the image may not be CAPTCHA, and may be an authentication method in which images of a plurality of different animals are displayed and the lion answers what number the image is.
In this case, the authentication data request 1202 is an image of a plurality of different animals, and the authentication data 1203 is “third image”.
The
本実施の形態では、検印処理に画像認証を必須とするため、画像認証をパスできないマルウエアは、ファイルに検印を付与できないので、インターネット上のWebサーバ装置にHTTP POSTしても、検査サーバ装置における検印の検査でエラーとなり、ファイルを漏洩できない効果がある。
このため、高度化されたマルウエアが、当方式を悪用しファイルを漏洩しようとしても、外部機器が必要となり、悪用できない効果がある。
In this embodiment, since image authentication is essential for the check processing, malware that cannot pass image authentication cannot give a check to a file. Therefore, even if HTTP POST is performed on a Web server device on the Internet, There is an effect that the file cannot be leaked due to an error in the inspection of the seal.
For this reason, even if sophisticated malware tries to exploit this method and leak a file, an external device is required and there is an effect that cannot be exploited.
実施の形態5.
本実施の形態では、PC内部でマルウエアが検印付きファイルを横取りして、C&CサーバにHTTP POSTする場合への対策を示す。
以下では、検印時の処理について実施の形態1との差異のみ説明する。
In the present embodiment, a countermeasure is shown for when the malware intercepts a file with a check inside the PC and performs HTTP POST to the C & C server.
Below, only the difference from
検印生成部102は、検印の処理の前に、検印処理部100を使用するユーザに対して、送信先のURL(Uniform Resource Locator)を入力させる。
送信先URLは、検証対象データの宛先アドレスの例に相当する。
検印処理部100のGUIの表示画面例を図18に示す。
図18において、ユーザは、検印処理用画面1301を用いて、送信対象ファイル1302と検印付きファイルの出力パス1303を入力し、さらに、送信先URL1304を入力する。
この時、認証画面1306を表示して、ユーザにパスワードを入力させてもよい。
この結果、検印付きファイル(図1の検印付きデータ1204)が出力される。
The
The transmission destination URL corresponds to an example of the destination address of the verification target data.
An example of a GUI display screen of the
In FIG. 18, the user inputs a transmission target file 1302 and an output path 1303 of a file with a check using a check processing screen 1301, and further inputs a transmission destination URL 1304.
At this time, an authentication screen 1306 may be displayed to allow the user to input a password.
As a result, a file with a check (data 1204 with a check in FIG. 1) is output.
本実施の形態に係る端末装置1は、例えば、図20に示す構成となる。
検印生成部102は、検印データ1105に送信先URLを含めて検印付きファイルを生成する。
検印生成部102は、送信先URL1208と被検印データ1101を入力し、送信先URL1208と被検印データ1101を結合し、URL付きの被検印データとし、URL付きの被検印データを、検印対象のデータとして扱う。
つまり、図2のS102_2において処理した被検印データ1101を、「送信先URL1208と被検印データ1101を結合したURL付きの被検印データ」に置き換えて処理する。
検印生成部102は、URL付きの被検印データに対して実施の形態1と同様の手順で検印データ1105を生成し、生成した検印データ1105と、送信先URL1208(不図示)を検印追加部105に出力する。
検印追加部105は、検印データ1105と、送信先URL1208(不図示)と、被検印データ1101と、ユーザ識別子1207を結合して、検印付きデータ1106とする。
The
The
The check
That is, the test mark data 1101 processed in S102_2 in FIG. 2 is processed by replacing it with “test mark data with a URL obtained by combining the destination URL 1208 and the test mark data 1101”.
The check
The
図19は、検印生成部102及び検印追加部105による処理の例を示す。
検印生成部102は、送信対象である、ファイル1401(被検印データ1101に該当)に対して、送信先URL1404を結合し、URL付き被検印データ1405とする。
URL付き被検印データ1405に対して検印を生成した結果が、検印データ1402である。
検印追加部105は、URL付き被検印データ1405(ファイル1401と送信先URL1404)にユーザ識別子1403と検印データ1402を結合して、検印付きデータ1406とする。
なお、ここでは、URL付き被検印データ1405(ファイル1401と送信先URL1404)に対して検印データ1402を生成することとしているが、実施の形態1と同様に、ファイル1401に対して検印データ1402を生成するようにしてもよい。
FIG. 19 illustrates an example of processing performed by the
The check
The result of generating a check for the URL-attached check mark data 1405 is the check data 1402.
The
Note that here, the check data 1402 is generated for the check data with URL 1405 (file 1401 and destination URL 1404), but the check data 1402 is set for the file 1401 as in the first embodiment. You may make it produce | generate.
その後、図20のパケット生成部107が、検印データ出力部106から検印付きデータ1406を入力し、検印付きデータ1406をHTTPボディとし、HTTPボディにHTTPヘッダを付加してHTTP POSTデータを生成する。
また、パケット生成部107は、HTTPのヘッダに、宛先ホスト名を含ませる(通常はブラウザが含める処理を行う)。
このHTTP POSTデータが通信データの例に相当する。
更に、パケット生成部107は、HTTP POSTデータにIPヘッダ、TCPヘッダ等を追加して、パケットを生成する。
そして、パケット送信部108が、パケット生成部107が生成したパケットを送信する。
After that, the
Further, the
This HTTP POST data corresponds to an example of communication data.
Further, the
Then, the
なお、本実施の形態では、検印生成部102が検証情報生成部及び宛先アドレス入力部の例に相当し、検印追加部105がデータ結合部の例に相当し、パケット生成部107が通信データ生成部の例に相当し、パケット送信部108が通信データ送信部の例に相当する。
In the present embodiment, the
次に、図5の検査サーバ装置3の検査対象データ分解部303は、被検印データ3105を得るが、その内容は、図19における、URL付き被検印データ1405である。
つまり、以下である。
http://○○○.sample.△△△/cgi−bin/submit.xxx
0123456789abcdefghij
Next, the inspection object data disassembling unit 303 of the
That is, it is as follows.
http: // OOXXX. sample. ΔΔΔ / cgi-bin / submit. xxx
0123456789abcdefghij
次に、図5の検印検証部304では、実施の形態1と同じ処理を行う。
Next, the
本実施の形態では、検査対象データ分解部303は、被検印データ3105(図19のURL付き被検印データ1405)を検印検証部304だけでなく、送信データ生成部306にも出力する。
送信データ生成部306は、入力した被検印データ3105から、その最初に示されるURL(図19の送信先URL1404)を取り出す。
つまり、以下を取り出す。
http://○○○.sample.△△△/cgi−bin/submit.xxx
In the present embodiment, the inspection object data decomposing unit 303 outputs the test mark data 3105 (the test mark data with URL 1405 in FIG. 19) not only to the
The transmission
That is, the following is taken out.
http: // OOXXX. sample. ΔΔΔ / cgi-bin / submit. xxx
次に、送信データ生成部306は、非検査対象データ3103を入力するが、この中に含まれるHTTPヘッダから、宛先ホスト名を得る。
そして、送信データ生成部306は、このホスト名が、前記URLのホスト名部分と一致するかを検査する。
以下に、HTTP POSTデータのフォーマット例を示す(実際にはxxxに適切な値が設定される)。
Next, the transmission
Then, the transmission
A format example of HTTP POST data is shown below (in practice, an appropriate value is set for xxx).
・リクエストライン
POST/cgi−bin/submit.xxx HTTP/1.1
・リクエスト・ヘッダフィールド
Accept:xxx
Accept−Language:ja
Accept−Encoding:xxx
Referer:http://○○○.sample.△△△/shinsei.html
User−Agent:xxx
Host:○○○.sample.△△△ ← 宛先ホスト名
・一般ヘッダフィールド
Pragma:xxx
Cookie:xxx
・エンティティヘッダフィールド
Content−Type:xxx
Content−Length:xx
・空行(CR(0x0d)+LF(0x0a)のみの行)
・メッセージ・ボディ(POSTするファイルのデータが入る)
xxx
Request line POST / cgi-bin / submit. xxx HTTP / 1.1
Request header field Accept: xxx
Accept-Language: ja
Accept-Encoding: xxx
Referer: http: // OOXXX. sample. ΔΔΔ / shinsei. html
User-Agent: xxx
Host: XXX. sample. △△△ ← Destination host name / general header field Pragma: xxx
Cookie: xxx
Entity header field Content-Type: xxx
Content-Length: xx
・ Empty line (CR (0x0d) + LF (0x0a) only line)
-Message body (contains data of the file to be posted)
xxx
ここで、送信データ生成部306は、「Host:」に指定されるホスト名を取得し、ホスト名が、「○○○.sample.△△△」であれば、被検印データ3105(図19のURL付き被検印データ1405)から取り出したURLである「http://○○○.sample.△△△/cgi−bin/submit.xxx」のホスト部分と一致する。
これらが一致しなかった場合は、検印検証部304は、エラー通知3203を出力する。
なお、本実施の形態では、検印検証部304とともに送信データ生成部306もデータ検証部の例に相当する。
Here, the transmission
If they do not match, the
In the present embodiment, the transmission
次に、送信データ生成部306は、被検印データ3105から当URLを除去したデータを得る。
つまり、図19における、URL付き被検印データ1405から、当URLを削除することになるので、以下の様になる。
・URL削除前
http://○○○.sample.△△△/cgi−bin/submit.xxx
0123456789abcdefghij
・URL削除後
0123456789abcdefghij
Next, the transmission
That is, the URL is deleted from the URL-inspected mark data 1405 in FIG.
・ Before URL deletion http: // XXX. sample. ΔΔΔ / cgi-bin / submit. xxx
0123456789abcdefghij
・ After URL deletion 0123456789abcdefghij
次に、送信データ生成部306は、非検査対象データ3103と上記のURLを除去したデータから、修正送信データ3108を生成する。
つまり、上記のURLを除去したデータが、HTTPリクエストのボディに入る。
これは、元々送信しようとしていた図9のファイル5001の内容がHTTPリクエストのボディに入ることになる。
前記HTTP POSTデータのフォーマット例を使用すると、以下の様になる。
・リクエストライン
POST/cgi−bin/submit.xxx HTTP/1.1
・リクエスト・ヘッダフィールド
Accept:xxx
Accept−Language:ja
Accept−Encoding:xxx
Referer:http://○○○.sample.△△△/shinsei.html
User−Agent:xxx
Host:○○○.sample.△△△
・一般ヘッダフィールド
Pragma:xxx
Cookie:xxx
・エンティティヘッダフィールド
Content−Type:xxx
Content−Length:xx
・空行(CR(0x0d)+LF(0x0a)のみの行)
・メッセージ・ボディ(POSTするファイルのデータが入る)
0123456789abcdefghij
Next, the transmission
That is, the data from which the URL is removed enters the body of the HTTP request.
This means that the content of the file 5001 in FIG. 9 that was originally transmitted enters the body of the HTTP request.
When the format example of the HTTP POST data is used, the format is as follows.
Request line POST / cgi-bin / submit. xxx HTTP / 1.1
Request header field Accept: xxx
Accept-Language: ja
Accept-Encoding: xxx
Referer: http: // OOXXX. sample. ΔΔΔ / shinsei. html
User-Agent: xxx
Host: XXX. sample. △△△
General header field Pragma: xxx
Cookie: xxx
Entity header field Content-Type: xxx
Content-Length: xx
・ Empty line (CR (0x0d) + LF (0x0a) only line)
-Message body (contains data of the file to be posted)
0123456789abcdefghij
この様に、ユーザが送信したいWebサーバ装置のURLを検印に含めることで、もしマルウエアが検印付きファイルを横取りして、C&CサーバにHTTP POSTしようとしても、検査サーバ装置が、HTTPヘッダのホスト名と、検印に含まれたURLのホスト名部分の一致を検査するため、マルウエアはC&CサーバへファイルをHTTP POSTできない効果がある。 In this way, by including the URL of the Web server device that the user wants to transmit in the verification, even if the malware attempts to intercept the file with the verification and try to HTTP POST to the C & C server, the inspection server device will host the host name in the HTTP header. In this case, the malware cannot check HTTP POST of the file to the C & C server.
実施の形態6.
本実施の形態では、検印付きファイルを暗号化し、検査サーバ装置で復号することで、マルウエアの盗聴から保護する方式を示す。
ネットワークの盗聴への対策として、プロキシサーバ装置への接続をSecure Sockets Layerなどのプロトコルで暗号化する方法があるが、本実施の形態では、端末装置に存在する、検印付きのファイルを、端末装置上でマルウエアが横取りした場合を考える。
マルウエアは、横取りした検印付きファイルをプロキシサーバ装置経由でC&Cサーバへ送信すると、検査サーバ装置が検印付きファイルを正しいものとして確認する。
その結果として、検印付きファイルはC&Cサーバへ送信されてしまう。
そこで、端末装置上でマルウエアが検印付きファイルを横取りしても、端末装置上では何が記載されたファイルか分からないようにする方式を示す。
以下では、検印時の処理について実施の形態1との差異のみ説明する。
In the present embodiment, a method is shown in which a file with a seal is encrypted and decrypted by an inspection server device to protect against malware eavesdropping.
As a countermeasure against eavesdropping on the network, there is a method of encrypting the connection to the proxy server device with a protocol such as Secure Sockets Layer. In this embodiment, a file with a check, which exists in the terminal device, Consider the case where malware intercepted above.
When the malware transmits the intercepted file with a check to the C & C server via the proxy server device, the check server device confirms that the file with the check is correct.
As a result, the file with a check is transmitted to the C & C server.
Therefore, even if malware intercepts a file with a check on the terminal device, a method is shown to prevent the terminal device from knowing what is written.
Below, only the difference from
図1の検印処理部100の検印追加部105の処理において、検印データ1105と被検印データ1101とユーザ識別子1207から検印付きデータ1106を生成するが、この検印付きデータ1106を検査サーバ装置3の公開鍵暗号のpublic keyで暗号化したものを、検印追加部1106が、検印データ出力部106に、検印付きデータ1106の代わりに出力する。
図21を用いて説明すると、検印追加部105の連結部1051は、検印データ1105と被検印データ1101とユーザ識別子1207を連結し、検印付きデータ1053を出力する。
次に、公開鍵暗号部1052は、検印付きデータ1053を入力し、検査サーバ装置3の公開鍵1054を用いて、検印付きデータ1053を暗号化し、検印付きデータ1106’(暗号化された、検印付きデータ)として出力する。
これは、検印付きデータ1106として検印データ出力部106(図1)に入力される。
In the processing of the
Referring to FIG. 21, the connecting
Next, the public
This is input to the check data output unit 106 (FIG. 1) as data 1106 with a check.
図5の検査サーバ装置3においては、検査対象データ分解部303において、検査対象データ3102(検査サーバ装置の公開鍵で暗号化されている)を検査サーバ装置3の公開鍵暗号のprivate keyで復号したうえで、検印データ3104と被検印データ3105とユーザ識別子3109に分解し出力する。
図22を用いて説明すると、検査対象データ分解部303における公開鍵復号部3031は、検査対象データ3102(暗号化された、検印付きデータ)を検査サーバ装置のprivate key 3033で復号し、検印付きデータ3034を出力する。
分解部3032は、検印付きデータ3034を検印データ3104と被検印データ3105とユーザ識別子3109に分解し出力する。
In the
Referring to FIG. 22, the public
The
上記例では、公開鍵暗号による暗号化の例を示したが、検印処理部100と検査サーバ装置3で共通鍵暗号の鍵を予め共有してそれらの鍵で暗号化/復号してもよい。
その場合、検印処理部100の動作を、図23を用いて説明すると、検印追加部105の連結部1051は、検印データ1105と被検印データ1101とユーザ識別子1207を連結し、検印付きデータ1053を出力する。
次に、共通鍵暗号部1055は、検印付きデータ1053を入力し、検査サーバ装置3と共有している共通鍵1056を用いて、検印付きデータ1053を暗号化し、検印付きデータ1106’(暗号化された、検印付きデータ)として出力する。
これは、検印付きデータ1106として検印データ出力部106(図1)に入力される。
In the above example, an example of encryption by public key encryption has been shown, but the
In this case, the operation of the
Next, the common
This is input to the check data output unit 106 (FIG. 1) as data 1106 with a check.
検査サーバ装置3の動作を図24を用いて説明すると、検査対象データ分解部303における共通鍵復号部3035は、検査対象データ3102(暗号化された、検印付きデータ)を検印処理部100と共有している共通鍵3036(共通鍵1056と同じ)で復号し、検印付きデータ3034を出力する。
分解部3032は、検印付きデータ3034を検印データ3104と被検印データ3105に分解し出力する。
The operation of the
The
また、検印処理部100の検印追加部105で、テンポラリの共通鍵暗号の鍵を生成し、テンポラリの共通鍵暗号の鍵で、検印付きデータ1106を暗号化し、テンポラリの共通鍵暗号の鍵を検査サーバ装置3の公開鍵で暗号化し、検印付きデータ1106と連結して検印データ出力部106に出力する。
検印データ出力部106は、この暗号化鍵が連結された検印付きデータを、検印付きデータ1204として検印処理部100の外に出力する。
In addition, the
The check
検印処理部100の検印追加部105の動作を図25で説明すると、検印追加部105のテンポラリ共通鍵生成部1054は、テンポラリの共通鍵1056を生成し、公開鍵暗号部1052へ出力する。
公開鍵暗号部1052は、テンポラリの共通鍵1056を検査サーバ装置3のpublic key1053で暗号化し、暗号化された共通鍵1057を出力する。
また、第1の連結部1051は、検印データ1105と被検印データ1101とユーザ識別子1207を連結し、検印付きデータ1058として共通鍵暗号部1055に出力する。
共通鍵暗号部1055は、テンポラリの共通鍵1056を用い、検印付きデータ1058を共通鍵暗号で暗号化し、暗号化検印付きデータ1059を第2の連結部10510へ出力する。
第2の連結部10510は、暗号化された共通鍵1057と暗号化検印付きデータ1059を連結し、検印付きデータ(暗号化された、検印付きデータ)と暗号化された共通鍵1106’を、出力する。
これは、検印付きデータ1106として検印データ出力部106(図1)に入力される。
The operation of the
The public
The
The common
The
This is input to the check data output unit 106 (FIG. 1) as data 1106 with a check.
図5の検査サーバ装置3においては、検査対象データ分解部303において、検査対象データ3102’(テンポラリの共通鍵暗号の鍵で暗号化された検印付きデータに、検査サーバ装置3のpublic keyで暗号化されたテンポラリの鍵が連結されたもの)について、まず、検査サーバ装置3のpublic keyで暗号化されたテンポラリの共通鍵を、検査サーバ装置3のprivate keyで復号し、テンポラリの共通鍵を得る。
次に、このテンポラリの共通鍵で、暗号化された検印付きデータを復号する。
そして、検印データ3104と被検印データ3105とユーザ識別子3109に分解し出力する。
検査サーバ装置3の検査対象データ分解部303の動作を図26で説明すると、検査対象データ分解部303の第1の分解部3037は、「検査対象データ(暗号化された、検印付きデータ)と暗号化された共通鍵3102’」を、暗号化された検印付きデータ3039と、暗号化された共通鍵3038に分解する。
そして、公開鍵復号部3031は、暗号化された共通鍵3038を入力し、検査サーバ装置3のprivate key3033を用いて、暗号化された共通鍵3038を公開鍵暗号で復号し、復号した結果であるテンポラリの共通鍵30310を共通鍵復号部3035に出力する。
共通鍵復号部3035は、暗号化された検印付きデータ3039を入力し、テンポラリの共通鍵30310を用いて、共通鍵暗号で復号し、復号した結果である検印付きデータ3034を第2の分解部3032に出力する。
第2の分解部3032は、検印付きデータ3034を、検印データ3104と被検印データ3105とユーザ識別子3109に分解し、出力する。
In the
Next, the encrypted data with a seal is decrypted with the temporary common key.
Then, it is decomposed into the check data 3104, the check data 3105, and the user identifier 3109 and output.
The operation of the inspection object data decomposing unit 303 of the
Then, the public
The common
The second
また、実施の形態1では、図10の検印処理用画面6001において、検印付きファイルの出力パス6003を指定させたが、出力パスにおいて、フォルダパスのみ指定させ、ファイル名は、検印処理用画面6001がランダム、或いは検印を付与したタイムスタンプなど、自動的に付与してもよい。
ユーザに検印付きファイルの出力パス6003を、ファイル名まで含めて指定させると、元の拡張子や、元のファイル名を含めてしまいがちで、この結果、マルウエアがファイルの内容を推測できることがある。
例えば、「極秘_顧客リスト2012.zzz」(zzzは拡張子、以下同様)というファイル名の場合、顧客の個人情報が入っているファイルと推測できる(マルウエアは、極秘、顧客、などのキーワードをファイル名に含んだファイルを探す場合が考えられる)。
もしマルウエアが、ディレクトリに置かれているファイル名をリストアップした場合、この様な名前が付与されたファイルを入手するかもしれない。
そこで、検印処理用画面6001は、検印付きファイル5003(図9)の名前を、例えば、「P9$uq71hr.zzz.sig」や、「201208011036.zzz.sig」などの様にファイル名から内容を推測できないファイルに変換してもよい。
また、「P9$uq71hr.sig、201208011036.sig」のように元の拡張子を除去してもよい。
更に、「P9$uq71hr」や「201208011036」の様に拡張子を完全に除去し、そもそも何のファイルなのか分からなくしてもよい。
Further, in the first embodiment, the output path 6003 of the file with a check mark is specified on the check processing screen 6001 in FIG. 10, but only the folder path is specified in the output path, and the file name is the check processing screen 6001. May be given automatically, such as a random or time stamp with a check.
If the user specifies the output path 6003 of the file with a seal including the file name, the user tends to include the original extension and the original file name, and as a result, the malware may be able to guess the contents of the file. .
For example, in the case of the file name “Top Secret_Customer List 2012.zzz” (zzz is an extension, the same applies hereinafter), it can be inferred that the file contains the customer's personal information (malware uses keywords such as top secret, customer, etc.) You may be looking for a file that is included in the file name).
If the malware lists file names in the directory, it may get a file with such a name.
Therefore, the check processing screen 6001 displays the contents of the file with the check 5003 (FIG. 9) from the file name such as “P9 $ uq71hr.zzz.sig” or “201208011036.zzz.sig”. You may convert it to a file that cannot be guessed.
Further, the original extension may be removed as in “P9 $ uq71hr.sig, 201208011036.sig”.
Further, the extension may be completely removed as in “P9 $ uq71hr” or “201208011036” so that the file itself is unknown.
図9のWebサーバ装置5012は、「P9$uq71hr.zzz.sig」のようなファイル名で受け取ると、何のファイルなのかファイルを開いてみないと分からないことがある。
また、「P9$uq71hr.sig」や「P9$uq71hr」のような場合は何のアプリケーションで開いてよいか分からない。
予め、Webサーバ装置5012と開くアプリケーションを取り決めておけば解決できるかもしれないが、元もとのファイル名を知りたい場合の処理について説明する。
図1の検印処理部100において、公開鍵暗号で検印付きデータを暗号化する場合で説明する。
図21において、検印追加部105の連結部1051は、検印データ1105と、被検印データ1101と、ユーザ識別子1207に加えて、検印処理部100(図1)に入力された、検印付きファイルの出力パス1206(フルパスか、パスを含まないファイル名のみの何れか、例えば、「極秘_顧客リスト2012.zzz」)(図1)を、入力し、検印付きデータ1053と検印付きファイルの出力パス1206を連結して、公開鍵暗号部1052に出力する。
この結果、検印付きデータ1106’(暗号化された、検印付きデータ)には、元のファイル名(「極秘_顧客リスト2012.zzz」)が含まれる。
また、検印処理部100が出力する検印付きファイルの名前は元のファイル名を推測できないランダムなものとし、例えば、「P9$uq71hr」である。
When the
In addition, in the case of “P9 $ uq71hr.sig” or “P9 $ uq71hr”, it is not known by which application it can be opened.
Processing that is performed when it is desired to know the original file name will be described, although it may be solved if the
The case where the data with a seal is encrypted by public key encryption in the
In FIG. 21, the linking
As a result, the data with a seal 1106 ′ (encrypted data with a seal) includes the original file name (“confidential_customer list 2012.zzz”).
In addition, the name of the file with a check output from the
図9のブラウザ5004で検印付きファイル5003である「P9$uq71hr」をPOSTすると、HTTPのヘッダ(例えばContent−Disposition)にファイル名として、「P9$uq71hr」が設定される。
When “P9 $ uq71hr”, which is a file 5003 with a seal, is POSTed by the
そして、検査サーバ装置3における、図22の検査対象データ分解部303の分解部3302は、検印データ3104、被検印データ3105、ユーザ識別子3109に加えて、検印付きファイルの出力パス1206を出力する。
検査サーバ装置3の送信データ生成部306(図1)では、HTTPデータのヘッダ(例えばContent−Disposition)において、検印付きファイルの出力パス1206を設定する。
この結果、修正送信データ3108に含まれるファイル名の情報は、元のファイル名「極秘_顧客リスト2012.zzz」となり、図9のWebサーバ装置5012は、ファイル名「極秘_顧客リスト2012.zzz」として受け取ることができる。
Then, the decomposition unit 3302 of the inspection object data decomposition unit 303 in FIG. 22 in the
In the transmission data generation unit 306 (FIG. 1) of the
As a result, the file name information included in the corrected transmission data 3108 is the original file name “confidential_customer list 2012.zzz”, and the
この様に、検印処理部が出力する、検印付きデータ1204を暗号化することで、マルウエアが、検印付きデータ1204を横取りしても、何のファイルなのか識別させないため、必要なファイルを漏洩することを防止する効果がある。 In this way, by encrypting the data 1204 with a check output from the check processing unit, even if the malware intercepts the data 1204 with a check, it does not identify what file it is, so it leaks a necessary file. There is an effect to prevent that.
実施の形態7.
本実施の形態では、マルウエアがファイルを添付メール(電子メールの添付ファイル)で組織外へ漏洩することを防止する実施の形態を示す。
以下では、実施の形態1との差異を示す。
In the present embodiment, an embodiment will be described in which malware prevents a file from being leaked outside the organization by an attached mail (attached file of an electronic mail).
Hereinafter, differences from the first embodiment will be described.
図27は、本実施の形態における構成図である。
図9との差異を示す。
ユーザ5005はメーラ5004’を使用し((2))、添付メールで検印付きファイル5003を送信することで、検印付きファイル5003が添付されたメール5006’がLAN5013に送られ((3))、スイッチ5007を経由しメールサーバ装置5008’において受信される。
メールサーバ装置5008’は、検査サーバ装置5009に検印付きファイル5003が添付されたメール5006’を転送する。
検査サーバ装置5009は、検印付きファイル5003が添付されたメール5006’において、検印を検査し、成功した場合に、検印付きファイル5300から検印を除去し((5))、ファイルが添付されたメール5010’としてメールサーバ装置5008’に転送する((6))。
メールサーバ装置5008’はインターネット5011にファイルが添付されたメール5010’を送信し((7))、メール送信先5012’で受信する。
FIG. 27 is a configuration diagram in the present embodiment.
The difference from FIG. 9 is shown.
The user 5005 uses the
The
The
The
検印処理部100の動作は、実施の形態1に同じである。
図5の検査サーバ装置3の動作は、送信対象データ分解部302は、検査対象データ3102として、検印付き添付ファイルを出力する。
また、メールの本文やヘッダ部分を非検査対象データ3103として出力する。
また、送信データ生成部306において、被検印データ3105と非検査対象データ3103を連結することで、検印データが付与されていないファイルを添付ファイルとしたメールが、修正送信データ3108として出力される。
The operation of the
In the operation of the
In addition, the mail text and header part are output as non-inspection target data 3103.
In addition, the transmission
また、マルウエアによる検印付きファイルの横取りへの対策として、実施の形態5の方式を応用できるが、その場合は、送信先URLの代わりに、送信先のメールアドレスを指定すればよい。 In addition, as a countermeasure against the interception of a file with a check mark by malware, the method of the fifth embodiment can be applied. In this case, a destination mail address may be specified instead of the destination URL.
本実施の形態では、Webサーバ装置に送信するファイルへの検印処理部100による検印の付与と、検査サーバ装置3における検印の検証と除去の方式を、添付つき電子メールにも適用したので、マルウエアがファイルを添付メールで組織外へ漏洩することを防止する効果がある。
In the present embodiment, the method of applying a check by the
実施の形態8.
本実施の形態では、マルウエアがブログサイトの掲示板へデータ漏洩することを防止する実施の形態を示す。
以下では、実施の形態1との差異を示す。
Embodiment 8 FIG.
In the present embodiment, an embodiment for preventing malware from leaking data to a bulletin board of a blog site will be described.
Hereinafter, differences from the first embodiment will be described.
図28を用いて実施の形態1との差異を説明する。
ユーザ5005は、ブログサイトへ投稿したい文書(投稿データ5015)を、テキストエディタ5013で記述し、ファイル5001に保存する。
さらに検印処理部5002を使用して、検印付きファイル5003を生成する((1))。
さらにユーザ5005は、検印付きファイル5003をテキストエディタ5013で開き、検印付きファイルの内容(検印付き投稿データ5014)をコピーし、ブラウザ5004を用いて、掲示板のWebサーバ装置の投稿欄にペーストして投稿する((2))。
この結果、検印付き投稿データを含んだHTTP POSTデータ5006’’((3))が、プロキシサーバ装置5008へ送信される。
この時、HTTPボディに含まれるのは、検印付き投稿データ5014である。
プロキシサーバ装置5008は、検印付き投稿データを含んだHTTP POSTデータ5006’’を検査サーバ装置5009に転送すると((4))、検査サーバ装置5009は、検印付き投稿データを含んだHTTP POSTデータ5006’’において、検印付き投稿データの検印を検証する。
検証に成功すれば、検印付き投稿データ5014から検印を除去し、投稿データ5015を含んだHTTP POSTデータ5010’’をプロキシサーバ装置5008へ転送する。
プロキシサーバ装置5008は、投稿データを含んだHTTP POSTデータ5010’’をインターネット5011を経由して、Webサーバ装置5012へ送信する。
Differences from the first embodiment will be described with reference to FIG.
The user 5005 describes a document (post data 5015) to be posted on the blog site with the
Further, the
Further, the user 5005 opens the file 5003 with the seal with a
As a result, HTTP POST data 5006 '' ((3)) including post data with a check mark is transmitted to the
At this time, post data 5014 with a seal is included in the HTTP body.
When the
If the verification is successful, the seal is removed from the post data with seal 5014, and the
The
本実施の形態では、実施の形態1をブログサイトへの投稿データにも応用したので、マルウエアによるブログサイトへのデータ漏洩も防止する効果がある。
In this embodiment, since
以上の実施の形態1〜8では、以下の処理が行われる情報漏洩防止システムを説明した。
端末装置は、WebサイトへPOSTしたいファイルを、検印処理部を用いて検印し、プロキシサーバ装置へ送信する(HTTPデータ)。
プロキシサーバ装置は、受信したHTTPデータを検査サーバ装置へフォワードし、検査サーバ装置は、検印があり、検印の検証に成功することをもって、検印部分を削除したHTTPデータを生成しなおし、プロキシサーバ装置へフォワードする。
プロキシは、検印部分を削除したHTTPデータをWebサイトへPOSTする。
検印が無い場合、及び、検証に失敗した場合は、検査サーバ装置は、エラーをプロキシに通知する。
In the above first to eighth embodiments, the information leakage prevention system in which the following processing is performed has been described.
The terminal device uses a check processing unit to check a file to be posted to the Web site, and transmits the file to the proxy server device (HTTP data).
The proxy server device forwards the received HTTP data to the inspection server device, and the inspection server device regenerates HTTP data from which the verification portion has been deleted when there is a verification and the verification of the verification is successful, and the proxy server device Forward to.
The proxy POSTs the HTTP data from which the verification part is deleted to the Web site.
When there is no check and when verification fails, the inspection server device notifies the proxy of an error.
また、実施の形態1〜8では、情報漏洩防止システムは、検印の手段として以下を適用することを説明した。
固定の文字列
公開鍵暗号と一方向性ハッシュ関数を用いた電子署名
共通鍵暗号と一方向性ハッシュ関数を用いた電子署名
Further, in the first to eighth embodiments, it has been described that the information leakage prevention system applies the following as a means for checking.
Fixed string Digital signature using public key cryptography and one-way hash function Electronic signature using common key cryptography and one-way hash function
また、実施の形態1〜8では、
以下の、マルウエアによる本方式の悪用対策を含む情報漏洩防止システムを説明した。
検印データに、送信先URLを含み、検査サーバ装置において、HTTPヘッダ情報に示されるホスト名がURLに含まれることで、正当なWebサイトへ送信を行うことを確認する。
検印付きファイルを、検査サーバ装置のみが復号できるように暗号化する。
検印処理部が、外部機器の認証を必要とする。
検印処理部が、外部機器の暗号処理を必要とする。
検印処理部が、画像認証を必要とする。
In the first to eighth embodiments,
The following information leakage prevention system including countermeasures against the abuse of this method by malware was described.
The verification data includes the transmission destination URL, and the inspection server apparatus confirms that the transmission is made to a valid Web site by including the host name indicated in the HTTP header information in the URL.
The file with a seal is encrypted so that only the inspection server device can decrypt it.
The check processing unit requires authentication of the external device.
The check processing unit requires encryption processing of the external device.
The check processing unit requires image authentication.
また、実施の形態1〜8では、
マルウエアによる、WebサイトへのファイルのHTTP POSTだけでなく、ブログサイトへのデータ送信、添付メールによるファイル送信による情報漏洩を防止する情報漏洩防止システムを説明した。
In the first to eighth embodiments,
An information leakage prevention system for preventing information leakage due to data transmission to a blog site and file transmission by an attached mail as well as HTTP POST of a file to a website by malware has been described.
以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、2つ以上を組み合わせて実施しても構わない。
あるいは、これらの実施の形態のうち、1つを部分的に実施しても構わない。
あるいは、これらの実施の形態のうち、2つ以上を部分的に組み合わせて実施しても構わない。
なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
As mentioned above, although embodiment of this invention was described, you may implement in combination of 2 or more among these embodiment.
Alternatively, one of these embodiments may be partially implemented.
Alternatively, two or more of these embodiments may be partially combined.
In addition, this invention is not limited to these embodiment, A various change is possible as needed.
また、上記の実施の形態では、端末装置をユーザが操作し、送信したいファイルに検印を付与し、Webサイトへ送信したり電子メールに添付して送信したが、当端末装置をサーバ化(検印サーバ)し、ユーザが、検印サーバへ、送付したいファイルと送信先を転送すると、検印が付与され、プロキシサーバ(Webサイトへ送信する場合)やメールサーバ(電子メールとして送信する場合)へ検印付きのファイルが転送されるように構成してもよい。
また、検印鍵保存部103に保存するprivate keyや共通鍵はユーザ固有として記述したが、複数のユーザで共通のprivate keyや共通鍵を保持して運用してもよい。
また、以上の実施の形態では、マルウエアが不正にデータを操作する例を用いて説明を行ったが、検印を付与できない不正な内部ユーザがデータを不正に操作する場合も、上記の実施の形態で説明した仕組みを適用できる。
つまり、検査サーバ装置は、検印を付与できない不正な内部ユーザにより不正に操作されたデータを検出することができる。
In the above embodiment, the user operates the terminal device, adds a seal to the file to be transmitted, and transmits it to the website or attaches it to the e-mail. Server), and when the user transfers the file and destination to be sent to the check server, the check is given and the check is added to the proxy server (when sending to the website) or mail server (when sending as e-mail) The file may be transferred.
In addition, although the private key and common key stored in the verification
Further, in the above embodiment, the description has been given using an example in which malware illegally manipulates data. However, the above embodiment also applies to an unauthorized internal user who cannot give a checkmark. The mechanism described in (4) can be applied.
That is, the inspection server device can detect data that has been illegally operated by an unauthorized internal user who cannot give a seal.
図29において、端末装置1及び検査サーバ装置3は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウエアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、SSD(Solid State Drive)、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
実施の形態1〜8で説明した「検印鍵保存部103」及び「検証鍵保存部305」は、RAM914、磁気ディスク装置920等により実現される。
通信ボード915、キーボード902、マウス903、スキャナ装置907などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
In FIG. 29, the
The
Further, the
The
The “check
A
The
通信ボード915は、図9等に示すように、ネットワークに接続されている。
The
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
The
The programs in the
また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
The
The
また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
端末装置1及び検査サーバ装置3の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
The
When the
上記プログラム群923には、実施の形態1〜8の説明において「〜部」(「検印鍵保存部103」及び「検証鍵保存部305」以外、以下同様)として説明している機能を実行するプログラムが記憶されている。
プログラムは、CPU911により読み出され実行される。
The
The program is read and executed by the
ファイル群924には、実施の形態1〜8の説明において、「〜の判断」、「〜の判定」、「〜の計算」、「〜の演算」、「〜の比較」、「〜の検証」、「〜の生成」、「〜の評価」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の連結」、「〜の暗号化」、「〜の復号」、「〜の入力」、「〜の出力」等として説明している処理の結果を示す情報やデータや信号値や変数値が、ディスクやメモリなどの記憶媒体にファイルとして記憶されている。
また、暗号鍵・復号鍵や乱数値やパラメータが、ディスクやメモリなどの記憶媒体にファイルとして記憶されてもよい。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記憶媒体に記憶される。
ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出される。
そして、読み出された情報やデータや信号値や変数値やパラメータは、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1〜8で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示す。
データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ブルーレイ(登録商標)ディスク、DVD等の記憶媒体に記録される。
また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
In the
The encryption key / decryption key, random number value, and parameter may be stored as a file in a storage medium such as a disk or memory.
The “˜file” and “˜database” are stored in a storage medium such as a disk or a memory.
Information, data, signal values, variable values, and parameters stored in a storage medium such as a disk or memory are read out to the main memory or cache memory by the
The read information, data, signal value, variable value, and parameter are used for CPU operations such as extraction, search, reference, comparison, calculation, calculation, processing, editing, output, printing, and display.
Information, data, signal values, variable values, and parameters are stored in the main memory, registers, cache memory, and buffers during the CPU operations of extraction, search, reference, comparison, calculation, processing, editing, output, printing, and display. It is temporarily stored in a memory or the like.
The arrows in the flowcharts described in the first to eighth embodiments mainly indicate input / output of data and signals.
Data and signal values are recorded on a storage medium such as a memory of the
Data and signals are transmitted online via a bus 912, signal lines, cables, or other transmission media.
また、実施の形態1〜8の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。
また、端末装置1及び検査サーバ装置3の処理をデータ処理方法として捉えることができる。
また、「〜部」として説明しているものは、ROM913に記憶されたファームウエアで実現されていても構わない。
或いは、ソフトウエアのみ、或いは、素子・デバイス・基板・配線などのハードウエアのみ、或いは、ソフトウエアとハードウエアとの組み合わせ、さらには、ファームウエアとの組み合わせで実施されても構わない。
ファームウエアとソフトウエアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の記憶媒体に記憶される。
プログラムはCPU911により読み出され、CPU911により実行される。
すなわち、プログラムは、実施の形態1〜8の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態1〜8の「〜部」の手順や方法をコンピュータに実行させるものである。
In addition, what is described as “to part” in the description of the first to eighth embodiments may be “to circuit”, “to device”, “to device”, and “to step”, It may be “˜procedure” or “˜processing”.
Moreover, the process of the
In addition, what is described as “to part” may be realized by firmware stored in the
Alternatively, only software, hardware such as an element, a device, a substrate, and wiring, a combination of software and hardware, or a combination of firmware may be used.
Firmware and software are stored as programs in a storage medium such as a magnetic disk, a flexible disk, an optical disk, a compact disk, a Blu-ray (registered trademark) disk, and a DVD.
The program is read by the
That is, the program causes the computer to function as “to part” in the first to eighth embodiments. Alternatively, the computer executes the procedure and method of “to unit” in the first to eighth embodiments.
このように、実施の形態1〜8に示す端末装置1及び検査サーバ装置3は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータである。
そして、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
As described above, the
Then, as described above, the functions indicated as “˜units” are realized using these processing devices, storage devices, input devices, and output devices.
1 端末装置、2 外部機器、3 検査サーバ装置、4 画像系認証データ配信サーバ装置、100 検印処理部、101 データ入力部、102 検印生成部、103 検印鍵保存部、104 外部機器連携部、105 検印追加部、106 検印データ出力部、107 パケット生成部、108 パケット送信部、301 データ入力部、302 送信対象データ分解部、303 検査対象データ分解部、304 検印検証部、305 検証鍵保存部、306 送信データ生成部、307 データ出力部。
DESCRIPTION OF
Claims (6)
前記検証対象データがマルウエア及び不正なユーザの少なくともいずれかにより不正に操作されたデータでないことを検証するのに用いられる検証情報が前記通信データのボディに含まれているか否かを検証するとともに、前記通信データの送信元の装置の利用者が指定した前記検証対象データの宛先アドレスが前記通信データのボディに含まれているか否かを検証し、前記検証情報が前記通信データのボディに含まれている場合に、前記検証対象データと前記検証情報とを用いて、前記検証対象データが不正に操作されたデータでないことを検証し、前記宛先アドレスが前記通信データのボディに含まれている場合に、前記通信データのヘッダの宛先ホスト名とボディの宛先アドレスとを照合し、前記宛先ホスト名で示される宛先ホストと前記宛先アドレスで示される宛先ホストとが一致するか否かを判定するデータ検証部と、
前記データ検証部により前記検証対象データが不正に操作されたデータでないと判定され、更に、前記宛先ホスト名で示される宛先ホストと前記宛先アドレスで示される宛先ホストとが一致すると判定された場合に、前記ボディから前記検証情報及び前記宛先アドレスを除外し、前記検証情報及び前記宛先アドレスが除外された通信データを転送する通信データ転送部とを有することを特徴とするデータ検証装置。 Communication data that is classified into a header and a body, wherein the destination host name of the communication data is included in the header, and the verification target data to be verified receives the communication data included in the body And
Verifying whether or not the verification data used to verify that the verification target data is not data that has been illegally operated by at least one of malware and an unauthorized user is included in the body of the communication data ; It verifies whether or not the destination address of the verification target data specified by the user of the device that is the transmission source of the communication data is included in the body of the communication data, and the verification information is included in the body of the communication data The verification target data and the verification information are used to verify that the verification target data is not illegally manipulated data, and the destination address is included in the body of the communication data And comparing the destination host name in the header of the communication data with the destination address in the body, and the destination host indicated by the destination host name A data verifying unit to determine whether the destination host matches indicated by the serial destination address,
When the data verification unit determines that the verification target data is not illegally manipulated data, and further determines that the destination host indicated by the destination host name matches the destination host indicated by the destination address And a communication data transfer unit that excludes the verification information and the destination address from the body and transfers the communication data from which the verification information and the destination address are excluded .
前記通信データに前記検証情報が含まれていない場合及び前記検証対象データが不正に操作されたデータであると判定した場合の少なくともいずれかにおいて、前記通信データ転送部に前記通信データの転送を実施させることなく、前記通信データの送信元の装置に対してエラーを通知することを特徴とする請求項1に記載のデータ検証装置。 The data verification unit
The communication data is transferred to the communication data transfer unit at least one of when the verification information is not included in the communication data and when it is determined that the verification target data is illegally operated data The data verification apparatus according to claim 1, wherein an error is notified to a transmission source apparatus of the communication data without causing the communication data to be transmitted.
前記通信データのボディに前記宛先アドレスが含まれていない場合及び前記宛先ホスト名で示される宛先ホストと前記宛先アドレスで示される宛先ホストとが一致しないと判定した場合の少なくともいずれかにおいて、前記通信データ転送部に前記通信データの転送を実施させることなく、前記通信データの送信元の装置に対してエラーを通知することを特徴とする請求項1に記載のデータ検証装置。 The data verification unit
The communication in at least one of the case where the destination address is not included in the body of the communication data and the case where it is determined that the destination host indicated by the destination host name does not match the destination host indicated by the destination address without performing the communication data transferred to the data transfer unit, the data verification system according to claim 1, characterized in that notifies an error to the transmission source device of the communication data.
前記ボディの内容が暗号化されている通信データを受信し、
前記データ検証装置は、更に、
前記通信データのボディの内容を復号する復号部を有し、
前記データ検証部は、
前記復号部により前記通信データのボディの内容が復号された後に、前記検証情報が前記通信データのボディに含まれているか否かを検証するとともに、前記宛先アドレスが前記通信データのボディに含まれているか否かを検証することを特徴とする請求項1に記載のデータ検証装置。 The communication data receiving unit
Receiving communication data in which the content of the body is encrypted;
The data verification device further includes:
A decoding unit for decoding the content of the body of the communication data;
The data verification unit
After the content of the body of the communication data is decrypted by the decryption unit, it is verified whether the verification information is included in the body of the communication data, and the destination address is included in the body of the communication data. The data verification apparatus according to claim 1 , wherein the data verification apparatus verifies whether the data is present.
前記検証対象データとして、HTTP(HyperText Transfer Protocol)データ及び電子メールデータのいずれかが含まれる通信データを受信することを特徴とする請求項1に記載のデータ検証装置。 The communication data receiving unit
The data verification apparatus according to claim 1, wherein communication data including HTTP (HyperText Transfer Protocol) data and e-mail data is received as the verification target data.
前記検証対象データがマルウエア及び不正なユーザの少なくともいずれかにより不正に操作されたデータでないことを検証するのに用いられる検証情報が前記通信データのボディに含まれているか否かを検証するとともに、前記通信データの送信元の装置の利用者が指定した前記検証対象データの宛先アドレスが前記通信データのボディに含まれているか否かを検証し、前記検証情報が前記通信データのボディに含まれている場合に、前記検証対象データと前記検証情報とを用いて、前記検証対象データが不正に操作されたデータでないことを検証し、前記宛先アドレスが前記通信データのボディに含まれている場合に、前記通信データのヘッダの宛先ホスト名とボディの宛先アドレスとを照合し、前記宛先ホスト名で示される宛先ホストと前記宛先アドレスで示される宛先ホストとが一致するか否かを判定するデータ検証処理と、Verifying whether or not the verification data used to verify that the verification target data is not data that has been illegally operated by at least one of malware and an unauthorized user is included in the body of the communication data; It verifies whether or not the destination address of the verification target data specified by the user of the device that is the transmission source of the communication data is included in the body of the communication data, and the verification information is included in the body of the communication data The verification target data and the verification information are used to verify that the verification target data is not illegally manipulated data, and the destination address is included in the body of the communication data And comparing the destination host name in the header of the communication data with the destination address in the body, and the destination host indicated by the destination host name And determining data verification processing whether the destination host matches indicated by the serial destination address,
前記データ検証処理により前記検証対象データが不正に操作されたデータでないと判定され、更に、前記宛先ホスト名で示される宛先ホストと前記宛先アドレスで示される宛先ホストとが一致すると判定された場合に、前記ボディから前記検証情報及び前記宛先アドレスを除外し、前記検証情報及び前記宛先アドレスが除外された通信データを転送する通信データ転送処理とをコンピュータに実行させることを特徴とするプログラム。When it is determined by the data verification processing that the verification target data is not illegally manipulated data, and it is further determined that the destination host indicated by the destination host name matches the destination host indicated by the destination address A program for causing a computer to execute communication data transfer processing for excluding the verification information and the destination address from the body and transferring the communication data from which the verification information and the destination address are excluded.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012213158A JP5518158B2 (en) | 2012-09-26 | 2012-09-26 | Data verification apparatus and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012213158A JP5518158B2 (en) | 2012-09-26 | 2012-09-26 | Data verification apparatus and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014068271A JP2014068271A (en) | 2014-04-17 |
JP5518158B2 true JP5518158B2 (en) | 2014-06-11 |
Family
ID=50744247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012213158A Expired - Fee Related JP5518158B2 (en) | 2012-09-26 | 2012-09-26 | Data verification apparatus and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5518158B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017067587A1 (en) * | 2015-10-21 | 2017-04-27 | Rwe Ag | Meter of a supply system and supply system |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11143793A (en) * | 1997-11-14 | 1999-05-28 | Nec Corp | Electronic mail preparation supporting method and device therefor and recording medium |
JP3945708B2 (en) * | 2004-01-23 | 2007-07-18 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Information processing system, conversion processing system, inverse conversion processing system, conversion method, conversion program, and recording medium |
JP2008187316A (en) * | 2007-01-29 | 2008-08-14 | Sharp Corp | Image data processing method and device |
JP4907371B2 (en) * | 2007-02-01 | 2012-03-28 | 株式会社日立ソリューションズ | Virus infection and confidential information leakage prevention system |
JP2008199513A (en) * | 2007-02-15 | 2008-08-28 | Yokogawa Electric Corp | Translator device and authentication communicating method |
JP2009027534A (en) * | 2007-07-20 | 2009-02-05 | Sony Corp | Device, system and method for performing file transmission/reception utilizing http |
-
2012
- 2012-09-26 JP JP2012213158A patent/JP5518158B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2014068271A (en) | 2014-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Specter et al. | The ballot is busted before the blockchain: A security analysis of voatz, the first internet voting application used in {US}. federal elections | |
Springall et al. | Security analysis of the Estonian internet voting system | |
US8468351B2 (en) | Digital data authentication | |
Mannan et al. | Using a personal device to strengthen password authentication from an untrusted computer | |
Li et al. | The {Emperor’s} new password manager: Security analysis of web-based password managers | |
KR101878149B1 (en) | Device, system, and method of secure entry and handling of passwords | |
Fett et al. | Spresso: A secure, privacy-respecting single sign-on system for the web | |
JP6654985B2 (en) | System and method for secure online authentication | |
Wang et al. | Vulnerability assessment of oauth implementations in android applications | |
CN109075976A (en) | Certificate depending on key authentication is issued | |
JP2017112592A (en) | System and method for encrypted transmission of web page | |
JP2016531508A (en) | Data secure storage | |
Wang et al. | The achilles heel of OAuth: a multi-platform study of OAuth-based authentication | |
Cao et al. | Protecting web-based single sign-on protocols against relying party impersonation attacks through a dedicated bi-directional authenticated secure channel | |
Calzavara et al. | Sub-session hijacking on the web: Root causes and prevention | |
Pereira et al. | Formal analysis of the FIDO 1. x protocol | |
Chothia et al. | Why banker Bob (still) can’t get TLS right: A Security Analysis of TLS in Leading UK Banking Apps | |
Mannan et al. | Leveraging personal devices for stronger password authentication from untrusted computers | |
Levillain | Implementation flaws in TLS stacks: lessons learned and study of TLS 1.3 benefits | |
Raddum et al. | Security analysis of mobile phones used as OTP generators | |
JP5518158B2 (en) | Data verification apparatus and program | |
Tolbert | Vulnerabilities of Multi-factor Authentication in Modern Computer Networks | |
Kusreynada et al. | Android Apps Vulnerability Detection with Static and Dynamic Analysis Approach using MOBSF | |
Wüest | “Phishing In The Middle Of The Stream”-Today’s Threats To Online Banking | |
Alanazi et al. | The history of web application security risks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140121 |
|
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: 20140304 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140401 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5518158 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |