Технологията Passkey беше въведена с обещание за висока сигурност: замяна на паролите с криптография с публичен ключ, обвързване на идентификационните данни с легитимната услуга и съхраняване на частния ключ далеч от сървъра. Така много от атаките с фишинг и кражба на пароли, които мъчат корпоративната сигурност от десетилетия, стават значително по- трудни за изпълнение.
Всичко това е вярно, но дискусията около сигурността бързо се промени.
Към момента съществуват поне 39 публично документирани метода, вектори на атака, изследователски техники и сценарии за експлоатация, свързани с Passkey и съпътстващата ги инфраструктура. За много от тях вече има работещи концептуални доказателства (PoC) или публикувани изследвания, показващи точно как да бъдат изпълнени. Някои от тях вече се появяват и в реални атаки.
Това не означава, че киберпрестъпниците са внедрили оперативно и 39-те метода. Означава обаче, че методиката се пише публично и атакуващите вече не трябва да измислят тези техники сами.
По-важното е, че изследването разкрива фундаментална разлика, която организациите трябва да разберат: криптографията във FIDO2 може да остане напълно интактна и некомпрометирана, докато акаунтът, защитен с Passkey, все пак бъде превзет.
Целта вече не е просто самият Passkey
Съвременният процес по автентикация с Passkey преминава през изключително голям брой граници на доверие. Той може да включва уеб приложението, браузъра, операционната система, мениджъра на пароли, услугата за облачна синхронизация, мобилното устройство, Bluetooth преноса, системата за възстановяване на акаунта, процеса по регистрация, центъра за поддръжка и в крайна сметка – самия потребител, който одобрява автентикацията.
Изследователите атакуват почти всеки един от тези слоеве. Публикуваните техники вече включват извличане на твърдения (assertion mining), повторно използване на твърдения (assertion replay), атаки тип "circuit breaker", фишинг на твърдения (assertion phishing), прихващане през браузъра (browser hooking), инжектиране на предизвикателства (challenge injection), манипулация на потвърждението от потребителя и манипулация на присъствието на потребителя.
От SpecterOps демонстрираха значението на този проблем в своето изследване "Pass the Passkey". Едно от най-важните наблюдения е, че на зловредния код не му е необходимо задължително да извлича частния ключ.
Злонамерено приложение за Windows може да поиска от легитимната WebAuthn инфраструктура да генерира подписано твърдение. Потребителят вижда това, което изглежда като легитимен прозорец за автентикация във Windows, преминава през потвърждението, а атакуващият получава генерираното твърдение.
Частният ключ никога не е напускал защитеното си място. Криптографията не е разбита. И все пак процесът по автентикация е бил успешно манипулиран.
Тази разлика е от ключово значение за разбирането на новия модел на заплахи при Passkey.
Криптографията не е мястото, където Passkey се провалят
Passkey не са напълно защитени, освен ако не са обвързани със специализиран биометричен хардуер.
Научете как атакуващите експлоатират регистрацията на Passkey, вместо да разбиват тяхната криптография, и защо специализираният биометричен хардуер укрепва автентичността на самоличността в предприятието.
Дори екранът с подкана за Passkey представлява повърхност за атака
Няколко от 39-те публикувани техники са насочени към потребителския интерфейс, обграждащ автентикацията.
Изследователите са демонстрирали атаки с преплавяне с подкани (passkey prompt flooding), измама с интерфейса за вход, фалшифициране на метаданни на приложения, фалшифициране на дескриптори на прозорци, фишинг през отдалечен достъп и атаки с припокриване на FIDO интерфейса.
Това възпроизвежда проблем, с който индустрията за сигурност вече се сблъска при push-базираната многофакторна автентикация (MFA). Потребителите свикват с подканите за потвърждение. Когато автентикацията се превърне в рутинна визуална взаимодействия, киберпрестъпниците могат да генерират, повтарят, маскират или стратегически да избират момента за тези взаимодействия.
SpecterOps демонстрираха инструменти, способни неколкократно да извикват изглеждащи легитимно Windows Passkey подкани. Изследователите също така показаха техники, които могат да накарат злонамерената активност по автентикация да изглежда така, сякаш произлиза от приложение, на което служителят вече има доверие.
Урокът е важен: устойчивостта на фишинг на ниво криптографски протокол не гарантира устойчивост срещу измама в слоевете на операционната система, браузъра, приложението и потребителския интерфейс около този протокол.
Споделяемите Passkey разширяват повърхността за атака
Повърхността за атака нараства значително, когато Passkey могат да се споделят, синхронизират, експортират, възстановяват или преместват между устройства.
Описаният списък от атаки вече включва компрометиране на синхронизирани трезори, превземане на профили в Apple или Google, прихващане на облачното възстановяване, откраднати или компрометирани телефони, мобилен зловреден код, устройства с отключен корен достъп (rooted), манипулация на хибридна автентикация, кражба при експорт от KeePassXC или Bitwarden, кражба при обмен на идентификационни данни, злонамерени разширения за браузър и атаки, включващи CTAP и Bluetooth комуникация.
Това фундаментално не е проблем на криптографията. Това е архитекурен проблем.
След като даден идентификатор може да се движи между устройства, да се синхронизира през облачен акаунт, да се експортира от трезор, да се възстановява чрез друга самоличност или чрез друг процес, границата на сигурност се разширява далеч извън първоначалния автентикатор.
За атакуващия вече не е необходимо да преодолява FIDO2. Той просто трябва да компрометира един достатъчно слаб елемент от свързаната верига.