Všechny články

14 červenec 2026 / 11 minut čtení

Testovali jsme odolnost biometrického ověřování identity vůči moderním útokům

Black-box bezpečnostní hodnocení řešení Innovatrics IDV Toolkit zaměřené na detekci přítomnosti živé osoby (Liveness Detection) a ochranu před spoofingem.


Tým Citadelo během 16 dnů intenzivního black-box penetračního testování (Black-Box Penetration Testing) analyzoval řešení Innovatrics Identity Verification (IDV) Toolkit s cílem simulovat chování skutečného útočníka a pokusit se obejít mechanismy detekce přítomnosti živé osoby (Liveness Detection). V článku popisujeme postup reverzního inženýrství (Reverse Engineering), analýzy aplikace za běhu (Runtime Instrumentation) a útoků s podvržením dat (Digital Injection Attacks), které jsme využili při ověřování odolnosti systému.

Proč je nezávislé testování biometrických systémů nezbytné

V době, kdy jediný deepfake vytvořený pomocí umělé inteligence dokáže připravit organizaci o desítky milionů korun, se hranice mezi skutečnou a uměle vytvořenou identitou prakticky vytratila. Tato hrozba už dávno není pouze teoretickým rizikem diskutovaným na úrovni představenstev. Stala se jedním z hlavních důvodů zpřísňování regulace v oblasti digitální identity a kybernetické bezpečnosti.

S postupným zaváděním požadavků AI Actu musí organizace splňovat stále přísnější požadavky na transparentnost a bezpečnost systémů využívajících umělou inteligenci. Jedním z nich je schopnost spolehlivě rozlišit mezi skutečným člověkem a uměle vytvořenou identitou.

Vzdálená registrace uživatelů a online autentizace se staly standardem moderních digitálních služeb. Biometrické ověřování dnes představuje jednu z nejdůležitějších vrstev architektury Zero Trust a postupně nahrazuje tradiční způsoby autentizace, jako jsou hesla, PIN kódy nebo bezpečnostní otázky.

Útočníci se však přizpůsobili. Generativní umělá inteligence, open source nástroje pro podvržení videa a frameworky umožňující manipulaci aplikací za jejich běhu jsou dnes volně dostupné. Útočníkům to výrazně usnadňuje realizaci sofistikovaných útoků využívajících podvržené biometrické údaje (Presentation Attacks).

Biometrie obličeje často představuje poslední linii obrany před zneužitím digitální identity. Pokud se útočníkovi podaří tyto mechanismy obejít, může vytvářet neoprávněné účty, obcházet opatření proti praní špinavých peněz (Anti-Money Laundering – AML) nebo získat přístup ke kritickým finančním systémům.

Organizace se proto nemohou spoléhat pouze na certifikace výrobce nebo jednorázové bezpečnostní audity. Skutečnou úroveň odolnosti může potvrdit pouze nezávislé testování, které simuluje reálné techniky používané útočníky.

Tato případová studie popisuje black-box bezpečnostní hodnocení (Black-Box Security Assessment) řešení Innovatrics Identity Verification Toolkit, jednoho z předních systémů pro spolehlivé ověřování digitální identity. Během šestnácti dnů jsme analyzovali vnitřní fungování řešení, provedli reverzní inženýrství jeho komponent, pokusili se obejít nativní bezpečnostní mechanismy, realizovali útoky s podvržením dat a vyhodnotili jejich výsledky.

Navzdory intenzivnímu úsilí se nám nepodařilo narušit vícevrstvou bezpečnostní architekturu řešení ani obejít jeho mechanismy detekce přítomnosti živé osoby.

„V rámci jednoho z významných zákaznických projektů jsme potřebovali nezávisle ověřit odolnost našeho řešení pro ověřování identity vůči útokům využívajícím podvržené biometrické údaje (Injection Attacks). Společnost Citadelo jsme si vybrali pro její odborné zkušenosti, dobrou reputaci a schopnost realizovat testování v náročném časovém harmonogramu. Výsledky bezpečnostního hodnocení nám poskytly nezávislé potvrzení odolnosti našeho řešení a posílily důvěru zákazníka v jeho bezpečnost,“ Viktor Bielko- Product Manager, IDV Toolkit, Innovatrics.

testoání.png

Proč Black Box? Pohled očima útočníka

Hodnocení bezpečnosti softwarového vývojového kitu (Software Development Kit – SDK) prostřednictvím black-box testování (Black-Box Testing) je důležité proto, že nejvěrněji simuluje podmínky, ve kterých pracuje skutečný útočník.

Během testování jsme neměli k dispozici zdrojový kód, architektonickou dokumentaci ani interní vývojářské informace. Vycházeli jsme výhradně z veřejně dostupné dokumentace, produkčních binárních souborů klientské aplikace a veřejně dostupných rozhraní API.

Při tomto typu hodnocení nelze vycházet z předpokladů o tom, jak by aplikace měla fungovat. Místo toho je nutné analyzovat její skutečné chování v reálném prostředí.

Skutečně bezpečné biometrické SDK musí zůstat odolné i v případě, že útočník získá úplnou kontrolu nad zařízením, na kterém aplikace běží. Tento přístup vychází z Kerckhoffsova principu (Kerckhoffs's Principle), podle kterého bezpečnost systému nesmí spočívat v utajení způsobu jeho fungování (Security Through Obscurity).

Testování bez jakýchkoli interních informací nám umožnilo objektivně posoudit, zda ochrana aplikace za jejího běhu, mechanismy záměrného znepřehlednění kódu (Code Obfuscation) a zabezpečení komunikace skutečně odolávají moderním technikám reverzního inženýrství a automatizovaným útokům.

Rozsah testování a metodika

Naše technické hodnocení se zaměřilo především na knihovnu Innovatrics Android Face Lite Library a její komunikaci se službou Digital Identity Service (DIS). Přestože jsme okrajově analyzovali také implementaci pro iOS, hlavním cílem testování byla platforma Android. Její otevřenější architektura umožňuje podrobnější analýzu binárních souborů, systémových volání i samotného běhu aplikace.

Testování bylo rozděleno do tří navazujících fází.

  • Fáze 1: Statická analýza a dekompilace (Static Analysis & Decompilation)

V první fázi jsme analyzovali binární soubory aplikace s cílem zrekonstruovat jejich logickou strukturu. Identifikovali jsme pevně zakódované konstanty, zmapovali vnitřní architekturu tříd a analyzovali nativní knihovny třetích stran, které jsou součástí řešení.

  • Fáze 2: Analýza aplikace za běhu a zachytávání API volání (Dynamic Instrumentation & Hooking)

Ve druhé fázi jsme se zaměřili na analýzu aplikace za běhu (Runtime Instrumentation). Pomocí specializovaných nástrojů jsme do běžící aplikace vkládali vlastní skripty, které nám umožnily zachytávat průběh vykonávání programu, sledovat rozhodovací logiku, analyzovat kryptografická data v paměti a v reálném čase upravovat vybrané datové struktury.

  • Fáze 3: Útoky s podvržením dat a manipulací komunikační vrstvy (Digital Injection & Transport Layer Attacks)

V závěrečné fázi jsme se zaměřili na pokročilé scénáře útoků. Testovali jsme manipulaci síťové komunikace, zachytávání autentizačních tokenů a realizovali útoky s podvržením dat (Digital Injection Attacks) včetně simulace virtuální kamery, která se pokoušela systému podstrčit upravená obrazová data namísto obrazu ze skutečného fotoaparátu.

Reverzní inženýrství a analýza aplikace za běhu

Když aplikace běží v zařízení uživatele, má útočník z technického hlediska celé zařízení pod svou kontrolou. Může se pokusit analyzovat vnitřní logiku aplikace pomocí dekompilace (Decompilation) nebo sledovat její chování za běhu prostřednictvím analýzy aplikace za běhu (Runtime Instrumentation).

Vývojáři se proti těmto technikám brání několika způsoby. Kritické části bezpečnostní logiky přesouvají do nativních knihoven, využívají mechanismy záměrného znepřehlednění kódu (Code Obfuscation) a implementují ochranu, která dokáže odhalit přítomnost debuggerů nebo nástrojů pro analýzu aplikace za běhu. Po jejich detekci může aplikace ukončit svou činnost nebo zablokovat další zpracování.

Přestože je za určitých okolností možné tyto ochranné mechanismy obejít, vyžaduje to manuální zásahy na nízké úrovni systému, rozsáhlé technické znalosti a značné množství času.

Analýza scénářů útoků a výsledky testování

Během šestnáctidenního testování náš tým systematicky prošel všechny plánované scénáře útoků. Analyzovali jsme síťovou komunikaci, deobfuskovali dekompilovaný kód, provedli reverzní inženýrství nativních knihoven, zkoumali vnitřní fungování procesu snímání obličeje, pokoušeli se obejít bezpečnostní mechanismy a vytvořili prostředí umožňující realizaci útoků s podvržením dat.

Simulace virtuální kamery pomocí LSPosed (Virtual Camera Simulation via LSPosed Hooking)

První scénář útoku byl zaměřen na úplné nahrazení obrazu ze skutečné kamery předem připraveným videozáznamem. Cílem bylo provést útok využívající podvržený biometrický vstup (Presentation Attack) bez nutnosti fyzicky přehrávat video na jiném zařízení.

K tomuto účelu jsme využili aplikaci fungující jako systémový modul. Pomocí frameworku LSPosed zachytávala volání rozhraní Android Camera2 API a přinutila operační systém poskytovat aplikaci místo obrazu ze skutečného fotoaparátu snímky z předem připraveného videosouboru.

Výsledek: Neúspěšné

Přestože se nám podařilo úspěšně nahradit obrazový tok na úrovni Java vrstvy, ověřovací mechanismus řešení Innovatrics okamžitě rozpoznal nesrovnalosti. Dodaná obrazová data odmítl a relaci vyhodnotil jako pokus o manipulaci (Tampering).

Podvržení dat před jejich zašifrováním (Man-in-the-App Cryptographic Boundary Interception)

Druhý scénář útoku byl podstatně sofistikovanější. Jeho cílem nebylo nahradit obraz z kamery, ale zasáhnout do zpracování biometrických dat přímo v aplikaci.

Útočník nejprve nechá aplikaci zachytit obraz ze skutečného fotoaparátu, aby všechna hardwarová metadata zůstala důvěryhodná. Následně se pokusí zachytit biometrická obrazová data uložená v paměti aplikace a těsně před jejich zašifrováním a odesláním na server je nahradit vlastními daty.

Takový útok je podstatně náročnější než manipulace s kamerou, protože systém stále pracuje s autentickými údaji ze zařízení a útočník se snaží změnit pouze samotný obsah biometrických dat.

Výsledek: Neúspěšné

Přestože se nám podařilo získat kontrolu nad pamětí klientské aplikace během jejího běhu, serverová část řešení úspěšně odhalila nekonzistenci přijatých údajů. Pokus o podvržení dat byl zamítnut a ověření identity neproběhlo.

Podvržení obrazových snímků (Real-Time Frame Injection)

Poslední scénář představoval technicky nejnáročnější typ útoku.

Namísto manipulace síťové komunikace nebo zachytávání systémových rozhraní jsme se zaměřili přímo na nativní část SDK odpovědnou za inicializaci obrazových dat. Naším cílem bylo v reálném čase podvrhnout sekvenci vysoce kvalitních obrazových snímků ještě před jejich interním zpracováním a odesláním do systému (Serialization).

Na rozdíl od předchozích scénářů tento přístup obchází několik mechanismů operačního systému a zasahuje přímo do interního zpracování biometrických údajů. Jde proto o jeden z technicky nejnáročnějších způsobů kompromitace biometrických řešení.

Výsledek: Neúspěšné

Ani tento scénář nevedl k úspěšnému obejití mechanismů detekce přítomnosti živé osoby. Vícevrstvá bezpečnostní architektura řešení zabránila úspěšnému podvržení biometrických údajů.

Co výsledky testování znamenají?

Odolnost, kterou během testování prokázal Innovatrics IDV Toolkit, poukazuje na několik důležitých principů moderních bezpečnostních architektur využívaných v bankovnictví, pojišťovnictví, fintech sektoru i dalších regulovaných odvětvích.

1. Důvěra nesmí být založena na klientském zařízení (De-coupling Client Trust)

Výsledky testování ukázaly, že mechanismy implementované na straně klienta, jako jsou záměrné znepřehlednění kódu, detekce rootnutých zařízení nebo ochrana proti manipulaci, představují pro útočníka významnou překážku. Samy o sobě však nemohou tvořit poslední linii obrany. Pokud má útočník dostatek času, technických znalostí a úplnou kontrolu nad zařízením, dokáže pomocí analýzy aplikace za běhu nebo zachytávání volání obejít část ochranných mechanismů implementovaných na straně klienta. Skutečná bezpečnost biometrického ověřování proto závisí především na serverových validačních mechanismech. Systém musí zůstat bezpečný i v případě, kdy klientská aplikace běží na kompromitovaném zařízení ovládaném útočníkem.

2. Bezpečnost je třeba ověřovat průběžně (Continuous Lifecycle Auditing)

Ověření bezpečnosti nelze vnímat jako jednorázovou aktivitu provedenou při nasazení řešení do produkčního prostředí. Nástroje pro reverzní inženýrství (Reverse Engineering) se neustále zdokonalují a generativní umělá inteligence výrazně snižuje náklady na vytváření realistických deepfake útoků. Stejným tempem se vyvíjejí také techniky, které útočníci využívají k obcházení bezpečnostních mechanismů. Organizace by proto měly pravidelné bezpečnostní testování biometrických systémů zařadit mezi standardní aktivity během celého životního cyklu aplikace i procesu řízení rizik. Nemělo by jít pouze o jednorázové ověření splnění legislativních nebo regulatorních požadavků.

 

3. Hardwarová telemetrie hraje klíčovou roli (Hardware-Anchored Telemetry)

Moderní řešení pro ověřování identity nemohou posuzovat pouze samotný obraz obličeje. Systémy, které vyhodnocují pouze to, zda fotografie nebo video působí důvěryhodně, jsou výrazně náchylnější k útokům s podvržením dat (Digital Injection Attacks). Výrazně vyšší úroveň ochrany poskytují řešení, která při rozhodování využívají také údaje získané přímo z hardwaru zařízení. Kombinace obrazových dat a hardwarové telemetrie výrazně zvyšuje náročnost útoku a dokáže účinně eliminovat běžné virtuální kamery, emulátory i další softwarové techniky využívané při spoofingu.

Závěr

„Black-box bezpečnostní hodnocení řešení Innovatrics Identity Verification Toolkit potvrdilo vysokou odolnost jeho vícevrstvé bezpečnostní architektury. Přestože se našemu týmu podařilo obejít počáteční mechanismy ochrany proti analýze aplikace za běhu a získat kontrolu nad pamětí klientské aplikace na zařízení se systémem Android, všechny následné pokusy o útoky s podvržením dat selhaly. Mechanismy detekce přítomnosti živé osoby zůstaly během celého testování odolné,“ Oliver -Etický hacker, Citadelo

Kombinace izolace kritických částí aplikace v nativní vrstvě, korelace údajů získaných z hardwaru zařízení a serverových validačních mechanismů poskytuje vysokou úroveň ochrany moderních systémů pro digitální ověřování identity.

Black-box penetrační testování patří mezi nejspolehlivější způsoby, jak objektivně ověřit bezpečnost aplikace v podmínkách, které se co nejvíce blíží reálnému útoku. Testování bez interních znalostí o řešení umožňuje posoudit, zda by útočník využívající veřejně dostupné informace a běžně dostupné nástroje dokázal testovaný systém kompromitovat.

V závislosti na cílech organizace lze tento přístup doplnit také o white-box bezpečnostní hodnocení (White-Box Assessment). Zatímco black-box testování simuluje postup externího útočníka, white-box hodnocení umožňuje podrobně analyzovat architekturu řešení, implementaci jednotlivých komponent i zdrojový kód.

Obě metodiky se vzájemně doplňují a každá přináší odlišný pohled na bezpečnost systému. Volba vhodného přístupu závisí na konkrétních rizicích, regulatorních požadavcích a úrovni jistoty, které chce organizace při ověřování bezpečnosti dosáhnout.

Pokud chcete ověřit odolnost svého řešení z pohledu skutečného útočníka prostřednictvím black-box penetračního testování nebo potřebujete podrobnější analýzu architektury a implementace pomocí white-box bezpečnostního hodnocení, rádi vám pomůžeme zvolit přístup, který bude nejlépe odpovídat vašim bezpečnostním cílům.

CTA_cz.png

 

logo

Přihlaste se k odběru našeho newsletteru a získejte všechny důležité novinky v oblasti kybernetické bezpečnosti a etického hackování.

© 2024 citadelo AG. Všechna práva vyhrazena.

facebooklinkedinxyoutube