ไม่กี่วันที่ผ่านมามีข่าวว่าไดรเวอร์สำหรับชิปไร้สาย Broadcom ตรวจพบช่องโหว่สี่ช่องที่ อนุญาตให้ทำการโจมตีระยะไกลบนอุปกรณ์ที่มีชิปเหล่านี้
ในกรณีที่ง่ายที่สุดอาจใช้ช่องโหว่เพื่อปฏิเสธการให้บริการได้ ระยะไกล แต่ไม่รวมสถานการณ์ที่ช่องโหว่สามารถพัฒนาได้ ที่อนุญาตให้ผู้โจมตีที่ไม่ได้รับการพิสูจน์ตัวตนรันโค้ดของคุณด้วยสิทธิพิเศษของเคอร์เนล Linux โดยการส่งแพ็กเกจที่สร้างขึ้นเป็นพิเศษ
ปัญหาเหล่านี้ถูกระบุระหว่างการทำวิศวกรรมย้อนกลับเฟิร์มแวร์ของ Broadcom ที่ซึ่งชิปที่มีช่องโหว่ถูกใช้กันอย่างแพร่หลายในแล็ปท็อปสมาร์ทโฟนและอุปกรณ์สำหรับผู้บริโภคต่างๆตั้งแต่ SmartTV ไปจนถึงอุปกรณ์ IoT
โดยเฉพาะอย่างยิ่งชิป Broadcom ถูกใช้ในสมาร์ทโฟนของผู้ผลิตเช่น Apple, Samsumg และ Huawei
ควรสังเกตว่า Broadcom ได้รับแจ้งเกี่ยวกับช่องโหว่ในเดือนกันยายน 2018 แต่ใช้เวลาประมาณ 7 เดือน (กล่าวอีกนัยหนึ่งในเดือนนี้) เปิดตัวการแก้ไขที่ประสานงานกับผู้ผลิตอุปกรณ์
ช่องโหว่ที่ตรวจพบคืออะไร?
ช่องโหว่สองช่องส่งผลกระทบต่อเฟิร์มแวร์ภายใน และอาจเป็นไปได้ อนุญาตให้เรียกใช้โค้ดในสภาพแวดล้อมระบบปฏิบัติการ ใช้ในชิป Broadcom
อะไรก็ตาม อนุญาตให้โจมตีสภาพแวดล้อมที่ไม่ใช่ Linux (ตัวอย่างเช่นความเป็นไปได้ของการโจมตีอุปกรณ์ Apple CVE-2019-8564 ได้รับการยืนยันแล้ว))
ที่นี่เป็นสิ่งสำคัญที่จะต้องทราบว่าชิป Broadcom Wi-Fi บางตัวเป็นโปรเซสเซอร์พิเศษ (ARM Cortex R4 หรือ M3) ซึ่งจะเรียกใช้ความคล้ายคลึงกันของระบบปฏิบัติการของคุณจากการนำสแต็กไร้สาย 802.11 (FullMAC) มาใช้
ในชิปดังกล่าว คอนโทรลเลอร์ให้การโต้ตอบกับระบบโฮสต์กับเฟิร์มแวร์ชิป Wi-Fi
ในคำอธิบายของการโจมตี:
เพื่อให้สามารถควบคุมระบบหลักได้อย่างสมบูรณ์หลังจากที่ FullMAC ถูกบุกรุกขอเสนอให้ใช้ช่องโหว่เพิ่มเติมหรือการเข้าถึงหน่วยความจำระบบโดยสมบูรณ์บนชิปบางตัว
ในชิป SoftMAC สแต็กไร้สาย 802.11 ถูกนำไปใช้ที่ฝั่งคอนโทรลเลอร์และทำงานโดย CPU ของระบบ
ในตัวควบคุม ช่องโหว่ปรากฏทั้งในไดรเวอร์ที่เป็นกรรมสิทธิ์ของ wl (SoftMAC และ FullMAC) เช่นเดียวกับใน brcmfmac แบบเปิด (FullMAC)
ในไดรเวอร์ wl จะตรวจพบบัฟเฟอร์ล้นสองตัวซึ่งถูกใช้ประโยชน์เมื่อจุดเชื่อมต่อส่งข้อความ EAPOL ที่ออกแบบมาเป็นพิเศษในระหว่างขั้นตอนการเจรจาการเชื่อมต่อ (การโจมตีสามารถทำได้โดยเชื่อมต่อกับจุดเชื่อมต่อที่เป็นอันตราย)
ในกรณีของชิปที่มี SoftMAC ช่องโหว่ดังกล่าวนำไปสู่การบุกรุกเคอร์เนลของระบบและในกรณีของ FullMAC โค้ดสามารถทำงานบนฝั่งเฟิร์มแวร์ได้
ใน brcmfmac มีบัฟเฟอร์ล้นและเกิดข้อผิดพลาดในการตรวจสอบเฟรมที่ประมวลผลซึ่งใช้ประโยชน์จากการส่งเฟรมควบคุม ในเคอร์เนล Linux ปัญหาในไดรเวอร์ brcmfmac ได้รับการแก้ไขในเดือนกุมภาพันธ์
ระบุช่องโหว่
ช่องโหว่สี่ช่องที่ถูกเปิดเผยตั้งแต่เดือนกันยายนปีที่แล้ว มีการจัดทำรายการใน CVE ต่อไปนี้แล้ว

CVE-2019-9503
พฤติกรรมที่ไม่ถูกต้องของไดรเวอร์ brcmfmac เมื่อประมวลผลเฟรมควบคุมที่ใช้ในการโต้ตอบกับเฟิร์มแวร์
หากเฟรมที่มีเหตุการณ์เฟิร์มแวร์มาจากแหล่งภายนอกตัวควบคุมจะทิ้งมันไป แต่หากได้รับเหตุการณ์ผ่านบัสภายในเฟรมจะถูกละเว้น
ปัญหาคือว่า เหตุการณ์จากอุปกรณ์ที่ใช้ USB จะถูกส่งผ่านบัสภายในทำให้ผู้โจมตีสามารถโอนเฟิร์มแวร์ได้สำเร็จ ซึ่งควบคุมเฟรมในกรณีที่ใช้อะแดปเตอร์ไร้สาย USB
CVE-2019-9500
เมื่อคุณเปิดใช้งานฟังก์ชัน "Wake-up on Wireless LAN" อาจทำให้เกิดกระแสไฟล้น ในตัวควบคุม brcmfmac (ฟังก์ชัน brcmf_wowl_nd_results) ส่งกรอบการควบคุมที่ปรับเปลี่ยนเป็นพิเศษ
ช่องโหว่นี้ สามารถใช้เพื่อจัดระเบียบการเรียกใช้โค้ดบนโฮสต์ หลังจากการหมั้นชิปหรือร่วมกัน
CVE-2019-9501
บัฟเฟอร์ล้นในไดรเวอร์ wl (ฟังก์ชัน wlc_wpa_sup_eapol) ซึ่งเกิดขึ้นระหว่างการประมวลผลข้อความเนื้อหาของฟิลด์ข้อมูลผู้ผลิตซึ่งมีขนาดเกิน 32 ไบต์
CVE-2019-9502
บัฟเฟอร์ล้นในไดรเวอร์ wl (ฟังก์ชัน wlc_wpa_plumb_gtk) ซึ่งเกิดขึ้นระหว่างการประมวลผลข้อความเนื้อหาของฟิลด์ข้อมูลผู้ผลิตซึ่งมีขนาดเกิน 164 ไบต์
Fuente: https://blog.quarkslab.com