このところ、ドコモ口座を筆頭とした各スマホ決済サービスを踏み台にした不正出金が話題です。さらに手口は違うものの、SBI証券から1億円近い顧客資金が不正出金されたというニュースも出ています。
これは個人投資家にとっては死活問題で、銀行や証券会社に預けた資金が勝手に引き出されるとなったら、悪夢でしかありません。一応、被害にあった人には補償すると各社は言っていますが、これはここまで大事になったから。初期時点では、「事業者も警察も信じてくれなかった」という声もあるように、なくなったお金が戻ってくるのかさえ、怪しい場合もあるでしょう。
では投資家はこうした事態にどう対応したらいいのでしょうか?
まずは早期に発見するために
こうした事件で最悪の展開は、勝手に引き出されたことに気がついておらず、何ヶ月も経ってから気づいたというパターンです。犯人が捕まるかどうかはともかくとして、金融機関側も虚偽の申請かどうかを確認するはず。時間がたてばたつほど調査は難航するでしょう。
人によっては、こまめに通帳記帳するしかないと考えがちですが、ここで活用したいのがPFMと呼ばれる家計簿アプリの利用です。ぼくはマネーフォワードMEを使っていますが、こうしたアプリを利用すると、定期的に口座残高をチェックし、引き出されたらそのアラートが来るようにできます。
こうしたアプリにログイン情報を渡すことのほうが危ないんじゃないか? そんな懸念も感じますよね。ただ、今年5月から始まった銀行APIによって、従来のようにログイン用のIDとパスワードを入れることなく、口座情報の確認ができるようになりました。
従来は、ネットバンキングのIDとパスワードをアプリに登録し、アプリ側はネットバンキングにログイン。画面に表示されているデータを読み取って分析するという、スクレイピングという手法が使われてきました。ところが、この方法はもしアプリ側から情報が漏洩したら、自分のネットバンキングにログインされてしまうという危険な方法です。
こうしたリスクをなくすため、またスクレイピングという負荷のかかるアクセスを減らすため、金融庁が主導して進めてきたのが「銀行オープンAPI」です。これは、銀行側が外部からアクセスできるAPIを用意し、ネットバンキングとは別に口座情報を安全に取得できるようにするための仕組みです。
現在各銀行が対応しているのは「参照系API」と呼ばれます。これは、口座の情報を読み取ることができるだけで、外部への振り込みはできません。そういう意味で、家計簿アプリから銀行の口座情報を読み取る方法は、より安全に便利になったというわけです。
マネーフォワードは、基本機能は無料。月額500円(年間5000円)の有料プランに入ると、連携できる金融機関が11件以上に増えたり、1年以上前の家計簿データを閲覧できたりするようになります。逆にいうと、無償版では、連携は10件まで、家計簿は1年前までしか見られません。ぼくは最初無償版で頑張っていたのですが、銀行やクレジットカード、証券会社が増えるにつれて、全部マネーフォワードで管理したほうが簡単なんじゃないか?と思い立ち、有料ユーザーになりました。
ちなみに総資産額の推移も勝手にグラフにしてくれます。対応していない金融機関もあり、不動産や動産は手入力が必要だしというような問題もあって、ぼくの場合は太陽光周りと仮想通貨は反映されていませんが、概ねメイン資産の状況は把握できるようになっています。
パスワードをどう管理するか
いざ問題が起きたときの早期発見の次は、問題発生の防止です。とはいえ、アクセスしている人が本当に所有権者か?という、いわゆる本人認証の仕組みは、金融機関側の努力に頼るしかありません。自分たちでできるのは、IDやパスワードが流出しないように気をつけることくらいです。
そのために利用したいのが、パスワード管理アプリです。ぼくはオープンソースの「Bitwarden」を使っています。これは、複数のサービスのIDとパスワードを保存して、必要なときに自動入力してくれるアプリです。こうしたアプリを使うと、「このアプリのパスワードが破られたら全滅」というリスクはたしかにあります。
一方で、昨今問題になっているのはパスワードの流出です。いろいろなサービスを使っていれば、パスワードの流出は日常茶飯事ですが、これが問題になるのは、1つのパスワードを使いまわしている場合です。そうなると、一つが流出すると芋づる式にほかのサービスにも不正ログインされてしまいます。
ならばすべてのサービスのパスワードを違うものに変えればいいのですが、それを覚えているのは至難の業。そもそも、総当たり攻撃(ブルートフォースアタック)に備えて、長くて意味のないパスワードを設定するのが今の基本。これを覚えろというほうが無理です。これらのリスクを天秤にかけて、パスワード管理ソフトを使用しています。
そして、Bitwardenには、設定したパスワードが流出したものかどうかをチェックして教えてくれる機能があります。パスワードの横の「レ」ボタンを押すとチェックしてくれます。例えばこちらのパスワードは、8回漏洩! もちろんこのサービスはすでに退会済みです。
こちらは漏洩は発見されなかったようです。
この機能は過去の漏洩のデータベースに照会してチェックしているのでしょうから、完全に安全だということはありません。しかし、漏洩が確認されているパスワードなら、それは避けておくのが無難ですね。
複数のメールアドレスを利用する
金融機関では、IDの代わりに口座番号を使う場合多いですが、逆にWebサービスではIDの代わりにメールアドレスを使う場合がよくあります。パスワードを工夫したあとは、メールアドレスも一工夫します。
GmailおよびG Suiteでは、1つのメールアドレスに簡単にエイリアスを作ることができます。エイリアスとは、表示は違っても、同じものを指す、別名のことです。
例えば、abcd@gmail.com というメールアドレスを使っているとします。このとき、「+」と「.」を使うと、メールアドレスの文字列は変わるのに、いずれもabcd@gmail.comに届くようになります。下記のアドレスはすべて同じところに届くのです。
- abcd@gmail.com
- a.bcd@gmail.com
- abc.d@gmail.com
- abcd+kuzyo@gmail.com
- abcd+outflow@gmail.com
これを活用すると、サービスごとに異なるメールアドレスを利用できます。このメリットは2つあります。メールアドレスとパスワードが流出したときに、そのメールアドレスは他のサービスには利用できないというのが1つ*1。もう1つは、フィッシングに気づける可能性があることです。
フィッシングの典型的な仕組みはこうです。Amazonからのメールを装って、ユーザーにメールを出し、あるサイトに誘導します。そこでパスワードなどを入力させて盗むというものです。このとき、最初のメールはどこかで流出したメールアドレスを使います。abcd@gmail.com が流出したとして、Amazonにはabcd+amazon@gmail.comというメールアドレスを登録しておけば、abcd@gmail.com宛に「Amazonです!」というメールが来たら、これはおかしいぞ? と気づくことができます。
もっともサイトによっては「+」や「.」を含むメールアドレスを登録できないところもあるので、完全ではありません。
そこで別の手段として、G Suiteを利用する方法があります。これはGmailのいわば企業版で、以前はGoogle Appsと呼ばれていました。企業版なので、ドメインを取得すれば、無制限にメールアドレスを作ることができます。
さらに、*@domain.com といったワイルドカードを、いずれかのユーザーの「予備のメールアドレス」に設定することで、キャッチオールアドレスとして利用できます。つまり、ユーザーが設定されていない、このドメイン宛のメールがすべて届くようになります。
この機能を利用すれば、サービス名@自分のドメイン.com というような形で、いくらでも新しいメールアドレスを使用できるようになります。ただし、Google Appsは小規模利用者向けに無償提供されていたのですが、2012年に有料版のみになってしまったんですね。ぼくは当時からのユーザーなので、無料のまま使い続けられていますが、残念なことです。
金融機関の対応に期待するしかないが、自衛できるところはする
今回の事件は、金融機関側のセキュリティの不備によるところが多かったと思っています。流出の可能性があるような情報だけで、資金の動きを可能にできる仕組みを取っていたことが最大の問題でしょう。
各社は、eKYC(要は身分証明書を使った多要素認証)や、2FAアプリ、郵送などを組み合わせた、いわゆる他要素認証を使うことでセキュリティを向上させる対策を取るとしています。ユーザーとしては、筋の悪いセキュリティ対策でユーザビリティが犠牲にならないことを祈りつつ、それぞれの金融機関がしっかり対策してくるのを待つしかありません。
それまでは、できるところは自衛する。そうした対策が重要ではないかと思います。
*1:もちろんGmailのエイリアスの仕組みは有名なので、前処理するようなハッカーもいるかもしれません