Piawaian · FIDO CTAP 2.2 hibrid (QR kunci laluan)

Perlukah saya mengimbas QR log masuk kunci laluan ini?

Hanya jika ANDA baru memulakan log masuk kunci laluan pada peranti yang memaparkan QR. Jika orang lain menjana QR itu — orang asing, ejen “meja bantuan”, panggilan sokongan teknikal — mengimbasnya pada telefon anda membenarkan mereka log masuk ke akaun anda, bukan anda. Piawaian terbuka protokol (FIDO CTAP 2.2 hibrid) kukuh; ancamannya ialah kejuruteraan sosial tentang siapa yang menekan butang “Log masuk dengan kunci laluan” dahulu.

Semak QR kunci laluan → Semua piawaian →

Cara log masuk kunci laluan merentas peranti berfungsi

Kunci laluan adalah bukti kelayakan — pasangan kunci awam/peribadi — yang terikat kepada salah satu peranti anda. Jika anda mendaftarkan kunci laluan untuk example.com pada telefon anda, hanya telefon anda yang boleh menandatangani cabaran log masuk untuk example.com.

Ini berfungsi dengan baik apabila anda log masuk PADA telefon anda. Tetapi apa yang berlaku apabila anda log masuk pada komputer riba yang tidak mempunyai kunci laluan untuk laman tersebut? Anda boleh:

  1. Taip kata laluan anda — menggagalkan keseluruhan tujuan kunci laluan.
  2. Daftarkan kunci laluan baharu pada komputer riba — boleh, tetapi hanya jika anda mempercayai komputer riba ini untuk jangka panjang.
  3. Gunakan kunci laluan telefon melalui pengangkutan merentas peranti — komputer riba menunjukkan QR, telefon anda mengimbasnya, telefon menandatangani cabaran, pelayar komputer riba menerima hasilnya dan anda berjaya log masuk.

Pilihan 3 adalah apa yang ditakrifkan oleh FIDO CTAP 2.2 “hibrid”. QR adalah butstrap — ia membawa maklumat yang cukup untuk telefon anda menemui komputer riba melalui Bluetooth Low Energy, mewujudkan terowong selamat sekali guna, dan mewakili upacara WebAuthn.

Apa yang ada di dalam QR

URI kelihatan seperti:

FIDO:/0123456789012345678901234567890123456789...

Digit perpuluhan adalah pengekodan base10 peta CBOR. Selepas dekod base10 + penghuraian CBOR, peta mempunyai kunci integer:

Kunci 0, kunci awam rakan

Bait kunci awam X9.62 tidak dimampatkan (33 bait untuk P-256). Telefon menggunakan ini untuk mewujudkan terowong yang disulitkan.

Kunci 1, rahsia QR / nonce terowong

10 bait data rawak. Mengenal pasti QR khusus ini; iklan BLE menyiarkan cincang daripadanya supaya telefon boleh mencari komputer riba yang betul.

Kunci 2, petunjuk operasi

0 = buat-bukti kelayakan (mendaftarkan kunci laluan baharu), 1 = dapatkan-penegasan (log masuk), 2 = bukti kelayakan boleh ditemui.

Kunci 3, domain pelayan terowong

Hos HTTPS yang mewakili terowong antara dua peranti apabila BLE langsung tidak boleh dicapai (cth. merentas NAT). Biasanya pelayan yang dikendalikan vendor seperti cable.ua5v.com (Google) atau cable.auth.com (Apple/MS).

Kunci 4, cap masa

Saat-sejak-epoch apabila QR dijana. Digunakan untuk perlindungan ulang tayang — telefon enggan menghormati QR yang lebih tua daripada beberapa minit.

Kunci 5, bendera bantuan keadaan

Boolean. Menunjukkan sama ada komputer riba mahu telefon mengambil bahagian dalam penyimpanan keadaan pasif (kebanyakannya relevan untuk aliran penghitungan bukti kelayakan).

Model ancaman: siapa yang menekan “Log masuk dengan kunci laluan” dahulu?

Protokol adalah kukuh dari segi kriptografi. Pemeriksaan jarak dekat Bluetooth adalah nyata dan mengehadkan serangan kepada sesiapa yang secara fizikal dekat dengan anda. Jadi bagaimana ini boleh salah?

Melalui kejuruteraan sosial pada permulaan. Penyerang memulakan log masuk kunci laluan ke AKAUN ANDA pada KOMPUTER RIBA MEREKA. Komputer riba mereka menunjukkan QR FIDO. Mereka meletakkan QR itu di hadapan anda entah bagaimana:

Jika anda mengimbas, telefon anda mewakili tandatangan kunci laluan anda kembali kepada pelayar komputer riba penyerang. Laman yang anda mempunyai kunci laluan fikir anda log masuk. Penyerang kini log masuk ke akaun anda.

Perhatikan pemeriksaan jarak dekat tidak membantu — penyerang hadir secara fizikal. Kandungan QR tidak membantu — ia sah dari segi kriptografi. Destinasi log masuk tidak membantu — ia laman yang betul yang anda mempunyai kunci laluan. Satu-satunya perkara yang membantu ialah mengenali situasi: anda tidak seharusnya mengimbas QR FIDO yang anda tidak jana sendiri dengan mengklik “Log masuk” pada peranti anda sendiri.

Apa yang pengimbas kami tunjukkan

Apabila anda meletakkan QR FIDO ke dalam pengimbas kami, keputusan menunjukkan:

Kelas ancaman sentiasa mencurigakan — bukan kerana protokol rosak tetapi kerana penilaian keselamatan adalah bergantung kepada konteks dan pengimbas tidak boleh mengetahui siapa yang menekan “Log masuk.” Pendedahan keputusan memberitahu anda tepat itu: “mengimbas melengkapkan log masuk yang seseorang MULAKAN PADA PERANTI LAIN. Jika anda tidak baru memulakan log masuk sendiri, tolak.”

Bila ia selamat (dan bila tidak)

Selamat: anda duduk di depan komputer riba, membuka laman bank atau e-mel, mengklik “Log masuk dengan kunci laluan”, dan komputer riba menunjukkan QR. Anda mengambil telefon, mengimbas QR, meluluskan gesaan jarak dekat. Selesai.

Tidak selamat: sesiapa selain anda yang memulakan log masuk. Ini termasuk sesiapa melalui telefon, sesiapa dalam panggilan sokongan jauh, sesiapa yang menghantar e-mel QR kepada anda, sesiapa yang menunjukkan “QR untuk mengesahkan identiti anda,” dan mana-mana QR di tempat yang bukan peranti anda sendiri yang baru dipaparkan.

Jika anda tidak pasti sama ada QR adalah daripada log masuk yang ANDA mulakan, batalkan log masuk pada peranti asal (tutup tab pelayar), kemudian mulai semula dari awal pada peranti yang anda niatkan. QR FIDO yang sah hanya sah selama ~10 minit — memulai semula membuang sebarang sesi dalam perjalanan dan menjadikan ancaman itu mustahil.

Berkaitan

Periksa QR FIDO

Letakkan imej atau tampal URI FIDO:. Keputusan menunjukkan operasi, pelayan terowong, cap masa, dan amaran keras untuk menolak melainkan anda yang memulakan log masuk.

Buka pengimbas →