Nová zranitelnost umožňuje obejít ověření PIN u bezkontaktních VISA plateb
08.09.2020
Nová zranitelnost umožňuje obejít ověření PIN u bezkontaktních VISA plateb

Tato zranitelnost by mohla útočníkům, kteří získali ukradené či ztracené VISA kreditní karty, umožnit bezkontaktní platby ve vysokých částkách bez znalosti PIN, či úspěšně provádět nepokryté off-line platby u obchodníků. 

Výzkum, publikovaný týmem bezpečnostních expertů ze Švýcarského federálního technologického institutu v Curychu (ETH Zürich), objevil dvě nové zranitelnosti ve Visa EMV bezkontaktním protokolu. První z těchto zranitelností umožňuje obejit nutnost verifikace PIN, která je protokolem EMV vyžadována u bezkontaktních plateb v částkách přesahujících vyšší hodnotu (v Čechách obvykle 500,- Kč), za použití dvou Man in the Middle (MitM) Android zařízení a jedné Visa karty. Druhá zranitelnost umožňuje útočníkům nakupovat drobnosti, aniž by došlo k provedení platby a strhnutí prostředků z jejich účtu.

Zranitelností jsou zasaženy všechny bezkontaktní karty s nálepkou Visa, včetně karet Visa Credit, Visa Debit, Visa Electron a VPay. Karty, které používají Mastercard implementaci EMV protokolu zranitelné nejsou.

Výzkum se zabýval bezpečností protokolu EMV. A o čem že je konkrétně tento protokol? EMV (zkratka z Europay, MasterCard a Visa) je celosvětový standard pro komunikaci mezi čipovými kartami a čtecími zařízení karet jako jsou pokladní místa (POS), terminály a bankomaty. Samotné implementace standartu se mohou lišit na základě výrobce čipu a vydavatele karty, nejčastěji ale na světě potkáme následující osmici (Europay na seznamu již nenalezneme – v roce 2002 se spojil s Mastercard):

  • VIS: Visa
  • Mastercard chip: Mastercard
  • AEIPS: American Express
  • UICS: China Union Pay
  • J Smart: JCB
  • D-PAS: Discover/Diners Club International
  • Rupay: NPCI
  • Verve


Z této osmice se výzkumníci z Curychu, ve svém výzkumu pojmenovaném „The EMV Standard: Break, Fix, Verify“, podívali na bezpečnost dvou implementací protokolu EMV, omezeni převážně dostupností různých druhů karet. Porovnávána tedy byla bezpečnost karet Mastercard a Visa. Ostatní protokoly nejsou v samotném výzkumu zmiňovány, s výjimkou karet China UnionPay a Discover: „Naše útoky by měli fungovat i pro EMV Bezkontaktní Kernel 6 (UnionPay) a 7 (Discovery), zatím jsme je ale netestovali.“ (překlad autora)

A jak samotný útok funguje? Výzkumníci vyvinuli Android aplikaci, která za použití NFC na dvou Android zařízeních sedí mezi kartou a terminálem (Viz obrázek).
 


MITM ANDROID APLIKACE MEZI KARTOU A TERMINÁLEM,
HTTPS://EMVRACE.GITHUB.IO/

Tato aplikace slouží jako most pro komunikaci mezi terminálem a kartou, čímž je umožněno útočníkovi modifikovat data, která jsou mezi nimi odeslány. Mimo ostatní informace důležité pro správné provedení platby (které jsou pro nás teď nedůležité) dochází také k výměně tzv. Card Transaction Qualifiers (CTQ). Těchto několik bitů, které nastavuje vydavatel karty určuje, co za akce je nutné provést na terminálu pro úspěšné provedení transakce. Obsahuje mimo jiné i informace o tom, zda je nutné vyžadovat PIN, či zda již proběhlo ověření PIN kódu na nějakém jiném zařízení (jako například na chytrém telefonu použitém k provedení platby). Samotný útok tedy využívá Man in the Middle Android aplikace, která modifikuje nešifrované CTQ a přesvědčí terminál o tom, že PIN není nutné vyžadovat, a že PIN byl úspěšně ověřen již dříve na útočníkově chytrém telefonu. Terminál tudíž nepožaduje další verifikaci, a transakci přijme a pošle na zpracování.

Útok v praxi je možné shlédnout na následujícím videu, které bylo součástí článku od autorů výzkumu:


Na téměř identickém způsobu ale funguje i útok oznámený v polovině minulého roku firmou Positive Technologies. Jedná se tedy o tak velkou novinku, jak autoři tvrdí? Autoři o tomto zdánlivě stejném útoku vědí, a sice funguje na stejném principu, kde instruuje terminál, že PIN verifikace proběhla jinde, ale: „Na rozdíl od našeho útoku, útok Gallowaye a Yasunova [autoři útoku od Positive Technologies] také modifikuje zprávu vycházející z terminálu, kde je požadavek na verifikaci zakódován. Podle (generické) EMV definice kryptogramů by měli tyto zprávy být chráněné proti modifikaci. Jejich útok funguje, protože proprietární Visa kryptogramy nezabraňují této modifikaci, alespoň ne ty implementované na kartách, které testovali. … Náš útok demonstruje, že dokonce ani ten nejsilnější kryptogram navrhovaný EMV stále nestačí na správnou verifikaci vlastníka karty.“ (Překlad autora)

Obcházení PIN verifikace ale není jediný nález, který tento výzkum přinesl. Druhá zranitelnost, která se týká kromě karet Visa také starších karet Mastercard (karet, které nepodporují novější CDA autentizaci off-line plateb), umožňuje útočníkům donutit terminál přijmout nevalidní off-line transakce. Útok je založený na stejném MitM principu jako výše zmíněné obcházení PIN verifikace, pouze dochází k modifikaci tzv. aplikačního kryptogramu, místo CTQ. Aplikační kryptogram je generován kartou během procesu platby a následně odeslán bance, která na jeho základě potvrdí legitimitu provedené platby. Tím, že dojde k jeho modifikaci, je platba znehodnocena, a off-line platba nebude považována za validní. Protože ale verifikace (a odmítnutí) off-line platby bankou proběhne nejspíše až za velmi dlouhou dobu od provedení platby (většinou v řádu několika desítek hodin), má útočník (ne)zaplacené zboží již dávno u sebe, a nejspíše někde velmi daleko.

Tento útok je ale možné, na rozdíl od útoku prvního, provádět pouze po velmi malých částkách, a nejspíše tedy nebude pro organizovanější zločin nijak atraktivní.

A jak se proti tomuto útoku bránit? Autoři doporučují následující:

„Stále platí, co doporučují banky. Jakmile zjistíte, že jste ztratili nebo vám byla odcizena karta, okamžitě ji zablokujte. Pravidelně kontrolujte výpisy z účtů, a ihned nahlaste bance, pokud uvidíte neznámou transakci. Pokud u sebe nosíte Visa kartu, tak Vám také doporučujeme dávat si pozor, že nikdo nedrží žádné zařízení blízko vaší karty proti vaší vůli. Dávejte si také pozor na zadní kapsy ve frontách.“

Zdroj:
https://emvrace.github.io

 

Mikuláš Hrdlička, AEC
Mikuláš Hrdlička

Cyber Security Specialist
AEC a.s.