OpenSSH มีการสนับสนุนเบื้องต้นสำหรับการรับรองความถูกต้องด้วยสองปัจจัยแล้ว

A2F โอเพ่น SSH

OpenSSH ชุดของแอปพลิเคชันที่อนุญาตให้มีการสื่อสารแบบเข้ารหัส ผ่านเครือข่ายโดยใช้โปรโตคอล SSH ได้เพิ่มการสนับสนุนการทดลองสำหรับการรับรองความถูกต้องด้วยสองปัจจัย ไปยังฐานรหัสโดยใช้อุปกรณ์ที่รองรับโปรโตคอล U2F ที่พัฒนาโดยพันธมิตร FIDO

สำหรับคนที่ไม่รู้จัก U2F พวกเขาควรจะรู้ว่านี่เป็นมาตรฐานแบบเปิดสำหรับการสร้างโทเค็นการรักษาความปลอดภัยฮาร์ดแวร์ราคาประหยัด. วิธีเหล่านี้เป็นวิธีที่ถูกที่สุดสำหรับผู้ใช้ในการรับคู่คีย์ที่สนับสนุนด้วยฮาร์ดแวร์และ มีผู้ผลิตที่หลากหลาย ที่ขายพวกเขารวมถึงs Yubico, Feitian, Thetis และ Kensington

คีย์ที่ได้รับการสนับสนุนจากฮาร์ดแวร์ให้ประโยชน์ในการขโมยได้ยากขึ้นมาก: โดยทั่วไปแล้วผู้โจมตีจะต้องขโมยโทเค็นทางกายภาพ (หรืออย่างน้อยก็เข้าถึงได้อย่างต่อเนื่อง) เพื่อขโมยคีย์

เนื่องจากมีหลายวิธีในการพูดคุยกับอุปกรณ์ U2F รวมถึง USB, บลูทู ธ และ NFC เราจึงไม่ต้องการโหลด OpenSSH ด้วยการอ้างอิงมากมาย แต่เราได้มอบหมายงานในการสื่อสารกับโทเค็นให้กับ ไลบรารีมิดเดิลแวร์ขนาดเล็กที่โหลดคล้ายกับการสนับสนุน PKCS # 11 ที่มีอยู่

ขณะนี้ OpenSSH มีการสนับสนุน U2F / FIDO แบบทดลองแล้วด้วย U2F จะถูกเพิ่มเป็นประเภทคีย์ใหม่ sk-ecdsa-sha2-nistp256@openssh.com หรือ "ecdsa-สก"สั้น ๆ (" sk "ย่อมาจาก" คีย์ความปลอดภัย ")

ขั้นตอนการโต้ตอบกับโทเค็นถูกย้ายไปยังไลบรารีกลางซึ่งโหลดโดยการเปรียบเทียบกับไลบรารีสำหรับการสนับสนุน PKCS # 11 และเป็นลิงก์บนไลบรารี libfido2 ซึ่งให้วิธีการสื่อสารกับโทเค็นผ่าน USB (FIDO U2F / CTAP 1 และ FIDO 2.0 / CTAP 2)

ห้องสมุด สื่อกลาง libsk-libfido2 จัดทำโดยนักพัฒนา OpenSSH รวมอยู่ในเคอร์เนล libfido2เช่นเดียวกับไดรเวอร์ HID สำหรับ OpenBSD

ในการเปิดใช้งาน U2F สามารถใช้ส่วนใหม่ของฐานรหัสจากที่เก็บ OpenSSH ได้ และสาขา HEAD ของไลบรารี libfido2 ซึ่งมีเลเยอร์ที่จำเป็นสำหรับ OpenSSH อยู่แล้ว Libfido2 รองรับการทำงานบน OpenBSD, Linux, macOS และ Windows

เราได้เขียนมิดเดิลแวร์พื้นฐานสำหรับ libfido2 ของ Yubico ที่สามารถพูดคุยกับโทเค็น USB HID U2F หรือ FIDO2 มาตรฐานใดก็ได้ มิดเดิลแวร์ ซอร์สนั้นโฮสต์อยู่ในโครงสร้าง libfido2 ดังนั้นการสร้างสิ่งนั้นและ OpenSSH HEAD ก็เพียงพอที่จะเริ่มต้นใช้งาน

ต้องคัดลอกคีย์สาธารณะ (id_ecdsa_sk.pub) ไปยังเซิร์ฟเวอร์ในไฟล์ Author_keys ในฝั่งเซิร์ฟเวอร์จะมีการตรวจสอบลายเซ็นดิจิทัลเท่านั้นและการโต้ตอบกับโทเค็นจะดำเนินการในฝั่งไคลเอ็นต์ (libsk-libfido2 ไม่จำเป็นต้องติดตั้งบนเซิร์ฟเวอร์ แต่เซิร์ฟเวอร์ต้องรองรับคีย์ประเภท "ecdsa-sk »)

คีย์ส่วนตัวที่สร้างขึ้น (ecdsa_sk_id) เป็นตัวอธิบายคีย์ที่สร้างคีย์จริงร่วมกับลำดับความลับที่เก็บไว้ในฝั่งโทเค็น U2F เท่านั้น

ถ้าคีย์ ecdsa_sk_id ตกอยู่ในมือของผู้โจมตีสำหรับการตรวจสอบความถูกต้องเขาจะต้องเข้าถึงโทเค็นฮาร์ดแวร์โดยที่คีย์ส่วนตัวที่เก็บไว้ในไฟล์ id_ecdsa_sk นั้นไม่มีประโยชน์

นอกจากนี้ ตามค่าเริ่มต้นเมื่อดำเนินการหลัก (ทั้งในระหว่างการสร้างและการรับรองความถูกต้อง) จำเป็นต้องมีการยืนยันสถานะทางกายภาพของผู้ใช้ในพื้นที่ตัวอย่างเช่นขอแนะนำให้แตะเซ็นเซอร์บนโทเค็นซึ่งทำให้ยากต่อการโจมตีระบบจากระยะไกลด้วยโทเค็นที่เชื่อมต่อ

ในขั้นตอนเริ่มต้นของ ssh-keygen สามารถตั้งรหัสผ่านอื่น ๆ ได้ เพื่อเข้าถึงไฟล์ด้วยคีย์

สามารถเพิ่มคีย์ U2F ลงในไฟล์ ตัวแทน ssh ผ่าน "ssh เพิ่ม ~ / .ssh / id_ecdsa_sk"แต่ ตัวแทน ssh ต้องรวบรวมด้วยการสนับสนุนที่สำคัญ ecdsa-สกต้องมีเลเยอร์ libsk-libfido2 และเอเจนต์ต้องรันบนระบบที่ต่อโทเค็น

มีการเพิ่มคีย์ประเภทใหม่ ecdsa-สก ตั้งแต่รูปแบบคีย์ ECDSA OpenSSH แตกต่างจากรูปแบบ U2F สำหรับลายเซ็นดิจิทัล ECDSA โดยการปรากฏตัวของฟิลด์เพิ่มเติม

หากคุณต้องการทราบข้อมูลเพิ่มเติม คุณสามารถปรึกษา ลิงค์ต่อไปนี้ 


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. รับผิดชอบข้อมูล: AB Internet Networks 2008 SL
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา