หลายวันก่อนมีการเผยแพร่ DNS BIND เวอร์ชันแก้ไขใหม่ ของสาขาที่เสถียร 9.11.31 และ 9.16.15 และยังอยู่ระหว่างการพัฒนาสาขาทดลอง 9.17.12 ซึ่งเป็นเซิร์ฟเวอร์ DNS ที่ใช้กันมากที่สุดบนอินเทอร์เน็ตและใช้โดยเฉพาะบนระบบ Unix ซึ่งเป็นมาตรฐานและ ได้รับการสนับสนุนโดย Internet Systems Consortium
ในการเผยแพร่เวอร์ชันใหม่มีการกล่าวถึงความตั้งใจหลักคือการแก้ไขช่องโหว่สามประการ หนึ่งในนั้น (CVE-2021-25216) ทำให้เกิดบัฟเฟอร์ล้น
มีการกล่าวถึงในระบบ 32 บิต ช่องโหว่นี้อาจถูกใช้เพื่อรันโค้ดจากระยะไกล ซึ่งได้รับการออกแบบโดยผู้โจมตีโดยส่งคำขอ GSS-TSIG ที่สร้างขึ้นเป็นพิเศษในขณะที่ระบบ 64 บิตปัญหาจะ จำกัด อยู่ที่การบล็อกกระบวนการที่ตั้งชื่อ
ปัญหา ปรากฏตัวเมื่อเปิดใช้งานกลไก GSS-TSIG เท่านั้น ซึ่งเปิดใช้งานโดย tkey-gssapi-keytab และ tkey-gssapi-credential settings GSS-TSIG ถูกปิดใช้งานโดยค่าเริ่มต้นและโดยทั่วไปจะใช้ในสภาพแวดล้อมแบบผสมที่ BIND รวมกับตัวควบคุมโดเมน Active Directory หรือเมื่อรวมเข้ากับ Samba
ช่องโหว่นี้เกิดจากข้อผิดพลาดในการใช้กลไกการเจรจา GSSAPI ง่ายและปลอดภัย (SPNEGO) ซึ่ง GSSAPI ใช้เพื่อเจรจาวิธีการป้องกันที่ไคลเอ็นต์และเซิร์ฟเวอร์ใช้ GSSAPI ใช้เป็นโปรโตคอลระดับสูงสำหรับการแลกเปลี่ยนคีย์ที่ปลอดภัยโดยใช้ส่วนขยาย GSS-TSIG ซึ่งใช้ในการตรวจสอบสิทธิ์การอัปเดตแบบไดนามิกในโซน DNS
เซิร์ฟเวอร์ BIND มีช่องโหว่หากใช้งานเวอร์ชันที่ได้รับผลกระทบและกำหนดค่าให้ใช้ฟังก์ชัน GSS-TSIG ในการกำหนดค่าที่ใช้การกำหนดค่า BIND เริ่มต้นเส้นทางของรหัสที่มีช่องโหว่จะไม่ถูกเปิดเผย แต่เซิร์ฟเวอร์อาจเสี่ยงได้โดยการตั้งค่าอย่างชัดเจนสำหรับตัวเลือกการกำหนดค่า tkey-gssapi-keytabo tkey-gssapi-credential
แม้ว่าการกำหนดค่าเริ่มต้นจะไม่มีช่องโหว่ แต่ GSS-TSIG มักใช้ในเครือข่ายที่ BIND รวมเข้ากับ Samba เช่นเดียวกับในสภาพแวดล้อมเซิร์ฟเวอร์แบบผสมที่รวมเซิร์ฟเวอร์ BIND กับตัวควบคุมโดเมน Active Directory สำหรับเซิร์ฟเวอร์ที่ตรงตามเงื่อนไขเหล่านี้การใช้งาน ISC SPNEGO มีความเสี่ยงต่อการโจมตีต่างๆขึ้นอยู่กับสถาปัตยกรรมของ CPU ที่ BIND ถูกสร้างขึ้น:
เนื่องจากพบช่องโหว่ที่สำคัญในการใช้งาน SPNEGO ภายในและก่อนหน้านี้การใช้งานโปรโตคอลนี้จึงถูกลบออกจากฐานรหัส BIND 9 สำหรับผู้ใช้ที่ต้องการสนับสนุน SPNEGO ขอแนะนำให้ใช้แอปพลิเคชันภายนอกที่จัดเตรียมโดยไลบรารีจาก GSSAPI ระบบ (หาได้จาก MIT Kerberos และ Heimdal Kerberos)
สำหรับอีกสองช่องโหว่ ที่ได้รับการแก้ไขด้วยการเผยแพร่เวอร์ชันแก้ไขใหม่นี้มีการกล่าวถึงต่อไปนี้:
- CVE-2021-25215: กระบวนการที่มีชื่อหยุดทำงานเมื่อประมวลผลระเบียน DNAME (โดเมนย่อยบางโดเมนกำลังประมวลผลการเปลี่ยนเส้นทาง) นำไปสู่การเพิ่มรายการที่ซ้ำกันในส่วน ANSWER ในการใช้ประโยชน์จากช่องโหว่ในเซิร์ฟเวอร์ DNS ที่เชื่อถือได้จำเป็นต้องมีการเปลี่ยนแปลงโซน DNS ที่ประมวลผลและสำหรับเซิร์ฟเวอร์แบบเรียกซ้ำบันทึกที่มีปัญหาจะได้รับหลังจากติดต่อกับเซิร์ฟเวอร์ที่เชื่อถือได้
- CVE-2021-25214: ตั้งชื่อกระบวนการบล็อกเมื่อประมวลผลคำขอ IXFR ขาเข้าที่สร้างขึ้นเป็นพิเศษ (ใช้สำหรับการถ่ายโอนการเปลี่ยนแปลงเพิ่มเติมในโซน DNS ระหว่างเซิร์ฟเวอร์ DNS) เฉพาะระบบที่อนุญาตให้โอนโซน DNS จากเซิร์ฟเวอร์ของผู้โจมตีเท่านั้นที่ได้รับผลกระทบจากปัญหา (โดยทั่วไปการถ่ายโอนโซนจะใช้เพื่อซิงโครไนซ์เซิร์ฟเวอร์หลักและเซิร์ฟเวอร์ทาสและได้รับอนุญาตเฉพาะสำหรับเซิร์ฟเวอร์ที่เชื่อถือได้เท่านั้น) ในการแก้ปัญหาเบื้องต้นคุณสามารถปิดใช้งานการสนับสนุน IXFR โดยใช้การตั้งค่า "request-ixfr no"
ผู้ใช้ BIND เวอร์ชันก่อนหน้าซึ่งเป็นวิธีแก้ปัญหาสามารถปิดใช้งาน GSS-TSIG ได้ ในการตั้งค่าหรือสร้าง BIND ใหม่โดยไม่ต้องรองรับ SPNEGO
ในที่สุด หากคุณสนใจที่จะทราบข้อมูลเพิ่มเติม เกี่ยวกับการเผยแพร่เวอร์ชันแก้ไขใหม่เหล่านี้หรือเกี่ยวกับช่องโหว่ที่ได้รับการแก้ไขคุณสามารถตรวจสอบรายละเอียดได้ โดยไปที่ลิงค์ต่อไปนี้