(57)【要約】【課題】一般的なセキュリティ診断技術では発見されにくい、ＦＸシステム特有のセキュリティ上の不備を検出する。【解決手段】ＦＸシステム用セキュリティ診断支援装置１であって、不正な取引条件の取引リクエストを生成する生成手段１１と、取引リクエストをＦＸシステムに送信する送信手段１２と、ＦＸシステムから取引レスポンスを受信する受信手段１３と、取引レスポンスに含まれる取引結果を抽出し、当該取引結果に基づいて前記ＦＸシステムのセキュリティ上の不備を検出する検出手段１４とを有し、検出手段１４は、取引結果が正常の場合、前記取引リクエストに対してセキュリティ上の不備があると判別し、取引結果が異常の場合、前記取引リクエストに対してセキュリティ上の不備がないと判別する。【選択図】図１
2013008306.tif 000002
【特許請求の範囲】
【請求項１】
ＦＸシステム用セキュリティ診断支援装置であって、
不正な取引条件の取引リクエストを生成する生成手段と、
前記取引リクエストをＦＸシステムに送信する送信手段と、
前記ＦＸシステムから前記取引リクエストに対する取引レスポンスを受信する受信手段と、
前記取引レスポンスに含まれる取引結果を抽出し、当該取引結果に基づいて前記ＦＸシステムのセキュリティ上の不備を検出する検出手段と、を有し、
前記検出手段は、前記取引結果が正常の場合、前記取引リクエストに対してセキュリティ上の不備があると判別し、前記取引結果が異常の場合、前記取引リクエストに対してセキュリティ上の不備がないと判別すること
を特徴とするＦＸシステム用セキュリティ診断支援装置。
【請求項２】
請求項１記載のＦＸシステム用セキュリティ診断支援装置であって、
前記検出手段は、前記取引結果が正常の場合であって、かつ前記取引リクエストの取引が約定していない場合、前記取引リクエストに対してセキュリティ上の不備がないと判別すること
を特徴とするＦＸシステム用セキュリティ診断支援装置。
【請求項３】
コンピュータが行う、ＦＸシステムのセキュリティ診断を支援するＦＸシステム用セキュリティ診断支援方法であって、
不正な取引条件の取引リクエストを生成する生成ステップと、
前記取引リクエストを前記ＦＸシステムに送信する送信ステップと、
前記ＦＸシステムから前記取引リクエストに対する取引レスポンスを受信する受信ステップと、
前記取引レスポンスに含まれる取引結果を抽出し、当該取引結果に基づいて前記ＦＸシステムのセキュリティ上の不備を検出する検出ステップと、を行い、
前記検出ステップは、前記取引結果が正常の場合、前記取引リクエストに対してセキュリティ上の不備があると判別し、前記取引結果が異常の場合、前記取引リクエストに対してセキュリティ上の不備がないと判別すること
を特徴とするＦＸシステム用セキュリティ診断支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外国為替証拠金取引（margin Foreign eXchange trading）（以下、「ＦＸ」という。）システム用のセキュリティ診断支援技術に関する。
【背景技術】
【０００２】
近年、外国の通貨を売買して利益を得るＦＸを行う個人投資家が増加し、それにともない、ＦＸを取り扱うＦＸ取扱会社も増加している。各ＦＸ取扱会社は、インターネット等を介したオンライントレードでＦＸを個人投資家に提供するために、Ｗｅｂシステム（ＦＸシステム）を構築している。
【０００３】
Ｗｅｂシステムは、不特定多数のユーザが使用することを前提としたシステムであるため、様々なセキュリティ対策を講じられている。例えば、特許文献１には、Ｗｅｂアプリケーションの脆弱性の有無を診断するシステムが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１７２５１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＦＸは、高度な金融取引であり、ＦＸ特有の取引ロジックが存在する。そのため、ＦＸのオンライントレードを実現するＦＸシステムでは、ＦＸの取引ロジックに従った様々なアプリケーションを備えるものである。また、ＦＸシステムは、金融取引であるため、より高いセキュリティが求められている。
【０００６】
しかしながら、引用文献１のような一般的なセキュリティ診断技術では、ＦＸシステム特有のセキュリティ上の問題については考慮されていない。したがって、ＦＸシステム特有の脆弱性については発見されにくいという問題がある。
【０００７】
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、一般的なセキュリティ診断技術では発見されにくい、ＦＸシステム特有のセキュリティ上の不備を検出することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明は、ＦＸシステム用セキュリティ診断支援装置であって、不正な取引条件の取引リクエストを生成する生成手段と、前記取引リクエストをＦＸシステムに送信する送信手段と、前記ＦＸシステムから前記取引リクエストに対する取引レスポンスを受信する受信手段と、前記取引レスポンスに含まれる取引結果を抽出し、当該取引結果に基づいて前記ＦＸシステムのセキュリティ上の不備を検出する検出手段と、を有し、前記検出手段は、前記取引結果が正常の場合、前記取引リクエストに対してセキュリティ上の不備があると判別し、前記取引結果が異常の場合、前記取引リクエストに対してセキュリティ上の不備がないと判別する。
【０００９】
本発明は、コンピュータが行う、ＦＸシステムのセキュリティ診断を支援するＦＸシステム用セキュリティ診断支援方法であって、不正な取引条件の取引リクエストを生成する生成ステップと、前記取引リクエストを前記ＦＸシステムに送信する送信ステップと、前記ＦＸシステムから前記取引リクエストに対する取引レスポンスを受信する受信ステップと、前記取引レスポンスに含まれる取引結果を抽出し、当該取引結果に基づいて前記ＦＸシステムのセキュリティ上の不備を検出する検出ステップと、を行い、前記検出ステップは、前記取引結果が正常の場合、前記取引リクエストに対してセキュリティ上の不備があると判別し、前記取引結果が異常の場合、前記取引リクエストに対してセキュリティ上の不備がないと判別する。
【発明の効果】
【００１０】
本発明では、一般的なセキュリティ診断技術では発見されにくい、ＦＸシステム特有のセキュリティ上の不備を検出することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態が適用されたセキュリティ診断システムの全体構成図である。
【図２】セキュリティ診断支援装置のハードウェア構成例を示す図である。
【図３】セキュリティ診断支援装置の動作を示すフローチャートである。
【図４】不正な取引条件の一例を説明する説明図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について説明する。
【００１３】
図１は、本発明の実施形態が適用されたセキュリティ診断システムの全体構成図である。図示するセキュリティ診断システムは、セキュリティ診断支援装置１（ＦＸシステム用セキュリティ診断支援装置）と、少なくとも１つのＦＸシステム２とを備える。セキュリティ診断支援装置１は、インターネット等のネットワーク３を介して各ＦＸシステム２に接続可能である。
【００１４】
ＦＸシステム２は、ＦＸ取扱会社が運営するシステムであって、ＦＸ（外国為替証拠金取引）のオンライントレードサービスを、個人投資家などのユーザが使用するユーザ端末（不図示）に提供するためのシステムである。なお、本実施形態のＦＸシステム２は、Ｗｅｂシステムであるものとする。
【００１５】
本実施形態のセキュリティ診断支援装置１は、診断対象である所定のＦＸシステム２のセキュリティ上の不備（脆弱性）の診断を支援する装置である。図示するセキュリティ診断支援装置１は、リクエスト生成部１１と、送信部１２と、受信部１３と、検出部１４と、ＦＸ取引定義記憶部１５と、取引レスポンス記憶部１６と、診断結果記憶部１７とを備える。
【００１６】
リクエスト生成部１１は、ＦＸ取引定義記憶部１５を参照し、不正な取引条件の取引リクエストを生成する。送信部１２は、リクエスト生成部１１が生成した取引リクエストを、診断対象のＦＸシステム２に送信する。受信部１３は、ＦＸシステム２から取引リクエストに対する取引レスポンスを受信し、取引レスポンス記憶部１６に記憶する。
【００１７】
検出部１４は、取引レスポンスに含まれる取引結果を抽出し、当該取引結果に基づいてＦＸシステム２のセキュリティ上の不備を検出する。具体的には、検出部１４は、取引結果が正常の場合、送信した取引リクエストに対してセキュリティ上の不備があると判別し、取引結果が異常の場合、送信した取引リクエストに対してセキュリティ上の不備がないと判別する。また、検出部１４は、判別した診断結果を診断結果記憶部１７に記憶する。
【００１８】
上記説明した、セキュリティ診断支援装置１は、いずれも、例えば図２に示すようなＣＰＵ９０１と、メモリ９０２と、ＨＤＤ等の外部記憶装置９０３と、キーボードやマウスなどの入力装置９０４と、ディスプレイやプリンタなどの出力装置９０５と、ネットワークと接続するための通信制御装置９０６と、を備えた汎用的なコンピュータシステム（例えば、ＰＣ（Personal Computer）等）を用いることができる。このコンピュータシステムにおいて、ＣＰＵ９０１がメモリ９０２上にロードされたセキュリティ診断支援装置１のプログラムを実行することにより、セキュリティ診断支援装置１の各機能が実現される。
【００１９】
また、セキュリティ診断支援装置１のプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ−ＲＯＭなどのコンピュータ読取り可能な記録媒体に記憶することも、ネットワークを介して配信することもできる。
【００２０】
次に、本実施形態の処理について説明する。
【００２１】
図３は、本実施形態のセキュリティ診断支援装置１の動作を示すシーケンス図である。
【００２２】
セキュリティ診断支援装置１のリクエスト生成部１１は、ＦＸ取引定義記憶部１５に基づいて不正な取引条件の取引リクエストを生成する（Ｓ１１）。送信部１２は、リクエスト生成部１１が生成した取引リクエスト（ＨＴＴＰリクエスト）を、ネットワーク３を介してＦＸシステム２に送信する（Ｓ１２）。
【００２３】
取引リクエストを受信したＦＸシステム２は、当該取引リクエストについて所定のチェックを行い、異常がない場合は当該取引リクエストで指定された取引条件にしたがって、ＦＸの取引を実行し、取引結果を含む取引レスポンス（ＨＴＴＰレスポンス）をセキュリティ診断支援装置１に送信する。
【００２４】
セキュリティ診断支援装置１の受信部１３は、ＦＸシステム２から取引レスポンスを受信し、取引レスポンス記憶部１６に記憶する（Ｓ１３）。検出部１４は、取引レスポンス記憶部１６に記憶された取引レスポンスから取引結果を抽出し（Ｓ１４）、当該取引結果に基づいてＦＸシステム２のセキュリティ上の不備を検出する。具体的には、検出部１４は、取引結果が正常か否かを判別する（Ｓ１５）。
【００２５】
取引結果が異常（エラー）の場合（Ｓ１５：ＮＯ）、検出部１４は、Ｓ１２で送信した不正な取引条件の取引リクエストを、ＦＸシステム２が適切にチェックし、取引を実行することなくエラーと判別しているため、当該取引条件に対してＦＸシステム２はセキュリティ上の不備（脆弱性）がないと判別する（Ｓ１８）。
【００２６】
一方、取引結果が正常の場合（Ｓ１５：ＹＥＳ）、検出部１４は、不正な取引条件の取引リクエストに対して、ＦＸシステム２でのチェックが機能せず正常となっているため、当該取引条件に対してＦＸシステム２はセキュリティ上の不備（脆弱性）があると判別する（Ｓ１７）。
【００２７】
なお、取引結果のステータス（正常、異常）だけでなく、取引結果の内容を用いて、セキュリティ上の不備の有無を判別することとしてもよい。図３に示す例では、取引結果が正常の場合（Ｓ１５：ＹＥＳ）、検出部１４は、取引結果からＳ１２で送信した取引リクエストの取引が約定（取引成立）しているか否かを判別し（Ｓ１６）、約定していない場合は（Ｓ１６：ＮＯ）、Ｓ１５で正常の場合であっても、当該取引条件に対してＦＸシステム２はセキュリティ上の不備がないと判別する（Ｓ１８）。約定している場合（Ｓ１６：ＹＥＳ）、検出部１４は、当該取引条件に対してＦＸシステム２はセキュリティ上の不備があると判別する（Ｓ１７）。
【００２８】
そして、検出部１４は、Ｓ１７またはＳ１８で判別した診断結果を、Ｓ１１で生成した取引リクエスト、当該取引リクエストを送信したＦＸシステム２の識別情報とともに診断結果記憶部１７に記憶する。
【００２９】
次に、具体的な不正な取引条件を用いて、図３に示すセキュリティ診断支援装置１の動作を詳細に説明する。
【００３０】
図４は、決済注文の通貨ペアの指定において、保持している建玉（ポジジョン）の通貨ペアを無視して、別の通貨ペアを指定して決済注文をするという不正な取引条件の一例を説明するための図である。
【００３１】
ＦＸでは、買い注文により保持している建玉の通貨ペアと同じ通貨ペアでなければ、決済注文（売り注文）を出すことができないという定義（ルール）がある。しかしながら、ＦＸシステム２のチェック漏れにより、このような不正な取引条件の取引リクエストが誤って実行されてしまうと、この脆弱性を悪用した金銭被害がＦＸシステムを運営するＦＸ取扱会社に発生する。
【００３２】
図示する例には、１ドル（米ドル）の現在値が８３円の第１の時点４１において、１００００通貨（ドル）の新規注文（買い注文）を行う。これにより、保持している建玉の通貨ペアは、円とドルである。
【００３３】
その後、１ドルの現在値が８０円の第２の時点４２において、第１の時点４１で買った１００００通貨の決済注文（売り注文）を出す。このとき、本来であれば、円とドルの通貨ペアで決済注文が出されるはずであるが、不正な利益を得る目的で、故意に異なる通貨ペア（図示する例では、円とポンド（英ポンド））での決済注文をＦＸシステム２に送信するものとする。なお、第２の時点における１ポンドの現在値は、１３０円とする。
【００３４】
ＦＸシステムで、保持している建玉の通貨ペアとは異なる通貨ペアでの決済注文をエラーとするチェック機能がない場合、この決済注文は正常な取引として約定してしまう。この場合、８３円で買ったものを、１３０円で売ることになるため、悪意のある投資家にとっては以下の不正な利益が発生し、ＦＸ取扱会社にとっては金銭被害が発生する。
【００３５】
（130円/ポンド−83円/ドル）＊10000通貨＝47万円
なお、正しい取引条件（円とドルの通貨ペア）で第２の時点４２で決済注文を出した場合、この時点４２における１ドルの現在値は８０円であるため、８３円で買ったものを、８０円で売ることになるため、本来であれば投資家は以下の損失が発生する可能性がある。
【００３６】
（80円/ドル−83円/ドル）＊10000通貨＝−3万円
図４に示す不正な取引条件の場合におけるセキュリティ診断支援装置１の動作を、図３を用いて、より詳細に説明する。
【００３７】
まず、図４に示す例では、決済処理であるため、前処理として、セキュリティ診断支援装置１は、所定の口座で、所定の通貨ペア(図４では、円とドル)で所定の取引数量の新規注文（買い注文）を行う。この新規注文が約定（取引成立）すると、セキュリティ診断支援装置１には、建玉ＩＤ、通貨ペア、取引数量などがＦＸシステム２から通知される。
【００３８】
そして、セキュリティ診断支援装置１のリクエスト生成部１１は、ＦＸ取引定義記憶部１５に記憶された決済処理に関するＦＸの定義（ルール）に基づいて、当該ＦＸの定義に反する、保持している建玉の通貨ペアとは異なる通貨ペアを指定した決済注文（不正な取引条件）の取引リクエストを生成する（Ｓ１１）。
【００３９】
この取引リクエストには、例えば、前処理の新規注文が約定した際に通知された建玉ＩＤ、取引種別（図４では、売り注文）、異なる通貨ペア（図４では、円とポンド）、取引数量（図４では、10000通貨）、注文方法（通常、ＯＣＯ、トレール等）、執行条件（成行、指値、逆指値等）、値段指定、有効期限などが含まれる。
【００４０】
なお、リクエスト生成部１１は、ＦＸシステム２が提供する決済注文用のＷｅｂページのフォーム上で所定項目を入力して取引リクエストを生成するのではなく、前記項目（パラメータ）の取引条件を設定したリクエスト電文を生成するものとする。
【００４１】
送信部１２は、生成した取引リクエストをＦＸシステム２に送信する（Ｓ１２）。ＦＸシステム２は、受信した取引リクエストについて所定のチェックを行い、異常がなければ注文ＩＤを生成するなどして、指定された取引条件にしたがってＦＸの取引を実行し、取引結果を含む取引レスポンスをセキュリティ診断支援装置１に送信する。
【００４２】
セキュリティ診断支援装置１の受信部１３は、ＦＸシステム２から取引レスポンスを受信し、取引レスポンス記憶部１６に記憶する（Ｓ１３）。検出部１４は、取引レスポンスから取引結果を抽出し（Ｓ１４）、取引結果が正常か否かを判別する（Ｓ１５）。例えば、検出部１４は、取引結果に注文ＩＤが設定されている場合は正常であると判別し、取引結果に注文ＩＤが設定されていない場合は異常（エラー）であると判別する。
【００４３】
取引結果が異常の場合（Ｓ１５：ＮＯ）、検出部１４は、Ｓ１２で送信した不正な取引リクエストに対して、ＦＸシステム２では、同じ通貨ペアかどうかのチェックを適切に実行し、注文ＩＤを生成することなく当該取引リクエストをエラーにしているため、図４に示す場合のセキュリティ上の不備（脆弱性）はないと判別する（Ｓ１８）。
【００４４】
一方、注文ＩＤが設定され、正常の場合（Ｓ１５：ＹＥＳ）、検出部１４は、さらに、当該注文ＩＤの取引が約定されている否かを判別し（Ｓ１６）、約定されていない場合は（Ｓ１６：ＮＯ）、図４に示す場合のセキュリティ上の不備（脆弱性）がないと判別する（Ｓ１８）。当該注文ＩＤの取引が約定している場合は（Ｓ１６：ＹＥＳ）、検出部１４は、通貨ペアを無視した不正な取引条件の取引リクエストに対して、ＦＸシステム２が異常と判別せず、かつ取引が約定しているため、図４に示す場合のセキュリティ上の不備（脆弱性）があると判別する（Ｓ１７）。
【００４５】
なお、応答レスポンスから抽出した取引結果に、損益明細などの約定したか否かを判断するための情報が含まれていない場合、検出部１４は、注文ＩＤを指定した損益明細照会リクエストを生成してＦＸシステム２に送信し、当該リクエストに対する照会結果レスポンスから、約定しているか否かを判別することとしてもよい。また、照会結果レスポンスから、約定している場合は建玉の通貨ペアと同じ通貨ペアで約定しているのか、あるいは、不正な取引条件で指定した別の通貨ペアで約定（異常取引）が発生しているのかについても、診断することとしてもよい。
【００４６】
検出部１４は、Ｓ１７またはＳ１８で判別した診断結果を、Ｓ１１で生成した取引リクエスト、当該取引リクエストを送信したＦＸシステム２の識別情報とともに診断結果記憶部１７に記憶する。
【００４７】
以上説明した本実施形態では、ＦＸの取引ロジックを考慮したＦＸシステムのセキュリティ診断を行うものであり、一般的なセキュリティ診断技術では発見されにくい、ＦＸシステム特有のセキュリティ上の不備や脆弱性を検出することができる。
【００４８】
これにより、本実施形態では、ＦＸシステムにおいて、注文時の各条件指定のチェック漏れにより、不正な損益計算が実行されるといった異常な取引の発生を防止することができる。また、ＦＸ取扱会社が、ＦＸシステムの脆弱性を悪用されて不正に金銭を詐取されるなどの被害の発生を防止することができる。
【００４９】
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。例えば、セキュリティ診断支援装置１が診断対象とするＦＸシステム２は、不正な取引条件の取引リクエストが誤って約定され、損益が発生する可能性があるため、本番系のＦＸシステムではなく、開発系または待機系のＦＸシステムを用いてもよい。
【符号の説明】
【００５０】
１：セキュリティ診断支援装置、１１：リクエスト生成部、１２：送信部、１３：受信部、１４：検出部、１５：ＦＸ取引定義記憶部、１６：取引レスポンス記憶部、１７：診断結果記憶部、２：ＦＸシステム、３：ネットワーク
【図１】
2013008306.tif 000003
【図２】
2013008306.tif 000004
【図３】
2013008306.tif 000005
【図４】
2013008306.tif 000006