(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024135582
(43)【公開日】2024-10-04
(54)【発明の名称】ウェブサイト保存支援装置、ウェブサイト保存支援方法、プログラム及び記録媒体
(51)【国際特許分類】
G06F 21/60 20130101AFI20240927BHJP
G06F 21/64 20130101ALI20240927BHJP
【FI】
G06F21/60
G06F21/64
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023046350
(22)【出願日】2023-03-23
(71)【出願人】
【識別番号】000232092
【氏名又は名称】NECソリューションイノベータ株式会社
(74)【代理人】
【識別番号】100115255
【弁理士】
【氏名又は名称】辻丸 光一郎
(74)【代理人】
【識別番号】100201732
【弁理士】
【氏名又は名称】松縄 正登
(74)【代理人】
【識別番号】100154081
【弁理士】
【氏名又は名称】伊佐治 創
(74)【代理人】
【識別番号】100227019
【弁理士】
【氏名又は名称】安 修央
(72)【発明者】
【氏名】石田 州裕
(72)【発明者】
【氏名】外村 彰英
(72)【発明者】
【氏名】片山 紘希
(72)【発明者】
【氏名】足立 浩基
(72)【発明者】
【氏名】山地 智
(72)【発明者】
【氏名】山上 辰典
(72)【発明者】
【氏名】高橋 昌也
(57)【要約】 (修正有)
【課題】ウェブサイトの存在を証明するウェブサイト保存支援装置、方法、プログラム及び記録媒体を提供する。
【解決手段】ウェブサイト保存支援装置10は、保存対象のウェブサイトを特定するアクセス用情報を取得するアクセス用情報取得部、環境変数出力モードでブラウザを起動してブラウザにアクセス用情報を送信し、アクセス用情報で特定したウェブサイトを対象にSSLハンドシェイクを実行させるブラウザ起動部、ブラウザから、ブラウザとウェブサイトとが通信を行う際に使用される鍵情報を取得する鍵情報取得部、ブラウザとウェブサイトとの通信時のパケット情報を取得するパケット情報取得部、パケット情報及び鍵情報から、ブラウザとウェブサイトとの通信内容を解析した解析データを生成する解析部、パケット情報に対するタイムスタンプを取得するタイムスタンプ取得部並びに解析結果、パケット情報及びタイムスタンプを紐づけて保存する保存部を含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
アクセス用情報取得部、ブラウザ起動部、鍵情報取得部、パケット情報取得部、解析部、タイムスタンプ取得部、及び保存部を含み、
前記アクセス用情報取得部は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動部は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得部は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得部は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析部は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得部は、前記パケット情報に対するタイムスタンプを取得し、
前記保存部は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存する、ウェブサイト保存支援装置。
【請求項2】
前記アクセス用情報取得部は、前記アクセス用情報として、URLを取得し、
前記ブラウザ起動部は、SSLKEYLOGFILEを出力するモードでブラウザを起動し、前記ブラウザに前記URLを送信し、前記URLで特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得部は、前記鍵情報として、前記ブラウザからプレマスターシークレットを取得し、
前記パケット情報取得部は、前記パケット情報として、パケットキャプチャデータを取得し、
前記解析部は、前記プレマスターシークレットおよび前記パケットキャプチャデータから前記ブラウザと前記ウェブサイトの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得部は、前記パケットキャプチャデータに対するタイムスタンプを取得し、
前記保存部は、前記解析結果、前記パケットキャプチャデータ、及び前記タイムスタンプを紐づけて保存する、請求項1記載のウェブサイト保存支援装置。
【請求項3】
再構築部を含み、
前記再構築部は、前記パケット情報および前記鍵情報に基づいて前記ウェブサイトを閲覧可能に再構築する、請求項1または2記載のウェブサイト保存支援装置。
【請求項4】
アクセス用情報取得工程、ブラウザ起動工程、鍵情報取得工程、パケット情報取得工程、解析工程、タイムスタンプ取得工程、及び保存工程を含み、
前記アクセス用情報取得工程は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動工程は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得工程は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得工程は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析工程は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得工程は、前記パケット情報に対するタイムスタンプを取得し、
前記保存工程は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存する、ウェブサイト保存支援方法。
【請求項5】
前記アクセス用情報取得工程は、前記アクセス用情報として、URLを取得し、
前記ブラウザ起動工程は、SSLKEYLOGFILEを出力するモードでブラウザを起動し、前記ブラウザに前記URLを送信し、前記URLで特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得工程は、前記鍵情報として、前記ブラウザからプレマスターシークレットを取得し、
前記パケット情報取得工程は、前記パケット情報として、パケットキャプチャデータを取得し、
前記解析工程は、前記プレマスターシークレットおよび前記パケットキャプチャデータから前記ブラウザと前記ウェブサイトの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得工程は、前記パケットキャプチャデータに対するタイムスタンプを取得し、
前記保存工程は、前記解析結果、前記パケットキャプチャデータ、及び前記タイムスタンプを紐づけて保存する、請求項4記載のウェブサイト保存支援方法。
【請求項6】
再構築工程を含み、
前記再構築工程は、前記パケット情報および前記鍵情報に基づいて前記ウェブサイトを閲覧可能に再構築する、請求項4または5記載のウェブサイト保存支援方法。
【請求項7】
アクセス用情報取得手順、ブラウザ起動手順、鍵情報取得手順、パケット情報取得手順、解析手順、タイムスタンプ取得手順、及び保存手順を含み、
前記アクセス用情報取得手順は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動手順は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得手順は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得手順は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析手順は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得手順は、前記パケット情報に対するタイムスタンプを取得し、
前記保存手順は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存し、
前記各手順を、コンピュータに実行させるためのプログラム。
【請求項8】
前記アクセス用情報取得手順は、前記アクセス用情報として、URLを取得し、
前記ブラウザ起動手順は、SSLKEYLOGFILEを出力するモードでブラウザを起動し、前記ブラウザに前記URLを送信し、前記URLで特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得手順は、前記鍵情報として、前記ブラウザからプレマスターシークレットを取得し、
前記パケット情報取得手順は、前記パケット情報として、パケットキャプチャデータを取得し、
前記解析手順は、前記プレマスターシークレットおよび前記パケットキャプチャデータから前記ブラウザと前記ウェブサイトの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得手順は、前記パケットキャプチャデータに対するタイムスタンプを取得し、
前記保存手順は、前記解析結果、前記パケットキャプチャデータ、及び前記タイムスタンプを紐づけて保存する、請求項7記載のプログラム。
【請求項9】
再構築手順を含み、
前記再構築手順は、前記パケット情報および前記鍵情報に基づいて前記ウェブサイトを閲覧可能に再構築する、請求項7または8記載のプログラム。
【請求項10】
アクセス用情報取得手順、ブラウザ起動手順、鍵情報取得手順、パケット情報取得手順、解析手順、タイムスタンプ取得手順、及び保存手順を含み、
前記アクセス用情報取得手順は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動手順は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得手順は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得手順は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析手順は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得手順は、前記パケット情報に対するタイムスタンプを取得し、
前記保存手順は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存し、
前記各手順を、コンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ウェブサイト保存支援装置、ウェブサイト保存支援方法、プログラム及び記録媒体に関する。
【背景技術】
【0002】
近年、ITやウェブ技術の発展とともに、サイバー犯罪も増加している。このようなサイバー犯罪に対抗するため、ウェブページのセキュリティを向上させる技術が知られている(例えば、特許文献1等)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、サイバー犯罪等の捜査において、サイバー犯罪が行われているウェブサイト(違法サイト)が捜査中に改変された場合、犯罪当時に当該ウェブサイトが運営されていた証拠が残せないという課題がある。また、ウェブサイトのスナップショットを保存可能なサービスも知られているが、スナップショットは改変が容易であるため、証拠能力が低いという問題がある。
【0005】
そこで本発明は、ウェブサイトの存在を証明できるウェブサイト保存支援装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
前記目的を達成するために、本発明のウェブサイト保存支援装置は、
アクセス用情報取得部、ブラウザ起動部、鍵情報取得部、パケット情報取得部、解析部、タイムスタンプ取得部、及び保存部を含み、
前記アクセス用情報取得部は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動部は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得部は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得部は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析部は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得部は、前記パケット情報に対するタイムスタンプを取得し、
前記保存部は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存する。
【0007】
本発明のウェブサイト保存支援方法は、
アクセス用情報取得工程、ブラウザ起動工程、鍵情報取得工程、パケット情報取得工程、解析工程、タイムスタンプ取得工程、及び保存工程を含み、
前記アクセス用情報取得工程は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動工程は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得工程は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得工程は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析工程は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得工程は、前記パケット情報に対するタイムスタンプを取得し、
前記保存工程は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存する。
【0008】
本発明のプログラムは、
アクセス用情報取得手順、ブラウザ起動手順、鍵情報取得手順、パケット情報取得手順、解析手順、タイムスタンプ取得手順、及び保存手順を含み、
前記アクセス用情報取得手順は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動手順は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得手順は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得手順は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析手順は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得手順は、前記パケット情報に対するタイムスタンプを取得し、
前記保存手順は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存し、
前記各手順を、コンピュータに実行させるためのプログラムである。
【0009】
本発明の記録媒体は、
アクセス用情報取得手順、ブラウザ起動手順、鍵情報取得手順、パケット情報取得手順、解析手順、タイムスタンプ取得手順、及び保存手順を含み、
前記アクセス用情報取得手順は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動手順は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得手順は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得手順は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析手順は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得手順は、前記パケット情報に対するタイムスタンプを取得し、
前記保存手順は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存し、
前記各手順を、コンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【0010】
本発明によれば、ウェブサイトの存在を証明できる。
【図面の簡単な説明】
【0011】
【
図1】
図1は、実施形態1のウェブサイト保存支援装置の一例の構成を示すブロック図である。
【
図2】
図2は、実施形態1のウェブサイト保存支援装置のハードウェア構成の一例を示すブロック図である。
【
図3】
図3は、実施形態1のウェブサイト保存支援装置における処理の一例を示すフローチャートである。
【
図4】
図4は、実施形態2のウェブサイト保存支援装置の一例の構成を示すブロック図である。
【
図5】
図5は、実施形態2のウェブサイト保存支援装置における処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0012】
次に、本発明の実施形態について図を用いて説明する。本発明は、以下の実施形態には限定されない。以下の各図において、同一部分には、同一符号を付している。また、各実施形態の説明は、特に言及がない限り、互いの説明を援用でき、各実施形態の構成は、特に言及がない限り、組合せ可能である。
【0013】
[実施形態1]
本実施形態のウェブサイト保存支援装置について、
図1を用いて説明する。
図1は、本実施形態のウェブサイト保存支援装置10の一例の構成を示すブロック図である。
図1に示すように、ウェブサイト保存支援装置10(以下、「本装置10」ともいう)は、アクセス用情報取得部11、ブラウザ起動部12、鍵情報取得部13、パケット情報取得部14、解析部15、タイムスタンプ取得部16、及び保存部17を含む。また、図示していないが、本装置10は、例えば、記憶部、入力部、及び出力部を含んでもよい。
【0014】
本装置10は、例えば、前記各部を含む1つの装置でもよいし、前記各部が、通信回線網を介して接続可能な装置でもよい。また、本装置10は、
図1に示すように、通信回線網20を介して、ウェブサーバ30や、後述する外部装置と接続可能である。通信回線網20は、特に制限されず、公知のネットワークを使用でき、例えば、有線でも無線でもよい。通信回線網20は、例えば、インターネット回線、WWW(World Wide Web)、電話回線、LAN(Local Area Network)、SAN(Storage Area Network)、DTN(Delay Tolerant Networking)、LPWA(Low Power Wide Area)、L5G(ローカル5G)、等があげられる。無線通信としては、例えば、Wi-Fi(登録商標)、Bluetooth(登録商標)、ローカル5G、LPWA等が挙げられる。前記無線通信としては、各装置が直接通信する形態(Ad Hoc通信)、インフラストラクチャ(infrastructure通信)、アクセスポイントを介した間接通信等であってもよい。本装置10は、例えば、システムとしてサーバに組み込まれていてもよい。また、本装置10は、例えば、本発明のプログラムがインストールされたパーソナルコンピュータ(PC、例えば、デスクトップ型、ノート型)、スマートフォン、タブレット端末等であってもよい。本装置10は、対象物を撮像可能な撮像端末(例えば、カメラ付きのスマートフォン、タブレット端末等)であってもよいし、前記撮像端末と通信可能な装置であってもよい。さらに、本装置10は、例えば、前記各部のうち少なくとも一つがサーバ上にあり、その他の前記各部が端末上にあるような、クラウドコンピューティングやエッジコンピューティング等の形態であってもよい。
【0015】
図2に、本装置10のハードウェア構成のブロック図を例示する。本装置10は、例えば、中央処理装置(CPU、GPU等)101、メモリ102、バス103、記憶装置104、入力装置105、出力装置106、通信デバイス107等を含む。本装置10の各部は、それぞれのインタフェース(I/F)により、バス103を介して相互に接続されている。
【0016】
中央処理装置101は、コントローラ(システムコントローラ、I/Oコントローラ等)等により、他の構成と連携動作し、本装置10の全体の制御を担う。本装置10において、中央処理装置101により、例えば、本発明のプログラムやその他のプログラムが実行され、また、各種情報の読み込みや書き込みが行われる。具体的には、例えば、中央処理装置101が、アクセス用情報取得部11、ブラウザ起動部12、鍵情報取得部13、パケット情報取得部14、解析部15、タイムスタンプ取得部16、及び保存部17として機能する。本装置10は、演算装置として、CPU、GPU(Graphics Processing Unit)、APU(Accelerated Processing Unit)等の他の演算装置を備えてもよいし、これらの組合せを備えてもよい。
【0017】
バス103は、例えば、外部装置とも接続できる。前記外部装置は、例えば、ユーザ端末30、外部記憶装置(外部データベース等)、プリンタ、外部入力装置、外部表示装置、スピーカ等の音声出力装置、カメラ等の外部撮像装置、および加速度センサ、地磁気センサ、方向センサ等の各種センサ等があげられる。本装置10は、例えば、バス103に接続された通信デバイス107により、外部ネットワーク(前記通信回線網)に接続でき、外部ネットワークを介して、ユーザの端末等の他の装置と接続することもできる。
【0018】
メモリ102は、例えば、メインメモリ(主記憶装置)が挙げられる。中央処理装置101が処理を行う際には、例えば、後述する記憶装置104に記憶されている本発明のプログラム等の種々の動作プログラムを、メモリ102が読み込み、中央処理装置101は、メモリ102からデータを受け取って、プログラムを実行する。前記メインメモリは、例えば、RAM(ランダムアクセスメモリ)である。また、メモリ102は、例えば、ROM(読み出し専用メモリ)であってもよい。
【0019】
記憶装置104は、例えば、前記メインメモリ(主記憶装置)に対して、いわゆる補助記憶装置ともいう。前述のように、記憶装置104には、本発明のプログラムを含む動作プログラムが格納されている。記憶装置104は、例えば、記録媒体と、記録媒体に読み書きするドライブとの組合せであってもよい。前記記録媒体は、特に制限されず、例えば、内蔵型でも外付け型でもよく、HD(ハードディスク)、CD-ROM、CD-R、CD-RW、MO、DVD、フラッシュメモリー、メモリーカード等が挙げられる。記憶装置104は、例えば、記録媒体とドライブとが一体化されたハードディスクドライブ(HDD)、及びソリッドステートドライブ(SSD)であってもよい。本装置10が、例えば、前記記憶部を含む場合、記憶装置104が前記記憶部として機能する。記憶装置104は、例えば、後述するアクセス用情報、ブラウザの実行プログラム、鍵情報、パケット情報、解析結果、タイムスタンプの少なくとも一つを記憶していてもよい。
【0020】
本装置10において、メモリ102及び記憶装置104は、ログ情報、外部データベース(図示せず)や外部の装置から取得した情報、本装置10によって生成した情報、本装置10が処理を実行する際に用いる情報等の種々の情報を記憶することも可能である。なお、少なくとも一部の情報は、例えば、メモリ102及び記憶装置104以外の外部サーバに記憶されていてもよいし、複数の端末にブロックチェーン技術等を用いて分散して記憶されていてもよい。
【0021】
本装置10は、例えば、さらに、入力装置105、出力装置106を備える。入力装置105は、例えば、タッチパネル、トラックパッド、マウス等のポインティングデバイス;キーボード;カメラ、スキャナ等の撮像手段;ICカードリーダ、磁気カードリーダ等のカードリーダ;マイク等の音声入力手段;等があげられる。出力装置106は、例えば、LEDディスプレイ、液晶ディスプレイ等の表示装置;スピーカ等の音声出力装置;プリンタ;等があげられる。本実施形態1において、入力装置105と出力装置106とは、別個に構成されているが、入力装置105と出力装置106とは、タッチパネルディスプレイのように、一体として構成されてもよい。
【0022】
ウェブサーバ30は、例えば、保存対象のウェブサイトを提供するサーバ装置であり、特に制限されない。前記ウェブサイトは、特に制限されず、どのようなウェブサイトであってもよいが、例えば、HTTPS通信方式でブラウザと通信可能なウェブサイトであることが好ましい。
【0023】
つぎに、本実施形態のウェブサイト保存支援方法の一例を、
図3のフローチャートに基づき説明する。本実施形態のウェブサイト保存支援方法は、例えば、
図1から
図2に示すウェブサイト保存支援装置10を用いて、次のように実施する。なお、本実施形態のウェブサイト保存支援方法は、
図1から
図2のウェブサイト保存支援装置10の使用には限定されない。
【0024】
アクセス用情報取得部11は、保存対象のウェブサイトを特定するアクセス用情報を取得する(S1、アクセス用情報取得工程)。前記アクセス用情報は、例えば、保存対象のウェブサイトを特定するための情報であり、具体的には、例えば、URI(Uniform Resource Identifier)、URL(Uniform Resource Locator)、URN(Uniform Resource Name)等があげられる。前記アクセス用情報は、例えば、入力装置105により入力することにより取得できる。アクセス用情報取得部11は、例えば、取得した前記アクセス用情報を記憶装置104またはメモリ102に記憶してもよい。
【0025】
つぎに、ブラウザ起動部12は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させる(S2、ブラウザ起動工程)。前記ブラウザは、前述のアクセス用情報に基づいて、保存対象のウェブサイトにアクセスが可能なウェブブラウザソフトウェアであればその種類は特に制限されない。前記ブラウザは、例えば、本装置10の構成であってもよいし、本装置10外の構成であってもよい。ブラウザ起動部12は、具体的に、例えば、前記環境変数出力モードとして、SSLKEYLOGFILEを出力するモードでブラウザを起動する。前記SSLKEYLOGFILEを出力するモードは、例えば、後述するプレマスターシークレットを出力可能なモードである。ブラウザ起動部12は、例えば、前記SSLKEYLOGFILEにおいて、本装置10の鍵情報取得部13により、前記プレマスターシークレットを取得可能な出力先を指定する。前記出力先は、特に制限されず、本装置10によりアクセスおよび情報の取得が可能な場所であればよい。そして、ブラウザ起動部12は、前記ブラウザに前記URLを送信し、前記URLで特定されるウェブサイトを対象にSSLハンドシェイクを実行させる。前記SSLハンドシェイクは、前記ブラウザと前記ウェブサイトとがSSL/TLS方式で通信する際の一般的なプロセスであり、特に制限されず、例えば、一般的な手法で実行できる。
【0026】
つぎに、鍵情報取得部13は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得する(S3、鍵情報取得工程)。前記鍵情報は、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報であれば特に制限されない。前記鍵情報は、例えば、前記ブラウザと前記ウェブサイトとの通信方式に応じて適切な種類の鍵情報が使用できる。前記通信方式がSSL/TLS方式である場合、プレマスターシークレットがあげられる。前記プレマスターシークレットは、例えば、前記ブラウザと前記ウェブサイトとがSSL/TLS方式で通信する際の秘密鍵を作るために前記ブラウザが生成したデータであり、セッション鍵ともいう。前記ブラウザと前記ウェブサイトとは、前記プレマスターシークレットを使って実際の通信において使用する共通鍵(マスターシークレット)を生成し、マスターシークレットを用いて通信内容を暗号化するため、プレマスターシークレットを取得した本装置10は、前記ブラウザと前記ウェブサイトとの間での通信内容を復号できる。
【0027】
つぎに、パケット情報取得部14は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得する(S4、パケット情報取得工程)。前記パケット情報は、例えば、パケットキャプチャデータ(PCAP:Packet Capture)である。前記パケットキャプチャデータの形式は、特に制限されず、例えば、libpcap、Winpcap、Npcap等があげられ、いずれでもよい。パケット情報取得部14は、例えば、一般的なパケットキャプチャツールと同様にして、又は、前記パケットキャプチャツールを用いて前記パケット情報を取得できる。前記パケットキャプチャツールは、特に制限されず、例えば、ワイヤーシャーク(Wireshark)等のソフトウェアがあげられる。パケット情報取得部14は、前記パケット情報として、前記ブラウザと前記ウェブサイトのウェブサーバとの通信において使用されるサーバの証明書を含むデータを取得することが好ましい。また、実施形態2で後述する再構築工程に用いるため、パケット情報取得部14は、例えば、保存対象のウェブサイトを構成するリソースをすべて含むパケット情報を取得することがより好ましい。
【0028】
つぎに、解析部15は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成する(S5、解析工程)。前記パケット情報は、前記ブラウザと前記ウェブサイトとの通信方式に応じた暗号形式で暗号化されている。このため、解析部15は、例えば、前記通信方式と対応した前記鍵情報を用いることで、前記パケット情報を復号し、前記ブラウザと前記ウェブブラウザとの通信内容を平文に復号し、前記復号した平文のデータを含む情報を前記解析データとして生成できる。具体的に、例えば、前記通信方式がSSL/TLS方式である場合、前記パケットキャプチャデータは、TLS暗号化方式で暗号化されている。このため、解析部15は、例えば、前記プレマスターシークレットを用いて前記TLS暗号化方式で暗号化されたパケットキャプチャデータを解析し、前記ブラウザと前記ウェブサイトとの通信内容、サーバ証明書等を含む解析データを生成する。
【0029】
つぎに、タイムスタンプ取得部16は、前記パケット情報に対するタイムスタンプを取得する(S6、タイムスタンプ取得工程)。タイムスタンプ取得部16は、例えば、本装置10により生成したタイムスタンプ(ローカルタイムスタンプ)を取得してもよいし、本装置10外の装置が生成したタイムスタンプ(例えば、インターネット上のタイムスタンプ認証局が生成したタイムスタンプ)を取得してもよいが、後者が好ましい。後者の場合、タイムスタンプ取得部16は、例えば、前記パケット情報をタイムスタンプ認証局に送付し、前記タイムスタンプ認証局からタイムスタンプを取得できる。
【0030】
そして、保存部17は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存する(S7、保存工程)。保存部17は、例えば、本装置10のメモリ102または記憶装置104に前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存してもよいし、本装置10外の記憶装置に、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存してもよいし、本装置10のメモリ102または記憶装置104および本装置10外の記憶装置の両方に前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存してもよい。
【0031】
また、本装置10は、例えば、メモリ102または記憶装置104に、前記S1~S5で取得した各種の情報の組を記憶してもよい。そして例えば、S1において、記憶済みのアクセス用情報を取得した場合、前記記憶した組に基づいて、前記S2~S7までの工程を自動的に実行(オートパイロット)してもよい。これにより、保存対象のウェブサイトの定期的な保存を容易に実行できる。
【0032】
本実施形態のウェブサイト保存支援装置10によれば、例えば、サーバ証明書を含む前記解析データと、前記パケット情報と、前記タイムスタンプとを紐づけて保存できる。このため、本装置10によれば、タイムスタンプにより証明される日時において、前記サーバ証明書及び前記パケット情報により、前記ウェブサイトが存在したこと及び前記ウェブサイトとブラウザとが通信可能であった、すなわち、ウェブサイトが存在していたことを証明できる。
【0033】
本装置10は、例えば、ウェブサイト上の情報の存在の証明が必要な分野において使用できる。本装置10の具体的な用途としては、例えば、サイバー犯罪等の捜査、ウェブ上でのいじめ、誹謗中傷、著作権侵害の証明、著作権者による著作物の存在証明等に使用できるが、本装置10の用途は、前述の例示には限定されない。
【0034】
[実施形態2]
実施形態2は、本発明のウェブサイト保存支援装置の他の例である。
【0035】
本実施形態のウェブサイト保存支援装置は、実施形態1のウェブサイト保存支援装置10の構成に加えて、再構築部を含むこと以外は前記実施形態1のウェブサイト保存支援装置10と同様であり、その説明を援用できる。本実施形態のウェブサイト保存支援装置10Aは、例えば、再構築部18を含む。
【0036】
図4は、本実施形態のウェブサイト保存支援装置10Aの一例の構成を示すブロック図である。
図4に示すように、ウェブサイト保存支援装置10Aは、実施形態1のウェブサイト保存支援装置10の構成に加えて、再構築部18を含む。ウェブサイト保存支援装置10Aのハードウェア構成は、
図2のウェブサイト保存支援装置10のハードウェア構成において、中央処理装置101が、
図1のウェブサイト保存支援装置10の構成に代えて、
図4のウェブサイト保存支援装置10Aの構成を備える以外は同様である。以下、再構築部18の処理を説明する。再構築部18の処理は、例えば、前記実施形態1で説明した
図3のフローチャートにおける任意の位置に適宜挿入できるが、
図5に示すように、S5の後に挿入されることが好ましい。なお、
図5においては、再構築部の処理(S11)は、S5の後、S6およびS7の前で実行されているが、S6およびS7とS11とは、同時に実行してもよいし、順次実行してもよく、その実行順序は特に制限されない。
【0037】
再構築部18は、前記パケット情報および前記鍵情報に基づいて前記ウェブサイトを閲覧可能に再構築する(S11、再構築工程)。具体的に、再構築部18は、例えば、前記鍵情報を用いて、暗号化された前記パケット情報を平文に復号する。つぎに、再構築部18は、例えば、前記ウェブサイトの画面遷移毎のフォルダを生成し、復号された前記パケット情報から、各画面の表示に必要なデータを前記フォルダに格納することで、前記ウェブサイトを閲覧可能に再構築したHTMLファイルを生成できる。なお、再構築部18の処理は、例えば、前記パケットキャプチャツール(例えば、Wireshark)の機能を用いて実行してもよい。
【0038】
本装置10Aの保存部17は、例えば、前記解析結果、前記パケット情報、及び前記タイムスタンプに加えて、前記再構築したウェブサイトをさらに保存してもよい。
【0039】
本実施形態のウェブサイト保存支援装置10Aによれば、例えば、取得したパケット情報および鍵情報に基づいて、保存対象のウェブサイトを閲覧可能に再構築できる。このため、本実施形態のウェブサイト保存支援装置10Aによれば、例えば、ウェブサイトの存在証明だけでなく、存在したウェブサイトを閲覧可能に保存できるため、証拠としてより有用に使用できる。
【0040】
[実施形態3]
本実施形態のプログラムは、前述のウェブサイト保存支援方法の各工程を、コンピュータに実行させるためのプログラムである。具体的に、本実施形態のプログラムは、コンピュータに、アクセス用情報取得手順、ブラウザ起動手順、鍵情報取得手順、パケット情報取得手順、解析手順、タイムスタンプ取得手順、及び保存手順を実行させるためのプログラムである。
【0041】
前記アクセス用情報取得手順は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動手順は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得手順は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得手順は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析手順は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得手順は、前記パケット情報に対するタイムスタンプを取得し、
前記保存手順は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存する。
【0042】
また、本実施形態のプログラムは、コンピュータを、アクセス用情報取得手順、ブラウザ起動手順、鍵情報取得手順、パケット情報取得手順、解析手順、タイムスタンプ取得手順、及び保存手順として機能させるプログラムということもできる。
【0043】
本実施形態のプログラムは、前記本発明のウェブサイト保存支援装置およびウェブサイト保存支援方法における記載を援用できる。前記各手順は、例えば、「手順」を「処理」と読み替え可能である。また、本実施形態のプログラムは、例えば、コンピュータ読み取り可能な記録媒体に記録されてもよい。前記記録媒体は、例えば、非一時的なコンピュータ可読記録媒体(non-transitory computer-readable storage medium)である。前記記録媒体は、特に制限されず、例えば、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、ハードディスク(HD)、フラッシュメモリー(例えば、SSD(Solid State Drive)、USBフラッシュメモリー、SD/SDHCカード等)、光ディスク(例えば、CD‐R/CD‐RW、DVD‐R/DVD‐RW、BD‐R/BD‐RE等)、光磁気ディスク(MO)、フロッピー(登録商標)ディスク(FD)等があげられる。また、本実施形態のプログラム(例えば、プログラミング製品、又はプログラム製品ともいう)は、例えば、外部のコンピュータから配信される形態であってもよい。前記「配信」は、例えば、通信回線網を介した配信でもよいし、有線で接続された装置を介した配信であってもよい。本実施形態のプログラムは、配信された装置にインストールされて実行されてもよいし、インストールされずに実行されてもよい。
【0044】
以上、実施形態を参照して本発明を説明したが、本発明は、上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をできる。
【0045】
<付記>
上記の実施形態の一部または全部は、以下の付記のように記載されうるが、以下には限られない。
(付記1)
アクセス用情報取得部、ブラウザ起動部、鍵情報取得部、パケット情報取得部、解析部、タイムスタンプ取得部、及び保存部を含み、
前記アクセス用情報取得部は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動部は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得部は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得部は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析部は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得部は、前記パケット情報に対するタイムスタンプを取得し、
前記保存部は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存する、ウェブサイト保存支援装置。
(付記2)
前記アクセス用情報取得部は、前記アクセス用情報として、URLを取得し、
前記ブラウザ起動部は、SSLKEYLOGFILEを出力するモードでブラウザを起動し、前記ブラウザに前記URLを送信し、前記URLで特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得部は、前記鍵情報として、前記ブラウザからプレマスターシークレットを取得し、
前記パケット情報取得部は、前記パケット情報として、パケットキャプチャデータを取得し、
前記解析部は、前記プレマスターシークレットおよび前記パケットキャプチャデータから前記ブラウザと前記ウェブサイトの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得部は、前記パケットキャプチャデータに対するタイムスタンプを取得し、
前記保存部は、前記解析結果、前記パケットキャプチャデータ、及び前記タイムスタンプを紐づけて保存する、付記1記載のウェブサイト保存支援装置。
(付記3)
再構築部を含み、
前記再構築部は、前記パケット情報および前記鍵情報に基づいて前記ウェブサイトを閲覧可能に再構築する、付記1または2記載のウェブサイト保存支援装置。
(付記4)
アクセス用情報取得工程、ブラウザ起動工程、鍵情報取得工程、パケット情報取得工程、解析工程、タイムスタンプ取得工程、及び保存工程を含み、
前記アクセス用情報取得工程は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動工程は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得工程は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得工程は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析工程は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得工程は、前記パケット情報に対するタイムスタンプを取得し、
前記保存工程は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存する、ウェブサイト保存支援方法。
(付記5)
前記アクセス用情報取得工程は、前記アクセス用情報として、URLを取得し、
前記ブラウザ起動工程は、SSLKEYLOGFILEを出力するモードでブラウザを起動し、前記ブラウザに前記URLを送信し、前記URLで特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得工程は、前記鍵情報として、前記ブラウザからプレマスターシークレットを取得し、
前記パケット情報取得工程は、前記パケット情報として、パケットキャプチャデータを取得し、
前記解析工程は、前記プレマスターシークレットおよび前記パケットキャプチャデータから前記ブラウザと前記ウェブサイトの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得工程は、前記パケットキャプチャデータに対するタイムスタンプを取得し、
前記保存工程は、前記解析結果、前記パケットキャプチャデータ、及び前記タイムスタンプを紐づけて保存する、付記4記載のウェブサイト保存支援方法。
(付記6)
再構築工程を含み、
前記再構築工程は、前記パケット情報および前記鍵情報に基づいて前記ウェブサイトを閲覧可能に再構築する、付記4または5記載のウェブサイト保存支援方法。
(付記7)
アクセス用情報取得手順、ブラウザ起動手順、鍵情報取得手順、パケット情報取得手順、解析手順、タイムスタンプ取得手順、及び保存手順を含み、
前記アクセス用情報取得手順は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動手順は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得手順は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得手順は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析手順は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得手順は、前記パケット情報に対するタイムスタンプを取得し、
前記保存手順は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存し、
前記各手順を、コンピュータに実行させるためのプログラム。
(付記8)
前記アクセス用情報取得手順は、前記アクセス用情報として、URLを取得し、
前記ブラウザ起動手順は、SSLKEYLOGFILEを出力するモードでブラウザを起動し、前記ブラウザに前記URLを送信し、前記URLで特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得手順は、前記鍵情報として、前記ブラウザからプレマスターシークレットを取得し、
前記パケット情報取得手順は、前記パケット情報として、パケットキャプチャデータを取得し、
前記解析手順は、前記プレマスターシークレットおよび前記パケットキャプチャデータから前記ブラウザと前記ウェブサイトの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得手順は、前記パケットキャプチャデータに対するタイムスタンプを取得し、
前記保存手順は、前記解析結果、前記パケットキャプチャデータ、及び前記タイムスタンプを紐づけて保存する、付記7記載のプログラム。
(付記9)
再構築手順を含み、
前記再構築手順は、前記パケット情報および前記鍵情報に基づいて前記ウェブサイトを閲覧可能に再構築する、付記7または8記載のプログラム。
(付記10)
アクセス用情報取得手順、ブラウザ起動手順、鍵情報取得手順、パケット情報取得手順、解析手順、タイムスタンプ取得手順、及び保存手順を含み、
前記アクセス用情報取得手順は、保存対象のウェブサイトを特定するアクセス用情報を取得し、
前記ブラウザ起動手順は、環境変数出力モードでブラウザを起動し、前記ブラウザに前記アクセス用情報を送信し、前記アクセス用情報で特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得手順は、前記ブラウザから、前記ブラウザと前記ウェブサイトとが通信を行う際に使用される鍵情報を取得し、
前記パケット情報取得手順は、前記ブラウザと前記ウェブサイトとの通信時のパケット情報を取得し、
前記解析手順は、前記パケット情報および前記鍵情報から、前記ブラウザと前記ウェブサイトとの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得手順は、前記パケット情報に対するタイムスタンプを取得し、
前記保存手順は、前記解析結果、前記パケット情報、及び前記タイムスタンプを紐づけて保存し、
前記各手順を、コンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
(付記11)
前記アクセス用情報取得手順は、前記アクセス用情報として、URLを取得し、
前記ブラウザ起動手順は、SSLKEYLOGFILEを出力するモードでブラウザを起動し、前記ブラウザに前記URLを送信し、前記URLで特定されるウェブサイトを対象にSSLハンドシェイクを実行させ、
前記鍵情報取得手順は、前記鍵情報として、前記ブラウザからプレマスターシークレットを取得し、
前記パケット情報取得手順は、前記パケット情報として、パケットキャプチャデータを取得し、
前記解析手順は、前記プレマスターシークレットおよび前記パケットキャプチャデータから前記ブラウザと前記ウェブサイトの通信内容を解析した解析データを生成し、
前記タイムスタンプ取得手順は、前記パケットキャプチャデータに対するタイムスタンプを取得し、
前記保存手順は、前記解析結果、前記パケットキャプチャデータ、及び前記タイムスタンプを紐づけて保存する、付記10記載の記録媒体。
(付記12)
再構築手順を含み、
前記再構築手順は、前記パケット情報および前記鍵情報に基づいて前記ウェブサイトを閲覧可能に再構築する、付記10または11記載の記録媒体。
【産業上の利用可能性】
【0046】
本発明によれば、サーバ証明書を含む前記解析データと、前記パケット情報と、前記タイムスタンプとを紐づけて保存できる。このため、本発明は、ウェブサイト上の情報の存在の証明が必要な分野において好適に使用でき、特に、例えばサイバー犯罪等の捜査、ウェブ上でのいじめ、誹謗中傷、著作権侵害の証明、著作権者による著作物の存在証明等において広く有用である。
【符号の説明】
【0047】
10 ウェブサイト保存支援装置
11 アクセス情報取得部
12 ブラウザ起動部
13 鍵情報取得部
14 パケット情報取得部
15 解析部
16 タイムスタンプ取得部
17 保存部
18 再構築部
101 CPU
102 メモリ
103 バス
104 記憶装置
105 入力装置
106 出力装置
107 通信デバイス