14 júl 2026 / 11 minút čítania
Tím Citadelo počas 16 dní intenzívneho black-box penetračného testovania (Black-Box Penetration Testing) analyzoval riešenie Innovatrics Identity Verification (IDV) Toolkit s cieľom simulovať správanie reálneho útočníka a pokúsiť sa obísť mechanizmy detekcie prítomnosti živej osoby (Liveness Detection). V článku opisujeme postup reverzného inžinierstva (Reverse Engineering), analýzy aplikácie počas jej behu (Runtime Instrumentation) a útokov s podvrhnutím dát (Digital Injection Attacks), ktoré sme využili pri overovaní odolnosti systému.
V čase, keď jediný deepfake vytvorený pomocou umelej inteligencie dokáže pripraviť organizáciu o desiatky miliónov eur, sa hranica medzi skutočnou a syntetickou identitou prakticky vytratila. Táto hrozba už dávno nie je iba teoretickým rizikom diskutovaným na úrovni predstavenstiev. Stala sa jedným z hlavných dôvodov sprísňovania regulácie v oblasti digitálnej identity a kybernetickej bezpečnosti. S postupným zavádzaním požiadaviek AI Actu musia organizácie spĺňať čoraz prísnejšie požiadavky na transparentnosť a bezpečnosť systémov využívajúcich umelú inteligenciu. Jednou z nich je schopnosť spoľahlivo rozlíšiť medzi skutočným človekom a umelo vytvorenou identitou.
Vzdialená registrácia používateľov a online autentifikácia sa stali štandardom moderných digitálnych služieb. Biometrické overovanie dnes predstavuje jednu z najdôležitejších vrstiev architektúr Zero Trust a postupne nahrádza tradičné spôsoby autentifikácie, ako sú heslá, PIN kódy či bezpečnostné otázky. Útočníci sa však prispôsobili. Generatívna umelá inteligencia, open source nástroje na podvrhnutie videa a frameworky umožňujúce manipuláciu aplikácií počas ich behu sú dnes voľne dostupné. Útočníkom to výrazne uľahčuje realizáciu sofistikovaných útokov využívajúcich podvrhnuté biometrické údaje (Presentation Attacks).
Biometria tváre často predstavuje poslednú líniu obrany pred zneužitím digitálnej identity. Ak sa útočníkovi podarí tieto mechanizmy obísť, môže vytvárať neoprávnené účty, obchádzať opatrenia proti praniu špinavých peňazí (Anti-Money Laundering – AML) alebo získať prístup ku kritickým finančným systémom. Organizácie sa preto nemôžu spoliehať iba na certifikácie výrobcu alebo jednorazové bezpečnostné audity. Skutočnú úroveň odolnosti dokáže potvrdiť iba nezávislé testovanie, ktoré simuluje reálne techniky používané útočníkmi.
Táto prípadová štúdia opisuje black-box bezpečnostné hodnotenie (Black-Box Security Assessment) riešenia Innovatrics Identity Verification Toolkit, jedného z popredných systémov na spoľahlivé overovanie digitálnej identity. Počas šestnástich dní sme analyzovali vnútorné fungovanie riešenia, vykonali reverzné inžinierstvo jeho komponentov, pokúsili sa obísť natívne bezpečnostné mechanizmy, realizovali útoky s podvrhnutím dát a vyhodnotili ich výsledky.
Napriek intenzívnemu úsiliu sa nám nepodarilo narušiť viacvrstvovú bezpečnostnú architektúru riešenia ani obísť jeho mechanizmy na overovanie živosti.
„V rámci jedného z významných zákazníckych projektov sme potrebovali nezávisle overiť odolnosť nášho riešenia na overovanie identity voči útokom využívajúcim podvrhnuté biometrické údaje (Injection Attacks). Spoločnosť Citadelo sme si vybrali pre jej odborné skúsenosti, dobrú reputáciu a schopnosť zrealizovať testovanie v náročnom časovom horizonte. Výsledky bezpečnostného hodnotenia nám poskytli nezávislé potvrdenie odolnosti nášho riešenia a posilnili dôveru zákazníka v jeho bezpečnosť,“ Viktor Bielko- Product Manager, IDV Toolkit, Innovatrics.
Prečo Black Box? Pohľad očami útočníkaHodnotenie bezpečnosti softvérového vývojového kitu (Software Development Kit – SDK) prostredníctvom black-box testovania (Black-Box Testing) je dôležité preto, že najvernejšie simuluje podmienky, v ktorých pracuje skutočný útočník. Počas testovania sme nemali k dispozícii zdrojový kód, architektonickú dokumentáciu ani interné vývojárske informácie. Vychádzali sme výlučne z verejne dostupnej dokumentácie, produkčných binárnych súborov klientskej aplikácie a verejne dostupných rozhraní API. Pri takomto type hodnotenia nemožno vychádzať z predpokladov o tom, ako by aplikácia mala fungovať. Namiesto toho je potrebné analyzovať jej skutočné správanie v reálnom prostredí.
Skutočne bezpečné biometrické SDK musí zostať odolné aj v prípade, že útočník získa úplnú kontrolu nad zariadením, na ktorom aplikácia beží. Vychádza to z Kerckhoffsovho princípu (Kerckhoffs's Principle), podľa ktorého bezpečnosť systému nesmie spočívať v utajení spôsobu jeho fungovania (Security Through Obscurity). Testovanie bez akýchkoľvek interných informácií nám umožnilo objektívne posúdiť, či ochrana aplikácie počas jej behu, mechanizmy zámerného zneprehľadnenia kódu (Code Obfuscation) a zabezpečenie komunikácie skutočne odolávajú moderným technikám reverzného inžinierstva a automatizovaným útokom.
Naše technické hodnotenie sa zameralo predovšetkým na knižnicu Innovatrics Android Face Lite Library a jej komunikáciu so službou Digital Identity Service (DIS). Hoci sme okrajovo analyzovali aj implementáciu pre iOS, hlavným cieľom testovania bola platforma Android. Jej otvorenejšia architektúra umožňuje podrobnejšiu analýzu binárnych súborov, systémových volaní a samotného behu aplikácie.
Testovanie bolo rozdelené do troch na seba nadväzujúcich fáz.
V prvej fáze sme analyzovali binárne súbory aplikácie s cieľom zrekonštruovať ich logickú štruktúru. Identifikovali sme pevne zakódované konštanty, zmapovali vnútornú architektúru tried a analyzovali natívne knižnice tretích strán, ktoré sú súčasťou riešenia.
V druhej fáze sme sa zamerali na analýzu aplikácie počas jej behu (Runtime Instrumentation). Pomocou špecializovaných nástrojov sme do bežiacej aplikácie vkladali vlastné skripty, ktoré nám umožnili zachytávať priebeh vykonávania programu, sledovať rozhodovaciu logiku, analyzovať kryptografické dáta v pamäti a v reálnom čase upravovať vybrané dátové štruktúry.
V záverečnej fáze sme sa zamerali na pokročilé scenáre útokov. Testovali sme manipuláciu sieťovej komunikácie, zachytávanie autentizačných tokenov a realizovali útoky s podvrhnutím dát (Digital Injection Attacks) vrátane simulácie virtuálnej kamery, ktorá sa pokúšala systému podsunúť upravené obrazové dáta namiesto obrazu zo skutočného fotoaparátu.
Keď aplikácia beží v zariadení používateľa, útočník má technicky pod kontrolou celé zariadenie. Môže sa pokúsiť analyzovať vnútornú logiku aplikácie pomocou dekompilácie (Decompilation) alebo sledovať jej správanie počas behu prostredníctvom analýzy aplikácie počas behu (Runtime Instrumentation).
Vývojári sa proti týmto technikám bránia viacerými spôsobmi. Kritické časti bezpečnostnej logiky presúvajú do natívnych knižníc, využívajú mechanizmy zámerného zneprehľadnenia kódu (Code Obfuscation) a implementujú ochranu, ktorá dokáže odhaliť prítomnosť debuggerov alebo nástrojov na analýzu aplikácie počas jej behu. Po ich detekcii môže aplikácia ukončiť svoju činnosť alebo zablokovať ďalšie spracovanie.
Hoci je možné tieto ochranné mechanizmy za určitých okolností obísť, vyžaduje si to manuálne zásahy na nízkej úrovni systému, rozsiahle technické znalosti a značné množstvo času.
Počas šestnásťdňového testovania náš tím systematicky prešiel všetkými plánovanými scenármi útokov. Analyzovali sme sieťovú komunikáciu, deobfuskovali dekompilovaný kód, vykonali reverzné inžinierstvo natívnych knižníc, skúmali vnútorné fungovanie procesu snímania tváre, pokúšali sa obísť bezpečnostné mechanizmy a vytvorili prostredie umožňujúce realizáciu útokov s podvrhnutím dát.
Prvý scenár útoku bol zameraný na úplné nahradenie obrazu zo skutočnej kamery vopred pripraveným videozáznamom. Cieľom bolo vykonať útok využívajúci podvrhnutý biometrický vstup (Presentation Attack) bez potreby fyzicky zobrazovať video na inom zariadení.
Na tento účel sme využili aplikáciu fungujúcu ako systémový modul. Pomocou frameworku LSPosed zachytávala volania rozhrania Android Camera2 API a prinútila operačný systém poskytovať aplikácii namiesto obrazu zo skutočného fotoaparátu snímky z vopred pripraveného videosúboru.
Výsledok: Neúspešné
Hoci sa nám podarilo úspešne nahradiť obrazový tok na úrovni Java vrstvy, overovací mechanizmus Innovatrics okamžite rozpoznal nezrovnalosti. Riešenie zachytené dáta odmietlo a reláciu označilo ako pokus o manipuláciu (Tampering).
Ďalší scenár útoku bol podstatne sofistikovanejší. Jeho cieľom nebolo nahradiť obraz z kamery, ale zasiahnuť do spracovania biometrických dát priamo v aplikácii. Útočník najskôr nechá aplikáciu zachytiť obraz zo skutočného fotoaparátu, aby boli všetky hardvérové metadáta dôveryhodné. Následne sa pokúsi zachytiť biometrické obrazové dáta uložené v pamäti aplikácie a tesne pred ich zašifrovaním a odoslaním na server ich nahradiť vlastnými dátami.
Takýto útok je podstatne náročnejší než manipulácia s kamerou, pretože systém stále pracuje s autentickými údajmi zo zariadenia a útočník sa snaží zmeniť iba samotný obsah biometrických dát.
Výsledok: Neúspešné
Aj napriek tomu, že sa nám podarilo získať kontrolu nad pamäťou klientskej aplikácie počas jej behu, serverová časť riešenia úspešne odhalila nekonzistentnosť prijatých údajov. Pokus o podvrhnutie dát bol zamietnutý a overenie identity neprebehlo.
Posledný scenár predstavoval technicky najnáročnejší typ útoku. Namiesto manipulácie sieťovej komunikácie alebo zachytávania systémových rozhraní sme sa zamerali priamo na natívnu časť SDK zodpovednú za inicializáciu obrazových dát. Naším cieľom bolo v reálnom čase podvrhnúť sekvenciu vysokokvalitných obrazových snímok ešte pred ich interným spracovaním a odoslaním do systému (Serialization).
Na rozdiel od predchádzajúcich scenárov tento prístup obchádza viacero mechanizmov operačného systému a zasahuje priamo do interného spracovania biometrických údajov. Ide preto o jeden z technicky najnáročnejších spôsobov kompromitácie biometrických riešení.
Výsledok: Neúspešné
Ani tento scenár neviedol k úspešnému obídeniu mechanizmov detekcie prítomnosti živej osoby. Viacvrstvová bezpečnostná architektúra riešenia zabránila úspešnému podvrhnutiu biometrických údajov.
Odolnosť, ktorú počas testovania preukázal Innovatrics IDV Toolkit, poukazuje na niekoľko dôležitých princípov moderných bezpečnostných architektúr využívaných v bankovníctve, poisťovníctve, fintech sektore a ďalších regulovaných odvetviach.
1. Dôvera nesmie byť založená na klientskom zariadení (De-coupling Client Trust)
Výsledky testovania ukázali, že mechanizmy implementované na strane klienta, ako sú zámerné zneprehľadnenie kódu, detekcia rootnutých zariadení alebo ochrana proti manipulácii, predstavujú dôležitú prekážku pre útočníka. Samy osebe však nemôžu byť poslednou líniou obrany. Ak má útočník dostatok času, technických znalostí a úplnú kontrolu nad zariadením, dokáže pomocou analýzy aplikácie počas jej behu alebo zachytávania volaní obísť časť ochranných mechanizmov implementovaných na strane klienta. Skutočná bezpečnosť biometrického overovania preto závisí predovšetkým od serverových validačných mechanizmov. Systém musí zostať bezpečný aj v prípade, keď je klientská aplikácia spustená na kompromitovanom zariadení ovládanom útočníkom.
2. Bezpečnosť treba overovať priebežne (Continuous Lifecycle Auditing)
Overenie bezpečnosti nemožno vnímať ako jednorazovú aktivitu vykonanú pri nasadení riešenia do produkcie. Nástroje na reverzné inžinierstvo sa neustále zdokonaľujú a generatívna umelá inteligencia výrazne znižuje náklady na vytváranie realistických deepfake útokov. Rovnakým tempom sa vyvíjajú aj techniky používané útočníkmi. Organizácie by preto mali pravidelné bezpečnostné testovanie biometrických systémov zaradiť medzi štandardné aktivity počas celého životného cyklu aplikácie a procesu riadenia rizík. Nemalo by ísť iba o jednorazové overenie splnenia legislatívnych alebo regulačných požiadaviek.
3. Hardvérová telemetria zohráva kľúčovú úlohu (Hardware-Anchored Telemetry)
Moderné riešenia na overovanie identity nemôžu posudzovať iba samotný obraz tváre. Systémy, ktoré hodnotia len to, či fotografia alebo video pôsobia dôveryhodne, sú výrazne zraniteľnejšie voči útokom s podvrhnutím dát (Digital Injection Attacks). Výrazne vyššiu úroveň ochrany poskytujú riešenia, ktoré pri rozhodovaní využívajú aj údaje získané priamo z hardvéru zariadenia. Kombinácia obrazových dát a hardvérovej telemetrie výrazne zvyšuje náročnosť útoku a dokáže účinne eliminovať bežné virtuálne kamery, emulátory aj ďalšie softvérové techniky využívané pri spoofingu.
„Black-box bezpečnostné hodnotenie riešenia Innovatrics Identity Verification Toolkit potvrdilo vysokú odolnosť jeho viacvrstvovej bezpečnostnej architektúry. Hoci sa nášmu tímu podarilo obísť počiatočné mechanizmy ochrany proti analýze aplikácie počas jej behu a získať kontrolu nad pamäťou klientskej aplikácie na zariadení so systémom Android, všetky následné pokusy o útoky s podvrhnutím dát zlyhali. Mechanizmy detekcie prítomnosti živej osoby zostali počas celého testovania odolné,“ Oliver- etický hacker, Citadelo
Kombinácia izolácie kritických častí aplikácie v natívnej vrstve, korelácie údajov získaných z hardvéru zariadenia a serverových validačných mechanizmov poskytuje vysokú úroveň ochrany moderných systémov na digitálne overovanie identity. Black-box penetračné testovanie patrí medzi najspoľahlivejšie spôsoby, ako objektívne overiť bezpečnosť aplikácie v podmienkach, ktoré sa čo najviac približujú reálnemu útoku. Testovanie bez interných znalostí o riešení umožňuje posúdiť, či by útočník využívajúci verejne dostupné informácie a bežne dostupné nástroje dokázal kompromitovať testovaný systém.
V závislosti od cieľov organizácie možno tento prístup doplniť aj o white-box bezpečnostné hodnotenie (White-Box Assessment). Kým black-box testovanie simuluje postup externého útočníka, white-box hodnotenie umožňuje podrobne analyzovať architektúru riešenia, implementáciu jednotlivých komponentov aj zdrojový kód. Obe metodiky sa navzájom dopĺňajú a každá prináša odlišný pohľad na bezpečnosť systému. Výber vhodného prístupu závisí od konkrétnych rizík, regulačných požiadaviek a úrovne istoty, ktorú chce organizácia pri overovaní bezpečnosti dosiahnuť.
Ak chcete overiť odolnosť svojho riešenia z pohľadu reálneho útočníka prostredníctvom black-box penetračného testovania alebo potrebujete podrobnejšiu analýzu architektúry a implementácie pomocou white-box bezpečnostného hodnotenia, radi vám pomôžeme vybrať prístup, ktorý bude najlepšie zodpovedať vašim bezpečnostným cieľom.
Všetky články
Prihláste sa k odberu nášho newslettera a získajte všetky dôležité novinky v oblasti kybernetickej bezpečnosti a etického hackovania.