(57)【要約】【課題】不正な取引対象候補を効率的に検出すること。【解決手段】検出装置は、取引対象に関するページ群を有するサイトに正規な取引対象に関する検索キーワードを用いてアクセスした結果、前記サイトから前記検索キーワードに一致または関連する文字列を含む特定のページを検索する検索処理と、前記検索処理によって検索された特定のページから、前記特定のページに含まれる特定の取引対象を特定する第１評価対象文字列と、前記特定の取引対象を説明する第２評価対象文字列と、を取得する取得処理と、不正な取引対象に関する評価キーワードと、前記取得処理によって取得された第１評価対象文字列および第２評価対象文字列と、に基づいて、前記特定のページが不正な取引対象に関するページであるか否かを評価する評価処理と、前記評価処理による評価結果を出力する出力処理と、を実行する。【選択図】図１
2020126465.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有する検出装置であって、
前記プロセッサは、
取引対象に関するページ群を有するサイトに正規な取引対象に関する検索キーワードを用いてアクセスした結果、前記サイトから前記検索キーワードに一致または関連する文字列を含む特定のページを検索する検索処理と、
前記検索処理によって検索された特定のページから、前記特定のページに含まれる特定の取引対象を特定する第１評価対象文字列と、前記特定の取引対象を説明する第２評価対象文字列と、を取得する取得処理と、
不正な取引対象に関する評価キーワードと、前記取得処理によって取得された第１評価対象文字列および第２評価対象文字列と、に基づいて、前記特定のページが不正な取引対象に関するページであるか否かを評価する評価処理と、
前記評価処理による評価結果を出力する出力処理と、
を実行することを特徴とする検出装置。
【請求項２】
請求項１に記載の検出装置であって、
前記検索処理では、前記プロセッサは、前記サイトに前記検索キーワードおよび国を指定するコードを用いてアクセスした結果、前記サイトから前記検索キーワードに一致または関連する文字列を含み、かつ、前記国が指定された特定のページを検索する、
ことを特徴とする検出装置。
【請求項３】
請求項１に記載の検出装置であって、
前記検索処理では、前記プロセッサは、特定の取引対象を一意に特定する識別情報に基づいて、前記検索キーワードに一致または関連する文字列を含むページを前記特定のページから除外する、
ことを特徴とする検出装置。
【請求項４】
請求項１に記載の検出装置であって、
前記検索処理では、前記プロセッサは、前記検索キーワードを用いて前記サイトにアクセスし、所定時間経過後に、他の検索キーワードで前記サイトにアクセスする、
ことを特徴とする検出装置。
【請求項５】
請求項１に記載の検出装置であって、
前記取得処理では、前記プロセッサは、前記特定のページにアクセスし、所定時間経過後に、他の前記特定のページにアクセスする、
ことを特徴とする検出装置。
【請求項６】
請求項１に記載の検出装置であって、
前記取得処理では、前記プロセッサは、前記特定のページから、前記特定のページに含まれる画像の中から特定した第３評価対象文字列を取得する、
ことを特徴とする検出装置。
【請求項７】
請求項１に記載の検出装置であって、
前記評価処理では、前記プロセッサは、前記第１評価対象文字列に前記評価キーワードが含まれているか否かという第１評価と、前記第２評価対象文字列に前記評価キーワードが含まれているか否かという第２評価と、に基づいて、前記特定のページが不正な取引対象に関するページであるかを評価する、
ことを特徴とする検出装置。
【請求項８】
請求項１に記載の検出装置であって、
前記評価キーワードは、前記検索キーワードと同一キーワードと、前記検索キーワードと異なるキーワードと、を含む、
ことを特徴とする検出装置。
【請求項９】
請求項１に記載の検出装置であって、
前記検索キーワードは、前記取引対象の提供元の名称、前記取引対象の名称、および、前記取引対象の提供元と同業者の名称、の中の少なくとも１つであり、
前記評価キーワードは、前記取引対象の提供元の名称、前記取引対象の名称、および、前記取引対象の特徴に関連する特定のキーワードの中の少なくとも１つである、
ことを特徴とする検出装置。
【請求項１０】
請求項９に記載の検出装置であって、
前記特定のキーワードは、前記取引対象の使用方法、前記取引対象と連携する他の取引対象の使用方法、または、前記取引対象の構成要素の説明に関するキーワードである、
ことを特徴とする検出装置。
【請求項１１】
プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有する検出装置が実行する検出方法であって、
前記プロセッサは、
取引対象に関するページ群を有するサイトに正規な取引対象に関する検索キーワードを用いてアクセスした結果、前記サイトから前記検索キーワードに一致または関連する文字列を含む特定のページを検索する検索処理と、
前記検索処理によって検索された特定のページから、前記特定のページに含まれる特定の取引対象を特定する第１評価対象文字列と、前記特定の取引対象を説明する第２評価対象文字列と、を取得する取得処理と、
不正な取引対象に関する評価キーワードと、前記取得処理によって取得された第１評価対象文字列および第２評価対象文字列と、に基づいて、前記特定のページが不正な取引対象に関するページであるか否かを評価する評価処理と、
前記評価処理による評価結果を出力する出力処理と、
を実行することを特徴とする検出方法。
【請求項１２】
プロセッサに、
取引対象に関するページ群を有するサイトに正規な取引対象に関する検索キーワードを用いてアクセスした結果、前記サイトから前記検索キーワードに一致または関連する文字列を含む特定のページを検索する検索処理と、
前記検索処理によって検索された特定のページから、前記特定のページに含まれる特定の取引対象を特定する第１評価対象文字列と、前記特定の取引対象を説明する第２評価対象文字列と、を取得する取得処理と、
不正な取引対象に関する評価キーワードと、前記取得処理によって取得された第１評価対象文字列および第２評価対象文字列と、に基づいて、前記特定のページが不正な取引対象に関するページであるか否かを評価する評価処理と、
前記評価処理による評価結果を出力する出力処理と、
を実行させることを特徴とする検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報を検出する検出装置、検出方法、および検出プログラムに関する。
【背景技術】
【０００２】
特許文献１は、使用許諾を必要とする画像データの不正使用調査を行う際に、調査対象とする画像データと一致又は類似する画像データをＷｅｂ上から検索し、その結果を調査依頼者に通知するサーバシステムを開示する。このサーバシステムは、検索サーバ及び管理サーバを有し、クライアント端末とネットワークを介して接続される。管理サーバは、クライアント端末から入力された画像データを調査対象として調査依頼者毎に調査対象ＤＢに登録し、その画像データがネットワーク上のＷｅｂサイト群において不正使用されていないか調査するための調査条件を設定する。検索サーバは、調査対象ＤＢに登録した画像データの特徴量を算出し、その特徴量及び調査条件に基づいて前記調査対象の画像データと一致又は類似する画像データをＷｅｂサイト群から検索し、管理サーバは、前記検索した結果をクライアント端末に送信する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−３８４０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１のサーバシステムは、調査対象ＤＢに画像データをためていき精度をあげていく。すなわち、登録する画像データを追加していくための手間がかかる。また、不正なコンテンツは内容や手口を変えてＷｅｂサイトにアップロードされるため、調査対象ＤＢに画像データをためていくような方法では、状況の変化への対応が困難である。
【０００５】
本発明は、不正な取引対象候補を効率的に検出することを目的とする。
【課題を解決するための手段】
【０００６】
本願において開示される発明の一側面となる検出装置、検出方法、および検出プログラムは、プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有する検出装置であって、前記プロセッサは、取引対象に関するページ群を有するサイトに正規な取引対象に関する検索キーワードを用いてアクセスした結果、前記サイトから前記検索キーワードに一致または関連する文字列を含む特定のページを検索する検索処理と、前記検索処理によって検索された特定のページから、前記特定のページに含まれる特定の取引対象を特定する第１評価対象文字列と、前記特定の取引対象を説明する第２評価対象文字列と、を取得する取得処理と、不正な取引対象に関する評価キーワードと、前記取得処理によって取得された第１評価対象文字列および第２評価対象文字列と、に基づいて、前記特定のページが不正な取引対象に関するページであるか否かを評価する評価処理と、前記評価処理による評価結果を出力する出力処理と、を実行することを特徴とする。
【発明の効果】
【０００７】
本発明の代表的な実施の形態によれば、不正な取引対象候補を効率的に検出することができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【０００８】
【図１】図１は、不正アプリ検出例を示す説明図である。
【図２】図２は、コンピュータのハードウェア構成例を示すブロック図である。
【図３】図３は、検出装置の機能的構成例を示すブロック図である。
【図４】図４は、検索キーワードリストの一例を示す説明図１である。
【図５】図５は、検索キーワードリストの一例を示す説明図２である。
【図６】図６は、検索キーワードリストの一例を示す説明図３である。
【図７】図７は、評価キーワードリストの一例を示す説明図１である。
【図８】図８は、評価キーワードリストの一例を示す説明図２である。
【図９】図９は、評価キーワードリストの一例を示す説明図３である。
【図１０】図１０は、採点ルールの一例を示す説明図である。
【図１１】図１１は、不正アプリ検出リストの一例を示す説明図である。
【図１２】図１２は、メニュー画面の一例を示す説明図である。
【図１３】図１３は、検索条件設定画面の一例を示す説明図である。
【図１４】図１４は、国指定リスト設定画面の一例を示す説明図である。
【図１５】図１５は、検索キーワード設定画面の一例を示す説明図である。
【図１６】図１６は、検索結果取得上限値設定画面の一例を示す説明図である。
【図１７】図１７は、アクセススリープ間隔設定画面の一例を示す説明図である。
【図１８】図１８は、検出装置による不正アプリ検出処理手順例を示すフローチャートである。
【図１９】図１９は、抽出部による不正アプリ候補抽出処理（ステップＳ１８０１）の詳細な処理手順例を示すフローチャートである。
【図２０】図２０は、絞り込み部によるホワイトリストおよび除外対象リスト突合せ処理（ステップＳ１８０２）の詳細な処理手順例を示すフローチャートである。
【図２１】図２１は、取得部による明細ページデータ取得処理（ステップＳ１８０３）の詳細な処理手順例を示すフローチャートである。
【図２２】図２２は、不正アプリ候補評価処理（ステップＳ１８０４）の詳細な処理手順例を示すフローチャートである。
【図２３】図２３は、作成部による不正アプリ候補検出リスト作成処理（ステップＳ１８０５）の詳細な処理手順例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、添付図面を用いて本発明にかかる検出装置１００、検出方法、および検出プログラムの実施例について説明する。検出装置１００、検出方法、および検出プログラムは、不正な取引対象候補を検出する。「取引対象」とは、物品やソフトウェアを含む。たとえば、スマートフォンやスマートウォッチは物品であり、スマートフォンにインストールされ、スマートウォッチを制御するアプリケーション（以下、単に「アプリ」）はソフトウェアである。以下の実施例では、正規のアプリの提供元（開発元含む）から許諾を受けていない無許諾の不正アプリを検出する例について説明する。
【００１０】
＜不正アプリ検出例＞
図１は、不正アプリ検出例を示す説明図である。検出装置１００、ユーザ装置１０１、配信サーバ１０２、およびエンドユーザ端末１０３は、インターネットなどのネットワーク１０４に通信可能に接続される。検出装置１００は、上述したように不正な取引対象を検出する。ユーザ装置１０１は、検出装置１００に検出条件を設定し、検出結果の通知を受ける。「ユーザ」とは、ユーザ装置１０１を操作して検出装置１００を利用する者である。本例では、ユーザは、ＸＹＺ電気株式会社の社員である。
【００１１】
配信サーバ１０２は、取引対象に関する明細ページを有するサイトである。明細ページとは、取引対象に関する情報を記述したＷｅｂページである。配信サーバ１０２は、本例では、スマートフォン用のアプリを配信するアプリストアである。明細ページは、たとえば、アプリの明細ページ１３１，１３２である。配信サーバ１０２は、与えられた検索キーワードの一致度に基づくスコア順に、該当する明細ページへのＵＲＬ（アプリのアプリＩＤ含む）がリスト化された一覧情報を返す機能を有する。エンドユーザ端末１０３は、エンドユーザが使用する端末であり、本例では、スマートフォンである。「エンドユーザ」とは、エンドユーザ端末１０３の使用者である。
【００１２】
エンドユーザ端末１０３は、配信サーバ１０２にアクセスして、アプリの明細ページをダウンロードし、表示画面１３０に表示する。ここで、正規アプリの明細ページ１３１と不正アプリの明細ページ１３２を例に挙げて説明するが、両明細ページ１３１，１３２のレイアウトは共通である。なお、不正アプリは、一例として、正規アプリの提供元であるＸＹＺ電機株式会社から許諾されておらず、かつ、ＸＹＺ電機株式会社の製品である「ＣＤＥＦ」の操作マニュアルを電子化したアプリとする。
【００１３】
正規アプリの明細ページ１３１および不正アプリの明細ページ１３２はそれぞれ、アイコン１４１と、アプリ名１４２と、提供元名１４３と、ダウンロードボタン１４４と、サムネイル画像１４５と、説明文１４６と、を表示する。アイコン１４１は、アプリを示す所定サイズのサムネイル画像である。アプリ名１４２は、アプリの名称を示す文字列である。本例では、正規アプリのアプリ名１４２を「ＡＢＣ」とし、不正アプリのアプリ名１４２を「ＣＤＥＦマニュアル」とする。
【００１４】
提供元名１４３は、アプリの提供元の名称を示す文字列である。本例では、正規アプリの提供元名１４３を「ＸＹＺ電機株式会社」とし、不正アプリの提供元名１４３を「ｑｒｓｔｕｖ」とする。ダウンロードボタン１４４は、エンドユーザの押下によりアプリをダウンロードさせるためのボタンである。ダウンロードボタン１４４に「インストール」と表記されている場合、そのアプリは無料である。ダウンロードボタン１４４に金額が表記されている場合、そのアプリは有料である。
【００１５】
本例では、正規アプリのダウンロードボタン１４４に「インストール」と表記され、不正アプリのダウンロードボタン１４４に「￥５００」と表記されている。したがって、エンドユーザは、正規アプリでは課金されないが、不正アプリで課金されてしまう。したがって、このような不正アプリが横行すると、正規の提供元に本来課金されるべき金額が課金されなかったり、たとえ無課金であっても不正アプリの品質が悪いと正規の提供元に対するブランドイメージの毀損を招いたりする。サムネイル画像１４５は、アプリを紹介する画像である。説明文１４６は、アプリの使用方法を説明する文字列である。
【００１６】
＜コンピュータのハードウェア構成例＞
図２は、コンピュータ（検出装置１００、ユーザ装置１０１、配信サーバ１０２、およびエンドユーザ端末１０３を含む）のハードウェア構成例を示すブロック図である。コンピュータ２００は、プロセッサ２０１と、記憶デバイス２０２と、入力デバイス２０３と、出力デバイス２０４と、通信インターフェース（通信ＩＦ）２０５と、を有する。プロセッサ２０１、記憶デバイス２０２、入力デバイス２０３、出力デバイス２０４、および通信ＩＦ２０５は、バス２０６により接続される。プロセッサ２０１は、コンピュータ２００を制御する。記憶デバイス２０２は、プロセッサ２０１の作業エリアとなる。また、記憶デバイス２０２は、各種プログラムやデータを記憶する非一時的なまたは一時的な記録媒体である。記憶デバイス２０２としては、たとえば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、フラッシュメモリがある。入力デバイス２０３は、データを入力する。入力デバイス２０３としては、たとえば、キーボード、マウス、タッチパネル、テンキー、スキャナがある。出力デバイス２０４は、データを出力する。出力デバイス２０４としては、たとえば、ディスプレイ、プリンタがある。通信ＩＦ２０５は、ネットワークと接続し、データを送受信する。
【００１７】
＜検出装置１００の機能的構成例＞
図３は、検出装置１００の機能的構成例を示すブロック図である。検出装置１００は、検索条件ＤＢ３１０と、ホワイトリスト３３１と、除外対象リスト３３２と、評価条件ＤＢ３６０と、検索部３０１（抽出部３０２および絞り込み部３０３）と、取得部３０４と、評価部３０５と、作成部３０６と、出力部３０７と、を有する。検索条件ＤＢ３１０および評価条件ＤＢ３６０は、具体的には、たとえば、図２に示した記憶デバイス２０２により実現される。検索部３０１（抽出部３０２および絞り込み部３０３）、取得部、評価部、作成部、および出力部は、具体的には、たとえば、図２に示した記憶デバイス２０２に記憶されたプログラムをプロセッサ２０１に実行させることにより実現される。
【００１８】
検索条件ＤＢ３１０は、検索条件を記憶するデータベースである。検索条件ＤＢ３１０は、検出装置１００内部に有するが、検出装置１００がアクセス可能な外部に設けられてもよい。検索条件ＤＢ３１０は、具体的には、たとえば、国指定リスト３１１と、検索キーワードリスト３１２と、検索結果取得上限値３１３と、アクセススリープ間隔３１４と、を記憶する。
【００１９】
国指定リスト３１１は、国（地域を含んでもよい）を指定する国別コードの一覧情報である。たとえば、日本であれば「ＪＰ」、アメリカ合衆国であれば「ＵＳ」、中華人民共和国であれば「ＣＮ」、台湾であれば「ＴＷ」である。配信サーバ１０２は、国ごとに、配信可能なアプリ群を変えている。たとえば、あるアプリの明細ページが、ある国のエンドユーザ端末１０３ではそのアプリがダウンロード可能に表示されるが、他の国のエンドユーザ端末１０３では表示されない。国指定リスト３１１は、あらかじめ、または、ユーザがユーザ装置１０１を操作することにより、検出装置１００に設定される。国別コードは、ユーザがユーザ装置１０１を操作することにより国指定リスト３１１から選択される。
【００２０】
検索キーワードリスト３１２は、検索キーワードの一覧情報である。検索キーワードリスト３１２は、検索キーワードの種類ごとに存在する。検索キーワードは、配信サーバ１０２が記憶するアプリの明細ページ群を検索するためのキーワードである。
【００２１】
図４〜図６は、検索キーワードリスト３１２の一例を示す説明図１〜３である。図４は、検索キーワードの種類が企業名４０１である検索キーワードリスト４００を示す。図５は、検索キーワードの種類が製品名５０１である検索キーワードリスト５００を示す。図６は、検索キーワードの種類が同業他社名６０１である検索キーワードリスト６００を示す。
【００２２】
いずれの検索キーワードリスト４００〜６００も、単独利用４０２を有する。単独利用４０２は、対応する検索キーワードが単独で利用可能か否かを示すフラグである。「有り」は、対応する検索キーワードの単独で利用可能であることを示す。たとえば、検索キーワードリスト４００の項番＃１のエントリでは、企業名４０１が「ＸＹＺ電機」であり、単独利用４０２が「有り」である。したがって、「ＸＹＺ電機」は、検索キーワードとして単独で利用可能である。
【００２３】
また、「なし」は、対応する検索キーワードの単独での利用が不可能であることを示す。たとえば、検索キーワードリスト４００の項番＃４のエントリでは、企業名４０１が「ＸＹＺ」であり、単独利用４０２が「なし」である。したがって、「ＸＹＺ」は、検索キーワードとして単独で利用不可能である。単独利用４０２が「なし」の検索キーワードについては、他の検索キーワードと組み合わせて、検索部３０１による検索に用いられる。他の検索キーワードは、同一の検索キーワードリスト内に存在してもよく、他の検索キーワードリスト内に存在してもよい。また、他の検索キーワードの単独利用４０２は、「有り」および「なし」のいずれでもよい。
【００２４】
検索キーワードリスト４００〜６００は、あらかじめ、または、ユーザがユーザ装置１０１を操作することにより、検出装置１００に設定される。検索キーワードは、検出装置１００が検索キーワードリスト４００〜６００から単独利用４０２を考慮して選択される。
【００２５】
企業名４０１は、当該企業を示す名称である。企業名４０１は、日本語名でも外国語名（たとえば、英語名）でもよい。企業名４０１は、その略称でもよい。製品名５０１は、当該製品を製造する企業の代表的な製品の名称や型番である。製品名５０１と同等なブランド価値を持つ愛称でもよい。同業他社名６０１は、企業名４０１で特定される企業と同業の他社である。企業名４０１と組み合わせて検索に用いることで、当該業界の各種メーカーの製品や部品を扱うアプリの検索が可能となる。
【００２６】
図３に戻り、検索結果取得上限値３１３は、配信サーバ１０２からの検索されたＵＲＬ群のうち検出装置１００が取得可能な検索結果の上限数を決定する値である。たとえば、検索結果取得上限値３１３が「５０」である場合、検出装置１００は、検索されたＵＲＬ群から配信サーバ１０２でのスコアが上位５０件のＵＲＬを取得する。この場合、検出装置１００は、５１番目以降のＵＲＬを削除する。
【００２７】
検索結果取得上限値３１３は、あらかじめ、または、ユーザがユーザ装置１０１を操作することにより、検出装置１００に設定される。
【００２８】
アクセススリープ間隔３１４は、検出装置１００が配信サーバ１０２に対し検索キーワードで検索処理を実行するためにアクセスしてから次にアクセスするまで、検索処理をスリープ状態にしておく時間間隔である。アクセススリープ間隔３１４を設定することで、検出装置１００から配信サーバ１０２への短期間でのアクセス集中によって、配信サーバ１０２が検出装置１００からのアクセスを遮断するのを抑制する。
【００２９】
アクセススリープ間隔３１４は、あらかじめ、または、ユーザがユーザ装置１０１を操作することにより、検出装置１００に設定される。
【００３０】
ホワイトリスト３３１は、正規アプリのアプリＩＤを記憶する一覧情報である。アプリＩＤは、アプリを特定する一意の識別情報であり、アプリＩＤが異なればアプリが異なる。正規アプリのアプリＩＤは、検出装置１００のホワイトリスト３３１および配信サーバ１０２に登録される。ホワイトリスト３３１のアプリＩＤは、あらかじめ、または、ユーザがユーザ装置１０１を操作することにより設定される。
【００３１】
除外対象リスト３３２は、除外対象アプリのアプリＩＤを記憶する一覧情報である。除外対象アプリは、正規アプリではないが配信サーバ１０２からの検索結果に含めたくないアプリ、たとえば、すでに不正アプリとして検出済みのアプリである。除外対象アプリのアプリＩＤは、検出装置１００のホワイトリスト３３１および配信サーバ１０２に登録される。除外対象リスト３３２のアプリＩＤは、あらかじめ、または、ユーザがユーザ装置１０１を操作することにより設定される。
【００３２】
評価条件ＤＢ３６０は、評価キーワードリスト３６１と、採点ルール３６２と、を有する。評価キーワードリスト３６１は、評価キーワードの一覧情報である。評価キーワードリスト３６１は、評価キーワードの種類ごとに存在する。評価キーワードは、明細ページが検索されたアプリが不正アプリであるかを評価するためのキーワードである。
【００３３】
図７〜図９は、評価キーワードリスト３６１の一例を示す説明図１〜３である。図７は、評価キーワードの種類が製品種別名７０１である評価キーワードリスト７００を示す。図８は、評価キーワードの種類があやしいキーワード８０１である評価キーワードリスト８００を示す。図９は、評価キーワードの種類がグループ企業名９０１である評価キーワードリスト９００を示す。
【００３４】
いずれの評価キーワードリスト７００〜９００も、上述した単独利用４０２を有する。単独利用４０２は、対応する評価キーワードが単独で利用可能か否かを示すフラグである。「有り」は、対応する評価キーワードの単独で利用可能であることを示す。たとえば、評価キーワードリスト９００の項番＃１のエントリでは、グループ企業名９０１が「ＸＹＺ  Ａｕｔｏｍｏｔｉｖｅ」であり、単独利用４０２が「有り」である。したがって、「ＸＹＺ  Ａｕｔｏｍｏｔｉｖｅ」は、評価キーワードとして単独で利用可能である。
【００３５】
また、「なし」は、対応する評価キーワードの単独での利用が不可能であることを示す。たとえば、評価キーワードリスト７００の項番＃１のエントリでは、製品種別名７０１が「カメラ」であり、単独利用４０２が「なし」である。したがって、「カメラ」は、評価キーワードとして単独で利用不可能である。単独利用４０２が「なし」の評価キーワードについては、他の評価キーワードと組み合わせて、評価部３０５による評価に用いられる。他の評価キーワードは、同一の評価キーワードリスト内に存在してもよく、他の評価キーワードリスト内に存在してもよい。また、他の評価キーワードの単独利用４０２は、「有り」および「なし」のいずれでもよい。
【００３６】
評価キーワードリスト７００〜９００は、あらかじめ、または、ユーザがユーザ装置１０１を操作することにより、検出装置１００に設定される。評価キーワードは、検出装置１００が評価キーワードリスト７００〜９００から単独利用４０２を考慮して選択される。また、検出装置１００は、検索キーワードリスト４００〜６００の少なくとも１つを、評価キーワードリスト３６１として用いてもよい。
【００３７】
製品種別名７０１は、当該企業が扱う製品の種別を示す名称である。企業名４０１だけではヒットしないアプリが、製品種別名７０１と組み合わせることでヒットする場合がある。
【００３８】
あやしいキーワード８０１は、不正アプリの明細ページ１３２に使用されやすいとユーザが想定した、または、実際に不正アプリの明細ページ１３２に過去に使用されたことがある特定のキーワードである。具体的には、たとえば、あやしいキーワード８０１は、企業の作成文書などによく含まれる一般用語である。より具体的には、たとえば、あやしいキーワード８０１は、取扱説明書やカタログ、トレーニングブックのようなアプリの使用方法や、アプリと連携する製品の使用方法に関するキーワードや、製品を構成する部品などの説明に関するキーワードである。
【００３９】
企業名４０１および製品名５０１と組み合わせて検索に用いることで、文書の電子化アプリがヒットする場合がある。あやしいキーワード８０１が不正アプリの明細ページ１３２に使用されると、エンドユーザが正規アプリと勘違いしてエンドユーザ端末１０３にダウンロードしてしまう。このように、不正アプリのダウンロードを防止するために、怪しいキーワード８０１が検索条件として設定される。
【００４０】
グループ企業名９０１は、企業名４０１で特定される企業が所属するグループ内の他の企業名である。グループ企業が提供しているアプリやグループ企業と取引している取引先企業のアプリがヒットする場合がある。
【００４１】
図３に戻り、採点ルール３６２は、不正アプリ候補検出リスト（明細ページデータ）３５０内の不正アプリ候補を評価するための採点項目と、採点項目の有無に対応するポイントと、を規定した情報である。不正アプリ候補検出リスト（明細ページデータ）３５０は、不正アプリ候補ごとに、不正アプリ候補のアプリ名、説明文、および画像内テキストを含む文字列情報である。
【００４２】
図１０は、採点ルール３６２の一例を示す説明図である。採点ルール３６２は、第１評価項目１００１（企業名４０１に対応）、第２評価項目１００２（製品名５０１に対応）および第３評価項目１００３（あやしいキーワード８０１に対応）と、第１評価項目１００１〜第３評価項目１００３に対応する評価ポイント１００４と、を有する。本例では、検索キーワードリスト４００および検索キーワードリスト５００を評価キーワードリストとして採用し、かつ、評価キーワードリスト７００〜９００のうち評価キーワードリスト８００を採用した場合の採点ルール３６２である。なお、図９では、評価項目を３個用いたが、評価項目は、１個または２個でもよく、４個以上でもよい。
【００４３】
評価ポイント１００４は、不正アプリ候補検出リスト（明細ページデータ）３５０内における第１評価項目１００１〜第３評価項目１００３の有無の８通りの組み合わせに応じた点数である。評価ポイント１００４が高いほど、不正アプリの可能性が高いことを示す。
【００４４】
図３に戻り、検索部３０１は、取引対象（本例ではアプリ）に関する明細ページ群を有する配信サーバ１０２に正規な取引対象に関する検索キーワードを用いてアクセスした結果、配信サーバ１０２から検索キーワードに一致または関連する文字列を含む特定の明細ページを検索する。ここで、検索キーワードに関連する文字列とは、検索キーワードを含む文字列であり、たとえば、検索キーワードと前方一致、後方一致または部分一致する単語である。また、検索部３０１は、検索キーワードの一部を含む文字列を、検索キーワードに関連する文字列として検索してもよい。また、検索キーワードが複数の検索キーワードの組み合わせである場合、複数の検索キーワードの一部の検索キーワードを含む文字列を、検索キーワードに関連する文字列として検索してもよい。
【００４５】
検索部３０１について具体的に説明する。検索部３０１は、抽出部３０２と絞り込み部３０３とを有する。抽出部３０２は、検索条件ＤＢ３１０の検索条件にしたがって配信サーバ１０２内の明細ページ群を検索し、不正アプリ候補の明細ページのＵＲＬを検索結果として抽出する。検索条件ＤＢ３１０の検索条件とは、国指定リスト３１１から選択された国別コード、検索キーワードリスト３１２から選択された検索キーワード、検索結果取得上限値３１３、およびアクセススリープ間隔３１４である。
【００４６】
具体的には、たとえば、抽出部３０２は、配信サーバ１０２のＵＲＬ、検索キーワード、国別コードを含む検索情報を配信サーバ１０２に送信する。配信サーバ１０２は、検索情報に従って明細ページ群を検索し、該当する不正アプリ候補の明細ページへのＵＲＬ（不正アプリ候補のアプリＩＤ含む）を検索結果として抽出部３０２に返す。検索結果は、配信サーバ１０２での検索キーワードの一致度に基づくスコア順に、該当する明細ページへのＵＲＬがリスト化された一覧情報である。
【００４７】
抽出部３０２は、スコアが１位のＵＲＬから検索結果取得上限値３１３に一致する順位までのＵＲＬを検索結果から抽出し、不正アプリ候補検出リスト３２０として出力する。抽出部３０２は、アクセススリープ間隔３１４の間、検索情報の配信サーバ１０２への送信を停止し、アクセススリープ間隔３１４分の時間経過度、異なる検索キーワードで検索情報を生成して配信サーバ１０２に送信する。
【００４８】
絞り込み部３０３は、ホワイトリスト３３１および除外対象リスト３３２の少なくとも一方を用いて、不正アプリ候補検出ＵＲＬリスト３２０内のＵＲＬを絞り込む。具体的には、たとえば、絞り込み部３０３は、ホワイトリスト３３１を用いる場合は、ホワイトリスト３３１内のアプリＩＤを含むＵＲＬを不正アプリ候補検出ＵＲＬリスト３２０から削除する。
【００４９】
また、絞り込み部３０３は、除外対象リスト３３２を用いる場合は、ホワイトリスト３３１内のアプリＩＤを含むＵＲＬを不正アプリ候補検出ＵＲＬリスト３２０から削除する。絞り込み部３０３から出力された不正アプリ候補検出ＵＲＬリスト３２０を不正アプリ候補検出ＵＲＬリスト（不要データ削除済み）３４０と称す。なお、絞り込み部３０３は、必須な機能ではなく選択的な機能である。絞り込み部３０３を適用しない場合、抽出部３０２から出力された不正アプリ候補検出リスト３２０が取得部３０４に出力される。
【００５０】
取得部３０４は、検索部３０１からの不正アプリ候補検出ＵＲＬリスト（不要データ削除済み）３４０または不正アプリ候補検出リスト３２０内の不正アプリ候補検出ＵＲＬを参照して配信サーバ１０２にアクセスし、当該不正アプリ候補検出ＵＲＬに対応する明細ページの明細ページデータを配信サーバ１０２から取得する。たとえば、図１に示した明細ページ１３２の場合、明細ページデータは、アイコン１４１から抽出されたテキストデータと、アプリ名１４２と、提供元名１４３と、ダウンロードボタン１４４のテキストデータと、サムネイル画像１４５から抽出されたテキストデータと、説明文１４６と、を含む。
【００５１】
取得した明細ページごとの明細ページデータを不正アプリ候補検出リスト（明細ページデータ）３５０と称す。アイコン１４１から抽出されたテキストデータおよびサムネイル画像１４５から抽出されたテキストデータを画像内テキストと称す。
【００５２】
評価部３０５は、評価条件ＤＢ３６０を用いて、不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページデータを評価する。具体的には、たとえば、評価部３０５は、評価キーワードリスト３６１内の評価キーワードで不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページデータを検索する。
【００５３】
そして、評価部３０５は、不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページデータの各々について、評価キーワードの有無を特定し、採点ルール３６２を用いて評価ポイントを算出する。具体的には、たとえば、評価部３０５は、不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページデータのアプリ名１４２での評価キーワードの有無と、説明文１４６および画像内テキストでの評価キーワードの有無と、の各々について、採点ルール３６２を用いて評価ポイントを算出する。
【００５４】
評価部３０５は、各評価ポイントを加算して合計ポイントを算出する。合計ポイントが高いほど、その明細ページは不正アプリの明細ページである可能性が高いことを意味する。このあと、評価部３０５は、不正アプリ候補検出リスト（採点入り）３７０を出力する。不正アプリ候補検出リスト（採点入り）３７０は、不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページごとに、アプリＩＤ１１０１、アプリ名１１０２、課金額１１０３、提供元１１０４、ＵＲＬ１１０５、更新日１１０６、アプリ名評価ポイント１１０７、アプリ名チェック項目１１０８、説明文評価ポイント１１０９、説明文チェック項目１１１０、および合計評価ポイント１１１１を含む明細ページデータ（図１１を参照）である。
【００５５】
作成部３０６は、不正アプリ候補検出リストテンプレート３８０に不正アプリ候補検出リスト（採点入り）３７０を与えて、不正アプリ検出リスト３９０を作成する。
【００５６】
図１１は、不正アプリ検出リスト３９０の一例を示す説明図である。不正アプリ検出リスト３９０は、アプリＩＤ１１０１、アプリ名１１０２、課金１１０３、提供元１１０４、ＵＲＬ１１０５、更新日１１０６、アプリ名評価ポイント１１０７、アプリ名チェック項目１１０８、説明文評価ポイント１１０９、説明文チェック項目１１１０、合計評価ポイント１１１１を含む。これらのフィールドが不正アプリ候補検出リストテンプレート３８０であり、項番＃ごとのエントリが不正アプリ候補の明細ページデータである。
【００５７】
アプリＩＤ１１０１は、不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページへのＵＲＬ１１０５に含まれるアプリＩＤである。アプリ名１１０２は、不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページでアプリ名１４２として存在する文字列である。
【００５８】
課金１１０３は、不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページで課金額として存在する文字列である。図１の明細ページ１３１の場合は、ダウンロードボタン１４４に「インストール」が表示されているため、課金額は「０円」であり、図１の明細ページ１３２の場合は、ダウンロードボタン１４４に「￥５００」が表示されているため、課金額は「５００円」である。
【００５９】
提供元１１０４は、不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページで提供元１４３として存在する文字列である。ＵＲＬ１１０５は、不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページにアクセス可能なＵＲＬである。更新日１１０６は、不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページを更新した最新の日付である。
【００６０】
アプリ名評価ポイント１１０７は、評価部３０５によって算出された評価ポイントである。具体的には、たとえば、アプリ名評価ポイント１１０７は、アプリ名１４２での評価キーワードの有無を採点ルール３６２に適用した場合に得られた評価ポイント１００４である。
【００６１】
アプリ名チェック項目１１０８は、アプリ名評価ポイント１１０７の算出元となった第１評価項目１００１〜第３評価項目１００３の値の組み合わせである。たとえば、項番＃１のエントリにおけるアプリ名チェック項目１１０８は、『製品名とあやしいキーワードが含まれてます』となっているが、アプリ名１４２での評価キーワードの有無について、第１評価項目１００１の値は「なし」、第２評価項目１００２の値は「あり」、第３評価項目１００３の値は「あり」という評価結果だったからである。
【００６２】
説明文名ポイント１１０９は、評価部３０５によって算出された評価ポイントである。具体的には、たとえば、説明文評価ポイント１１０９は、説明文１４６での評価キーワードの有無を採点ルール３６２に適用した場合に得られた評価ポイント１００４である。また、説明文評価ポイント１１０９は、説明文１４６での評価キーワードの有無および画像内テキストでの評価キーワードの有無を採点ルール３６２に適用した場合に得られた評価ポイント１００４としてもよい。画像内テキストとは、アイコン１４１やサムネイル画像１４５内に含まれる文字列パターンを画像認識処理により認識してテキスト化された文字列である。
【００６３】
たとえば、図１の明細ページ１３１のアイコン１４１から「ＡＢＣ」という文字列が認識され、明細ページ１３２のアイコン１４１から「ＸＹＺＥＭ」という文字列が認識される。また、明細ページ１３１のサムネイル画像１４５から「編集」や「保存」といった文字列が認識され、明細ページ１３２のサムネイル画像１４５から「ＡＢＣ」や「マニュアル」といった文字列が認識される。
【００６４】
説明文チェック項目１１１０は、説明文評価ポイント１１０９の算出元となった第１評価項目１００１〜第３評価項目１００３の値の組み合わせである。たとえば、項番＃１のエントリにおける説明文チェック項目１１１０は、『会社名と製品名とあやしいキーワードが含まれてます』となっているが、説明文１４６での評価キーワードの有無について、第１評価項目１００１の値は「あり」、第２評価項目１００２の値は「あり」、第３評価項目１００３の値は「あり」という評価結果だったからである。
【００６５】
合計評価ポイント１１１１は、不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページについて、評価部３０５によって算出されたアプリ名評価ポイント１１０７と説明文評価ポイント１１０９との合計値である。
【００６６】
図３に戻り、出力部３０７は、作成部３０６で作成された不正アプリ候補検出リスト３９０をユーザ装置１０１に出力する。具体的には、たとえば、出力部３０７は、ネットワーク１０４を介して、不正アプリ候補検出リスト３９０を、指定されたユーザ装置１０１に送信する。なお、出力部３０７は、不正アプリ候補検出リスト３９０を印刷出力してもよく、ネットワーク１０４上のプリンタに送信してもよい。また、出力部３０７は、検出装置１００内部の記憶デバイス２０２に不正アプリ候補検出リスト３９０を格納してもよく、ネットワーク１０４上のストレージに格納してもよい。
【００６７】
＜設定画面例＞
つぎに、検出装置１００による各種情報の事前設定例について、図１２〜図１７を用いて説明する。図１２〜図１７の各画面は、検出装置１００の出力デバイス２０４の一例であるディスプレイに表示される。
【００６８】
図１２は、メニュー画面の一例を示す説明図である。メニュー画面１２００は、検索条件設定ボタン１２０１と、メール送付先設定ボタン１２０２と、ホワイトリスト登録ボタン１２０３と、実行スケジュール設定ボタン１２０４と、除外対象リスト登録ボタン１２０５と、不正アプリ候補検出リストテンプレート登録ボタン１２０６と、採点ルール設定ボタン１２０７と、不正アプリ候補検出リスト履歴ボタン１２０８と、を有する。
【００６９】
検索条件設定ボタン１２０１は、検索条件ＤＢ３１０の内容をユーザの操作により設定するためのボタンである。検索条件設定ボタン１２０１が押下されると、図１３に示す検索条件設定画面１３００が表示される。
【００７０】
メール送付先設定ボタン１２０２は、メール送付先、すなわち、メールアドレスをユーザの操作により設定するためのボタンである。メール送付先設定ボタン１２０２が押下されると、不図示のメール送付先の設定画面が表示される。ユーザ操作により当該設定画面にメールアドレスが入力されることで設定されると、出力部３０７は、登録されたメールアドレス宛に不正アプリ候補検出リスト３９０を送信する。図３の例では、メニュー画面１２００が表示されているユーザ装置１０１と、メール送付先のユーザ装置１０１が同一ユーザ装置１０１とする。
【００７１】
ホワイトリスト登録ボタン１２０３は、ホワイトリスト３３１にアプリＩＤをユーザの操作により登録するためのボタンである。ホワイトリスト登録ボタン１２０３が押下されると、不図示のアプリＩＤの登録画面が表示される。ユーザ操作により当該登録画面にアプリＩＤが入力されることで登録されると、絞り込み部３０３は、登録後のホワイトリスト３３１を用いて、不正アプリ候補検出ＵＲＬリスト３２０を絞り込む。
【００７２】
実行スケジュール設定ボタン１２０４は、実行スケジュールをユーザの操作により設定するためのボタンである。実行スケジュールとは、検出装置１００が不正アプリ候補検出リスト３９０の生成を実行するためのスケジュールである。具体的には、たとえば、実行スケジュールは、毎週月曜日の９：００のような、周期的な実行開始時刻である。実行スケジュールは、国や検索キーワードなどの検索条件ごとに設定されてもよい。実行スケジュール設定ボタン１２０４が押下されると、不図示の実行スケジュールの設定画面が表示される。ユーザ操作により当該設定画面に実行スケジュールが入力されることで登録されると、検出装置１００は、設定後の実行スケジュールに従って、実行開始する。
【００７３】
除外対象リスト登録ボタン１２０５は、除外対象リスト３３２にアプリＩＤをユーザの操作により登録するためのボタンである。除外対象リスト登録ボタン１２０５が押下されると、不図示のアプリＩＤの登録画面が表示される。ユーザ操作により当該登録画面にアプリＩＤが入力されることで登録されると、絞り込み部３０３は、登録後の除外対象リスト３３２を用いて、不正アプリ候補検出ＵＲＬリスト３２０を絞り込む。
【００７４】
不正アプリ候補検出リストテンプレート登録ボタン１２０６は、不正アプリ候補検出リストテンプレートをユーザの操作により登録するためのボタンである。不正アプリ候補検出リストテンプレート登録ボタン１２０６が押下されると、不図示の不正アプリ候補検出リストテンプレート３８０の登録画面が表示される。ユーザ操作により当該登録画面に不正アプリ候補検出リストテンプレート３８０が入力されることで登録されると、作成部３０６は、不正アプリ候補検出リストテンプレート３８０を用いて、不正アプリ候補検出リスト３９０を作成する。
【００７５】
採点ルール設定ボタン１２０７は、採点ルール３６２をユーザの操作により設定するためのボタンである。採点ルール設定ボタン１２０７が押下されると、不図示の採点ルール３６２の設定画面が表示される。ユーザ操作により当該設定画面に採点ルール３６２が入力されることで設定されると、評価部３０５は、設定された採点ルール３６２を用いて不正アプリ候補検出リスト（明細ページデータ）３５０内の明細ページデータを評価する。
【００７６】
不正アプリ候補検出リスト履歴ボタン１２０８は、不正アプリ候補検出リスト３９０の履歴を表示するためのボタンである。不正アプリ候補検出リスト履歴ボタン１２０８が押下されると、過去の不正アプリ候補検出リスト３９０が検出装置１００のディスプレイに表示される。
【００７７】
図１３は、検索条件設定画面の一例を示す説明図である。検索条件設定画面１３００は、検索条件設定ボタン１２０１の押下により呼び出される。検索条件設定画面１３００は、国指定リスト設定ボタン１３０１と、検索キーワード設定ボタン１３０２と、検索結果取得上限値設定ボタン１３０３と、アクセススリープ間隔設定ボタン１３０４と、を有する。
【００７８】
国指定リスト設定ボタン１３０１は、検索キーワードによる検索対象となる国の指定をユーザの操作により設定するためのボタンである。国指定リスト設定ボタン１３０１が押下されると、図１４に示す国指定リスト設定画面１４００が表示される。
【００７９】
検索キーワード設定ボタン１３０２は、検索キーワードをユーザの操作により設定するためのボタンである。検索キーワード設定ボタン１３０２が押下されると、図１５に示す検索キーワード設定画面１５００が表示される。
【００８０】
検索結果取得上限値設定ボタン１３０３は、検索結果取得上限値３１３をユーザの操作により設定するためのボタンである。検索結果取得上限値設定ボタン１３０３が押下されると、図１６に示す検索結果取得上限値設定画面１６００が表示される。
【００８１】
アクセススリープ間隔設定ボタン１３０４は、アクセススリープ間隔３１４をユーザの操作により設定するためのボタンである。アクセススリープ間隔設定ボタン１３０４が押下されると、図１７に示すアクセススリープ間隔設定画面１７００が表示される。
【００８２】
図１４は、国指定リスト設定画面１４００の一例を示す説明図である。国指定リスト設定画面１４００は、国指定リスト設定ボタン１３０１の押下により呼び出される。国指定リスト設定画面１４００は、国ごとにチェックボックス１４０１を有する。図１４では、日本とアメリカ合衆国のチェックボックス１４０１にチェックが入力されている。ユーザ操作によりチェックボックス１４０１にチェックが入力されると、検出装置１００が、配信サーバ１０２にアクセスする場合、チェックが入力された国の国別コードを含む検索情報を配信サーバ１０２に送信する。
【００８３】
図１５は、検索キーワード設定画面の一例を示す説明図である。検索キーワード設定画面１５００は、検索キーワード設定ボタン１３０２の押下により呼び出される。検索キーワード設定画面１５００は、企業名設定ボタン１５０１と、製品名設定ボタン１５０２と、同業他社名設定ボタン１５０３と、を有する。企業名設定ボタン１５０１は、不図示の企業名設定画面を呼び出すボタンである。ユーザ操作により当該企業名設定画面に企業名が入力されることで、検索キーワードリスト３１２に登録される。
【００８４】
製品名設定ボタン１５０２は、不図示の製品名設定画面を呼び出すボタンである。ユーザ操作により当該製品名設定画面に製品名が入力されることで、検索キーワードリスト３１２に登録される。同業他社名設定ボタン１５０３は、不図示の同業他社名設定画面を呼び出すボタンである。ユーザ操作により当該同業他社名設定画面に同業他社名が入力されることで、検索キーワードリスト３１２に登録される。
【００８５】
図１６は、検索結果取得上限値設定画面１６００の一例を示す説明図である。検索結果取得上限値設定画面１６００は、検索結果取得上限値設定ボタン１３０３の押下により呼び出される。検索結果取得上限値設定画面１６００は、検索結果取得上限値３１３の入力欄１６０１を有する。図１６では、入力欄１６０１に「５０」が検索結果取得上限値３１３として入力されている。ユーザ操作により入力欄１６０１に検索結果取得上限値３１３が入力されると、検出装置１００が、配信サーバ１０２でのスコアが１位のＵＲＬから検索結果取得上限値３１３に一致する順位までのＵＲＬを検索結果から抽出し、不正アプリ候補検出リスト３２０として出力する。
【００８６】
図１７は、アクセススリープ間隔設定画面１７００の一例を示す説明図である。アクセススリープ間隔設定画面１７００は、アクセススリープ間隔設定ボタン１３０４の押下により呼び出される。アクセススリープ間隔設定画面１７００はアクセススリープ間隔３１４の入力欄１７０１を有する。図１７では、入力欄１７０１に「５」がアクセススリープ間隔３１４として入力されている。ユーザ操作により入力欄１７０１にアクセススリープ間隔３１４が入力されると、検出装置１００が配信サーバ１０２に対し検索キーワードで検索処理を実行する場合、配信サーバ１０２にアクセスしてから次にアクセスするまで、検索処理をスリープ状態にする。アクセススリープ間隔３１４を設定することで、検出装置１００から配信サーバ１０２への短期間でのアクセス集中によって、配信サーバ１０２が検出装置１００からのアクセスを遮断するのを抑制する。
【００８７】
＜検出装置１００による不正アプリ検出処理手順例＞
図１８は、検出装置１００による不正アプリ検出処理手順例を示すフローチャートである。検出装置１００は、抽出部３０２による不正アプリ候補抽出処理（ステップＳ１８０１）、絞り込み部３０３によるリスト突合せ処理（ステップＳ１８０２）、取得部３０４による明細ページデータ取得処理（ステップＳ１８０３）、評価部３０５による不正アプリ候補評価処理（ステップＳ１８０４）、作成部３０６による不正アプリ候補検出リスト作成処理（ステップＳ１８０５）、および、出力部３０７による不正アプリ候補検出リストメール送付処理（ステップＳ１８０６）を実行する。不正アプリ候補検出リストメール送付処理（ステップＳ１８０６）は、出力部３０７が、作成部３０６によって作成された不正アプリ候補検出リストを、メール送付先設定ボタン１２０２から設定された送付先のメールアドレス宛に送付する処理である。
【００８８】
図１９は、抽出部３０２による不正アプリ候補抽出処理（ステップＳ１８０１）の詳細な処理手順例を示すフローチャートである。抽出部３０２は、図１４の国指定リスト設定画面１４００で設定された国別コード群から未選択の国別コードがあれば、未選択の国別コードを１つ選択し（ステップＳ１９０１）、選択した国別コードについてステップＳ１９０２〜Ｓ１９０５を実行する。未選択の国別コードがあればステップＳ１９０１に戻り、未選択の国別コードがなければ（ステップＳ１９０６）、ステップＳ１８０７に移行する。
【００８９】
抽出部３０２は、選択した国別コードについて、検索キーワードリスト３１２から未選択の検索キーワードがあれば選択し（ステップＳ１９０２）、選択した検索キーワードについてステップＳ１９０３およびＳ１９０４を実行する。未選択の検索キーワードがあればステップＳ１９０２に戻り、未選択の検索キーワードがなければ（ステップＳ１９０５）、ステップＳ１９０１に戻って、抽出部３０２は、未選択の国別コードを１つ選択する。
【００９０】
ここで、ステップＳ１９０２において、図４〜図６の検索キーワードリスト４００〜６００のうち単独で選択対象となる検索キーワードは、単独利用４０２が「有り」である検索キーワードである。単独利用４０２が「なし」である検索キーワードは、単独利用４０２が「有り」または「なし」である１以上の他の検索キーワードとの組み合わせで選択対象となる。
【００９１】
たとえば、図４の企業名４０１の検索キーワード「ＸＹＺ」は、検索キーワードリスト５００および検索キーワードリスト６００内の１以上の検索キーワードと組み合わせることにより、選択対象となる。ただし、単独利用４０２が「なし」である検索キーワードが当該他の検索キーワードに含まれる場合は、組み合わせ相手から除外してもよい。たとえば、図４の企業名４０１の検索キーワード「ＸＹＺ」は、検索キーワードリスト４００の企業名４０１の検索キーワード「ＸＹＺ電機」、「ＸＹＺ  Ｅｌｅｃｔｒｉｃａｌ  Ｍａｃｈｉｎｅｒｙ」、および「ＸＹＺＥＭ」に含まれているため、これらは、組み合わせ相手から除外してもよい。これにより、不正アプリ候補抽出処理（ステップＳ１８０１）を網羅的かつ効率的に実行することができる。
【００９２】
ステップＳ１９０３では、抽出部３０２は、選択した国別コードおよび選択した検索キーワードを含む検索情報で配信サーバ１０２にアクセスし、配信サーバ１０２内の明細ページ群を検索し、検索された明細ページへのＵＲＬ群のうちスコアが上位Ｎ（Ｎ＝検索結果取得上限値３１３）件のＵＲＬを取得する（ステップＳ１９０３）。
【００９３】
ステップＳ１９０４では、抽出部３０２は、アクセススリープ間隔３１４の時間分、スリープ処理を実行する（ステップＳ１９０４）。これにより、配信サーバ１０２へのアクセスが中断される。このあと、抽出部３０２は、未選択の検索キーワードがあればステップＳ１９０２に戻り、未選択の検索キーワードがなければ（ステップＳ１９０５）、ステップＳ１９０６に移行する。
【００９４】
ステップＳ１９０７では、抽出部３０２は、マージ処理を実行して不正アプリ候補検出ＵＲＬリスト３２０を生成し（ステップＳ１９０７）、リスト突合せ処理（ステップＳ１８０２）に移行する。あるアプリの明細ページへの１つのＵＲＬが複数の国で利用可能である場合に国別コードごとに検索されてしまう。したがって、抽出部３０２は、国別コードごとに複数取得された同一のＵＲＬを１つのみ残して残余を削除するというマージ処理を実行する。これにより、不正アプリ候補検出ＵＲＬリスト３２０には、同一のＵＲＬが複数存在しない。したがって、後続の処理で、同一のＵＲＬを複数回適用するという無駄な処理がなくなるため、不正アプリ検出処理の効率化を図ることができる。
【００９５】
図２０は、絞り込み部３０３によるリスト突合せ処理（ステップＳ１８０２）の詳細な処理手順例を示すフローチャートである。絞り込み部３０３は、ホワイトリスト３３１に未選択のアプリＩＤがあれば１つ選択し（ステップＳ２００１）、ステップＳ２００２〜Ｓ２００４を実行する。未選択のアプリＩＤがあればステップＳ２００１に戻り、未選択のアプリＩＤがなければ（ステップＳ２００５）、ステップＳ２００６に移行する。
【００９６】
絞り込み部３０３は、選択アプリＩＤと不正アプリ候補検出ＵＲＬリスト３２０とを突き合わせ（ステップＳ２００２）、選択アプリＩＤと一致するアプリＩＤを含むＵＲＬが存在するか否かを判断する（ステップＳ２００３）。選択アプリＩＤと一致するアプリＩＤを含むＵＲＬが存在しなければ（ステップＳ２００３：Ｎｏ）、ステップＳ２００５に移行する。選択アプリＩＤと一致するアプリＩＤを含むＵＲＬが存在する場合（ステップＳ２００３：Ｙｅｓ）、絞り込み部３０３は、当該選択アプリＩＤと一致するアプリＩＤを含むＵＲＬを不正アプリ候補検出ＵＲＬリスト３２０から削除して（ステップＳ２００４）、ステップＳ２００５に移行する。
【００９７】
絞り込み部３０３は、除外対象リスト３３２に未選択のアプリＩＤがあれば１つ選択し（ステップＳ２００６）、ステップＳ２００７〜Ｓ２００９を実行する。未選択のアプリＩＤがあればステップＳ２００６に戻り、未選択のアプリＩＤがなければ（ステップＳ２０１０）、明細ページデータ取得処理（ステップＳ１８０３）に移行する。
【００９８】
絞り込み部３０３は、選択アプリＩＤと不正アプリ候補検出ＵＲＬリスト３２０とを突き合わせ（ステップＳ２００７）、選択アプリＩＤと一致するアプリＩＤを含むＵＲＬが存在するか否かを判断する（ステップＳ２００８）。選択アプリＩＤと一致するアプリＩＤを含むＵＲＬが存在しなければ（ステップＳ２００８：Ｎｏ）、ステップＳ２０１０に移行する。選択アプリＩＤと一致するアプリＩＤを含むＵＲＬが存在する場合（ステップＳ２００８：Ｙｅｓ）、絞り込み部３０３は、当該選択アプリＩＤと一致するアプリＩＤを含むＵＲＬを不正アプリ候補検出ＵＲＬリスト３２０から削除して不正アプリ候補検出ＵＲＬリスト（不要データ削除済）３４０を出力し（ステップＳ２００９）、ステップＳ２００５に移行する。
【００９９】
図２１は、取得部３０４による明細ページデータ取得処理（ステップＳ１８０３）の詳細な処理手順例を示すフローチャートである。取得部３０４は、不正アプリ候補検出ＵＲＬリスト（不要データ削除済）３４０から未選択のＵＲＬを選択し（ステップＳ２１０１）、ステップＳ２１０２〜Ｓ２１０５を実行してステップＳ２１０６に移行する。取得部３０４は、未選択のＵＲＬがあればステップＳ２１０１に移行し、未選択のＵＲＬがなければ不正アプリ候補評価処理（ステップＳ１８０４）に移行する。
【０１００】
取得部３０４は、選択したＵＲＬで配信サーバ１０２にアクセスし、アクセス先の明細ページを取得する（ステップＳ２１０２）。たとえば、図１に示したように、取得部３０４は、明細ページ１３２を取得する。取得部３０４は、取得したアクセス先の明細ページからデータ項目を取得する（ステップＳ２１０３）。たとえば、図１に示した明細ページ１３２の場合、データ項目は、アイコン１４１と、アプリ名１４２と、提供元名１４３と、ダウンロードボタン１４４と、サムネイル画像１４５と、説明文１４６と、を含む。
【０１０１】
取得部３０４は、画像ファイルからテキストデータを抽出する（ステップＳ２１０４）。たとえば、図１に示した明細ページ１３２の場合、画像認識により、アイコン１４１、ダウンロードボタン１４４、およびサムネイル画像１４５からテキストデータを抽出する。取得部３０４は、アクセススリープ間隔３１４の時間分、スリープ処理を実行する（ステップＳ２１０５）。これにより、配信サーバ１０２へのアクセスが中断される。このあと、取得部３０４は、未選択のＵＲＬがあればステップＳ２１０１に戻り、未選択のＵＲＬがなければ不正アプリ候補検出リスト（明細ページデータ）３５０を出力して（ステップＳ２１０６）、不正アプリ候補評価処理（ステップＳ１８０４）に移行する。
【０１０２】
図２２は、不正アプリ候補評価処理（ステップＳ１８０４）の詳細な処理手順例を示すフローチャートである。評価部３０５は、不正アプリ候補検出リスト（明細ページデータ）３５０内において、未選択の不正アプリ候補の明細ページデータを１つ選択し（ステップＳ２２０１）、選択した明細ページデータについてステップＳ２２０２〜Ｓ２２０６を実行し、ステップＳ２２０７に移行する。
【０１０３】
ステップＳ２２０２では、評価部３０５は、選択した明細ページデータ内のアプリ名が評価キーワードリスト３６１の評価キーワードに該当するか否かを判断する（ステップＳ２２０２）。ここで、ステップＳ２２０２において、単独で比較対象となる評価キーワードは、単独利用４０２が「有り」である評価キーワードである。単独利用４０２が「なし」である評価キーワードは、単独利用４０２が「有り」または「なし」である１以上の他の評価キーワードとの組み合わせで比較対象となる。ステップＳ２２０４、Ｓ２２０６も同様である。
【０１０４】
ステップＳ２２０３では、評価部３０５は、ステップＳ２２０２での判断結果を採点ルール３６２の第１評価項目１００１〜第３評価項目１００３に適用し、アプリ名１４２の評価ポイント１００４をアプリ名評価ポイント１１０７として算出するとともに、第１評価項目１００１〜第３評価項目１００３のチェック結果をアプリ名チェック項目１１０８として取得し、アプリ名評価ポイント１１０７とアプリ名チェック項目１１０８とを選択した明細ページデータに追記する（ステップＳ２２０３）。
【０１０５】
ステップＳ２２０４では、評価部３０５は、選択した明細ページデータ内の説明文１４６および画像内テキストが評価キーワードリスト３６２の評価キーワードに該当するか否かを判断する（ステップＳ２２０４）。
【０１０６】
ステップＳ２２０５では、評価部３０５は、ステップＳ２２０４での判断結果を採点ルール３６２の第１評価項目１００１〜第３評価項目１００３に適用し、説明文１４６および画像内テキストの評価ポイント１００４を説明文評価ポイント１１０９として算出するとともに、第１評価項目１００１〜第３評価項目１００３のチェック結果を説明文チェック項目１１１０として取得し、説明文評価ポイント１１０９と説明文チェック項目１１１０とを選択した明細ページデータに追記する（ステップＳ２２０５）。
【０１０７】
ステップＳ２２０５では、評価部３０５は、アプリ名の評価ポイント１００４と説明文および画像内テキストの評価ポイント１００４とを合計して、合計評価ポイントを算出し、選択した明細ページデータに追記する（ステップＳ２２０５）。
【０１０８】
このあと、評価部３０５は、未選択の不正アプリ候補の明細ページデータがあればステップＳ２２０１に戻り、未選択の不正アプリ候補の明細ページデータがなければ不正アプリ候補検出リスト（採点入り）３７０を出力して（ステップＳ２２０７）、不正アプリ候補検出リスト作成処理（ステップＳ１８０５）に移行する。
【０１０９】
図２３は、作成部３０６による不正アプリ候補検出リスト作成処理（ステップＳ１８０５）の詳細な処理手順例を示すフローチャートである。作成部３０６は、不正アプリ候補検出リストテンプレート３８０を読み込む（ステップＳ２３０１）。作成部３０６は、読み込んだ不正アプリ候補検出リストテンプレート３８０に不正アプリ候補検出リスト（採点入り）３７０の明細ページデータを書き出す（ステップＳ２３０２）。
【０１１０】
作成部３０６は、合計評価ポイント１１１１の降順でかつアプリＩＤ１１０１の昇順で、書き出された明細ページデータ群をソートする（ステップＳ２３０２）。これにより、合計評価ポイント１１１１が同点である複数の明細ページデータは、アプリＩＤ１１０１の昇順でソートされる。
【０１１１】
作成部３０６は、合計評価ポイント１１１１が０の明細ページデータを削除する（ステップＳ２３０４）。なお、削除対象となる明細ページデータの合計評価ポイント１１１１は０に限定されず、０よりも大きい所定ポイント以下であってもよい。このあと、不正アプリ候補検出リストメール送付処理（ステップＳ１８０６）に移行する。
【０１１２】
（１）このように、本実施例にかかる検出装置１００は、プログラムを実行するプロセッサ２０１と、プログラムを記憶する記憶デバイス２０２と、を有する。プロセッサ２０１は、アプリに関する明細ページ群を有する配信サーバ１０２に正規なアプリに関する検索キーワードを用いてアクセスした結果、配信サーバ１０２から検索キーワードに一致または関連する文字列を含む特定の明細ページを検索する検索処理と、検索処理によって検索された特定の明細ページから、特定の明細ページに含まれる特定のアプリを特定する第１評価対象文字列（たとえば、アプリ名１４２）と、特定のアプリを説明する第２評価対象文字列（たとえば、説明文１４６）と、を取得する取得処理と、不正なアプリに関する評価キーワードと、取得処理によって取得された第１評価対象文字列および第２評価対象文字列と、に基づいて、特定の明細ページが不正なアプリに関する明細ページであるか否かを評価する評価処理と、評価処理による評価結果を出力する出力処理と、を実行する。これにより、不正アプリ候補を自動的に検出することができる。
【０１１３】
（２）また、上記（１）の検出装置１００において、検索処理では、プロセッサ２０１は、配信サーバ１０２に検索キーワードおよび国別コードを用いてアクセスした結果、配信サーバ１０２から検索キーワードに一致または関連する文字列を含み、かつ、国が指定された特定の明細ページを検索する。これにより、特定の国でしか提供されない不正アプリ候補を検出することができる。
【０１１４】
（３）また、上記（１）の検出装置１００において、検索処理では、プロセッサ２０１は、特定のアプリＩＤに基づいて、検索キーワードに一致または関連する文字列を含む明細ページを特定の明細ページから除外する。これにより、正規アプリやすでに不正アプリとして検出済みのアプリを除外することができる。
【０１１５】
（４）また、上記（１）の検出装置１００において、検索処理では、プロセッサ２０１は、検索キーワードを用いて配信サーバ１０２にアクセスし、所定時間経過後に、他の検索キーワードで配信サーバ１０２にアクセスする。これにより、検出装置１００から配信サーバ１０２への短期間でのアクセス集中によって、配信サーバ１０２が検出装置１００からのアクセスを遮断するのを抑制する。
【０１１６】
（５）また、上記（１）の検出装置１００において、取得処理では、プロセッサ２０１は、特定のページにアクセスし、所定時間経過後に、他の特定のページにアクセスする。これにより、検出装置１００から配信サーバ１０２への短期間でのアクセス集中によって、配信サーバ１０２が検出装置１００からのアクセスを遮断するのを抑制する。
【０１１７】
（６）また、上記（１）の検出装置１００において、取得処理では、プロセッサ２０１は、特定の明細ページから、特定の明細ページに含まれる画像の中から特定した第３評価対象文字列を取得する。これにより、画像から取得された文字列で不正アプリ候補であるか否かを評価することができる。
【０１１８】
（７）また、上記（１）の検出装置１００において、評価処理では、プロセッサ２０１は、第１評価対象文字列（たとえば、アプリ名１４２）に評価キーワードが含まれているか否かという第１評価と、第２評価対象文字列（たとえば、説明文１４６）に評価キーワードが含まれているか否かという第２評価と、に基づいて、特定の明細ページが不正なアプリに関する明細ページであるかを評価する。これにより、特定の明細ページ内の異なる評価観点で、特定の明細ページを評価することができる。
【０１１９】
（８）また、上記（１）の検出装置１００において、評価キーワードは、検索キーワードと同一キーワードと、検索キーワードと異なるキーワードと、を含む。これにより、評価キーワードが検索キーワードと一部重複するため、正規アプリの明細ページに含まれる検索キーワードを含み、かつ、正規アプリの明細ページに含まれない評価キーワードを含む明細ページを、不正アプリ候補の明細ページとして検索することができる。すなわち、正規アプリと似て非となるアプリを不正アプリ候補として検出することができる。
【０１２０】
（８）また、上記（１）の検出装置１００において、検索キーワードは、アプリの企業名４０１、製品名５０１、および、同業他社名６０１、の中の少なくとも１つであり、評価キーワードは、アプリの企業名４０１、製品名５０１、および、あやしいキーワード８０１の中の少なくとも１つである。このように、検索キーワードおよび評価キーワードが一部重複する場合、正規アプリの明細ページに含まれる検索キーワードを含み、かつ、正規アプリの明細ページに含まれないあやしいキーワードを含む明細ページを、不正アプリ候補の明細ページとして検索することができる。
【０１２１】
（９）また、上記（８）の検出装置１００において、あやしいキーワード８０１は、アプリの使用方法、アプリと連携する製品の使用方法、または、アプリの構成要素の説明に関するキーワードである。これにより、不正アプリ候補の明細ページを適切に評価することができる。
【０１２２】
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。
【０１２３】
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
【０１２４】
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置、又は、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カード、ＳＤカード、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）の記録媒体に格納することができる。
【０１２５】
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。
【符号の説明】
【０１２６】
３１０  検索条件ＤＢ
３６０  評価条件ＤＢ
３１２，４００〜６００  検索キーワードリスト
３６２，７００〜９００  評価キーワードリスト
１００  検出装置
１０１  ユーザ装置
１０２  配信サーバ
１０３  エンドユーザ端末
３０１  検索部
３０２  抽出部
３０３  絞り込み部
３０４  取得部
３０５  評価部
３０６  作成部
３０７  出力部
【図１】
2020126465.tif 000003
【図２】
2020126465.tif 000004
【図３】
2020126465.tif 000005
【図４】
2020126465.tif 000006
【図５】
2020126465.tif 000007
【図６】
2020126465.tif 000008
【図７】
2020126465.tif 000009
【図８】
2020126465.tif 000010
【図９】
2020126465.tif 000011
【図１０】
2020126465.tif 000012
【図１１】
2020126465.tif 000013
【図１２】
2020126465.tif 000014
【図１３】
2020126465.tif 000015
【図１４】
2020126465.tif 000016
【図１５】
2020126465.tif 000017
【図１６】
2020126465.tif 000018
【図１７】
2020126465.tif 000019
【図１８】
2020126465.tif 000020
【図１９】
2020126465.tif 000021
【図２０】
2020126465.tif 000022
【図２１】
2020126465.tif 000023
【図２２】
2020126465.tif 000024
【図２３】
2020126465.tif 000025