前回は攻撃者側にフォーカスし、彼らがどんな手口で窃盗を行っているかを紹介した。今回は前回紹介したワンタイムパスワードに対するソーシャルエンジニアリングと、電子証明書(PKI)に対して有効なセキュリティ対策について解説する。
単純なワンタイムパスワードの課題
ワンタイムパスワードは固定のユーザー名とパスワードの認証よりは格段にセキュリティを強化する。また、低コストで導入でき、ソフトウェアのセットアップが不要で、誰でも簡単に利用できる。さらにトークンで生成された数字を入力する(伝える)手段さえあれば、どのようなチャネル上(PC、モバイル、電話、ATMなど)でも利用でき、メリットは大きい。しかし、攻撃手法は異常なスピードで高度化し、単純なワンタイムパスワードは突破されてしまう時代である。より高度で複雑なワンタイムパスワードの技術は、すでに世界的に幅広く活用され、高いセキュリティを確保する対策として注目されている。
単純なワンタイムパスワードだけでは突破される
前回の記事で解説した通り、リアルタイムに行われる中間者攻撃(Man in the Browser AttackやMan in the Middle Attack)は、簡単なワンタイムパスワード認証というセキュリティを突破してしまう。今回はユーザーを騙すというソーシャルエンジニアリングを活用した突破手法を一つ紹介する。
その手口は次の通りだ。例えば、銀行はログイン時と振込処理時の2回、ワンタイムパスワードの入力を求めるとしよう。
- 攻撃者は、ユーザーがログインした際にそのワンタイムパスワードを利用してユーザーの口座にログインする
- ユーザーに対してはログインが失敗したというメッセージを出し、もう一回ワンタイムパスワードの入力を求める
- ユーザーは入力ミスしたのであろうと思い、2個目のワンタイムパスワードを入力してしまう
- 攻撃者は2個目のワンタイムパスワードを利用して不正送金を行う
上記の通り、ワンタイムパスワード入力を2回必要としても攻撃は成功してしまう。上記のような攻撃に対しては、10キー付きのワンタイムパスワード生成トークンを利用することが有効だ。