कुंजी 0, पीयर पब्लिक की
अनकंप्रेस्ड X9.62 पब्लिक-की बाइट्स (P-256 के लिए 33 बाइट्स)। फोन इसका उपयोग एन्क्रिप्टेड टनल स्थापित करने के लिए करता है।
मानक · FIDO CTAP 2.2 हाइब्रिड (पासकी QR)
केवल तभी जब आपने QR दिखाने वाले डिवाइस पर खुद पासकी साइन-इन शुरू किया हो। यदि किसी और ने QR बनाया — कोई अजनबी, "हेल्पडेस्क" एजेंट, टेक-सपोर्ट कॉल — तो इसे अपने फोन से स्कैन करने पर वे आपके खाते में साइन इन हो जाते हैं, आप नहीं। प्रोटोकॉल का खुला मानक (FIDO CTAP 2.2 हाइब्रिड) मजबूत है; खतरा यह है कि "पासकी से साइन इन करें" बटन पहले किसने दबाया।
पासकी एक क्रेडेंशियल है — एक पब्लिक/प्राइवेट की जोड़ी — जो आपके किसी एक डिवाइस से बंधी होती है। यदि आपने example.com के लिए अपने फोन पर पासकी पंजीकृत की है, तो केवल आपका फोन ही example.com के लिए लॉगिन चैलेंज पर हस्ताक्षर कर सकता है।
यह तब ठीक काम करता है जब आप अपने फोन पर साइन इन कर रहे हों। लेकिन जब आप किसी लैपटॉप पर साइन इन कर रहे हों जिसके पास उस साइट के लिए पासकी नहीं है तो क्या होता है? आप यह कर सकते हैं:
विकल्प 3 वही है जिसे FIDO CTAP 2.2 "हाइब्रिड" परिभाषित करता है। QR बूटस्ट्रैप है — यह आपके फोन को Bluetooth Low Energy पर लैपटॉप खोजने, एकल-उपयोग सुरक्षित टनल स्थापित करने, और WebAuthn प्रक्रिया को प्रॉक्सी करने के लिए पर्याप्त जानकारी रखता है।
URI इस तरह दिखता है:
FIDO:/0123456789012345678901234567890123456789...
दशमलव अंक CBOR मैप की base10 एन्कोडिंग हैं। base10 डिकोड + CBOR पार्स के बाद, मैप में पूर्णांक कुंजियाँ हैं:
अनकंप्रेस्ड X9.62 पब्लिक-की बाइट्स (P-256 के लिए 33 बाइट्स)। फोन इसका उपयोग एन्क्रिप्टेड टनल स्थापित करने के लिए करता है।
10 रैंडम बाइट्स। इस विशिष्ट QR की पहचान करता है; BLE विज्ञापन इसका हैश प्रसारित करता है ताकि फोन सही लैपटॉप खोज सके।
0 = मेक-क्रेडेंशियल (नया पासकी पंजीकरण), 1 = गेट-असर्शन (साइन इन), 2 = डिस्कवरेबल-क्रेडेंशियल।
HTTPS होस्ट जो दो डिवाइस के बीच टनल को प्रॉक्सी करता है जब सीधा BLE उपलब्ध नहीं (जैसे NAT के पार)। आमतौर पर वेंडर-संचालित सर्वर जैसे cable.ua5v.com (Google) या cable.auth.com (Apple/MS)।
QR जनरेट होने के समय से एपॉक के सेकंड। रिप्ले सुरक्षा के लिए उपयोग — फोन कुछ मिनट से पुराने QR को स्वीकार करने से इनकार करता है।
बूलियन। इंगित करता है कि क्या लैपटॉप चाहता है कि फोन पैसिव स्टेट-कीपिंग में भाग ले (अधिकतर क्रेडेंशियल-एन्यूमरेशन प्रवाह के लिए प्रासंगिक)।
प्रोटोकॉल क्रिप्टोग्राफिक रूप से मजबूत है। Bluetooth प्रॉक्सिमिटी जाँच वास्तविक है और हमले को उन तक सीमित करती है जो भौतिक रूप से आपके पास हों। तो यह गलत कैसे हो जाता है?
आरंभ पर सोशल इंजीनियरिंग के माध्यम से। हमलावर उनके लैपटॉप पर आपके खाते में पासकी साइन-इन शुरू करता है। उनके लैपटॉप पर FIDO QR दिखता है। वे किसी तरह वह QR आपके सामने रखते हैं:
यदि आप स्कैन करते हैं, तो आपका फोन आपका पासकी हस्ताक्षर हमलावर के लैपटॉप के ब्राउज़र तक प्रॉक्सी करता है। जिस साइट पर आपके पास पासकी है वह सोचती है आपने साइन इन किया। हमलावर अब आपके खाते में लॉग इन है।
ध्यान दें कि प्रॉक्सिमिटी जाँच मदद नहीं करती — हमलावर भौतिक रूप से मौजूद है। QR सामग्री मदद नहीं करती — वे क्रिप्टोग्राफिक रूप से वैध हैं। लॉगिन गंतव्य मदद नहीं करता — यह वह सही साइट है जिसके लिए आपके पास पासकी है। एकमात्र मददगार चीज़ स्थिति को पहचानना है: आपको कभी भी FIDO QR स्कैन नहीं करना चाहिए जो आपने स्वयं अपने डिवाइस पर "साइन इन" क्लिक करके नहीं बनाया।
जब आप हमारे स्कैनर में FIDO QR डालते हैं, तो वर्डिक्ट दिखाता है:
cable.ua5v.com, Apple का टनल सर्वर, आदि)?थ्रेट क्लास हमेशा संदिग्ध है — इसलिए नहीं कि प्रोटोकॉल टूटा है बल्कि इसलिए कि सुरक्षा का निर्णय संदर्भ-आधारित है और स्कैनर यह नहीं जान सकता कि "साइन इन" किसने दबाया। वर्डिक्ट का प्रकटीकरण ठीक यही बताता है: "स्कैन करने से किसी ऐसे डिवाइस पर साइन-इन पूरा होता है जो किसी अन्य डिवाइस पर शुरू हुआ। यदि आपने अभी-अभी लॉगिन शुरू नहीं किया, तो इनकार करें।"
सुरक्षित: आप अपने लैपटॉप पर बैठे, अपनी बैंक या ईमेल साइट खोली, "पासकी से साइन इन करें" क्लिक किया, और आपके लैपटॉप ने QR दिखाया। आप अपना फोन उठाते हैं, QR स्कैन करते हैं, प्रॉक्सिमिटी प्रॉम्प्ट को अनुमोदित करते हैं। हो गया।
सुरक्षित नहीं: आपके अलावा किसी और ने साइन-इन शुरू किया। इसमें फोन पर कोई भी, रिमोट-सपोर्ट कॉल पर कोई भी, जिसने आपको QR ईमेल किया, जिसने आपको "अपनी पहचान सत्यापित करने के लिए QR" दिखाया, और ऐसी किसी भी जगह का QR जो आपका अभी-दिखाया गया डिवाइस नहीं है।
यदि आप सुनिश्चित नहीं हैं कि कोई QR उस साइन-इन से है जो आपने शुरू किया, तो मूल डिवाइस पर साइन-इन रद्द करें (ब्राउज़र टैब बंद करें), फिर इच्छित डिवाइस से फिर से शुरू करें। वास्तविक FIDO QR केवल ~10 मिनट के लिए वैध हैं — पुनः शुरू करने से कोई भी चल रहा सेशन फ्लश हो जाता है और खतरा असंभव हो जाता है।
छवि डालें या FIDO: URI पेस्ट करें। वर्डिक्ट ऑपरेशन, टनल सर्वर, टाइमस्टैम्प, और साइन इन शुरू करने की जोखिम की चेतावनी दिखाता है।