Teknik för att fastställa en PIN-kod från en videoinspelning av en handtäckt ingång i en bankomat

Ett team av forskare från universiteten i Padua (Italien) och Delft (Nederländerna) har publicerat en metod för att använda maskininlärning för att återskapa en PIN-kod inmatad från en videofilm av ett handtäckt inmatningsområde i en bankomat. Vid inmatning av en 4-siffrig PIN-kod uppskattas sannolikheten att förutsäga rätt kod till 41 %, givet möjligheten att göra tre försök innan blockering. För PIN-koder på 5 siffror var sannolikheten för förutsägelse 30 %. Separat genomfördes ett experiment under vilket 78 frivilliga försökte förutsäga PIN-koden från liknande inspelade videor. I det här fallet var sannolikheten för en framgångsrik förutsägelse 7.92% i närvaro av tre försök.

När man täcker den digitala panelen på bankomaten med handflatan, förblir den del av handen som används för inmatning avslöjad, vilket är tillräckligt för att förutsäga tryckning genom att ändra handens position och flytta ofullständigt täckta fingrar. När man analyserar inmatningen av varje siffra utesluter systemet tangenter som inte kan tryckas, med hänsyn till den täckande handens position, och beräknar även de mest sannolika alternativen för att trycka baserat på positionen för den tryckande handen, i förhållande till platsen för nycklarna. För att öka sannolikheten för att bestämma ingången kan ljudet av att trycka extra spelas in, vilket är något annorlunda för varje tangent.

Teknik för att fastställa en PIN-kod från en videoinspelning av en handtäckt ingång i en bankomat

Experimentet använde ett maskininlärningssystem baserat på användningen av ett konvolutionellt neuralt nätverk (CNN) och ett återkommande neuralt nätverk baserat på LSTM-arkitekturen (Long Short Term Memory). CNN var ansvarig för att extrahera rumsliga data för varje bildruta, och LSTM-nätverket använde dessa data för att extrahera de tidsvarierande mönstren. Modellen tränades på videor av 58 olika personer som matade in en PIN-kod med hjälp av inmatningsskyddsmetoder som valts av deltagarna (varje deltagare skrev in 100 olika koder, dvs. 5800 inmatningsexempel användes för träning). Under utbildningen visade det sig att de flesta användare använder en av de tre huvudsakliga metoderna för att täcka input.

Teknik för att fastställa en PIN-kod från en videoinspelning av en handtäckt ingång i en bankomat

För att träna maskininlärningsmodellen användes en server baserad på en Xeon E5-2670-processor med 128 GB RAM och tre Tesla K20m-kort med 5 GB minne vardera. Mjukvarudelen är skriven i Python med hjälp av Keras-biblioteket och Tensorflow-plattformen. Eftersom ATM-inmatningspaneler är olika, och förutsägelseresultatet beror på egenskaper såsom storlek och layout på tangenterna, krävs en separat utbildning för varje typ av panel.

Teknik för att fastställa en PIN-kod från en videoinspelning av en handtäckt ingång i en bankomat

Som åtgärder för att skydda mot den föreslagna attackmetoden rekommenderas om möjligt att använda PIN-koder på 5 siffror istället för 4, och även försöka täcka så mycket inmatningsutrymme som möjligt med din hand (metoden förblir effektiv om cirka 75 % av inmatningsområdet är täckt med din hand). ATM-tillverkare rekommenderas att använda speciella skyddsskärmar som döljer ingången, såväl som inte mekaniska, men beröringspaneler, vars position siffrorna ändras slumpmässigt.

Källa: opennet.ru

Lägg en kommentar