最近発生した不正アクセス事件の中で、個人的に興味を持った内容があったので紹介します。
※なお、記載の内容については個人的見解であることをあらかじめご承知おきください。
なぜ興味を持ったのか
私の興味を引いたのは以下の内容でした。
セシールオンラインショップへの不正アクセス、二重登録防止機能を悪用しリストをスクリーニング(ディノス・セシール)
特に以下のワードが気になりました。
これはどういったことなのか?
皆様、ECサイト等を利用したことがあるかと思います。今は色々な登録方法がありますね。
よくあるのがメールアドレスを入力し、次にパスワードを入力して会員登録して、登録出来たら、ユーザIDとパスワードを使用してログインしますね。
IDにはメールアドレスを使用しているところは多いですよね。
私も複数のサイトに登録していますが、メールアドレス=ユーザIDとなっているところは結構あります。
以前登録したことを忘れて、再度登録しようとした際にメールアドレス入力をしたら、以下メッセージが表示されることは多々あると思います。
この不正アクセスについてはこれを悪用したとのことで、驚きました。
もちろんこの問題については、一般的なセキュリティ会社の脆弱性診断であれば指摘をしている内容だと思います。
私が今まで所属してきた会社で指摘をしていなかったところはありませんでした。
しかし、危険度やレベルについては「Low」や「低」とかの比較的危険度の低い問題であると思っています。
対策についてはどうすればいいのでしょうか考えましょう。
私がアプリケーション側で対応するとしたら、登録していようがしていまいが、メールを送信ました。と表示させてしまうのが手っ取り早いと考えています。
※登録していた場合は表示だけで実際には送信は行われないようにする。
そうすれば登録しているメールアドレスは特定はされません。
ただし、そんなことでメールアドレス(ユーザID)が登録されているかいないかを確認しなくても、手元のリストに既に情報があるのでそれを使用すれば不正ログインはできたと思います。
もちろん今回の攻撃は不正アクセスの検知を恐れたため、事前にメールアドレスの登録の有無を調べたとは思いますが。
本当の問題は違うところなんじゃないかなと
もしアプリケーション側でユーザが設定するパスワードの強度を物凄い高くしても、他のサイトで色々使いまわして、その使いまわしたサイトのうち一つのサイトでも漏洩してしまった場合は意味がありません。
ログの監視をしっかりやり、怪しい挙動の場合はすぐに対応する等あると思いますが、他の記事を調べると攻撃側も200個ほどのIPアドレスを使用していたとのことなので、遮断を動的にするのも難しいかもしれません。
なので、ユーザ側の教育も昨今は重要な要素になるかと思っています。パスワードは使いまわしをしないことから始まり、パスワードの設定する値であったり、他の人と共有していないか等。
もし一つのアカウントを使いまわしたいのであれば、「OpenID」や「OAuth」等の検討もできると思います。
※こちらについてはいずれ詳細に解説したいと思います。
世の中にはインターネットを使ったサービスが数多くあるので、ネットリテラシーの教育は学校や新入社員教育時だけではなく、定期的に、流動的に時代にあった教育をすべきかと私は考えています。
※若い人もそうですが、年配者に対しての教育も重要です。
リスト型攻撃については新しい攻撃手法でもなく、以前からよく行われていた攻撃手法です。
自分の身は自分で守るという心構えがこれからは必要になっていくと思います。
参考としてユーザ側でのパスワード設定のオススメを以下に記載します。
・少なくとも8文字以上にする
・文字種はできるだけ多く使用する
・他人にパスワードを教えない
・パスワードの使いまわしはしない
あとは怪しいサイトには登録しないとかも記載したかったのですが、「怪しい」の定義が難しいので、こちらはユーザに依存してしまいます。
皆様もお気を付けてインターネットをご活用ください。
不明点や、オススメ設定等がありましたら、コメントやツイッター等でご連絡頂ければ幸いです。
コメント