หลังจากหกเดือนของการพัฒนา
ความสนใจเป็นพิเศษในรุ่นใหม่คือการกำจัดช่องโหว่ที่ส่งผลกระทบต่อ ssh, sshd, ssh-add และ ssh-keygen ปัญหานี้มีอยู่ในโค้ดสำหรับแยกวิเคราะห์คีย์ส่วนตัวด้วยประเภท XMSS และอนุญาตให้ผู้โจมตีเรียกใช้จำนวนเต็มล้นได้ ช่องโหว่นี้ถูกทำเครื่องหมายว่าสามารถหาประโยชน์ได้ แต่มีประโยชน์เพียงเล็กน้อย เนื่องจากการรองรับคีย์ XMSS เป็นคุณลักษณะทดลองที่ถูกปิดใช้งานตามค่าเริ่มต้น (เวอร์ชันพกพาไม่มีตัวเลือกการสร้างใน autoconf เพื่อเปิดใช้งาน XMSS)
การเปลี่ยนแปลงที่สำคัญ:
- ใน ssh, sshd และ ssh-agent
เพิ่ม รหัสที่ป้องกันการกู้คืนคีย์ส่วนตัวที่อยู่ใน RAM อันเป็นผลมาจากการโจมตีช่องทางด้านข้างเช่นสเปคเตอร์, ล่มสลาย ,แถวแฮมเมอร์ иแรมบลีด . ขณะนี้คีย์ส่วนตัวได้รับการเข้ารหัสเมื่อโหลดลงในหน่วยความจำและถอดรหัสเฉพาะเมื่อใช้เท่านั้น โดยยังคงเข้ารหัสอยู่ตลอดเวลาที่เหลือ ด้วยวิธีนี้ เพื่อกู้คืนคีย์ส่วนตัวได้สำเร็จ ผู้โจมตีจะต้องกู้คืนคีย์กลางที่สร้างขึ้นแบบสุ่มขนาด 16 KB ก่อน ซึ่งใช้ในการเข้ารหัสคีย์หลัก ซึ่งไม่น่าเป็นไปได้เมื่อได้รับอัตราข้อผิดพลาดในการกู้คืนตามแบบฉบับของการโจมตีสมัยใหม่ - В
SSH-keygen เพิ่มการสนับสนุนการทดลองสำหรับรูปแบบที่เรียบง่ายสำหรับการสร้างและตรวจสอบลายเซ็นดิจิทัล ลายเซ็นดิจิทัลสามารถสร้างขึ้นได้โดยใช้คีย์ SSH ปกติที่จัดเก็บไว้ในดิสก์หรือใน ssh-agent และตรวจสอบโดยใช้สิ่งที่คล้ายกับที่ได้รับอนุญาต_คีย์รายการคีย์ที่ถูกต้อง . ข้อมูลเนมสเปซถูกสร้างขึ้นในลายเซ็นดิจิทัลเพื่อหลีกเลี่ยงความสับสนเมื่อใช้ในพื้นที่ต่างๆ (เช่น สำหรับอีเมลและไฟล์) - ssh-keygen ถูกเปลี่ยนตามค่าเริ่มต้นเพื่อใช้อัลกอริทึม rsa-sha2-512 เมื่อตรวจสอบใบรับรองด้วยลายเซ็นดิจิทัลตามคีย์ RSA (เมื่อทำงานในโหมด CA) ใบรับรองดังกล่าวเข้ากันไม่ได้กับรุ่นก่อน OpenSSH 7.2 (เพื่อให้มั่นใจถึงความเข้ากันได้ ประเภทอัลกอริทึมจะต้องถูกแทนที่ เช่น โดยการเรียก "ssh-keygen -t ssh-rsa -s ... ");
- ใน ssh นิพจน์ ProxyCommand รองรับการขยายการทดแทน "%n" (ชื่อโฮสต์ที่ระบุในแถบที่อยู่)
- ในรายการอัลกอริธึมการเข้ารหัสสำหรับ ssh และ sshd ตอนนี้คุณสามารถใช้อักขระ "^" เพื่อแทรกอัลกอริธึมเริ่มต้นได้แล้ว ตัวอย่างเช่น หากต้องการเพิ่ม ssh-ed25519 ไปยังรายการเริ่มต้น คุณสามารถระบุ "HostKeyAlgorithms ^ssh-ed25519";
- ssh-keygen จัดเตรียมเอาต์พุตของความคิดเห็นที่แนบมากับคีย์เมื่อแยกคีย์สาธารณะออกจากคีย์ส่วนตัว
- เพิ่มความสามารถในการใช้แฟล็ก "-v" ใน ssh-keygen เมื่อดำเนินการค้นหาคีย์ (เช่น "ssh-keygen -vF host") โดยระบุว่าสิ่งใดส่งผลให้เกิดลายเซ็นโฮสต์แบบวิชวล
- เพิ่มความสามารถในการใช้งาน
พีเคซีเอส8 เป็นรูปแบบทางเลือกสำหรับการจัดเก็บคีย์ส่วนตัวบนดิสก์ รูปแบบ PEM ยังคงถูกใช้ตามค่าเริ่มต้น และ PKCS8 อาจมีประโยชน์เพื่อให้เข้ากันได้กับแอปพลิเคชันบุคคลที่สาม
ที่มา: opennet.ru