DeepFakes a Online Účty v Banke
Prostredie internetového bankovníctva sa každý rok vyvíja a banky sa snažia svojim klientom poskytnúť stále viac komfortný priestor a zjednodušiť a sprístupniť im čo najviac služieb. Jednou z nich na ktorú sme si mohli v posledných rokoch zvyknúť je založenie účtu online. Z pohľadu klienta jednoduchá a už aj samozrejmá vec, z pohľadu banky je to však komplikovaný proces spojený s množstvom rizík. Jedným z rizík, ktoré sme skúmali, je krádež identity a možnosť vytvorenia účtu pre cudziu osobu.
Založenie účtu
V priebehu procesu založenia online účtu, klient prechádza procesom niekoľkých kontrol. Behom nich musí typicky vyplniť osobné údaje, nasnímať doklady a spraviť v aplikácií fotku/video tváre.
Počet a kvalita overovaných dát sa časom mení a procesy sa zdokonaľujú. Kým v minulosti niektoré kontroly neexistovali, prípadne boli na dnešné pomery nedostatočné, dnes sú kontroly komplexné a často utiahnuté natoľko, že aj malá chyba proces ukončí a pošle vás osobne na pobočku.
Počet a typ jednotlivých kontrol je pravdepodobne možné dohľadať a nemalo by ísť o úplne klasifikované informácie (security by obscurity doesn‘t work), ale aby sme to potenciálnym útočníkom nezľahčili, nebudeme všetky detailne popisovať.
Pozrieme sa však ja jednu kontrolu, ktorá je asi najjasnejšia a tou je overenie živosti a porovnanie tváre osoby zakladajúcej účet.
DeepFake
Ako do tohto procesu zapadá pojem a problematika DeepFakes?
Deepfake je technológia, ktorá využíva umelú inteligenciu (AI) na vytváranie realistických falošných médií, najmä videí alebo zvukových záznamov. Táto technológia dokáže pomocou neurónových sietí napodobniť vzhľad, hlas a gestá konkrétnej osoby.
Výsledkom je video alebo audio, ktoré vyzerá a znie veľmi presvedčivo, ale v skutočnosti ide o podvrh.
Technológia deepfake vyvoláva obavy o jej zneužitie, najmä pokiaľ ide o manipuláciu verejnej mienky, šírenie falošných správ alebo útoky na súkromie jednotlivcov.
Cieľ útočníka
V tomto prípade sa budeme zaoberať prípadom, keď útočník získa platné údaje z občianskeho preukazu cudzej osoby a pokúsi sa v jej mene založiť účet. Takýto účet potom môže byť použitý napríklad na pranie špinavých peňazí, financovanie nelegálnej aktivity alebo ďalšie podvody. Banky majú ďalšie mechanizmy ako proti takýmto prípadom bojovať, to dnes ale analyzovať nebudeme.
Spôsobov získania dokladov je mnoho, množstvá takýchto dát sa predávajú napríklad na darknetových fórach, peňaženky s dokladmi sa kradnú a strácajú, prípadne si spomeňte, keď nabudúce v hoteli dáte recepčnému občiansky preukaz na overenie/kópiu.
Overenie osoby a živosti
Pri tejto kontrole ide o to, aby fotka z dokladov zodpovedala aktuálnej osobe, ktorá založenie účtu vykonáva. Aplikácia preto užívateľa požiada, aby najprv naskenoval svoje doklady a následne nasnímal svoju tvár, pričom klient typicky dostane niekoľko pokynov aby pohol hlavou alebo očami v určitom definovanom smere. Aplikácia si nasníma video prípadne niekoľko fotografií tohto procesu a pošle ho na analýzu.
Na pozadí sa overí, či fotografia na dokladoch nebola upravená, či nasnímaná osoba nie je digitálne upravená a či biometria tváre z fotky na dokladoch zodpovedá aktuálne nasnímanej osobe.
V tomto kroku môže dôjsť k niekoľkým scenárom a vektorom útoku, ktoré musia byť bankou kontrolované a môže ísť napríklad o tieto:
- Prelepenie fotografie na dokladoch
- Digitálna modifikácia dokladov
- Nasnímanie upravených dokladov z obrazovky
- Nasnímanie upravených dokladov z vytlačenej kópie
- Snímanie aktuálnej tváre z dopredu pripravenej fotografie / videa
- Nasnímanie tváre z obrazovky
- Nasnímanie tváre z vytlačenej fotografie
- Digitálna modifikácia aktuálnej tváre
- Nasnímanie tváre z obrazovky
Digitálna modifikácia fotiek a videa
Pre pokusy o obídenie týchto kontrol nebudeme používať žiadne futuristické nástroje a komponenty s obrovským výpočtovým výkonom. Použijeme opensource verejne dostupné nástroje a jednu bežne dostupnú grafickú kartu, v našom prípade NVIDIA GeForce RTX3070.
Modifikácia dokladov
V tomto kroku budeme modifikovať fotografie na ukradnutých dokladoch tak, aby zodpovedali modelu tváre inej osoby, ktorú použijeme pri detekcií živosti.
Ak by sme mali prístup len k dátam z dokladu (bez jeho fotografie), tiež by bolo možné podľa týchto dát vytvoriť jeho fotografiu. Aj tu dochádza k veľkému množstvu kontrol, že dáta z dokladu nie sú upravované. Občiansky preukaz obsahuje niekoľko kontrolných prvkov, ktoré musia sedieť a len malá grafická chyba alebo chyba dát môže proces ukončiť.
V ďalšej časti sa však zameriame len na modifikáciu fotografii a videí tváre, bez manipulácie textu na doklade.
Prvý pokus: Prelepenie dokladu
Tento, pomerne naivný pokus, v niektorých prípadoch v minulosti fungoval. Stačilo vytlačiť správnu veľkosť typicky čiernobielej fotky a nalepiť ju na reálny doklad. Dnes už podobné pokusy jednoducho zachytia algoritmy ktoré fotografiu analyzujú a detekujú anomálie na takto upravenom doklade, na základe ktorých vás ďalej v procese nepustia.
Druhý pokus: Digitálna úprava dokladu
Pri digitálnej úprave dokladu s cieľom upraviť fotografiu môžeme skúsiť niekoľko spôsobov, ktoré sa líšia v časovej náročnosti a aj schopnostiach útočníka.
V minulosti bola možná jednoduchá úprava napríklad pomocou MS Paint, kde bola fotka len digitálne „prelepená“ ako pri prvom pokuse. Rovnako ako pri prvom pokuse, takáto úprava už bude jednoducho detekovaná.
Šikovný útočník s praxou v grafických programoch typu Photoshop môže fotografiu na doklade upraviť aby vyzerala, že tam skutočne patrí a obísť tak túto kontrolu. Toto však už vyžaduje špecifické znalosti a dostatok času.
Dnes už ale máme k dispozícií rôzne typy generatívnej umelej inteligencie, ktorú je možné použiť aj na generovanie alebo úpravu fotografii a obrázkov. Použijeme teda voľne dostupný nástroj Stable Diffusion s rozšírením ReActor, ktorým nahradíme fotografiu na doklade fotografiou cudzej osoby.
Nástroj už za nás fotografiu upraví tak, aby do dokladu pasovala.
V tomto článku použijeme stock obrázky dokladov nájdené na internete ktoré neobsahujú osobné dáta a pre nahradenie fotografiu Rowana Atkinsona.
Generovanie upraveného dokladu je skoro instantné a upravená fotografia výrazne neporušuje rôzne watermarky, ktoré sa na doklade v oblasti tváre vyskytujú.
Pomocou inpaintingu vygenerovaného obrázku, môžeme ďalej upraviť detaily ako napríklad vlasy, bradu a podobne.
Druhý pokus: Nasnímanie dokladu z obrazovky
Digitálne upravené doklady máme pripravené, musíme ich už len použiť v procese zakladania účtu. Môžeme ich nasnímať z obrazovky alebo si kópiu dokladov vytlačiť a nasnímať ju z papiera.
Vytváranie fotografie z monitora alebo obrazovky je tiež kontrolované procesmi na pozadí. Na takejto fotografii je možné detekovať rôzne artefakty, pomocou ktorých je určená pravdepodobnosť vytvorenia fotky z monitoru. Jedným je napríklad moiré efekt*:
Existujú spôsoby ako podobné efekty minimalizovať, ale vytvorenie fotografie dokladu z monitoru, ktorú algoritmus prijal bez chyby bolo zriedkavé. Ak sa podarilo, tak typicky až po viacerých pokusoch a ladení fotografie pomocou informácií z backendu, ktoré by útočník k dispozícií nemal.
Druhý pokus: Nasnímanie dokladu z vytlačenej kópie
Ďalším pokusom bolo vytlačenie upraveného dokladu na papier a vykonanie fotografie tejto kópie. Tiež je tu vykonávaných niekoľko kontrol na odhalenie falzifikátov ale pri správnom upravení svetelných podmienok, vlastností a výbere kamery / zariadenia, boli takto vytvorené fotografie dokladu pravidelne úspešné.
Modifikácia tváre
Väčší problém ako modifikácia samotných dokladov predstavuje digitálna úprava tváre osoby zakladajúcej účet a úspešné obídenie kontroly živosti.
Kontrola živosti väčšinou spočíva v tom, že dá aplikácia klientovi počas snímania niekoľko náhodných pokynov, ktoré má vykonať – pozrieť sa hore/dole, doprava/doľava, otvoriť ústa, usmiať sa atď. Tento krok má zamedziť možnosti dopredu vytvoriť video cudzej osoby, ktoré bude nasnímané počas zakladania účtu. Ak by mal útočník možnosť video vytvoriť dopredu, môže byť oveľa kvalitnejšie a presvedčivejšie ako v prípade vytárania podvrhnutého videa v reálnom čase. V tomto kroku je tiež možné analyzovať prípadné anomálie pri pohyboch tváre, ktoré sú typické pre digitálne modifikované video.
V tomto kroku budeme vytvárať DeepFake obraz v reálnom čase, pri ktorom sa bude na originálnu tvár útočníka premietať tvár cudzej osoby, ktorej model bol dopredu natrénovaný. Obraz modifikovanej tváre bude v reálnom čase kopírovať výrazy tváre útočníka.
V čase testov sme použili nástroj DeepFaceLive, ktorý bol najjednoduchší na inštaláciu a konfiguráciu a k dispozícií mal natrénovaných niekoľko modelov známych tvárí, momentálne je už na githube archivovaný a nieje aktualizovaný:
Modifikovaný záznam kamery sme potom snímali nástrojom OBS, kde je možné ďalej obraz upravovať, napríklad stlmiť jas alebo kontrast, znížiť ostrosť a podobne. Pomocou ladenia týchto parametrov sme vytvorili finálny video stream, ktorý bol nasnímaný aplikáciou banky.
Výsledok
Pri pokuse úspešne dokončiť založenie účtu pomocou takto upravených dokladov a tváre klienta sme na prvý pokus úspešní neboli. Systém detekoval snímanie dokladov z vytlačených kópii, snímanie tváre z obrazu a rovnako aj anomálie tváre v podvrhnutom deepfake videu.
V testovacom prostredí sme ale mali v dispozícií detailné výstupy jednotlivých kontrol, ktoré banky vykonávajú, aby sme podľa nich mohli naše pokusy upraviť a zlepšiť. Zistili sme tak, že väčšia úspešnosť bola pri použití staršieho mobilného zariadenia s menej kvalitným fotoaparátom. Tiež sme kvalitu vyrobeného videa a fotografii znižovali napríklad prelepením fotoaparátu priehľadnou lepiacou páskou. Kontrolu snímania z monitoru sme tiež skúmali pre rôzne typy monitorov používajúcich napríklad OLED panely alebo vysoký refresh rate. Rôzne spôsoby nakláňania obrazovky tiež poskytovali rôzne výsledky.
Po niekoľkých pokusoch pri správnej kombinácií všetkých premenných bolo možné založenie účtu úspešne dokončiť a vytvoriť tak bankový účet pre cudziu osobu. Úspešný útok v praxi by ale pravdepodobne vyžadoval interné znalosti o systéme, pokročilé vybavanie, detailne vyladenú konfiguráciu a náročnú prípravu.
Prakticky však po dokončení procesu existujú aj ďalšie verifikačné postupy, ktorými by bolo možné účet odhaliť, ale to už je mimo nášho skúmania.
Na základe zistení boli pridané a upravené ďalšie kontroly, ktoré popísanému postupu zabraňujú.
Možnosti na zlepšenie
Jednou z možností ako proces vylepšiť môže byť zabránenie možnosti podvrhnúť fotku na doklade. Centrálna autorita, napr. ministerstvo vnútra by potom okrem kontroly údajov na doklade musela porovnať a overiť aj fotografiu osoby na doklade.
Útočník by potom musel pri kontrole živosti podvrhnúť tvár z občianskeho preukazu. Pre natrénovanie a úspešné vytvorenie deepfake videa by útočník potreboval dostatočne dlhé video alebo dosť fotografii konkrétnej obete. Takéto dáta sú omnoho ťažšie získateľné ako takéto záznamy verejne známej osoby.
Existujú už aj nástroje, ktoré deepfake video vytvoria aj z jednej fotky, kvalita výstupu je ale podstatne nižšia. Je ale faktom, že sa tieto nástroje zlepšujú a nedá sa vylúčiť, že budeme v budúcnosti schopní vytvoriť kvalitné deepfake video osoby len na základe jednej fotografie (napr. priamo z dokladu).
Ďalšia možnosť je vyžadovať vytvorenie dostatočne kvalitných snímkov počas zakladania účtu. Dostatočne vysoká kvalita fotografie, dostatočne nové zariadenie a dobré svetelné podmienky sú len príklady niekoľkých parametrov.
Alternatívy a budúcnosť
So zvyšovaním výkonu bežne dostupných hardwarových komponentov a pokrokoch v obore generatívnej umelej inteligencie bude stále ťažšie rozlišovať reálne fotografie/videá od tých generovaných. Tieto postupy môžu byť vo veľkej miere zneužívané na šírenie dezinformácií, podvody ale aj útoky aké sme si v článku ukázali.
Rovnako sa však budú zlepšovať aj technológie a metódy na ich identifikáciu. Budúcnosť ukáže, ktorá strana bude úspešnejšia, a či sa nebudeme musieť vrátiť k osobným návštevám pobočiek bánk a úradov pre vykonanie niektorých kritických operácií. Prípadne ako sa naučíme pracovať s (dez)informáciami a podvodmi ktoré na nás budú smerovať.
S určitosťou sa však dá povedať, že už ani dnes nemôžeme veriť všetkému čo v online priestore vidíme a počujeme.