Andersonの視点
ATMの「シールド付き」PIN入力を明らかにするためのAIメソッド

イタリアとオランダの研究者は、ATMでキャプチャされたビデオに基づいて、銀行顧客がATMに入力するPIN番号を推測することができる機械学習メソッドを開発しました。顧客が肩すかしを防ぐために手で覆っている場合でも、PIN入力の動きを分析することで、PIN番号を推測することができます。
このメソッドでは、Convolutional Neural Network (CNN) と Long Short-Term Memory (LSTM) モジュールを、ATMのキーパッドに似たキーパッドを備えた「影」ATMで収集されたビデオデータでトレーニングします。研究者は、このプロジェクトのために「鏡」ATMを再現し、データを収集しました。
このシステムでは、手の動きと位置を解析して、PIN入力の動きを推測します。現在、4桁のPINの41%と5桁のPINの30%を3回の試行で推測することができます。テストには、ランダムなPIN番号を使用した58人のボランティアが参加しました。
この研究では、人間が肩すかしによってPIN番号を推測する能力よりも4倍の精度でPIN番号を推測することができます。研究データは公開されています。
この研究は、パドヴァ大学の5人とデルフト工科大学の1人の研究者によって行われました。論文のタイトルは《Hand Me Your PIN! Inferring ATM PINs of Users Typing with a Covered Hand》です。

イタリアの研究で使用された2つのピンパッドモデル。右側が「影」ATMです。 ソース:https://arxiv.org/pdf/2110.08113.pdf
このシステムでは、手の動きと位置を解析して、PIN入力の動きを推測します。現在、4桁のPINの41%と5桁のPINの30%を3回の試行で推測することができます。テストには、ランダムなPIN番号を使用した58人のボランティアが参加しました。
この研究では、人間が肩すかしによってPIN番号を推測する能力よりも4倍の精度でPIN番号を推測することができます。研究データは公開されています。
この研究は、パドヴァ大学の5人とデルフト工科大学の1人の研究者によって行われました。論文のタイトルは《Hand Me Your PIN! Inferring ATM PINs of Users Typing with a Covered Hand》です。

ピンパッドが十分に覆われている場合を除外しました(左)。
研究者は、タイミング、音、熱シグネチャーに基づく既存の研究よりも優れた結果を得ることができました。
また、顧客は、カード入力スロット周辺に「スキミング」デバイスが設置されていることを意識しているため、手で覆ったPIN入力の動きを分析することは、顧客にとって予想外の攻撃方法であると考えられます。
PINのお金
PIN番号は、最も短く、最も推測しやすいパスワードの1つです。攻撃者はすでに1桁目で10%の確率でPIN番号を推測することができます。社会工学的攻撃は不要です。《1234》は、すべてのPIN番号の11%を占め、《19》は、80%のPIN番号の最初の2桁です。
研究者は、手の動きを分析して、PIN番号を推測する方法を開発しました。手の動きを分析することで、PIN入力の動きを推測することができます。
研究者は、データを収集するために、ATMのキーパッドに似たキーパッドを備えた「影」ATMを構築しました。このATMは、研究者が所有することができ、トレーニングを行うことができます。
ATMの画面は、PIN入力中に覆われることはありません。キーの押下時刻は、手の動きと「マスク」された数字(通常はアスタリスク)がATM画面に表示されるタイミングを同期することで決定できます。また、キーの押下音(ビープ音)も同期できます。
特定のキーパッドを対象とする
まず、シールド付きPIN入力を観察して記録する必要があります。キーパッドは、特定の業界標準モデルである必要があります。キーの押下時刻は、オーディオとビジュアルのヒント(例:フィードバックビープ、キークラッター、ASTERISKフィードバック)から取得できます。
これらのブレークポイントを使用して、トレーニングセットを抽出して、特定のキーの押下に対応する代表的な手の構成を識別できるモデルをトレーニングすることができます。これにより、カードのPIN番号のランク付けされた確率リストが生成され、トップ3が攻撃時に選択されます。
方法論
データ収集は、2つのセッションで行われ、右利きのボランティアが参加しました。各参加者は、100個のランダムに生成された5桁のPIN番号を入力しました。すべての10個のキーパッドの押下を均等にカバーするために、5,800個の個々のPIN入力を収集しました。
テストで使用されたピンパッドは、DAVO LIN Model D-8201FとDAVO LIN Model D-8203 Bモデルでした。これらは、ATMで使用されている商用モデルであり、こちらとこちら(および他のベンダー)で入手できます。
収集されたビデオセグメントは、グレースケールに変換され、正規化され、トリミングされ、250×250ピクセルにリサイズされて、機械学習のトレーニングセッションに含められました。クリップは、キーの押下に関連するフレームのサブシーケンスを取得するためにセグメント化されました。オーディオヒント(上記参照)を使用して、押下イベントのタイムスタンプマーカーとして使用しました。
トレーニング
データセットは、トレーニングセット、バリデーションセット、テストセットに分割されました。トレーニングは、Xeon(R) Intel CPU(E5-2670 2.60GHz)と128GBのRAMを備えたマシンで行われました。データは、Keras2.3.0-tf(TensorFlow 2.2.0)とPython 3.8.6で実装され、3つのTesla K20m GPU(各5GBのVRAM)でトレーニングされました。
キャプチャ環境の変化(照明、カメラ角度のわずかな違いなど)を考慮して、合成例とパーツ(回転やビューのシフトなど)を生成し、研究者は、このようなデータの増強がモデルの有効性を向上させるのに大きな助けとなることを報告しています。
結果
モデルは、3つのシナリオでテストされました。「シングルピンパッド」では、攻撃者はピンパッドのモデルを知っており、特にそれに対してトレーニングします。「ピンパッド独立」では、モデルはターゲットピンパッドと似ているが同じではないピンパッドでトレーニングされます。「混合シナリオ」では、攻撃者は両方のピンパッドのコピーを持っています。

3つのシナリオでの一般的な結果。Top-Nは、N回の試行で数字を推測することを意味します。
5桁のPINと4桁のPINの推測精度に違いがあることがわかりました。

対策
既存のシステムに対する対策を検討すると、研究者は、実用的な防御策がないと結論付けています。
PIN番号の最小桁数を増やすと、PIN番号を覚えるのが難しくなります。タッチスクリーンソフトウェアキーボードでキーパッドの順序をランダム化すると、使い勝手の問題が生じます。スクリーンプロテクターは、既存のATMに導入するのが高価であり、紙の攻撃方法をさらに簡単にする可能性もあります。研究者は、ピンパッドの75%が覆われている場合でも攻撃が可能であると主張していますが、さらに覆うと、顧客が入力するのが難しくなります。
人間がPIN番号を推測する能力と比較して、AIシステムははるかに高い精度でPIN番号を推測することができます。

研究者は、将来的に、非右利きの人や、攻撃を緩和する手の覆い方の戦略を調査する予定です。また、年齢や人種の多様性のある実験を繰り返し、攻撃がカオス人種(白人以外)では効果が低いと考えられると述べています。












