スマートフォンのセンサーからPINコードの推測が可能

2018年1月8日 11:07

印刷

記事提供元:スラド

ユーザーのパーミッションを得る必要がないスマートフォンの各種センサーから取得したデータと機械学習により、高い成功率でPINコードを推測できるという研究結果が発表された(論文: PDF南洋理工大学のニュースリリースHackReadの記事)。

画面に表示されたキーパッドからPINを入力する際には押すキーの位置によって端末の傾きの変化などが異なる。そのため、センサーから取得したデータを処理することでPINを推測する研究は過去にも発表されている。データの取得方法としては、PIN全体の入力パターンを1つのデータとして取得する方法と1桁ごとに取得する方法が考えられる。全体を取得する場合は4桁でも10,000パターンのデータが必要なため、過去の研究では50パターンに限定するという手法がとられていた。今回の研究では1桁ごとに取得する方法を用いており、少ないパターンのデータですべての組み合わせに対応できるほか、桁数の異なるPINにも対応可能となる。

攻撃のシナリオとしては、まずターゲットの端末に送り込んだ攻撃用アプリでプリセットしたPINのパターンを入力させてデータを取得し、アルゴリズムに学習させる。次に実際のPINコード入力時のデータを取得し、学習結果からPINを推測するというものだ。学習データを取得する際には、前後のキー入力の組み合わせによる変化をカバーするため、厳選した70パターンのPINコードを5回ずつ入力させ、検証用に50パターンのランダムなPINコードも入力させている。研究ではボタンをPIN入力用のキーパッドと同じ配置にしたアプリを使用しているが、カジュアルゲームなどを装って学習データを取得する方法が提示されている。
結果としては、加速度センサー+ジャイロセンサーのデータとMLPニューラルネットワークの組み合わせによる成功率が最も高く、良好な測定条件では20回の試行で最高83.7%の成功率だったとのこと。50パターンのPINに限定した過去の研究成果では試行1回で74%の成功率が最高だ。今回の研究で条件をそろえた場合にはMLPニューラルネットワークでは60%の成功率しか得られなかったが、ランダムフォレストでは99.5%の成功率になったとのこと。

このほか、3人の被験者から取得したデータを用いる実験も行われており、本人のデータのみを使用した場合よりも3人のデータを使用する方が成功率が高くなっている。さらに、他の2人のデータのみを使用した場合にも6%前後の成功率が得られ、まったくランダムな推測をする場合の30倍の成功率だという。

論文ではこのような攻撃を避けるため、センサーの最大サンプリングレートを下げる方法やPIN入力時にセンサーを無効化する方法も考えられるが、これらは一時的な対策であり、センサーへのアクセス全体を再考すべきだと述べている。パーミッション不要なセンサーはPINだけでなくユーザーのプライバシーを侵害する可能性もあるとのことだ。

 スラドのコメントを読む | モバイルセクション | ハードウェア | セキュリティ | 携帯電話

 関連ストーリー:
超音波でデジタルアシスタントデバイスを操作する「DolphinAttack」攻撃 2017年09月10日
ドローンやVR機器で使われる加速度センサやジャイロセンサは超音波で誤動作する 2017年08月29日
脳波を観測してパスワードを盗める可能性 2017年07月06日
ロンドン警視庁考案、容疑者にiPhoneのロックを解除させる新たな方法とは? 2016年12月10日

※この記事はスラドから提供を受けて配信しています。

関連記事