ช่องโหว่ DoS ระยะไกลในสแต็ก FreeBSD IPv6

บน FreeBSD ถูกกำจัด ช่องโหว่ (CVE-2019-5611) ที่ช่วยให้คุณทำให้เกิดความผิดพลาดของเคอร์เนล (แพ็คเก็ตแห่งความตาย) โดยการส่งแพ็กเก็ต ICMPv6 MLD ที่กระจัดกระจายเป็นพิเศษ (การค้นพบผู้ฟังแบบหลายผู้รับ). ปัญหา ซึ่งก่อให้เกิด การขาดการตรวจสอบที่จำเป็นในการเรียก m_pulldown() ซึ่งอาจส่งผลให้มีการส่งคืน mbuf ที่ไม่ต่อเนื่องกัน ซึ่งขัดต่อความคาดหวังของผู้โทร

ช่องโหว่ ถูกกำจัด ในการอัปเดต 12.0-RELEASE-p10, 11.3-RELEASE-p3 และ 11.2-RELEASE-p14 วิธีแก้ปัญหาด้านความปลอดภัย คุณสามารถปิดใช้งานการสนับสนุนการกระจายตัวสำหรับ IPv6 หรือตัวเลือกส่วนหัวของตัวกรองบนไฟร์วอลล์ได้ (ฮอป-บาย-ฮอป) สิ่งที่น่าสนใจคือ จุดบกพร่องที่นำไปสู่ช่องโหว่นั้นได้รับการระบุย้อนกลับไปในปี 2006 และได้รับการแก้ไขใน OpenBSD, NetBSD และ macOS แต่ยังคงไม่มีการแก้ไขใน FreeBSD แม้ว่านักพัฒนา FreeBSD จะได้รับแจ้งถึงปัญหาก็ตาม

คุณยังสามารถสังเกตการกำจัดช่องโหว่อีกสองรายการใน FreeBSD:

  • CVE-2019-5603 — ตัวนับอ้างอิงล้นสำหรับโครงสร้างข้อมูลใน mqueuefs เมื่อใช้ไลบรารี 32 บิตในสภาพแวดล้อม 64 บิต (เข้ากันได้ 32 บิต) ปัญหาเกิดขึ้นเมื่อเปิดใช้งาน mqueuefs ซึ่งไม่ได้ใช้งานตามค่าเริ่มต้น และอาจนำไปสู่การเข้าถึงไฟล์ ไดเร็กทอรี และซ็อกเก็ตที่เปิดโดยกระบวนการของผู้ใช้รายอื่น หรือเข้าถึงไฟล์ภายนอกจากสภาพแวดล้อมคุก หากผู้ใช้มีสิทธิ์เข้าถึงระดับรูทในคุก ช่องโหว่ดังกล่าวจะทำให้ผู้ใช้สามารถเข้าถึงระดับรูทที่ด้านข้างของสภาพแวดล้อมโฮสต์ได้
  • CVE-2019-5612 - ปัญหาเกี่ยวกับการเข้าถึงอุปกรณ์ /dev/midistat แบบมัลติเธรด เมื่อสภาวะการแข่งขันเกิดขึ้น อาจทำให้พื้นที่การอ่านหน่วยความจำเคอร์เนลอยู่นอกขอบเขตของบัฟเฟอร์ที่จัดสรรสำหรับ midistat บนระบบ 32 บิต ความพยายามที่จะใช้ประโยชน์จากช่องโหว่ทำให้เกิดความผิดพลาดของเคอร์เนล และบนระบบ 64 บิต ความพยายามดังกล่าวจะทำให้สามารถค้นพบเนื้อหาของพื้นที่ที่กำหนดเองของหน่วยความจำเคอร์เนลได้

ที่มา: opennet.ru

เพิ่มความคิดเห็น