ช่องโหว่ Zero-day RCE ในฟีเจอร์ Share ของ QNAP QTS กำลังถูกนำมาใช้ในการโจมตี

ผลลัพธ์จากการตรวจสอบด้านความปลอดภัยทั้งหมดของ QNAP QTS ซึ่งเป็นระบบปฏิบัติการสำหรับผลิตภัณฑ์ NAS ของบริษัท QNAP พบว่ามีช่องโหว่ 15 รายการที่มีระดับความรุนแรงแตกต่างกัน โดยมีช่องโหว่ 11 รายการที่ยังไม่ได้รับการแก้ไข

หนึ่งในนั้นคือ CVE-2024-27130 ซึ่งเป็นช่องโหว่ stack buffer overflow ในฟังก์ชัน 'No_Support_ACL' ของ 'share.cgi' ซึ่งอาจทำให้ผู้โจมตีสามารถเรียกใช้คำสั่งที่เป็นอันตรายจากระยะไกลได้ เมื่อตรงตามเงื่อนไขที่กำหนด

โดย QNAP ได้แก้ไขช่องโหว่ที่ถูกรายงานมาระหว่างวันที่ 12 ธันวาคม 2023 ถึง 23 มกราคม 2024 ค่อนข้างล่าช้า และได้แก้ไขช่องโหว่ไปเพียง 4 รายการเท่านั้น

ช่องโหว่ดังกล่าวถูกพบโดย WatchTowr Labs ซึ่งเผยแพร่รายละเอียดทั้งหมดของช่องโหว่ และ Proof of Concept (PoC) สำหรับ CVE-2024-27130 เมื่อวันศุกร์ที่ผ่านมา

ช่องโหว่ของ QTS

ช่องโหว่ที่นักวิเคราะห์ของ WatchTowr เปิดเผยนั้น ส่วนใหญ่เกี่ยวข้องกับการเรียกใช้โค้ดที่เป็นอันตราย, buffer overflows, memory corruption, การ bypass การยืนยันตัวตน และช่องโหว่ XSS ซึ่งส่งผลกระทบต่อความปลอดภัยของอุปกรณ์ Network Attached Storage (NAS) ในสภาพแวดล้อมการใช้งานที่แตกต่างกัน

WatchTowr แสดงรายการช่องโหว่ทั้งหมด15 ข้อ ดังนี้

CVE-2023-50361: ช่องโหว่การใช้ sprintf ที่ไม่ปลอดภัยใน getQpkgDir ที่ถูกเรียกใช้จาก userConfig.cgi
CVE-2023-50362: ช่องโหว่การใช้ฟังก์ชัน SQLite ที่ไม่ปลอดภัยซึ่งสามารถเข้าถึงได้ผ่านพารามิเตอร์ addPersonalSmtp ไปยัง userConfig.cgi
CVE-2023-50363: ช่องโหว่การไม่มีการยืนยันตัวตนสำหรับการปิดใช้งานการตรวจสอบสิทธิ์แบบสองปัจจัยสำหรับผู้ใช้ที่กำหนดเองได้
CVE-2023-50364: ช่องโหว่Heap overflow ผ่านชื่อไดเร็กทอรี เมื่อทำการตรวจสอบรายการไฟล์โดยใช้ฟังก์ชัน get_dirs ของ privWizard.cgi
CVE-2024-21902: ช่องโหว่การไม่มีการยืนยันตัวตนสำหรับการดู หรือลบ system logs และการดำเนินการอื่น ๆ เพิ่มเติมได้
CVE-2024-27127: ช่องโหว่ double-freeใน utilRequest.cgi ผ่านฟังก์ชัน Delete_share
CVE-2024-27128: ช่องโหว่ Stack overflow ในฟังก์ชัน check_email ซึ่งสามารถเข้าถึงได้ผ่านการดำเนินการ share_file และ send_share_mail ของ utilRequest.cgi
CVE-2024-27129: ช่องโหว่การใช้ strcpy อย่างไม่ปลอดภัยในฟังก์ชัน get_tree ของ utilRequest.cgi
CVE-2024-27130: ช่องโหว่การใช้ strcpy อย่างไม่ปลอดภัยใน No_Support_ACL เข้าถึงได้โดยฟังก์ชัน get_file_size ของ share.cgi
CVE-2024-27131: ช่องโหว่ Log spoofing ผ่าน x-forwarded-for ทำให้การดาวน์โหลดของผู้ใช้ถูกบันทึกว่าเป็น request จากแหล่งที่มาที่กำหนดเอง
WT-2023-0050: อยู่ภายใต้การขยายเวลาออกไปเนื่องจากความซับซ้อนของช่องโหว่
WT-2024-0004: Stored XSS ผ่าน syslog messages จากระยะไกล
WT-2024-0005: Stored XSS ผ่านการค้นหาอุปกรณ์จากระยะไกล
WT-2024-0006: Lack of rate-limiting ใน API การยืนยันตัวตน
WT-2024-00XX: อยู่ภายใต้การขยายเวลาออกไป 90 วันตาม VDP

ช่องโหว่ทั้งหมดข้างต้นส่งผลกระทบต่อ QTS ระบบปฏิบัติการ NAS บนอุปกรณ์ QNAP, QuTScloud, QTS เวอร์ชันที่ปรับให้เหมาะสมกับ VM และ QTS hero ซึ่งเป็นเวอร์ชันพิเศษที่เน้นประสิทธิภาพสูง

QNAP ได้แก้ไขช่องโหว่ CVE-2023-50361 ถึง CVE-2023-50364 ในการอัปเดตความปลอดภัยที่ถูกเผยแพร่ในเดือนเมษายน 2024 ในเวอร์ชัน QTS 5.1.6.2722 build 20240402 ขึ้นไป และ QuTS hero h5.1.6.2734 build 20240414 ขึ้นไป อย่างไรก็ตามช่องโหว่อื่น ๆ ทั้งหมดที่ WatchTowr ค้นพบยังคงไม่ได้รับการแก้ไข

PoC สำหรับช่องโหว่ Zero-day RCE

ช่องโหว่ QNAP CVE-2024-27130 เกิดจากการใช้ฟังก์ชัน 'strcpy' ในฟังก์ชัน No_Support_ACL อย่างไม่ปลอดภัย ฟังก์ชันนี้ถูกใช้โดย get_file_size request ในสคริปต์ share.cgi ซึ่งใช้เมื่อแชร์ media กับผู้ใช้ภายนอก

โดยผู้โจมตีสามารถสร้าง request ที่เป็นอันตรายด้วยพารามิเตอร์ 'name' ที่สร้างขึ้นมาเป็นพิเศษ ทำให้เกิด buffer overflow ที่นำไปสู่การเรียกใช้โค้ดที่เป็นอันตรายจากระยะไกล

เพื่อโจมตีช่องโหว่ CVE-2024-27130 ผู้โจมตีจำเป็นต้องใช้พารามิเตอร์ 'ssid' ที่ถูกต้อง ซึ่งสร้างขึ้นเมื่อผู้ใช้ NAS แชร์ไฟล์จากอุปกรณ์ QNAP ของตน

พารามิเตอร์นี้รวมอยู่ใน URL ของลิงก์ 'แชร์' ที่สร้างขึ้นบนอุปกรณ์ ดังนั้นผู้โจมตีจะต้องใช้วิธีบางอย่างเพื่อเข้าถึง อย่างไรก็ตาม BleepingComputer พบว่าบางครั้งผู้ใช้งานมีการแชร์ลิงก์เหล่านี้ทางออนไลน์ ทำให้ผู้โจมตีสามารถทำการค้นหา และดึงข้อมูลจากการค้นหาโดย Google ได้แบบง่าย ๆ

WatchTowr เผยแพร่ช่องโหว่บน GitHub ซึ่งพวกเขาสาธิตวิธีสร้างเพย์โหลดที่สร้างบัญชี 'watchtowr' ไปยังอุปกรณ์ QNAP และเพิ่มลงใน sudoers เพื่อให้ได้สิทธิ์ระดับสูง BleepingComputer ได้ติดต่อ QNAP เพื่อขอคำชี้แจงเกี่ยวกับช่องโหว่ที่ถูกเปิดเผยออกมา แต่ยังไม่ได้รับการตอบกลับในตอนนี้

ที่มา : bleepingcomputer