幾天前 一組研究人員 來自帕多瓦(意大利)和代爾夫特(荷蘭)大學 廣為人知 通過發布有關信息 一種使用機器學習重新創建 PIN 碼的方法 從被一隻手覆蓋的自動櫃員機入口區域的視頻記錄進入。
輸入 4 位 PIN 時, 預測正確代碼的概率估計為 41%,鑑於有可能在阻止之前進行 5 次嘗試。 對於 30 位 PIN 碼,預測概率為 XNUMX%。
此外,還進行了另一項實驗,其中 78 名志願者試圖從類似的錄製視頻中預測 PIN 碼。 在這種情況下,三次嘗試成功預測的概率為 7,92%。
在所用方法的描述中,提到 當自動櫃員機的數字面板被手掌覆蓋時,被輸入的手的部分保持未被覆蓋, 勞闕 足以預測點擊次數 改變手的位置和手指的位移沒有完全覆蓋。
ATM 是現金提取系統中使用最多的。 歐洲央行報告稱,11 年歐洲 ATM 上的現金提取和上傳/下載交易超過 2019 億筆。
儘管 ATM 經歷了各種技術演進,但個人識別碼 (PIN) 仍然是這些設備最常用的身份驗證方法。不幸的是,PIN 機制很容易受到通過安裝在 ATM 附近的隱藏攝像頭來捕獲鍵盤的攻擊。
在分析每個數字的輸入時, 系統排除無法按下的鍵, 考慮到覆蓋手的位置, 它還根據按鍵位置相對於按鍵的位置計算最可能的壓力變量。 為了增加檢測到輸入的概率,還可以錄製點擊聲,每個鍵略有不同。
實驗使用機器學習系統 基於卷積神經網絡(CNN)和基於LSTM(長短期記憶)架構的循環神經網絡的應用。 CNN 負責提取每一幀的空間數據,LSTM 使用這些數據提取隨時間變化的模式。 該模型由 58 個不同的人使用參與者選擇的輸入覆蓋方法(每個參與者輸入 100 個不同的代碼,即 5800 個輸入示例用於訓練)對 XNUMX 個不同的人進行 PIN 碼輸入視頻記錄的訓練。 在培訓過程中,發現大多數用戶使用三種主要方式之一來隱藏條目。
為了訓練機器學習模型,我們使用了一台基於 Xeon E5-2670 處理器的服務器,具有 128 GB 的 RAM 和三張分別具有 20 GB 內存的 Tesla K5m 卡。 軟件部分是使用 Keras 庫和 Tensorflow 平台用 Python 編寫的。 由於 ATM 輸入面板不同,預測結果取決於密鑰大小和拓撲等特徵,因此每種類型的面板都需要單獨訓練。
作為保護自己的措施 針對提議的攻擊方法, 建議使用 5 位 PIN 碼而不是 4 位 如果可能的話, 並嘗試用手覆蓋大部分入口空間 (如果大約 75% 的入口區域被手工覆蓋,該方法仍然有效)。 建議 ATM 製造商使用特殊的保護屏來隱藏入口,以及非機械但可觸摸的入口面板,其數字位置隨機變化。
最後,如果你有興趣了解更多,可以諮詢詳情 在下面的鏈接中。