แจ้งเตือนช่องโหว่ Code injection ในไลบรารี Node.js “systeminformation”

นักพัฒนาของไลบรารี Node.js "systeminformation" ได้มีการเผยแพร่เวอร์ชันของไลบรารีดังกล่าวหลังจากมีการตรวจพบช่องโหว่ Command injection ในตัวไลบรารีซึ่งปัจจุบันถูกติดตามด้วยรหัส CVE-2021-21315 ความน่ากังวลของสถานการณ์ดังกล่าวนั้นอยู่ที่ความนิยมของไลบรารีนี้ที่มียอดดาวน์โหลดรายสัปดาห์สูงถึง 800,000 ครั้ง ซึ่งหลังจากมีการเปิดเผยการแพตช์ไป อาจทำให้เกิดการโจมตีที่สร้างผลกระทบเป็นวงกว้างได้

ไลบรารี systeminformation เป็นไลบรารีใน Node.js ซึ่งผู้ใช้งานสามารถใช้เพื่อดึงข้อมูลที่เกี่ยวข้องกับระบบ เช่น รายละเอียดของ CPU, หน่วยความจำ, ฮาร์ดแวร์, หรือรายการโปรเซสได้ ด้วยลักษณะของช่องโหว่แบบ Command injection ผู้โจมตีสามารถทำการโจมตีช่องโหว่นี้เพื่อรันคำสั่งที่เป็นอันตรายได้จากระยะไกล

ช่องโหว่ CVE-2021-21315 เกิดจากการตรวจสอบพารามิเตอร์ที่ถูกส่งมายังพารามิเตอร์ภายในไลบรารีแบบไม่เหมาะสม ส่งผลให้ผู้โจมตีสามารถแทรกคำสั่งอันตรายมาซึ่งจะถูกรันโดยตัวไลบรารีได้

ในขณะนี้แพตช์ของช่องโหว่ CVE-2021-21315 ได้ถูกเผยแพร่แล้วในไลบรารี systeminformation รุ่น 5.3.1 แล้ว ในขณะที่ผู้ที่ไม่สามารถทำการอัปเกรดไลบารีได้ก็สามารถใช้วิธีการ Workaround ตามคำแนะนำของนักพัฒนาได้โดยอาศัยการตรวจสอบพารามิเตอร์ของข้อมูลประเภทสตริงที่มายังฟังก์ชัน si.inetLatency(), si.inetChecksite(), si.services() และ si.processLoad() โดยจะต้องตรวจสอบประเภทของข้อมูลว่าเป็นได้เฉพาะค่าสตริงเท่านั้น และใช้ฟังก์ชันเพื่อทำการ sanitize ค่าสตริงเสริมด้วย

ที่มา: bleepingcomputer