(57)【特許請求の範囲】
【請求項１】
オンライン広告の閲覧を要求する広告リクエストから、該広告リクエストの送信元であるクライアントに関するクライアント情報と、広告を表示するパブリッシャのウェブサイトに関するパブリッシャ情報とを抽出し、該クライアント情報と該パブリッシャ情報とを用いた、少なくとも正規のエンドユーザによる良性な広告リクエストを含む複数の広告リクエストに対する統計情報を表す所定の特徴量を算出する抽出部と、
算出された前記特徴量を用いて、広告リクエストが悪性か否かを判定する判定器を作成する判定器作成部と、
を備え、
前記抽出部は、全広告リクエストに出現するクライアント情報およびパブリッシャ情報のユニークな値の一覧または同一の広告リクエストに出現するクライアント情報およびパブリッシャ情報のユニークな値の組合せの一覧を取得し、取得した一覧のそれぞれの値または値の組み合わせについて、全広告リクエスト中に出現した出現頻度を用いて前記特徴量を算出することを特徴とする検知装置。
【請求項２】
前記抽出部は、前記クライアント情報として、前記広告リクエストの送信元のＩＰアドレスが属するネットワークの情報を抽出し、前記特徴量を算出することを特徴とする請求項１に記載の検知装置。
【請求項３】
前記抽出部は、前記クライアント情報として、前記クライアントの動作環境に関する情報を抽出し、前記特徴量を算出することを特徴とする請求項１に記載の検知装置。
【請求項４】
前記抽出部は、前記パブリッシャ情報として、前記パブリッシャのウェブサイトのドメイン名を抽出し、前記特徴量を算出することを特徴とする請求項１に記載の検知装置。
【請求項５】
検知装置で実行される検知方法であって、
オンライン広告の閲覧を要求する広告リクエストから、該広告リクエストの送信元であるクライアントに関するクライアント情報と、広告を表示するパブリッシャのウェブサイトに関するパブリッシャ情報とを抽出し、該クライアント情報と該パブリッシャ情報とを用いた、少なくとも正規のエンドユーザによる良性な広告リクエストを含む複数の広告リクエストに対する統計情報を表す所定の特徴量を算出する抽出工程と、
算出された前記特徴量を用いて、広告リクエストが悪性か否かを判定する判定器を作成する判定器作成工程と、
を含み、
前記抽出工程は、全広告リクエストに出現するクライアント情報およびパブリッシャ情報のユニークな値の一覧または同一の広告リクエストに出現するクライアント情報およびパブリッシャ情報のユニークな値の組合せの一覧を取得し、取得した一覧のそれぞれの値または値の組み合わせについて、全広告リクエスト中に出現した出現頻度を用いて前記特徴量を算出することを特徴とする検知方法。
【請求項６】
オンライン広告の閲覧を要求する広告リクエストから、該広告リクエストの送信元であるクライアントに関するクライアント情報と、広告を表示するパブリッシャのウェブサイトに関するパブリッシャ情報とを抽出し、該クライアント情報と該パブリッシャ情報とを用いた、少なくとも正規のエンドユーザによる良性な広告リクエストを含む複数の広告リクエストに対する統計情報を表す所定の特徴量を算出する抽出ステップと、
算出された前記特徴量を用いて、広告リクエストが悪性か否かを判定する判定器を作成する判定器作成ステップと、
をコンピュータに実行させ、
前記抽出ステップは、全広告リクエストに出現するクライアント情報およびパブリッシャ情報のユニークな値の一覧または同一の広告リクエストに出現するクライアント情報およびパブリッシャ情報のユニークな値の組合せの一覧を取得し、取得した一覧のそれぞれの値または値の組み合わせについて、全広告リクエスト中に出現した出現頻度を用いて前記特徴量を算出することを特徴とする検知プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検知装置、検知方法および検知プログラムに関する。
【背景技術】
【０００２】
近年、市場の発展に伴い、オンライン広告を標的とした広告不正の被害が深刻化している。オンライン広告は、Ｗｅｂサイトやモバイルアプリにおけるマネタイズ手段の一つである。オンライン広告においては、主に、エンドユーザ、パブリッシャ、広告主、および広告ネットワークの４種類のステークホルダーが存在する。【０００３】
エンドユーザは、Ｗｅｂブラウザやモバイルアプリを介してオンライン広告を閲覧する。パブリッシャは、自身の管理するＷｅｂサイトやモバイルアプリ内に用意した広告表示枠を広告主に提供し、その対価に広告費を受け取る。広告主は、広告を出稿する。広告ネットワークは、パブリッシャと広告主との間のやり取りを仲介する役割を担う。【０００４】
また、広告不正とは、実際には広告効果が発生しない手段を用いて、広告主が支払う広告費を浪費させる攻撃である。本来、Ｗｅｂ広告は、ブラウザでＷｅｂサイトにアクセスしたエンドユーザ等の聴衆に閲覧され、クリックされるという想定のもとに表示される。これに対し、攻撃者は、広告効果が発生しない不正なＷｅｂトラフィックを発生させたり、自動的なクリックを発生させたりして、不正に広告費を詐取する。例えば、攻撃者は、アドウェアやＰＵＰ（Potentially  Unwanted  Program）等をエンドユーザの用いる端末（クライアント）に感染させ、感染したクライアントから自動的な広告リクエストを発生させる。【０００５】
このような広告不正への対策として、広告ネットワークの立場から、広告不正によって発生した広告リクエストを検知する技術が検討されている。例えば、広告不正により発生する広告リクエストや、広告リクエストによって発生する広告収益が、正規のエンドユーザによる広告リクエストより高いバースト性を示すことを利用して、広告不正を検知する技術が開示されている（非特許文献１，２参照）。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】B.Stone-Gross,  R.Stevens,  A.Zarras,  R.Kemmerer,  C.Kruegel,  and  G.Vigna,  “Understanding  Fraudulent  Activities  in  Online  Ad  Exchanges”,  Proceedings  of  the  2011  ACM  SIGCOMM  Conference  on  Internet  Measurement  Conference  (IMC),  2011年,  pp.279−294
【非特許文献２】V.Dave,S.Guha,and  Y.Zhang,  “ViceROI:  Catching  Click-Spam  in  Search  Ad  Networks”,  Proceedings  of  the  2013  ACM  SIGSAC  Conference  on  Computer  and  Communications  Security  (CCS),  2013年,  pp.765−776
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の技術では、攻撃者によって広告不正の検知が回避される場合がある。例えば、攻撃者は、自身の管理下にある多数のクライアントやパブリッシャサイトを用いて、分散的に広告不正を行うことが可能である。またその際に、攻撃者は、クライアントやパブリッシャサイトごとに、広告リクエスト数や広告リクエストにより発生する広告収益を任意に設定可能である。したがって、攻撃者が、広告リクエスト数や広告収益を正規のエンドユーザやパブリッシャサイトと同程度の値に設定した場合には、広告リクエストのバースト性に基づく従来の技術では、広告不正が検知されない。【０００８】
本発明は、上記に鑑みてなされたものであって、攻撃者に回避され難い広告不正の検知を行うことを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明に係る検知装置は、オンライン広告の閲覧を要求する広告リクエストから、該広告リクエストの送信元であるクライアントに関するクライアント情報と、広告を表示するパブリッシャのウェブサイトに関するパブリッシャ情報とを抽出し、該クライアント情報と該パブリッシャ情報とを用いた、少なくとも良性な広告リクエストを含む複数の広告リクエストに対する所定の特徴量を算出する抽出部と、算出された前記特徴量を用いて、広告リクエストが悪性か否かを判定する判定器を作成する判定器作成部と、を備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、攻撃者に回避され難い広告不正の検知を行うことが可能となる。
【図面の簡単な説明】
【００１１】
【図１】図１は、検知装置の概略構成を例示する模式図である。
【図２】図２は、広告リクエストログのデータ構成を例示する図である。
【図３】図３は、クライアント情報を説明するための説明図である。
【図４】図４は、パブリッシャ情報を説明するための説明図である。
【図５】図５は、特徴抽出部の処理を説明するための説明図である。
【図６】図６は、特徴抽出部の処理を説明するための説明図である。
【図７】図７は、検知処理手順を示すフローチャートである。
【図８】図８は、特徴抽出処理手順を示すフローチャートである。
【図９】図９は、検知プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【００１３】
［検知装置の構成］
図１は、検知装置の概略構成を例示する模式図である。検知装置１０では、汎用コンピュータのＣＰＵ（Central  Processing  Unit）等を用いて実現される制御部が、図１に示すように、特徴抽出部１１、判定器作成部１２、および判定部１４として機能する。なお、これらの機能部は、それぞれあるいは一部が異なるハードウェアに実装されてもよい。例えば、判定部１４は、特徴抽出部１１および判定器作成部１２とは異なるハードウェアに実装されてもよい。
【００１４】
また、検知装置１０では、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される記憶部に、判定器１３が記憶される。
【００１５】
特徴抽出部１１は、抽出部として機能する。すなわち、特徴抽出部１１は、オンライン広告の閲覧を要求する広告リクエストから、該広告リクエストの送信元であるクライアントに関するクライアント情報と、広告を表示するパブリッシャのウェブサイトに関するパブリッシャ情報とを抽出する。また、特徴抽出部１１は、このクライアント情報とこのパブリッシャ情報とを用いた、少なくとも良性な広告リクエストを含む複数の広告リクエストに対する所定の特徴量を算出する。
【００１６】
具体的には、まず、特徴抽出部１１は、図示しないキーボード等の入力部あるいはＮＩＣ（Network  Interface  Card）等の通信制御部を介して、オンライン広告の閲覧を要求する広告リクエストの入力を受け付ける。ここで、図２は、広告リクエストのデータ構成を例示する図である。図２に示すように、広告リクエストには、クライアントＩＰアドレス、ユーザエージェント、およびパブリッシャＵＲＬ等が含まれる。
【００１７】
クライアントＩＰアドレスは、広告を閲覧するエンドユーザが使用するクライアント、すなわち広告リクエストの送信元であるクライアントのＩＰアドレスである。ユーザエージェントとは、クライアントで広告の閲覧に使用されているソフトウェアまたはハードウェア等のユーザエージェントである。パブリッシャＵＲＬは、広告が表示されたパブリッシャのウェブサイトのＵＲＬである。
【００１８】
なお、後述する判定器作成部１２は、学習用の広告リクエストを用いて処理を行う。学習用の広告リクエストとしては、学習用悪性広告リクエストログと、学習用良性広告リクエストログとが用いられる。学習用悪性広告リクエストログとは、広告不正によって発生した悪性な広告リクエストのログである。また、学習用良性広告リクエストログとは、正規のエンドユーザの活動によって発生した良性な広告リクエストのログである。
【００１９】
また、後述する判定部１４は、テスト用の広告リクエストであるテスト用広告リクエストログを用いて処理を行う。テスト用広告リクエストログとは、悪性か否かの判定対象の広告リクエストのログである。
【００２０】
図１の説明に戻る。特徴抽出部１１は、クライアント情報抽出部１１ａ、パブリッシャ情報抽出部１１ｂ、および出現頻度算出部１１ｃを含む。
【００２１】
クライアント情報抽出部１１ａは、広告リクエストの送信元であるクライアントに関するクライアント情報を抽出する。ここで、図３は、クライアント情報を説明するための図である。
【００２２】
例えば、クライアント情報抽出部１１ａは、クライアント情報として、図３（ａ）に示すように、広告リクエストの送信元のＩＰアドレスが属するネットワークの情報を抽出する。具体的には、クライアント情報抽出部１１ａは、広告リクエストに含まれるクライアントＩＰアドレスを用いて、このＩＰアドレスからドメイン名を解決するＤＮＳ逆引きを行う。そして、クライアント情報抽出部１１ａは、ＤＮＳ逆引き結果のドメイン名から、インターネット上でユーザの希望により登録可能な部分の最小単位を表す部分文字列（以下、ｒＤＮＳ−ｅ２ＬＤと記す。）を抽出し、これをクライアント情報とする。
【００２３】
例えば、クライアント情報抽出部１１ａは、周知のPublic  Suffix  Listを参照して、ドメイン名から、ｒＤＮＳ−ｅ２ＬＤを抽出する。Public  Suffixは、ドメイン名の上位の個人のユーザがコントロールできない文字列を表す。したがって、クライアント情報抽出部１１ａは、ドメイン名に含まれるPublic  Suffixの１レベル下位の部分までを、ｒＤＮＳ−ｅ２ＬＤとして抽出すればよい。
【００２４】
図３（ａ）に示す例では、Public  Suffixに「.example」が含まれている場合に、クライアント情報抽出部１１ａは、ＤＮＳ逆引き結果のドメインから、ｒＤＮＳ−ｅ２ＬＤとして「ispX.example」や「ispY.example」を抽出している。
【００２５】
クライアント情報抽出部１１ａは、クライアント情報として、図３（ｂ）に示すように、クライアントの動作環境に関する情報を抽出してもよい。具体的には、クライアント情報抽出部１１ａは、広告リクエストに含まれるユーザエージェントを用いて、ユーザエージェントが表すＯＳの種別とメジャーバージョン番号とを連結した文字列（以下、ＯＳ−ｖｅｒｓｉｏｎと記す。）を抽出し、これをクライアント情報とする。
【００２６】
例えば、クライアント情報抽出部１１ａは、予めＯＳの種別やバージョンごとにシグネチャを定義しておき、ユーザエージェントを表す文字列に対してシグネチャマッチングを行う。すなわち、クライアント情報抽出部１１ａは、ユーザエージェントに対応するシグネチャを特定することにより、ユーザエージェントを表すＯＳの種別とバージョン番号とを抽出する。なお、クライアント情報抽出部１１ａは、例えば、オープンソースソフトウェアであるｕａｐ−ｃｏｒｅを用いて、シグネチャを定義することができる。
【００２７】
図３（ｂ）に示す例では、クライアント情報抽出部１１ａは、ユーザエージェントを表す文字列「aaaa/5.0(bbbb  NT  6.1;…」から、ＯＳ−ｖｅｒｓｉｏｎ「bbbbb7」を抽出している。
【００２８】
パブリッシャ情報抽出部１１ｂは、広告を表示するパブリッシャのウェブサイトに関するパブリッシャ情報を抽出する。ここで、図４は、パブリッシャ情報を説明するための図である。例えば、パブリッシャ情報抽出部１１ｂは、パブリッシャ情報として、図４に示すように、パブリッシャのウェブサイトのドメイン名を抽出する。具体的には、パブリッシャ情報抽出部１１ｂは、広告リクエストに含まれるパブリッシャＵＲＬから、パブリッシャサイトのＦＱＤＮ（Fully  Qualified  Domain  Name）を抽出し、これをパブリッシャ情報とする。
【００２９】
パブリッシャ情報抽出部１１ｂは、ＵＲＬから「http://」、「https://」等のスキームを表す部分と、「/」等の区切り文字以降のパス名を表す部分とを除外することにより、ＦＱＤＮを抽出することができる。図４に示す例では、パブリッシャ情報抽出部１１ｂは、パブリッシャＵＲＬ「https://example.com/…」からＦＱＤＮ「example.com」を抽出している。
【００３０】
出現頻度算出部１１ｃは、クライアント情報とパブリッシャ情報とを用いた、少なくとも良性な広告リクエストを含む複数の広告リクエストに対する所定の特徴量を算出する。例えば、出現頻度算出部１１ｃは、クライアント情報およびパブリッシャ情報の、少なくとも良性な広告リクエストを含む複数の広告リクエストに対する出現頻度を用いて特徴量を算出する。
【００３１】
ここで、図５および図６は、特徴抽出部１１の処理を説明するための説明図である。まず、図５には、クライアント情報およびパブリッシャ情報の出現頻度の算出処理について、例示されている。
【００３２】
図５（ａ）に例示する広告リクエストから、図５（ｂ）に示すように、クライアント情報抽出部１１ａがクライアント情報を抽出し、パブリッシャ情報抽出部１１ｂがパブリッシャ情報を抽出する。
【００３３】
図５（ｂ）に示す例では、パブリッシャ情報抽出部１１ｂは、パブリッシャ情報として、ＦＱＤＮを抽出している。また、クライアント情報抽出部１１ａは、クライアント情報として、ｒＤＮＳ−ｅ２ＬＤとＯＳ−ｖｅｒｓｉｏｎとを抽出している。なお、クライアント情報およびパブリッシャ情報は、これに限定されない。例えば、クライアント情報抽出部１１ａは、ｒＤＮＳ−ｅ２ＬＤ、ＯＳ−ｖｅｒｓｉｏｎのいずれか一方のみを、クライアント情報として抽出してもよい。
【００３４】
次に、図５（ｃ）に示すように、出現頻度算出部１１ｃが、クライアント情報およびパブリッシャ情報の出現頻度を算出する。具体的には、出現頻度算出部１１ｃは、まず、図５（ｂ）に示した各広告リクエストのクライアント情報およびパブリッシャ情報を集計する。例えば、出現頻度算出部１１ｃは、ｒＤＮＳ−ｅ２ＬＤ、ＯＳ−ｖｅｒｓｉｏｎ、ＦＱＤＮのそれぞれについて、全広告リクエストに出現するユニークな値の一覧を取得する。また、出現頻度算出部１１ｃは、ｒＤＮＳ−ｅ２ＬＤとＦＱＤＮ、ｒＤＮＳ−ｅ２ＬＤとＯＳ−ｖｅｒｓｉｏｎ、ＯＳ−ｖｅｒｓｉｏｎとＦＱＤＮの３種の組み合わせのそれぞれについて、同一の広告リクエストに出現するユニークな値の組み合わせの一覧を取得する。
【００３５】
そして、出現頻度算出部１１ｃは、取得した一覧のそれぞれの値または値の組み合わせについて、図５（ａ）に示した全広告リクエスト中に出現した出現頻度を算出する。なお、出現頻度は、全広告リクエストにおける出現回数でもよいし、出現回数を０から１の間で正規化した値でもよい。図５（ｃ）に示す例では、その双方が算出されている。例えば、ＯＳ−ｖｅｒｓｉｏｎ「bbbbb7」とＦＱＤＮ「example.net」との組み合わせは、全広告リクエストにおける出現回数が２回であり、出現頻度は２、正規化後の出現頻度は０．２８５と算出されている。
【００３６】
次に、出現頻度算出部１１ｃは、算出した出現頻度を用いて特徴量を算出する。ここで、図６には、図５に示したように算出された出現頻度を用いた特徴量の算出処理が例示されている。図６に示すように、出現頻度算出部１１ｃは、算出された出現頻度を用いて、各広告リクエストの特徴量として、各広告リクエストのクライアント情報およびパブリッシャ情報の出現頻度を成分とする特徴ベクトルを生成する。
【００３７】
例えば、図６（ｂ）に示す広告リクエストから、図６（ｃ）に示すように抽出されたクライアント情報およびパブリッシャ情報について、図６（ａ）に示すように算出された出現頻度を成分として、図６（ｄ）に示すように特徴ベクトルを生成する。
【００３８】
図６に示す例では、各広告リクエストについての特徴ベクトルは、（ｒＤＮＳ−ｅ２ＬＤ、ＯＳ−ｖｅｒｓｉｏｎ、ＦＱＤＮ、ｒＤＮＳ−ｅ２ＬＤとＦＱＤＮ、ｒＤＮＳ−ｅ２ＬＤとＯＳ−ｖｅｒｓｉｏｎ、ＯＳ−ｖｅｒｓｉｏｎとＦＱＤＮ）の順に、各値の出現頻度を成分として生成されている。なお、この順は特に限定されず、全広告リクエストについて共通であればよい。
【００３９】
例えば、図６（ｄ）に示す特徴ベクトルは、図６（ａ）に網掛けで示された正規化後の出現頻度の値を成分として生成される６次元のベクトルである。すなわち、この特徴ベクトルは、図６（ｂ）に示した広告リクエストログのレコードのｒＤＮＳ−ｅ２ＬＤ「ispX.example」、ＯＳ−ｖｅｒｓｉｏｎ「bbbbb7」、ＦＱＤＮ「example.com」、およびそれらの組み合わせの出現頻度を用いて生成されている。
【００４０】
このように、特徴抽出部１１は、良性な広告リクエストを含む多数の広告リクエストに対する特徴量を算出する。すなわち、特徴抽出部１１は、正規のエンドユーザによって発生する広告リクエストの統計的な傾向を用いて、各広告リクエストの特徴量を算出する。攻撃者は、正規のエンドユーザによって発生する統計的な傾向を操作することは困難であるため、このような良性な広告リクエストを含む多数の広告リクエストに対する特徴量は、攻撃者が操作することが困難な値である。
【００４１】
判定器作成部１２は、算出された特徴量を用いて、広告リクエストが悪性か否かを判定する判定器１３を作成する。具体的には、例えば、判定器作成部１２は、学習用悪性広告リクエストログから算出された悪性な特徴ベクトルと、学習用良性広告リクエストログから算出された良性な特徴ベクトルとを用いて、悪性な広告リクエストへの悪性ラベルの付与を学習する。これにより、判定器作成部１２は、広告リクエストに悪性ラベル／良性ラベルのいずれかを付与する判定器１３を作成する。
【００４２】
判定部１４は、作成された判定器１３を用いて、広告リクエストが悪性か否かを判定する。具体的には、判定部１４は、テスト用広告リクエストログについて特徴抽出部１１が算出した所定の特徴量を判定器１３に入力する。なお、例えば、テスト用広告リクエストログに含まれるレコード数が少ない場合等には、特徴抽出部１１の出現頻度算出部１１ｃは、学習用広告リクエストログについて算出された出願頻度値を適用して、各広告リクエストの特徴量を算出してもよい。
【００４３】
判定器１３がテスト用広告リクエストログに悪性ラベルを付与した場合に、判定部１４は、当該テスト用広告リクエストが悪性と判定する。また、判定器１３がテスト用広告リクエストログに良性ラベルを付与した場合に、判定部１４は、当該テスト用広告リクエストが良性、すなわち悪性ではないと判定する。
【００４４】
［検知処理］
次に、図７および図８を参照して、本実施形態に係る検知装置１０による検知処理について説明する。図７は、検知処理手順を示すフローチャートである。図７のフローチャートは、例えば、ユーザが検知処理の開始を指示する操作入力を行ったタイミングで開始される。
【００４５】
まず、特徴抽出部１１が、広告リクエストログの入力を受け付けた場合に（ステップＳ１）、各広告リクエストについて、特徴抽出処理を行う。すなわち、特徴抽出部１１は、クライアント情報とパブリッシャ情報とを用いた、入力された全広告リクエストに対する所定の特徴量を算出する（ステップＳ２）。
【００４６】
判定器作成部１２は、学習用広告リクエストログについて算出された特徴量を用いて、広告リクエストログが悪性か否かを判定する判定器１３を作成する（ステップＳ３）。すなわち、判定器作成部１２は、学習用悪性広告リクエストログから算出された悪性な特徴量と、学習用良性広告リクエストログから算出された良性な特徴量とを用いて、広告リクエストに悪性ラベル／良性ラベルのいずれかを付与する判定器１３を作成する。
【００４７】
また、判定部１４は、テスト用広告リクエストログについて算出された特徴量を、作成された判定器１３に入力することにより、テスト用広告リクエストログが悪性か否かを判定する（ステップＳ４）。これにより、一連の検知処理が終了する。
【００４８】
また、図８は、特徴抽出処理（上記ステップＳ２）手順を示すフローチャートである。特徴抽出部１１において、クライアント情報抽出部１１ａが、広告リクエストからクライアントを表すクライアント情報を抽出する。そして、出現頻度算出部１１ｃが、入力された全広告リクエストに出現するクライアント情報のユニークな値の一覧を取得する（ステップＳ２１）。
【００４９】
また、パブリッシャ情報抽出部１１ｂが、広告リクエストからパブリッシャウェブサイトを表すパブリッシャ情報を抽出する。そして、出現頻度算出部１１ｃが、入力された全広告リクエストに出現するパブリッシャ情報のユニークな値の一覧を取得する（ステップＳ２２）。
【００５０】
また、出現頻度算出部１１ｃは、同一の広告リクエストに出現するクライアント情報およびパブリッシャ情報のユニークな値の組み合わせの一覧を取得する（ステップＳ２３）。
【００５１】
出現頻度算出部１１ｃは、取得した一覧から順次、値または値の組み合わせを選択し（ステップＳ２４）、選択した値または値の組み合わせについて、特徴量として、全広告リクエスト中に出現した出現頻度を算出する（ステップＳ２５）。
【００５２】
出現頻度算出部１１ｃは、一覧の値または値の組み合わせについて出現頻度を算出する処理を繰り返す（ステップＳ２６、Ｎｏ→ステップＳ２４）。そして、出現頻度算出部１１ｃは、一覧の値または値の組み合わせの全てについて出現頻度を算出した場合に（ステップＳ２６、Ｙｅｓ）、一連の特徴抽出処理を終了する。
【００５３】
以上、説明したように、本実施形態の検知装置１０において、特徴抽出部１１が、オンライン広告の閲覧を要求する広告リクエストから、該広告リクエストの送信元であるクライアントに関するクライアント情報と、広告を表示するパブリッシャのウェブサイトに関するパブリッシャ情報とを抽出し、該クライアント情報と該パブリッシャ情報とを用いた、少なくとも良性な広告リクエストを含む複数の広告リクエストに対する所定の特徴量を算出する。また、判定器作成部１２が、算出された特徴量を用いて、広告リクエストが悪性か否かを判定する判定器１３を作成する。
【００５４】
ここで、従来は、例えば、広告閲覧ユーザおよびパブリッシャサイトごとに発生した広告リクエスト数やＣＴＲ（Click  Through  Rate）を計測し、計測値のバースト性を元に広告不正を検知していた（非特許文献１参照）。また、広告不正によって発生する広告収益が、通常のパブリッシャが発生させる広告収益と比較して高いことにより広告不正を検知していた（非特許文献２参照）。このように、従来、広告不正により発生する広告リクエストや、広告リクエストによって発生する広告収益が、正規のエンドユーザによる広告リクエストより高いバースト性を示すことを利用して、広告不正を検知していた。
【００５５】
これに対し、本実施形態の検知装置１０では、特徴抽出部１１が、各広告リクエストについて、正規のエンドユーザによって発生する良性な広告リクエストを含む多数の広告リクエストに対する特徴量を算出する。すなわち、特徴抽出部１１は、良性な広告リクエストの統計的な傾向を用いて、各広告リクエストの特徴量を算出する。例えば、特徴抽出部１１は、クライアント情報およびパブリッシャ情報の、正規のエンドユーザによって発生する良性な広告リクエストを含む多数の広告リクエストに対する出現頻度を用いて特徴量を算出する。
【００５６】
なお、特徴抽出部１１は、クライアント情報として、例えば、広告リクエストの送信元のＩＰアドレスが属するネットワークの情報を抽出し、これを用いて特徴量を算出する。あるいは、特徴抽出部１１は、クライアント情報として、クライアントの動作環境に関する情報を抽出し、これを用いて特徴量を算出する。また、特徴抽出部１１は、パブリッシャ情報として、パブリッシャのウェブサイトのドメイン名を抽出し、これを用いて特徴量を算出する。
【００５７】
攻撃者は、正規のエンドユーザによって発生する統計的な傾向を操作することは困難である。たとえ攻撃者が多数のクライアントやパブリッシャウェブサイトを用いて攻撃を行った場合にも、これらの特徴量を正規のエンドユーザによる広告リクエストと同様の値になるように設定することは困難である。したがって、このような良性な広告リクエストを含む多数の広告リクエストに対する特徴量は、攻撃者が操作することは困難な値である。
【００５８】
このように、本実施形態の検知装置１０は、攻撃者が操作することが困難な特徴量を用いて、広告リクエストが悪性か否かを判定する判定器１３を作成する。ここで作成された判定器１３を用いて、判定部１４が、広告リクエストが悪性か否かを判定する。したがって、検知装置１０は、攻撃者が回避し難い広告不正の検知を行うことが可能となる。
【００５９】
［プログラム］
上記実施形態に係る検知装置１０が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。一実施形態として、検知装置１０は、パッケージソフトウェアやオンラインソフトウェアとして上記の検知処理を実行する検知プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の検知プログラムを情報処理装置に実行させることにより、情報処理装置を検知装置１０として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）などの移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistant）などのスレート端末などがその範疇に含まれる。また、検知装置１０の機能を、クラウドサーバに実装してもよい。
【００６０】
図９は、検知プログラムを実行するコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有する。これらの各部は、バス１０８０によって接続される。
【００６１】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０３１に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１０４１に接続される。ディスクドライブ１０４１には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース１０５０には、例えば、マウス１０５１およびキーボード１０５２が接続される。ビデオアダプタ１０６０には、例えば、ディスプレイ１０６１が接続される。
【００６２】
ここで、ハードディスクドライブ１０３１は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３およびプログラムデータ１０９４を記憶する。上記実施形態で説明した各情報は、例えばハードディスクドライブ１０３１やメモリ１０１０に記憶される。
【００６３】
また、検知プログラムは、例えば、コンピュータ１０００によって実行される指令が記述されたプログラムモジュール１０９３として、ハードディスクドライブ１０３１に記憶される。具体的には、上記実施形態で説明した検知装置１０が実行する各処理が記述されたプログラムモジュール１０９３が、ハードディスクドライブ１０３１に記憶される。
【００６４】
また、検知プログラムによる情報処理に用いられるデータは、プログラムデータ１０９４として、例えば、ハードディスクドライブ１０３１に記憶される。そして、ＣＰＵ１０２０が、ハードディスクドライブ１０３１に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して、上述した各手順を実行する。
【００６５】
なお、検知プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０３１に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ１０４１等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、検知プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ＬＡＮやＷＡＮ（Wide  Area  Network）等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【００６６】
以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述および図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例および運用技術等は全て本発明の範疇に含まれる。
【符号の説明】
【００６７】
１０  検知装置
１１  特徴抽出部
１１ａ  クライアント情報抽出部
１１ｂ  パブリッシャ情報抽出部
１１ｃ  出現頻度算出部
１２  判定器作成部
１３  判定器
１４  判定部
【図１】
0006989027.tif 000002
【図２】
0006989027.tif 000003
【図３】
0006989027.tif 000004
【図４】
0006989027.tif 000005
【図５】
0006989027.tif 000006
【図６】
0006989027.tif 000007
【図７】
0006989027.tif 000008
【図８】
0006989027.tif 000009
【図９】
0006989027.tif 000010