ผลกระทบ
LibreNMS เวอร์ชัน 24.9.1 และเก่ากว่ามีช่องโหว่ที่อนุญาตให้ผู้ใช้ที่ได้รับการรับรองความถูกต้องดำเนินการแทรกคำสั่ง OS [S2] การใช้ประโยชน์ที่ประสบความสำเร็จช่วยให้สามารถดำเนินการคำสั่งที่กำหนดเองด้วยสิทธิ์ของผู้ใช้เว็บเซิร์ฟเวอร์ [S1] ซึ่งอาจนำไปสู่การประนีประนอมทั้งระบบ การเข้าถึงข้อมูลการตรวจสอบที่ละเอียดอ่อนโดยไม่ได้รับอนุญาต และการเคลื่อนไหวด้านข้างที่อาจเกิดขึ้นภายในโครงสร้างพื้นฐานเครือข่ายที่จัดการโดย LibreNMS [S2]
ต้นเหตุ
ช่องโหว่นี้มีรากฐานมาจากการทำให้เป็นกลางของอินพุตที่ผู้ใช้จัดหามาอย่างไม่เหมาะสม ก่อนที่จะรวมเข้ากับคำสั่งระบบปฏิบัติการ [S1] ข้อบกพร่องนี้จัดเป็น CWE-78 [S1] ในเวอร์ชันที่ได้รับผลกระทบ จุดสิ้นสุดที่ผ่านการรับรองความถูกต้องเฉพาะจะล้มเหลวในการตรวจสอบหรือฆ่าเชื้อพารามิเตอร์อย่างเพียงพอ ก่อนที่จะส่งต่อไปยังฟังก์ชันการดำเนินการระดับระบบ [S2]
การแก้ไข
ผู้ใช้ควรอัปเกรดการติดตั้ง LibreNMS เป็นเวอร์ชัน 24.10.0 หรือใหม่กว่าเพื่อแก้ไขปัญหานี้ [S2] ตามแนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัยทั่วไป การเข้าถึงอินเทอร์เฟซการดูแลระบบ LibreNMS ควรจำกัดไว้เฉพาะเซ็กเมนต์เครือข่ายที่เชื่อถือได้โดยใช้ไฟร์วอลล์หรือรายการควบคุมการเข้าถึง (ACL) [S1]
วิธีทดสอบ FixVibe
ขณะนี้ FixVibe รวมสิ่งนี้ไว้ในการสแกน repo ของ GitHub การตรวจสอบจะอ่านไฟล์การพึ่งพาที่เก็บที่ได้รับอนุญาตเท่านั้น รวมถึง composer.lock และ composer.json โดยจะตั้งค่าสถานะเวอร์ชันหรือข้อจำกัดที่ถูกล็อก librenms/librenms ที่ตรงกับช่วง <=24.9.1 ที่ได้รับผลกระทบ จากนั้นจะรายงานไฟล์การขึ้นต่อกัน หมายเลขบรรทัด ID คำแนะนำ ช่วงที่ได้รับผลกระทบ และเวอร์ชันที่แก้ไขแล้ว
นี่คือการตรวจสอบ repo แบบคงที่และอ่านอย่างเดียว มันไม่ได้รันโค้ดของลูกค้าและไม่ส่งเพย์โหลดการหาประโยชน์
