JP2008084117A - リクエスト送信制御プログラム,装置,および方法 - Google Patents

リクエスト送信制御プログラム,装置,および方法 Download PDF

Info

Publication number
JP2008084117A
JP2008084117A JP2006264863A JP2006264863A JP2008084117A JP 2008084117 A JP2008084117 A JP 2008084117A JP 2006264863 A JP2006264863 A JP 2006264863A JP 2006264863 A JP2006264863 A JP 2006264863A JP 2008084117 A JP2008084117 A JP 2008084117A
Authority
JP
Japan
Prior art keywords
request
partition
request transmission
access destination
transmission
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.)
Withdrawn
Application number
JP2006264863A
Other languages
English (en)
Inventor
Ikuya Morikawa
郁也 森川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006264863A priority Critical patent/JP2008084117A/ja
Priority to US11/790,895 priority patent/US20080082602A1/en
Publication of JP2008084117A publication Critical patent/JP2008084117A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】 ユーザに脅威を与えうる強制リクエスト送信を制限するクライアント装置を提供する。
【解決手段】 ウィンドウ選択部213は,リクエスト送信があったときに,パーティションテーブル201をもとにリクエストを扱うウィンドウを選択し,ウィンドウ作成部217は,該当するウィンドウがなければパーティショニング設定テーブル203をもとにウィンドウを作成する。リクエスト検査部211は,リクエスト送信のアクセス先のウィンドウのパーティションが,リクエストを要求したパーティションに属さないアクセス先から得たレスポンスである場合に,そのリクエスト送信を拒否,またはユーザに通知する。または,リクエスト編集部219は,そのリクエスト送信の内容を変更して送信する。
【選択図】 図3

Description

本発明は,WWW(World Wide Web)のブラウザ(Webブラウザ)の処理中に,アクセス先となるサイトのURL(Uniform Resource Locator)や期間によってページ群を区分けし,区分外からの要求によるリクエストの送信を制限する機能に関する。
近年,Webの技術にもとづくクライアント・サーバ・アプリケーション,すなわちWebアプリケーションが広く利用されている。これは,HTTP(Hypertext Transfer Protocol)プロトコルによりネットワーク上で通信を行うアプリケーションであって,ユーザに提示される画面内容(ページ)は主にHTML(Hypertext Markup Language)形式で記述される。
かつてのWebは,クライアントからみて,単純に発信された情報を取得するのが主であった。しかし,最近では掲示板やウェブログ(ブログ)といった情報を掲載する処理や,ネットワークに接続された機器の管理,商品やサービスの購入といった商取引など,多くのアプリケーションがWeb技術で実現されており,社会にも浸透している。
サーバはWebサイトとも呼ばれ,クライアントにはWebブラウザが主に用いられる。代表的なWebブラウザとして,Microsoft社のInternet ExplorerやMozilla FoundationのFirefoxなどがある。
高度なWebアプリケーションの多くは,特定のユーザのみに情報を提供したり操作を許可したりすることが求められる。このため,SSL(Secure Sockets Layer)あるいはTLS(Transport Layer Security)による保護を行うHTTPS(Hypertext Transfer Protocol over SSL)プロトコルや,HTTP認証といったセキュリティ機能が用意されている。
しかし,HTTPプロトコルはステートレスであり,プロトコル自体はリクエストとレスポンスの複数組の間の関連付けを行う機能を持たないため,クッキー(Cookie)と呼ばれる機構が設けられている。クッキーは,サーバが指定したデータをWebブラウザが暗黙的に保持しておき,リクエストのたびにその値を付けて送信するという技術である。これにより,Webサーバは同じWebブラウザとやり取りしたリクエストやレスポンスの組を識別することができる。
一方で,複雑な処理を実現し,またユーザに高度な外観や機能を提供するために,Webブラウザには,ブラウザ自身の振舞いをWebサーバ側で用意される指定によって制御できる機能が設けられている。
その一つであるクライアント側スクリプトは,HTMLページ内またはページから参照されるファイル内に記述できる簡易なプログラム言語であり,Webブラウザの振舞いをある程度制御することができる。クライアント側スクリプトの代表格として,JavaScriptがあり,他にその亜種や類似のものとして,ECMAScript,JScript,VBScriptなどがある。ここでは,それら全てを代表してJavaScriptと呼称する。
また,JavaScriptを使用しないHTTPとHTMLだけでも,HTMLページ内への画像やその他のオブジェクトの埋め込み,HTTPによるリダイレクト,HTMLのMETAタグによる自動更新などの機能を備えている。これらも,Webブラウザの振舞いをある程度制御することができる。
このようなWebブラウザを制御する機能は,Webアプリケーション提供者にとって都合が良い。一方で,Webアプリケーションのセキュリティ機能をかいくぐってセキュリティ侵害を起こそうとする攻撃者にとっても好都合である。つまり,攻撃者は,自身に都合のよいHTMLページを任意のサイトに用意し,ユーザにそのページを開かせることによって,Webブラウザを操作して攻撃を行うことが可能となる。このような攻撃に対処するため,Webブラウザには,Same Origin Policy(SOP)やゾーン分けといった保護機構が設けられるようになった。
保護機構の1つであるSOPは,JavaScriptの機能を制約するものである。これにより,JavaScriptは,自身が関連付けられたページと取得元のサーバ(これをoriginと呼ぶ)が同じであるページのオブジェクトツリーしか参照や操作することができなくなる。このような制約によって,異なるサーバから得たHTTPレスポンスの含む情報を互いに相手側のJavaScriptから守ることができる。なお,SOPは,JavaScript機能を提供するほぼ全てのWebブラウザに用意されている。
また,別の保護機構であるゾーン分けは,Webブラウザにおいて,ユーザの指示に応じてWebサーバを異なるゾーンに分類し,ゾーンごとにJavaScriptなどの全機能や一部機能を制限するというものである。Internet Explorerでは,「セキュリティゾーン」という名前で提供されており,「インターネット」,「イントラネット」,「信頼済みサイト」,「制限付きサイト」,および「マイコンピュータ」ゾーンの複数のゾーンに分類できる。
また,Firefox(少なくとも現行の1.5版まで)には,明示的なゾーン分けの設定はないが,「サイトポリシー」と呼ばれるゾーン分け機能がすでに用意され,「Policy Manager Extension」という拡張機能を追加することによって設定が可能になっている。この拡張機能によって,最小1サイト単位で任意のゾーンを作ることができる。いずれも,JavaScriptなどの機能を制限するように設定できるという点が同じである。
しかし,前記のような保護機構を備えていても,Webブラウザの保護は充分でない。それは,攻撃者は,リクエストを異なるサイトへ送信するよう仕向けることができるからである。攻撃者があるサイトに設けたHTMLページによって,Webブラウザに対して別のサイトへリクエストを送信するよう指示できるということは,具体的には次のようなことを意味する。
まず,リクエストに付随するクエリやフォームのパラメータの値は,攻撃者が自由に指定できる(ただし,明示的に指定する必要があるため,攻撃者がその値を知っている必要がある)。次に,リクエストに付随するクッキーについては,攻撃者は指定することも知ることもできないが,Webブラウザが記憶している値が自動的に送信される。つまり,当該ユーザのみが知るクッキーを攻撃者の指示でブラウザが送信してしまう。結果として,攻撃者は,ユーザのみが知るクッキーを知り得ることになる。
このような強制的リクエスト送信により,様々な脅威が考えられるが,もっとも典型的なのがクロスサイトリクエスト偽造(cross−site request forgery; CSRF)と呼ばれる攻撃の脅威である。CSRFでは,Webブラウザが,攻撃者の指示によりアプリケーション上の重要な処理を求めるリクエストを送信してしまう。重要な処理とは,例えばメッセージの書き込み/削除,商品購入やサービスの申し込みなどである。CSRFによって,ユーザ本人の意思と無関係にこれらの重要な処理が要求されてしまう危険がある。特にクッキーによってユーザを認識している場合には,深刻な被害をもたらしうる。
SOPは,異なるサイトから得たレスポンスの参照を禁止するだけであり,リクエストを異なるサイトへ送信すること自体を禁止できない。また,ゾーン分けは,JavaScriptなどのブラウザ制御機能の一部または全部を制限するため,適切に設定すれば,ユーザが望まないリクエストの送信を防ぐことができる。しかし,今日のWeb技術適用の実情において,大多数のサイトに対してブラウザ制御機能を制限することは利便性を損なうため,非現実的である。
さらに,ユーザ不注意や攻撃者による巧みな誘導によっても,ユーザが意図しないリクエストが送信されるおそれがある。つまり,例えば,ハイパーリンクを辿ること,フォームを送信することなどのユーザの操作によって発生するリクエストも,ユーザがそのリクエストの及ぼす影響を充分に理解して行われない限り,ユーザが害を被ることになるからである。
このような脅威的な結果を生じうるリクエスト送信を,まとめて「強制リクエスト送信」と呼ぶ。「強制リクエスト送信」に対して以下の対策技術が存在する。
(1)従来技術1:ブラウザの諸機能
従来のWebブラウザの一部には,リクエストの送信も制限する機能が存在する。第一に,HTTPSのサイト(SSLもしくはTLSにより保護されたサイト)は特別に扱われ,異なるHTTPSサイト間やHTTPSと非HTTPSのサイト間をまたがるリクエストの送信を拒否したり警告したりする機能が多くのブラウザに用意されている。これにより,重要なサイトがHTTPSのみで提供されている場合には,強制リクエスト送信の脅威は緩和されているといえる。
また,Internet Explorerには,フォームの送信がサーバによって別のサーバへリダイレクトされたときに警告する機能もある。
(2)従来技術2:Firefoxの拡張機能のNoGET機能
FirefoxにNoGETと呼ばれる拡張機能を追加すると,ハイパーリンクを辿る際にGETメソッドのリクエストからクエリ・パラメータを削除する機能を持たせることができる。これは,部分的に強制リクエスト送信の脅威を緩和する。
(3)従来技術3:Microsoft社のアクセス制御技術
Webブラウザに限定された技術ではないが,OS上で稼動するプログラム一般を対象としたアクセス制御技術として,特許文献1および特許文献2の技術がある。特許文献1は,プログラムの実行単位であるプロセスごとにアクセス制御を行い,特定のプロセスが特定のサイトと通信することを禁止する技術である。また,特許文献2は,プログラムのインストール単位で同様のアクセス制御を行う技術である。特許文献1は起動されるプロセスごと,特許文献2はインストールされたプログラムごとに,適切なアクセス制御の設定を行うことによって,強制リクエスト送信を防止することができる。
特表2002−517852号公報(US09/097,218) 特開2004−310774号公報(US10/405,972)
しかし,このような従来技術は,強制リクエスト送信の問題を部分的にしか解決することができない。
従来技術1のブラウザの諸機能として,一部にリクエストの送信を制限する機能が備えられている。しかし,現実に実装される処理機能では,全ての越境リクエストを制限することができず不完全である。例えば,Internet Explorerでは,フォームの送信がサーバによって別のサーバへリダイレクトされたときに警告する機能を備えるが,これは強制リクエスト送信の脅威のごく一部を防ぐに過ぎない。
また,従来技術2のFirefoxの拡張機能であるNoGETでは,GETメソッドのリクエストからクエリ・パラメータを削除する場合しか対象にならないため,攻撃者は容易にこれを回避することができる。すなわち,GET以外のリクエストによる脅威や,クエリ・パラメータによらない脅威は緩和されない。
また,従来技術3のアクセス制御技術のうち,特許文献1の技術は起動されるプロセスごと,または特許文献2はインストールされたプログラムごとに,適切なアクセス制御の設定を行うため,Webブラウザ特有の振舞いに連動したきめ細かな制御を行うことができない。
特許文献1および2では,事前に,OSレベルでプロセスを起動する操作を行う時やブラウザのインストール時に保護の開始を決定しなければならないため,例えば,特定のサイトへのリンクを辿る,特定のレスポンスを受け取る,といったイベントに呼応して強制リクエスト送信からの保護を始めることはできない。
また,HTMLページのデータやクッキー,認証情報といった情報資源の分離に関しても,特許文献1では,プロセスごとに割り当てられる短期記憶領域に格納される情報は分離されるが,ファイルやレジストリといった長期記憶領域に格納される情報(不揮発性のクッキー,キャッシュなどの情報)は分離されずに共有されてしまう。また,特許文献2では,短期記憶領域および長期記憶領域のどちらの情報も分離されるが,それは本質的に複数のWebブラウザを用意するのと同じ手間が必要である。
このように,Webアプリケーションには強制リクエスト送信の脅威が存在する。しかし,従来の対策技術では対処が不充分であり,脅威を一部しか回避あるいは緩和できない,現実の利用において著しい不便を強いられる,といった問題がある。
本発明の目的は,ユーザに脅威を与えるおそれがある強制リクエスト送信を制限することができるクライアント装置を提供することである。
本発明は,アクセス先へのリクエスト送信を制御するプログラム,装置および方法であって,アクセス先,すなわちサーバあるいはその下位の資源を,所定の条件によって1つ以上のパーティションに区分し,任意のパーティションについて,そのパーティションに属さないアクセス先から得たHTTPレスポンスおよびそのボディコンテントによりそのパーティションに属するアクセス先へのリクエストの送信が指示されたとき,このリクエストを拒否する,ユーザに通知する,ユーザに判断を促す,リクエストに含まれる情報の一部を変更するなどの処理の1つ以上を実行する機能を備えることを特徴とする。
「パーティション」とは,所定の条件にもとづいて隔離されたアクセス先の区分のことをいい,アクセス先を区分に隔離することを「パーティショニング」という。パーティショニングは,HTTPS,HTTP認証,フォーム内のパスワードフィールドの有無,Cookieヘッダの送信,Set−Cookieヘッダの受信,Set−Cookieヘッダの特別な属性の有無などに連動して行われる。
これによって,アクセス先の区分の境界を越えるリクエストの送信を制限することができる。
また,本発明は,前記のクライアント装置において,アクセス先に関連付けられた情報(クッキー,認証情報など)を対応するパーティションごとに隔離して保持する機能を備える。これにより,アクセス先ごとに,ページデータ,クッキー,認証情報などがパーティションごとに隔離されるため,異なるパーティション間で相互のアクセスを制限することができる。
さらに,本発明は,対応するパーティションに関連付けられた情報のリクエスト送信が指示されたときに,当該情報を含まないようにリクエストを編集して送信する機能を備えることを特徴とする。これにより,ユーザが害を被る可能性がある情報を排除したリクエスト送信を行うことができる。
本発明は以下のように動作する。
典型的にはWebブラウザとして実現される本発明のクライアント装置は,アクセス先を所定の条件によって1つ以上のパーティションに区分する処理(パーティショニング)を行う。パーティショニングの条件は,アクセス先URL(プロトコル名,ホスト名,ポート番号,パスからなる情報)の全部または一部の一致によるのが基本であるが,日時などによる時間的な期限,特定のクッキーの存在や認証情報の存在も条件に含めてもよい。
そして,あるパーティションに属するアクセス先へリクエスト送信が要求された場合に,その要求指示元が当該パーティションに属さないアクセス先から得たレスポンスであるならば,そのリクエストの送信を制限する。制限として,具体的には,単にリクエスト送信を拒否してもよい。または,ユーザに情報を示してユーザの判断を仰いだり,リクエストの一部を変更してから送信したりしてもよい。
さらに,クッキーや認証情報といったアクセス先に関連付けて使用される情報を上記のパーティションごとに保持する。そして,上記のパーティションを越えるリクエスト送信が要求された場合に,当該パーティションに関連付けられた情報を含まないようにリクエストを編集し,編集したリクエストを送信する。
また,パーティショニングの条件を事前に設定しておく手間を省くため,重要な処理を行うWebサイトの特徴的な傾向を見いだし,動的に条件を決定してパーティションを作成する。例えば,サーバからセッションクッキーが発行されたときに,それを契機として,そのクッキーの有効範囲(アクセス先および期限)と一致する条件を持ったパーティションを作成する。
または,同様に,WebサーバからBasic認証やDigest認証といったHTTP認証が要求された場合に,それを契機として,その認証の範囲(レルムと呼ばれる)と一致する条件を持ったパーティションを作成する。
または,認証目的として多用されるパスワードフィールドを含むレスポンスが得られた場合に,パスワードフィールドがユーザに使用されて,パスワードフィールドを含むフォームが送信されるときなどに,該当するレスポンスを得たアクセス先あるいは送信しようとしているリクエストのアクセス先に応じた条件を持ったパーティションを作成する。
パーティションにもとづいてリクエスト送信の制約,パーティショニングの条件の設定は,煩雑であったり困難であったりするため,上記の処理によって,利便性をより高めることができる。
本発明のクライアント装置は,コンピュータにインストールされ実行されるソフトウェアプログラムによって実現することができる。そのプログラムは,コンピュータが読み取り可能な可搬媒体メモリ,半導体メモリ,ハードディスクなどの適当な記録媒体に格納することができ,これらの記録媒体に記録して提供され,または,通信インタフェースを介して種々の通信網を利用した送受信により提供される。
本発明によれば,所定の条件によって区分けされたパーティション境界をまたがるリクエストは,その送信前に制限され,事前設定やユーザの判断に従って,送信が拒否されたり,別のパーティション内で送信されたりする。これにより,パーティション外からパーティション内へのリクエスト要求,例えば,「信頼性のないサイト」からの要求にもとづいて「信頼性のあるサイト」への重要なリクエスト送信を防止することができる。
また,信用しているサイトに対して使用しているクッキーやHTTP認証情報が使われないため,より安全にリクエストを送信することができる。
さらに,事前にパーティショニングの設定をしていない場合でも,重要なサイトへのアクセスの予兆,すなわち,あるHTTPSサイトへのアクセス開始,ある種のクッキーの送受信,HTTP認証情報の送信,パスワードフィールドの値の送信といった事象があったときに,自動的または半自動的にパーティショニングを行うことで,利便性をより高めることができる。
本発明の一実施形態を,従来の一般的なWebブラウザと同様の,汎用的なコンピュータとオペレーティングシステム(OS)上で動作するアプリケーションプログラムとして説明する。
図1に,本発明が実施されるコンピュータの構成例を示す。
図1のコンピュータ10は,演算装置11,揮発性の記憶域である物理メモリ12,不揮発性の記憶域であるディスク13,キーボード,マウス,ビデオディスプレイなどの入出力装置14,ネットワークNとの入出力装置15などを備えるものとする。コンピュータ10上ではオペレーティングシステム(OS)と各種アプリケーションプログラムが動作する。OSは,前記の各種装置の機能を,プロセスの実行制御(スケジューリング),ヒープなどの短期記憶,ファイルやレジストリなどの長期記憶,TCP/IPによる通信機能,ウィンドウシステムにもとづくグラフィカルユーザインタフェース(GUI)などに対するシステムコールやAPIの形でアプリケーションプログラムに提供する。なお,本発明の実施形態は,上記に構成に限定されるものではなく,グラフィカルでないユーザインタフェースを持つコンピュータやブラウザ専用の簡易端末装置などとして実現されても構わない。
図2に,Webブラウザの一般的な機能の構成および主なデータを示す。
Webブラウザ100の主要な機能は,HTTP/HTTPS通信機能100a,HTML文書解析・管理機能100b,レンダリング機能100c,GUI制御機能100dであり,これらの機能が,OSの提供する通信API150やGUI API140と連携し,HTTPプロトコルによるサーバとの通信とその主な内容物であるHTML文書の解釈・管理・画面表示,およびユーザとの対話的操作を実現する。多くの場合,Webブラウザ100は,ウィンドウやタブと呼ばれる領域(以下,単にウィンドウと呼ぶ)を用いて,同時に複数のWebページを表示することができる。さらに,一般的に,HTTP認証機能100e,キャッシュ機能100f,スクリプト制御機能100g,クッキー管理機能100hなども備えている。
ヒープメモリなどの短期記憶域120には,Webブラウザ100が動作している間だけ保持されるデータが保存される。このような短期記憶域120のデータ(短期記憶データ)には,HTML文書の解釈結果であるDOM(Document Object Model)データ,ユーザが入力したユーザIDとパスワード(または,入力されたデータからの生成物)を保持するHTTP認証データ,サーバから受け取ったクッキーの情報を保持する揮発性クッキーデータが含まれる。
ファイルやレジストリなどの長期記憶域130には,Webブラウザ100が動作を中止しても保持され続けるデータが保存される。このような長期記憶域130のデータ(長期記憶データ)には,キャッシュデータや不揮発性クッキーデータが含まれる。
図3に,本発明のWebブラウザ200の機能ブロック構成とデータとを示す。ただし,図3の構成では,図2に示すWebブラウザ100と同じ機能は略記されている。
Webブラウザ200は,パーティションテーブル201,パーティショニング設定テーブル203,ウィンドウテーブル205,パーティショニング管理部210を備える。
パーティションテーブル201およびパーティショニング設定テーブル203は,長期記憶域230に備えられる。ウィンドウテーブル205は,短期記憶域220に備えられる。
パーティショニング管理部210は,リクエスト検査部211,ウィンドウ選択部213,パーティション作成部215,ウィンドウ作成部217を備える。
なお,前述した本発明のリクエスト判定手段は,リクエスト検査部211によって実施される。パーティショニング手段は,ウィンドウ選択部213,パーティション作成部215,およびウィンドウ作成部217によって実施される。リクエスト編集手段は,リクエスト編集部219によって実現される。
Webブラウザ200は,図2に示す一般的なWebブラウザ100の機能やデータ構造を基準として同等の処理機能を有するが,以下の特徴を持つ点が従来のものと異なる。
(a)複数のパーティションを持つこと。
(b)ウィンドウごとに,1つのパーティションが対応付けられること。
(c)パーティションごとに,短期記憶データ(DOMデータ,認証情報,揮発性クッキーなど)と長期記憶データ(不揮発性クッキー,キャッシュなど)が管理されること。
(d)各ウィンドウ内で行われる処理は,そのウィンドウに対応するパーティションに割り当てられた短期記憶データおよび長期記憶データを用いて行われること。
(e)リクエスト送信イベント発生時に,イベント発生元のウィンドウに応じたパーティション境界検査が行われ,パーティション間を越境しようとするリクエストは制限されること。
Webブラウザ200のパーティションテーブル201によって上記特徴(a)が,ウィンドウテーブル205によって上記特徴(b)が,パーティションP0,P1,…,ごとに区分けして管理された短期記憶域220および長期記憶域230によって上記特徴(c)が,パーティショニング管理部210によって上記特徴(d)および(e)が,それぞれ実現されている。
次に,本発明のWebブラウザ200のデータ定義について説明する。
本実施の形態において,「パーティション」は,何らかの条件にもとづくWebページの区分である。パーティションの区分の条件は,基本的に,そのWebページを取得するためのリクエストが持つ特徴に関して定義される。
Pは,ある時点で,Webブラウザ200上に存在する全てのパーティションpの集合である。
P={p1,p2,…,pn}
ここで,p1,p2,…,pnは,各パーティションを一意に識別するパーティション識別子である。nは,その時点で存在するパーティション数である。n=0でもよく,その場合にPは空集合である。
P′は,Pに特別なパーティション識別子p0を加えた集合である。
P′={p0}∪P
p0は,どのパーティションにも含まれないことを意味する。P′は,常にPに追従して変化する集合である。例えば,集合Pに要素pが加われば,集合P′にも自動的にpが加わったものとみなす。
Wは,ある時点で,Webブラウザ200上に存在する全てのウィンドウwの集合である。
W={w1,w2,…,wm}
ここで,w1,w2,…,wmは,各ウィンドウを一意に識別するウィンドウ識別子である。mは,その時点でのウィンドウ数である。初期状態などではm=0でもよく,その場合にWは空集合である。
W′は,Wに特別なウィンドウ識別子w0を加えた集合である。
W′={w0}∪W
w0は,どのウィンドウにも属さないことを意味する。例えば,OSや他のアプリケーションなど,Webブラウザ200のウィンドウではないところからリクエスト送信が要求された場合などに用いられる。W′は,常にWに追従して変化する集合である。例えば,集合Wに要素wが加われば,集合W′にも自動的にwが加わったものとみなす。
各ウィンドウwは,必ず1つのパーティション識別子pと対応付けられる。すなわち,写像f:W→P′が存在するものとする。
さらに,これをW0も扱えるように拡張した写像f′:W′→P′が定義される。ただし,常に,f′(w0)=p0であり,これは,どのウィンドウでもない場合は,どのパーティションにも属さないと扱うことを意味する。
任意のp∈P′には,パーティションpに所属するための条件cond(p)が定義されている。また,新たなパーティションを作り出すための作成条件newcondも定義されている。
なお,ウィンドウの集合Wは,Webブラウザ200の従来の機能によって当然に保持されるべきものであるので,保持されなくてもよい。
次に,Webブラウザ200の構成要素を説明する。
パーティションテーブル201は,パーティションの集合Pと条件cond(p)とを示す情報を記憶する記憶部である。
図4に,パーティションテーブル201の例を示す。パーティションテーブル201は,各パーティションを1つの列とし,各列に,パーティション識別子,有効期限,条件,短期記憶域内格納位置,長期記憶域内格納位置を保持する。
パーティション識別子は,各パーティションを一意に識別できる値であれば,どのような値でもよい。
有効期限は,そのパーティションの有効期限である。日時を具体的に指定する値,”volatile(揮発性;Webブラウザ200が処理を終了するまでの間だけ有効)”,”n/a(not applicable;期限なし)”のいずれかの値をとる。
短期記憶域内格納位置は,そのパーティションに対応する短期記憶域220内のデータ(揮発性クッキーなど)の位置を指定するものである。図4に示すように,短期記憶域内格納位置は,例えば,ある特定のメモリアドレスからのオフセット(差分値)の16進数を用いて表わされる。
長期記憶域内格納位置は,このパーティションに対応する長期記憶域230内のデータ(不揮発性クッキーなど)の位置を指定するものである。例えば,図5に示すようなディスクのファイルシステムにおいて,所定の基準ディレクトリ下にパーティション別のサブディレクトリを設けて長期記憶データを記憶する場合に,図4に示すように,長期記憶域内格納位置は,ある特定のディレクトリパスからの相対パスを用いて表される。
パーティションテーブル201の条件の項目は,条件cond(p)を指定するものである。図4では,条件として,基本的な条件であるURLに対する条件と,補足的な条件である連動クッキーの条件および連動HTTP認証の条件が保持される。
URLに対する条件は,プロトコル名,ホスト名,ポート番号,パスの4項目からなる。項目それぞれが,URLの対応する部分と照合される。条件の各項目において,以下のような値が設定される。なお,特殊な値”*”はその項目に該当する部分は,どのような値でも条件を満たすとみなすワイルドカードを意味する。
プロトコル名:”http”,”https”,または”*”,
ホスト名:完全限定ホスト名またはその一部をワイルドカード”*”で置き換えたもの,または”*”,
ポート番号:0から65535までの範囲の整数,”*”,または特殊な値”default(URLにポート番号指定が存在してはならないという条件を意味する)”,
パス:”/”で始まる絶対パス名,またはその一部をワイルドカード”*”で置き換えたもの,または”*”。
パーティションテーブル201の連動クッキーの項目は,後述するクッキー連動機能によるパーティション作成処理で使用するクッキーを指定するものである。この項目には,”n/a(この条件は使用しないことを意味する)”,または,以下に述べる具体的なクッキーの条件が記憶される。
クッキーの条件は,クッキー名と,その後ろに0個以上のオプションのセミコロンで区切られたリストが記載される。
<クッキー名>[;<オプション>[;<オプション>[...]]]
クッキー名は,任意のクッキーの名前である。オプションは,
<オプション名>=<オプション値>
の形をとる。有効なオプション名として,以下のようなものがある。
domain:クッキーの適用ドメインがあればその値をとる,
port:クッキーの適用ポート番号があればその値をとる,
path:クッキーの適用パスがあればその値をとる,
secure:クッキーにセキュア指定があれば指定し,”true”を値とする。
連動クッキーの項目の値は,たとえば以下の値をとる。
JSESSIONID,
ASPSESSIONID;secure=true,
PHPSESSID;domain=shop.example.jp;path=/bookstore/
この項目の条件は,リクエストが該当するクッキーを送信しようとしているときに満たされるものとする。
パーティションテーブル201の連動HTTP認証の項目は,後述するHTTP認証連動機能によるパーティション作成処理で使用するHTTP認証の仕様が指定される。この項目には,”n/a(この条件を使用しないことを意味する)”,または,以下のセミコロン区切りのリストが設定される。
”HTTP認証の種類(”basic”または”digest”);認証領域名(レルム名)(引用符で囲まれた任意の文字列);ユーザ名(任意の文字列);認証領域パス(”/”で始まる絶対パス,省略可)”
認証領域パスを省略した場合には,URL条件のパス項目と同じとみなされる。この項目の値は,たとえば以下のようなリストになる。
basic;“Authorized users only”;yamada
digest;“Home directory”;suzuki;/home/suzuki/
この項目の条件は,リクエストが該当するHTTP認証子を送信しようとしているときに満たされるものとする。
なお,パーティションテーブル201に関して,パーティショニング管理部210は,Webブラウザ200の起動時に毎回チェックを行い,以下のいずれかに当てはまるパーティションの列を削除する。
・有効期限が,”volatile”であるか,または,具体的に指定された日時が現在時刻より古い,
・連動クッキーの項目に具体的なクッキーの条件が設定されていて,該当するクッキーがWebブラウザ200に記憶されていないか,または有効期限切れである。
パーティショニング設定テーブル203は,作成条件newcondを示す情報を記憶する記憶部である。
図6に,パーティショニング設定テーブル203の例を示す。パーティショニング設定テーブル203には,パーティション作成部215が備える4つの機能をそれぞれ有効にするかどうかの設定が格納される。
4つの機能とは,HTTPS連動機能,クッキー連動機能,HTTP認証連動機能,パスワードフィールド連動機能である。これらの機能に対応する項目は,「有効」または「無効」のいずれかの値をとる。さらに,それぞれの機能の実行に際して必要または有用な副次的な設定情報も含まれてよい。本実施例では,副次的な設定情報として,クッキー連動機能に関連したクッキー名パターンが設定される。
図6に示すパーティショニング設定テーブル203では,クッキー名パターンの項目は,以下のような正規表現で指定される。
”^(JSESSIONID|ASPSESSIONID|PHPSESSID|CGISESSID)$”
この指定は,クッキーの名前が括弧内の縦棒記号(”|”)で区切られた4つの指定のいずれかに完全に一致する場合を意味する。
他の指定方法としては,例えば,
”(?i)sess(ion)?id$”
が挙げられる。この指定は,クッキー名が,”sessid”または”sessionid”で終わることを意味する。なお,”(?i)”は,大文字・小文字の違いを無視する(case−insensitive)オプションを有効にすることを正規表現の中で指定するものである。
このようなパーティショニング設定テーブル203の設定データのもと,作成条件newcondが満たされるのは,パーティション作成部215のいずれかの連動機能が有効であって,かつ,その機能ごとの条件にリクエストが該当する場合である。
ウィンドウテーブル205は,ウィンドウの集合Wと写像f,すなわち各ウィンドウwとパーティションpとの対応関係を示す情報を記憶する記憶部である。
図7に,ウィンドウテーブル205の例を示す。ウィンドウテーブル205は,各列が各ウィンドウに対応する。列はウィンドウ識別子とパーティション識別子からなる。
ウィンドウ識別子は,各ウィンドウを一意に識別できる値である。一般的には,システムが提供する値(ウィンドウハンドルなど)を用いることができる。
パーティション識別子は,パーティションテーブルに記載されたパーティション識別子のいずれかである。
図8に示すように,Webブラウザ200で複数のウィンドウw1〜w4,…,が表示されているとする。このときに,パーティションテーブル201の設定にもとづいて,ウィンドウw1,w2は,アクセス先が一般的なサイトであり,パーティションp1,p2のいずれかの条件も満たさない。そこで,パーティションp0と特定され,ウィンドウテーブル205の該当する列に,”p0”が設定される。
ウィンドウw3は,プロトコル名が“https”,アクセス先のホスト名が“bank.example.com”であり,パーティションp1の条件を満たす。そこで,ウィンドウテーブル205の該当する列に”p1”が設定される。また,ウィンドウw4は,アクセス先のホスト名が“shop.example.jp”,パス名が“/bookstore/*”であり,パーティションp2の条件を満たす。同様に,ウィンドウテーブル205の該当する列に”p2”が設定される。
なお,パーティションテーブル201,ウィンドウテーブル205のデータは,パーティショニング管理部210の処理結果に応じて適宜変更される。
次に,本発明の動作原理を説明する。
Webブラウザ200は,各ウィンドウw∈Wに対して,ウィンドウwに対応するパーティションp=f(w)に割り当てられた短期記憶域220のデータおよび長期記憶域230のデータを使用し,リクエストの送信,レスポンスの解釈や保持,スクリプトの動作などを行う。よって,他のパーティションのデータは使用されない。例えば,異なるパーティションに割り当てられた短期記憶域220または長期記憶域230内に,あるサーバへ送るべきクッキーが格納されていても,Webブラウザ200は,そのクッキーを送信せず,ウィンドウw自身に割り当てられたパーティション内のクッキーだけを送信する。また,クッキーがなければ送信しない。
パーティショニング管理部210は,リクエスト検査部211,ウィンドウ選択部213,パーティション作成部215,ウィンドウ作成部217,およびリクエスト編集部219を備える。
パーティショニング管理部210は,あるウィンドウ内で,例えば,リンクがクリックされる,フォームの送信ボタンが押される,埋め込みオブジェクトやJavaScriptによりリクエスト送信が求められるなどのリクエスト送信イベントが発生すると,そのリクエスト送信前にパーティション境界検査処理を行う。
ここで,送信が求められたリクエストをr,イベント発生元のウィンドウをws∈W′とする。
図9に,リクエスト検査処理のフローチャートを示す。リクエスト検査部211は,check_requestアルゴリズムによって,以下の処理を行う。
リクエスト検査部211は,まず,ウィンドウwからリクエストrを送信するイベントが発生すると,ウィンドウ選択処理(後述)を行って,リクエストrを扱うべきウィンドウwdを決定する(ステップS1)。
ウィンドウwdの値が特殊な値(null)であるかを検査する(ステップS2)。ウィンドウwdが特殊な値(null)であれば(ステップS2のYES),リクエストrは送信すべきではないので,処理を終了する。ウィンドウwdが特殊な値(null)でなければ(ステップS2のNO),Webブラウザ200は,ウィンドウwdでリクエストrを送信し,その後も,ウィンドウwdに対応するパーティションp=f(wd)に割り当てられた短期記憶データおよび長期記憶データを使用して,リクエストrの送信,レスポンスの解釈や保持,スクリプトの動作などを行う(ステップS3)。
図10および図11に,ウィンドウ選択処理のフローチャートを示す。ウィンドウ選択部213は,select_windowアルゴリズムによって,以下の処理を行う。
ウィンドウ選択部213は,まず,元ウィンドウwsのパーティションps←f′(ws)を求める(ステップS100)。次に,リクエストrが条件cond(ps)を満たすかを検査する(ステップS101)。リクエストrが条件cond(ps)を満たす場合に(ステップS101のYES),元ウィンドウwsと同じパーティションに所属するので,ウィンドウws内でリクエストrを扱ってよい。したがってwにwsを代入し(ステップS102),wを出力し(ステップS103),処理を終了する。
リクエストrが条件cond(ps)を満たさない場合に(ステップS101のNO),各パーティションp∈Pについて,リクエストrが条件cond(p)を満たすかを検査し,リクエストrが条件cond(p)を満たすようなpを探す(ステップS104)。ただしp=psの場合は,すでに検査しているので省略してよい。条件cond(p)が満たされるpがなければ,p0をpに代入する。なお,該当するpが複数存在する可能性もあるが,何らかの手法で1つのpを選択する。例えば,優先順位を決めておくなどして,あらかじめ条件が重ならないようにしておくのが望ましい。
ここで,リクエストrが条件cond(ps)を満たさない場合とは,リクエストrによって,元のパーティションpsと異なるパーティションpに属するアクセス先へアクセスしようとしていることを意味する。ウィンドウ選択部213は,何らかの手法によって,次の選択肢のいずれかを選択する(ステップS105)。
選択肢(A):リクエストrを拒否する,
選択肢(B):リクエストrをパーティションpに受け入れる,
選択肢(C):リクエストrをパーティションp0に受け入れる(p≠p0のときのみ選択可),
選択肢(D):リクエストrを新たなパーティションに受け入れる(p=p0かつrがnewcondを満たすときのみ選択可)。
選択方法としては,事前に設定された条件に従って選択肢を決定する,例えば,ユーザに選択肢を表示し,入力された選択肢に決定するなどの処理を行う。
選択肢(A)が選択された場合には(ステップS106の(A)),wに特殊な値(null)を代入し(ステップS107),wを出力し(ステップS103),処理を終了する。これによって,リクエストrが破棄されることになる。
選択肢(B)が選択された場合には(ステップS106の(B)),受け入れ先パーティションをpとして,f′(w)=pを満たすようなウィンドウw∈Wが存在するかを調べる(ステップS108)。pを満たすようなw∈Wが存在するならば(ステップS109のYES),wを出力して(ステップS103),処理を終了する。一方,pを満たすようなw∈Wが存在しないならば(ステップS109のNO),ウィンドウ作成処理によって,選択されたパーティションpに対応する新たなウィンドウwを作成し(ステップS110),wを出力して(ステップS103),処理を終了する。これによって,リクエストrは,パーティションpで扱われることになる。
選択肢(C)が選択された場合には(ステップS106の(C)),p0をpに代入してから(ステップS111),ステップS108以降の処理を行う。これにより,リクエストrは,パーティションp0で扱われることになる。
選択肢(D)が選択された場合には(ステップS106の(D)),まずパーティション作成処理によって,新たなパーティションpを作成する(ステップS112)。次に,ウィンドウ作成処理によって,作成されたパーティションpに対応する新たなウィンドウwを作成し(ステップS110),wを出力し(ステップS103),処理を終了する。これによって,リクエストrは,新たなパーティションpで扱われることになる。
図12に,パーティション作成処理のフローチャートを示す。パーティション作成部215は,create_partitionアルゴリズムによってリクエストrに対応する新たなパーティションを作成する。ただし,事前条件として,リクエストrは作成条件newcondを満たす必要がある。
パーティション作成部215は,所定の方法により,リクエストrが所属する新たなパーティションpを作成し(ステップS120),作成したパーティションpをパーティションの集合Pに加え(ステップS121),pを出力する(ステップS122)。
具体的には,リクエストrを含むことができるような条件を持ったパーティションpnをパーティションテーブル201に追加し,対応するデータの記憶領域を,短期記憶域220と長期記憶域230に用意する。パーティションテーブル201の具体的な条件の設定方法は,リクエストr,および作成条件newcond,すなわちパーティショニング設定テーブル203に設定されている条件に依存する。
図13に,ウィンドウ作成処理のフローチャートを示す。ウィンドウ作成部217は,create_windowアルゴリズムによって,パーティションpと,新たなウィンドウwとの対応関係を作成する。
ウィンドウ作成部217は,Webブラウザ200によって,既存の処理方法で新たなウィンドウwが作成されると(ステップS130),作成されたウィンドウwをウィンドウの集合Wに加える(ステップS131)。さらに,ウィンドウwと,指定されたパーティションpとを対応付けるため,f(W)=Pとなるように写像fを変更し(ステップS132),wを出力する(ステップS133)。具体的には,ウィンドウテーブル205に新たな列を追加して,wとpとを設定する。
次に,パーティション作成処理を,より詳細に説明する。
パーティション作成部215は,HTTPS連動機能,クッキー連動機能,HTTP認証連動機能,パスワードフィールド連動機能を備え,個々の機能によって,以下のようにパーティション作成処理を行う。
なお,新たなパーティション識別子は他のパーティション識別子と一致しないように適当に決められ,長期記憶域内格納位置は,パーティション識別子にもとづく相対パス名,短期記憶域内格納位置は,新たに利用できるメモリ領域へのオフセットが適当に決められるものとする。
また,実際にパーティションを作成する前に,どのようなパーティション作成処理が行われるかについての情報をユーザに提示し,パーティション作成処理実行の可否,リクエスト送信の拒否などの判断を促すようにしてもよい。
(1)HTTPS連動機能によるパーティション作成処理
パーティション作成部215は,リクエストrのURLのプロトコル名が”https”であった場合のみ,HTTPS連動機能を適用してパーティションを新たに作成する。
以下に,作成されるパーティションの内容を示す。これは,HTTPSプロトコルのサイトへリクエストしようとした場合に,そのサイトへのリクエストを包括するパーティションが作成されることを意味する。
有効期限:”volatile”,
URLプロトコル条件:”https”,
URLホスト名条件:リクエストrの宛先ホスト名と同じ,
URLポート番号条件:リクエストrの宛先ポート番号指定と同じ,なければ”default”,
URLパス条件:”*”,またはリクエストrのリクエストURIのパスからプレフィクス部を自動的に複製して適用(ユーザの判断や事前設定に応じてどちらを使うか決める),
連動クッキー条件:”n/a”,
連動HTTP認証条件:”n/a”。
(2)クッキー連動機能によるパーティション作成処理
パーティション作成部215は,リクエストrに付随して送信されようとしているいずれかのクッキーの名前がパーティショニング設定テーブル203のクッキー名パターンに一致するときに,クッキー連動機能を適用してパーティションを新たに作成する。図6に示すパーティショニング設定テーブル203の例に即していえば,例えば,”JSESSIONID”という名前のクッキーが送られるようなリクエストrに対して適用される。
以下に,作成されるパーティションの内容を示す。これは,指定された名前のクッキーを付けてリクエストしようとした場合に,そのクッキーが送信されうるリクエストを包括するパーティションが作成されることを意味する。
有効期限:該当するクッキーの有効期限と同じ,なければ”volatile”,
URLプロトコル条件:該当するクッキーにsecure属性があれば”https”,なければ”*”,
URLホスト名条件:該当するクッキーの適用ドメインと同じ,なければリクエストrの宛先ホスト名と同じ,
URLポート番号条件:該当するクッキーの適用ポート番号と同じ,なければリクエストrの宛先ポート番号指定と同じ,それもなければ”default”,
URLパス条件:該当するクッキーの適用パスと同じ,なければ”*”,
連動クッキー条件:該当するクッキーの名前,適用ドメイン,適用ポート番号,適用パス,secure属性の有無から作成したセミコロン区切りのリスト,
連動HTTP認証条件:”n/a”。
(3)HTTP認証連動機能によるパーティション作成処理
パーティション作成部215は,リクエストrにAuthorization HTTPヘッダーフィールドが存在するときに,HTTP認証連動機能を適用してパーティションを作成する。
以下に,作成されるパーティションの内容を示す。これは,HTTP認証の認証情報を付随してリクエストを送信しようとしたら,その認証領域(レルム)の種類・範囲,およびユーザIDに対応するパーティションが作成されることを意味する。
有効期限:”volatile”,
URLプロトコル条件:リクエストrのプロトコル名と同じ,
URLホスト名条件:リクエストrの宛先ホスト名と同じ,
URLポート番号条件:リクエストrの宛先ポート番号と同じ,なければ”default”,
URLパス条件:送信しようとしているAuthorizationヘッダに対応するHTTP認証領域(レルム)のパスと同じ,
連動クッキー条件:”n/a”,
連動HTTP認証条件:対応するHTTP認証領域(レルム)および認証情報から得た,HTTP認証の種類(”basic”または”digest”),レルム名,認証情報のユーザID,レルムのパス名からなるセミコロン区切りのリスト。
(4)パスワードフィールド連動機能によるパーティション作成処理
パーティション作成部215は,リクエストrにHTMLのフォームのパスワードフィールドに由来する(クエリまたはフォームの)パラメータが含まれているときに,HTTP認証連動機能を適用してパーティションを新たに作成する。パスワードフィールドとは,type属性の値が”password”であるINPUTタグによって作られるフィールド(入力項目)である。
以下に,作成されるパーティションの内容を示す。これは,パスワードフィールドの値(多くの場合,認証のためのパスワード)を含めてリクエストを送信しようとしたら,そのサイトへのリクエストを包括するパーティションが作成されることを意味する。
有効期限:”volatile”,
URLプロトコル条件:リクエストrのプロトコル名と同じ,または”*”(ユーザの判断や事前設定に応じてどちらを使うか決める),
URLホスト名条件:リクエストrの宛先ホスト名と同じ,
URLポート番号条件:リクエストrの宛先ポート番号と同じ,なければ”default”,
URLパス条件:”*”,またはリクエストrのリクエストURIのパスからプレフィクス部を自動的に複製して適用(ユーザの判断や事前設定に応じてどちらを使うか決める),
連動クッキー条件:”n/a”,
連動HTTP認証条件:”n/a”。
(5)クッキー受け取り連動によるパーティション作成処理
以上の(1)〜(4)はリクエスト送信時に新たなパーティションを作成する方法であるが,パーティショニング管理部210は,別のタイミングでパーティションを作成することもできる。
クッキー受け取り連動によるパーティション作成処理は,図6のパーティショニング設定テーブル203のクッキー連動パーティショニングが有効で,かつ,レスポンスがSet−CookieまたはSet−Cookie2のヘッダを持ち,さらにそのヘッダで指定されたクッキーの名前が,クッキー名パターンに一致するときのみ行われる。
パーティション作成部215は,特定のレスポンスを受け取ったときに,作成条件newcondを判断して,作成が必要であれば,create_partitionアルゴリズムにもとづいて新たにパーティションを作成し,パーティションテーブル201中でレスポンスを扱う方法を記述する。作成されるパーティションの情報は,リクエスト送信時のクッキー連動機能によるパーティション作成処理の場合と同じである。
ウィンドウ作成部217は,create_windowアルゴリズムによって,新たなパーティションと,Webブラウザ200で作成されたウィンドウとを対応付ける情報を作成する。
これにより,サーバからクッキーが発行されたときに,パーティションによる隔離が可能になる。
(6)クッキー受け取りおよびサーバ指定属性の利用によるパーティション作成処理
前記(5)のパーティション作成処理において,さらに,サーバ側で重要な処理の開始を意味するセッションクッキーの発行が明示されていれば,より確実にパーティション作成処理を行うことができる。
そこで,前記のサーバからのレスポンスのSet−CookieまたはSet−Cookie2ヘッダの判断方法に加えて,さらに,同クッキーにsession=trueなる属性が指定されていたときのみ,クッキー受け取りおよびサーバ指定属性の利用によるパーティション作成処理を行う。
次に,リクエスト編集処理を説明する。
パーティショニング管理部210のリクエスト編集部219は,リクエストの送信前に,そのリクエストの内容を任意に変更することができる。リクエスト内容の変更は,事前に決められた規則に則って自動的に行ってもよいし,または,ユーザの対話的操作にる編集を行うようにしてもよい。
図14に,ユーザの対話的操作のための画面の例を示す。パーティショニング管理部210は,あるパーティションにおいて,外部からそのパーティションのアクセス先へのリクエスト送信要求があった場合に,画面300を表示して,パーティションを越境するリクエスト送信の存在をユーザに通知し,所定の処理を選択させる。例えば,画面300内に設けられた(R)ボタン選択操作で,そのリクエスト送信を拒否するか,または,同(X)ボタン選択操作で,そのパーティション外(例えばパーティションp0)でリクエストを送信するか,または,同(I)ボタン選択操作でパーティション内へリクエストの情報をインポートするかを選択させる。
さらに,画面300内に,オプション項目として「送信しない」のチェック欄を設ける。ユーザが画面300のこのチェック欄にマークを付けたときは,送信するリクエストの内容から,チェックマークが付けられた情報を削除し,内容を編集したリクエストが送信されるようにする。
パーティション境界検査処理によって,リクエスト送信の許否や,受け入れパーティションの選択を行っているが,さらに,リクエスト編集処理によって,ユーザが害を被ることにつながりそうなリクエストのパラメータが削除または変更されるので,より安全なリクエストのみを送信してアクセスを試してみることが可能になる。
図15および図16を用いて,本発明の作用を説明する。
図15に示すように,Webブラウザ200が,あるWebページxをウィンドウ400(パーティションp0)に表示しているとする。
ウィンドウ400でユーザがWebページをブラウジング中に,入力またはブックマークによってユーザが別のURL(銀行)を指定する。別のURL指定によってリクエスト送信が要求されると,パーティション境界検査処理が行われる。リクエスト要求されたリクエストのプロトコル名が“HTTPS”であれば,このリクエスト送信をもとに別のウィンドウ410が生成される。さらに,HTTPS連動のパーティション作成処理によって,パーティションp1が生成されて,ウィンドウ410が隔離される。
これによって,URL(銀行)のWebページ(銀行ページ)は新たなウィンドウ410に表示され,以降のリクエストはアクセス先が同じである限り,ウィンドウ410で扱われる。
また,図16に示すように,隔離されたウィンドウ410で扱われる短期記憶データ(ページデータ,オブジェクト,揮発性クッキー,認証情報など)と長期記憶データ(キャッシュ,不揮発性クッキー,履歴など)は,それぞれ短期記憶域220,長期記憶域230に領域が確保されて隔離される。
Web200で,ウィンドウ400とウィンドウ410とが表示されている間に,ウィンドウ400のアクセス先を要求元としたリクエストであって,ウィンドウ410のアクセス先(銀行)へのものが要求されたとする。パーティション境界検査処理によって,このリクエスト送信がパーティションを越境するものであると判断されるので,Webブラウザ200は,自動的にリクエスト送信を拒否したり,ユーザに通知して送信の可否を確認したりして,ユーザが望まないリクエスト送信を制御することができる。
また,ウィンドウ410に対応するパーティションp1の情報も,外部のウィンドウ,例えばウィンドウ400で扱われる処理から隔離される。
続いて,ウィンドウ400でWebページをブラウジング中に,ユーザがコミュニティサイトへログインするとする。ログインのリクエスト送信によって,パーティション境界検査処理が行われ,別のウィンドウ420が生成される。ログイン後にSet−Cookieを持つレスポンスを受信すると,クッキー受け取り連動のパーティション作成処理によって,パーティションp2が生成され,ウィンドウ420が隔離される。
これによって,Webページ(コミュニティサイト)は新たなウィンドウ420に表示され,以降のリクエストはアクセス先が同じである限り,ウィンドウ420で扱われる。
コミュニティサイトは,ユーザが再訪問するようなサイトであり,ウィンドウ420が閉じられた後も,ウィンドウ420に対応するパーティションp2は有効な設定として保持され,パーティションp2に対応する長期記憶域230内にクッキーなどの情報が隔離されて保存される。
ウィンドウ420が閉じられた後に,ウィンドウ400のアクセス先を要求元としたリクエストであって,ウィンドウ420のアクセス先(コミュニティサイト)へのものが要求されたとする。パーティション境界検査処理によって,このリクエスト送信がパーティションを越境するものであると判断され,Webブラウザ200は,自動的にリクエスト送信を拒否したり,ユーザに通知して送信の可否を確認したりして,ユーザが望まないリクエスト送信を制御する。
後日,ユーザがコミュニティサイトを再訪しログインすると,ウィンドウ430が作成され,パーティションp2が対応付けられ,同様に隔離される。ウィンドウ430は,パーティションp2として隔離された情報を従来通り使用することができる。
なお,本実施の形態において,パーティショニング管理部210は,事前にパーティションテーブル201に適切な情報が設定されていれば,パーティションテーブル201およびウィンドウテーブル205のみを用いたパーティション境界検査処理において,リクエストrを検査してパーティションを決定することができる。この場合には,パーティショニング設定テーブル203が使用されず,作成条件newcondが指定されていないことになるので,新たなパーティションは作成されない。
パーティショニング設定テーブル203を備えて作成条件newcondを設定することによって,ユーザが事前にパーティションテーブル201に情報を設定することなく,適当なタイミングで自動的にパーティションが作成されるため,より利便性が高くなる。
以上,本発明をその実施の形態により説明したが,本発明はその主旨の範囲において種々の変形が可能であることは当然である。
本発明の形態および実施例の特徴を列記すると以下のとおりである。
(付記1) 通信プロトコル処理においてリクエスト送信を制御するために,コンピュータを,
リクエスト送信のアクセス先を区分けする1つ以上のパーティションの所属条件として,当該パーティションに属するアクセス先の所在情報の全部または一部が設定されたパーティション情報を記憶するパーティション情報記憶手段と,
リクエスト送信が指示された場合に,前記パーティション情報にもとづいて,当該リクエスト送信のアクセス先が所属するパーティションを特定するパーティショニング手段と,
前記リクエスト送信の要求元を判定し,前記リクエスト送信が,当該リクエスト送信のアクセス先のパーティションに所属しないアクセス先から取得したレスポンスまたはボディコンテントによって要求されている場合に,当該リクエストを越境リクエストと判定するリクエスト判定手段と,
前記越境リクエストの送信を拒否するリクエスト送信制御手段とを備える制御装置
として機能させるためのリクエスト送信制御プログラム。
(付記2) 前記コンピュータを,
前記リクエスト送信制御手段は,前記越境リクエストの送信をユーザに通知し,送信許可が指示された場合に,当該越境リクエストを送信する制御装置
として機能させるための前記付記1に記載のリクエスト送信制御プログラム。
(付記3) 前記コンピュータを,
前記越境リクエストに含まれる情報の一部を変更するリクエスト編集手段を備え,
前記リクエスト送信制御手段は,前記編集された越境リクエストを送信する制御装置
として機能させるための前記付記1または前記付記2のいずれか一項に記載のリクエスト送信制御プログラム。
(付記4) 前記コンピュータを,
アクセス先に関連付けて使用される情報を,当該アクセス先が所属するパーティションに割り当てられた領域に隔離して保持するデータ記憶手段を備え,
前記リクエスト送信制御手段は,前記アクセス先に対するリクエスト送信を行う場合に,当該アクセス先が所属するパーティションの領域に隔離された情報を使用する制御装置
として機能させるための前記付記1ないし前記付記3のいずれか一項に記載のリクエスト送信制御プログラム。
(付記5) 前記コンピュータを,
アクセス先を区分するパーティショニングを実行する条件が設定されたパーティショニング設定情報を記憶するパーティショニング設定情報記憶手段と,
前記パーティショニング手段は,前記パーティショニング設定情報にもとづいて,リクエスト送信のアクセス先を区分し,当該アクセス先が前記パーティション情報に該当しない場合に前記アクセス先に対応する新たなパーティションを作成し,前記作成されたパーティションの所属条件を前記パーティション情報に追加する制御装置
として機能させるための前記付記1ないし前記付記4のいずれか一項に記載のリクエスト送信制御プログラム。
(付記6) 前記コンピュータを,
前記パーティショニング設定情報は,実行されたリクエスト送信のアクセス先からセッションクッキーが発行された場合に,当該発行を契機として,当該セッションクッキーの有効範囲と一致する所属条件を持つパーティションを作成することを,条件として設定する制御装置
として機能させるための前記付記5に記載のリクエスト送信制御プログラム。
(付記7) 前記コンピュータを,
前記パーティショニング設定情報は,実行されたリクエスト送信のアクセス先から認証が要求された場合に,当該認証の要求を契機として,当該認証の範囲と一致する所属条件を持つパーティションを作成することを,条件として設定する制御装置
として機能させるための前記付記5に記載のリクエスト送信制御プログラム。
(付記8) 前記コンピュータを,
前記パーティショニング設定情報は,実行されたリクエスト送信のアクセス先からパスワードフィールドを含むレスポンスが得られた場合に,当該パスワードフィールドに値が入力されたデータを含むリクエストの送信を契機として,当該レスポンスを得たアクセス先または当該リクエストを送信しようとしているアクセス先のいずれかに応じた所属条件を持つパーティションを作成することを,条件として設定する制御装置
として機能させるための前記付記5に記載のリクエスト送信制御プログラム。
(付記9) 通信プロトコル処理においてリクエスト送信を制御する装置であって,
リクエスト送信のアクセス先を区分けする1つ以上のパーティションの所属条件として,当該パーティションに属するアクセス先の所在情報の全部または一部が設定されたパーティション情報を記憶するパーティション情報記憶手段と,
リクエスト送信が指示された場合に,前記パーティション情報にもとづいて,当該リクエスト送信のアクセス先が所属するパーティションを特定するパーティショニング手段と,
前記リクエスト送信の要求元を判定し,前記リクエスト送信が,当該リクエスト送信のアクセス先のパーティションに所属しないアクセス先から取得したレスポンスまたはボディコンテントによって要求されている場合に,当該リクエストを越境リクエストと判定するリクエスト判定手段と,
前記越境リクエストの送信を拒否するリクエスト送信制御手段とを備える
ことを特徴とするリクエスト送信制御装置。
(付記10) 前記リクエスト送信制御手段は,前記越境リクエストの送信をユーザに通知し,送信許可が指示された場合に,当該越境リクエストを送信する
ことを特徴とする前記付記9に記載のリクエスト送信制御装置。
(付記11) 前記越境リクエストに含まれる情報の一部を変更するリクエスト編集手段を備え,
前記リクエスト送信制御手段は,前記編集された越境リクエストを送信する
ことを特徴とする前記付記9または前記付記10のいずれか一項に記載のリクエスト送信制御装置。
(付記12) アクセス先に関連付けて使用される情報を,当該アクセス先が所属するパーティションに割り当てられた領域に隔離して保持するデータ記憶手段を備え,
前記リクエスト送信制御手段は,前記アクセス先に対するリクエスト送信を行う場合に,当該アクセス先が所属するパーティションの領域に隔離された情報を使用する
ことを特徴とする前記付記9ないし前記付記11のいずれか一項に記載のリクエスト送信制御装置。
(付記13) アクセス先を区分するパーティショニングを実行する条件が設定されたパーティショニング設定情報を記憶するパーティショニング設定情報記憶手段と,
前記パーティショニング手段は,前記パーティショニング設定情報にもとづいて,リクエスト送信のアクセス先を区分し,当該アクセス先が前記パーティション情報に該当しない場合に前記アクセス先に対応する新たなパーティションを作成し,前記作成されたパーティションの所属条件を前記パーティション情報に追加する
ことを特徴とする前記付記9ないし前記付記12のいずれか一項に記載のリクエスト送信制御装置。
(付記14) 前記パーティショニング設定情報は,実行されたリクエスト送信のアクセス先からセッションクッキーが発行された場合に,当該発行を契機として,当該セッションクッキーの有効範囲と一致する所属条件を持つパーティションを作成することを,条件として設定する
ことを特徴とする前記付記13に記載のリクエスト送信制御装置。
(付記15) 前記パーティショニング設定情報は,実行されたリクエスト送信のアクセス先から認証が要求された場合に,当該認証の要求を契機として,当該認証の範囲と一致する所属条件を持つパーティションを作成することを,条件として設定する
ことを特徴とする前記付記13に記載のリクエスト送信制御装置。
(付記16) 前記パーティショニング設定情報は,実行されたリクエスト送信のアクセス先からパスワードフィールドを含むレスポンスが得られた場合に,当該パスワードフィールドに値が入力されたデータを含むリクエストの送信を契機として,当該レスポンスを得たアクセス先または当該リクエストを送信しようとしているアクセス先のいずれかに応じた所属条件を持つパーティションを作成することを,条件として設定する
ことを特徴とする前記付記13に記載のリクエスト送信制御装置。
(付記17) コンピュータが,通信プロトコル処理においてリクエスト送信を制御する方法であって,
リクエスト送信のアクセス先を区分けする1つ以上のパーティションの所属条件として,当該パーティションに属するアクセス先の所在情報の全部または一部が設定されたパーティション情報を記憶するパーティション情報記憶手段にアクセスするデータアクセス処理過程と,
リクエスト送信が指示された場合に,前記パーティション情報にもとづいて,当該リクエスト送信のアクセス先が所属するパーティションを特定するパーティショニング処理過程と,
前記リクエスト送信の要求元を判定し,前記リクエスト送信が,当該リクエスト送信のアクセス先のパーティションに所属しないアクセス先から取得したレスポンスまたはボディコンテントによって要求されている場合に,当該リクエストを越境リクエストと判定するリクエスト判定処理過程と,
前記越境リクエストの送信を拒否するリクエスト送信制御過程とを備える
ことを特徴とするリクエスト送信制御方法。
(付記18) 前記リクエスト送信制御過程では,前記越境リクエストの送信をユーザに通知し,送信許可が指示された場合に,当該越境リクエストを送信する
ことを特徴とする前記付記17に記載のリクエスト送信制御方法。
(付記19) 前記越境リクエストに含まれる情報の一部を変更するリクエスト編集過程を備え,
前記リクエスト送信制御過程では,前記編集された越境リクエストを送信する
ことを特徴とする前記付記17または前記付記18のいずれか一項に記載のリクエスト送信制御方法。
(付記20) アクセス先に関連付けて使用される情報を,当該アクセス先が所属するパーティションに割り当てられた領域に隔離して保持するデータ記憶手段にアクセスする第2のアクセス処理過程を備え,
前記リクエスト送信制御過程では,前記アクセス先に対するリクエスト送信を行う場合に,当該アクセス先が所属するパーティションの領域に隔離された情報を使用する
ことを特徴とする前記付記17ないし前記付記19のいずれか一項に記載のリクエスト送信制御方法。
(付記21) アクセス先を区分するパーティショニングを実行する条件が設定されたパーティショニング設定情報を記憶するパーティショニング設定情報記憶手段にアクセスする第3のアクセス処理過程と,
前記パーティショニング処理過程では,前記パーティショニング設定情報にもとづいて,リクエスト送信のアクセス先を区分し,当該アクセス先が前記パーティション情報に該当しない場合に前記アクセス先に対応する新たなパーティションを作成し,前記作成されたパーティションの所属条件を前記パーティション情報に追加する
ことを特徴とする前記付記17ないし前記付記20のいずれか一項に記載のリクエスト送信制御方法。
(付記22) 前記パーティショニング設定情報は,実行されたリクエスト送信のアクセス先からセッションクッキーが発行された場合に,当該発行を契機として,当該セッションクッキーの有効範囲と一致する所属条件を持つパーティションを作成することを,条件として設定する
ことを特徴とする前記付記21に記載のリクエスト送信制御方法。
(付記23) 前記パーティショニング設定情報は,実行されたリクエスト送信のアクセス先から認証が要求された場合に,当該認証の要求を契機として,当該認証の範囲と一致する所属条件を持つパーティションを作成することを,条件として設定する
ことを特徴とする前記付記21に記載のリクエスト送信制御方法。
(付記24) 前記パーティショニング設定情報は,実行されたリクエスト送信のアクセス先からパスワードフィールドを含むレスポンスが得られた場合に,当該パスワードフィールドに値が入力されたデータを含むリクエストの送信を契機として,当該レスポンスを得たアクセス先または当該リクエストを送信しようとしているアクセス先のいずれかに応じた所属条件を持つパーティションを作成することを,条件として設定する
ことを特徴とする前記付記21に記載のリクエスト送信制御方法。
本発明が実施されるコンピュータの構成例を示す図である。 Webブラウザの一般的な機能の構成および主なデータを示す図である。 本発明のWebブラウザの機能ブロック構成とデータとを示す図である。 パーティションテーブルの例を示す図である。 ディスクのファイルシステムにおける長期記憶データの指定の例を示す図である。 パーティショニング設定テーブルの例を示す図である。 ウィンドウテーブルの例を示す図である。 Webブラウザで複数のウィンドウw1〜w4,…,が表示されている場合の例を示す図である。 リクエスト検査処理のフローチャートである。 ウィンドウ選択処理のフローチャートである。 ウィンドウ選択処理のフローチャートである。 パーティション作成処理のフローチャートである。 ウィンドウ作成処理のフローチャートである。 ユーザの対話的操作のための画面の例を示す図である。 本発明の作用を説明するための図である。 本発明の作用を説明するための図である。
符号の説明
200 Webブラウザ
201 パーティションテーブル
203 パーティショニング設定テーブル
205 ウィンドウテーブル
210 パーティショニング管理部
211 リクエスト検査部
213 ウィンドウ選択部
215 パーティション作成部
217 ウィンドウ作成部
219 リクエスト編集部
220 短期記憶域
230 長期記憶域

Claims (5)

  1. 通信プロトコル処理においてリクエスト送信を制御するために,コンピュータを,
    リクエスト送信のアクセス先を区分けする1つ以上のパーティションの所属条件として,当該パーティションに属するアクセス先の所在情報の全部または一部が設定されたパーティション情報を記憶するパーティション情報記憶手段と,
    リクエスト送信が指示された場合に,前記パーティション情報にもとづいて,当該リクエスト送信のアクセス先が所属するパーティションを特定するパーティショニング手段と,
    前記リクエスト送信の要求元を判定し,前記リクエスト送信が,当該リクエスト送信のアクセス先のパーティションに所属しないアクセス先から取得したレスポンスまたはボディコンテントによって要求されている場合に,当該リクエストを越境リクエストと判定するリクエスト判定手段と,
    前記越境リクエストの送信を拒否するリクエスト送信制御手段とを備える制御装置
    として機能させるためのリクエスト送信制御プログラム。
  2. 前記コンピュータを,
    前記リクエスト送信制御手段は,前記越境リクエストの送信をユーザに通知し,送信許可が指示された場合に,当該越境リクエストを送信する制御装置
    として機能させるための請求項1に記載のリクエスト送信制御プログラム。
  3. 前記コンピュータを,
    前記越境リクエストに含まれる情報の一部を変更するリクエスト編集手段を備え,
    前記リクエスト送信制御手段は,前記編集された越境リクエストを送信する制御装置
    として機能させるための請求項1または請求項2のいずれか一項に記載のリクエスト送信制御プログラム。
  4. 通信プロトコル処理においてリクエスト送信を制御する装置であって,
    リクエスト送信のアクセス先を区分けする1つ以上のパーティションの所属条件として,当該パーティションに属するアクセス先の所在情報の全部または一部が設定されたパーティション情報を記憶するパーティション情報記憶手段と,
    リクエスト送信が指示された場合に,前記パーティション情報にもとづいて,当該リクエスト送信のアクセス先が所属するパーティションを特定するパーティショニング手段と,
    前記リクエスト送信の要求元を判定し,前記リクエスト送信が,当該リクエスト送信のアクセス先のパーティションに所属しないアクセス先から取得したレスポンスまたはボディコンテントによって要求されている場合に,当該リクエストを越境リクエストと判定するリクエスト判定手段と,
    前記越境リクエストの送信を拒否するリクエスト送信制御手段とを備える
    ことを特徴とするリクエスト送信制御装置。
  5. コンピュータが,通信プロトコル処理においてリクエスト送信を制御する方法であって,
    リクエスト送信のアクセス先を区分けする1つ以上のパーティションの所属条件として,当該パーティションに属するアクセス先の所在情報の全部または一部が設定されたパーティション情報を記憶するパーティション情報記憶手段にアクセスするデータアクセス処理過程と,
    リクエスト送信が指示された場合に,前記パーティション情報にもとづいて,当該リクエスト送信のアクセス先が所属するパーティションを特定するパーティショニング処理過程と,
    前記リクエスト送信の要求元を判定し,前記リクエスト送信が,当該リクエスト送信のアクセス先のパーティションに所属しないアクセス先から取得したレスポンスまたはボディコンテントによって要求されている場合に,当該リクエストを越境リクエストと判定するリクエスト判定処理過程と,
    前記越境リクエストの送信を拒否するリクエスト送信制御過程とを備える
    ことを特徴とするリクエスト送信制御方法。
JP2006264863A 2006-09-28 2006-09-28 リクエスト送信制御プログラム,装置,および方法 Withdrawn JP2008084117A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006264863A JP2008084117A (ja) 2006-09-28 2006-09-28 リクエスト送信制御プログラム,装置,および方法
US11/790,895 US20080082602A1 (en) 2006-09-28 2007-04-27 Request transmission control apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006264863A JP2008084117A (ja) 2006-09-28 2006-09-28 リクエスト送信制御プログラム,装置,および方法

Publications (1)

Publication Number Publication Date
JP2008084117A true JP2008084117A (ja) 2008-04-10

Family

ID=39262261

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006264863A Withdrawn JP2008084117A (ja) 2006-09-28 2006-09-28 リクエスト送信制御プログラム,装置,および方法

Country Status (2)

Country Link
US (1) US20080082602A1 (ja)
JP (1) JP2008084117A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011090144A1 (ja) * 2010-01-21 2011-07-28 日本電気株式会社 通信制御装置、通信制御方法、通信制御用プログラム記憶媒体
JP2014112403A (ja) * 2014-01-16 2014-06-19 Canon Inc データ処理装置及び方法、並びにプログラム

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4908131B2 (ja) * 2006-09-28 2012-04-04 富士通株式会社 非即時処理存在可能性の表示処理プログラム,装置,および方法
AU2008201035A1 (en) * 2007-04-13 2008-10-30 Acei Ab A partition management system
CN101594343B (zh) * 2008-05-29 2013-01-23 国际商业机器公司 安全提交请求的装置和方法、安全处理请求的装置和方法
US9320543B2 (en) * 2009-06-25 2016-04-26 DePuy Synthes Products, Inc. Posterior dynamic stabilization device having a mobile anchor
US8924553B2 (en) * 2009-08-31 2014-12-30 Red Hat, Inc. Multifactor validation of requests to thwart cross-site attacks
US8775818B2 (en) * 2009-11-30 2014-07-08 Red Hat, Inc. Multifactor validation of requests to thwart dynamic cross-site attacks
US8904521B2 (en) * 2009-11-30 2014-12-02 Red Hat, Inc. Client-side prevention of cross-site request forgeries
US20150332280A1 (en) * 2014-05-16 2015-11-19 Microsoft Technology Licensing, Llc Compliant auditing architecture
CN106485159B (zh) * 2015-08-28 2020-05-29 腾讯科技(深圳)有限公司 网络安全存储方法和装置
WO2018151848A1 (en) * 2017-02-16 2018-08-23 Tenta, Llc System and method for creating private encrypted browser zones based on one or more parameters
US11165751B2 (en) 2017-02-16 2021-11-02 Emerald Cactus Ventures, Inc. System and method for establishing simultaneous encrypted virtual private networks from a single computing device
US11122013B2 (en) 2017-02-16 2021-09-14 Emerald Cactus Ventures, Inc. System and method for encrypting data interactions delineated by zones
WO2018151847A1 (en) * 2017-02-16 2018-08-23 Tenta, Llc System and method for creating encrypted virtual private network hotspot

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5560008A (en) * 1989-05-15 1996-09-24 International Business Machines Corporation Remote authentication and authorization in a distributed data processing system
US6105027A (en) * 1997-03-10 2000-08-15 Internet Dynamics, Inc. Techniques for eliminating redundant access checking by access filters
US6345300B1 (en) * 1997-03-25 2002-02-05 Intel Corporation Method and apparatus for detecting a user-controlled parameter from a client device behind a proxy
US6505300B2 (en) * 1998-06-12 2003-01-07 Microsoft Corporation Method and system for secure running of untrusted content
US6839760B1 (en) * 2000-06-02 2005-01-04 International Business Machines Corporation Method for preventing deep linking into a web site
US6757541B2 (en) * 2001-09-27 2004-06-29 Qualcomm Incorporated System and method for sending a supplemental channel request message in a wireless communication device
US7134022B2 (en) * 2002-07-16 2006-11-07 Flyntz Terence T Multi-level and multi-category data labeling system
US7577838B1 (en) * 2002-12-20 2009-08-18 Alain Rossmann Hybrid systems for securing digital assets
US9003048B2 (en) * 2003-04-01 2015-04-07 Microsoft Technology Licensing, Llc Network zones
JP4093482B2 (ja) * 2003-12-24 2008-06-04 インターナショナル・ビジネス・マシーンズ・コーポレーション アクセス制御システム、アクセス制御装置、アクセス制御方法、プログラム、及び記録媒体
US20060080439A1 (en) * 2004-10-13 2006-04-13 Andrew Chud Method and system for reducing bandwidth needed to filter requested content
US7797200B2 (en) * 2005-12-20 2010-09-14 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for providing website management services
US7770217B2 (en) * 2006-02-23 2010-08-03 Cisco Technology, Inc. Method and system for quality of service based web filtering
US7987231B2 (en) * 2006-06-09 2011-07-26 Global Information Solutions, Inc. Facilitating interaction between web browsers

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011090144A1 (ja) * 2010-01-21 2011-07-28 日本電気株式会社 通信制御装置、通信制御方法、通信制御用プログラム記憶媒体
JP5751172B2 (ja) * 2010-01-21 2015-07-22 日本電気株式会社 通信制御装置、通信制御方法、通信制御用プログラム記憶媒体
JP2014112403A (ja) * 2014-01-16 2014-06-19 Canon Inc データ処理装置及び方法、並びにプログラム

Also Published As

Publication number Publication date
US20080082602A1 (en) 2008-04-03

Similar Documents

Publication Publication Date Title
JP2008084117A (ja) リクエスト送信制御プログラム,装置,および方法
US10798202B2 (en) Security systems for mitigating attacks from a headless browser executing on a client computer
US10868819B2 (en) Systems for detecting a headless browser executing on a client computer
US9773109B2 (en) Alternate files returned for suspicious processes in a compromised computer network
US8112799B1 (en) Method, system, and computer program product for avoiding cross-site scripting attacks
US9813444B2 (en) Reliable selection of security countermeasures
US9154493B2 (en) Managing multiple logins from a single browser
JP4395178B2 (ja) コンテンツ処理システム、方法及びプログラム
JP4405248B2 (ja) 通信中継装置、通信中継方法及びプログラム
JP5254656B2 (ja) ドライブバイ・ファーミングに対するリファラーチェックを介したクライアント側の保護
MXPA06002206A (es) Sistema y metodo para resaltar un dominio en una presentacion de navegador.
US20140283078A1 (en) Scanning and filtering of hosted content
JP5347429B2 (ja) ユニフォームリソースロケータ書換方法及び装置
JP2008083906A (ja) サーバ及びプログラム
JP2004520654A (ja) クラッカー追跡システムとその方法、およびこれを利用した認証システムとその方法
US11138463B1 (en) Unsupervised and supervised machine learning approaches to detecting bots and other types of browsers
CN116324766A (zh) 通过浏览简档优化抓取请求
RU2272318C2 (ru) Считываемый компьютером носитель записи, на котором записан файл изображения, устройство для изготовления носителя записи, носитель, на котором записана программа для создания файла изображения, устройство для передачи файла изображения, устройство для обработки файла изображения и носитель, на котором записана программа обработки файла изображения
JP2004046460A (ja) ファイル管理システムにおけるアクセス制御方式
US10263992B2 (en) Method for providing browser using browser processes separated for respective access privileges and apparatus using the same
JP2005339008A (ja) アクセス制御方法およびプログラムと記録媒体
JP4542122B2 (ja) キャッシュサーバ等に保存されたコンテンツのオリジナルurlを取得してurlフィルタリングを行なう装置
EP3588347B1 (en) Systems and methods for identifying unknown attributes of web data fragments when launching a web page in a browser
US20220247782A1 (en) Phishing website detection by checking form differences followed by false credentials submission
Sonowal et al. Characteristics of Phishing Websites

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090611

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20101025