ช่องโหว่ Apache Tomcat CVE-2024-56337 ทำให้เซิร์ฟเวอร์เสี่ยงต่อการถูกโจมตีแบบ RCE

Apache Software Foundation (ASF) ออกแพตซ์อัปเดตด้านความปลอดภัยเพื่อแก้ไขช่องโหว่ระดับ Critical ในซอฟต์แวร์ Tomcat Server ที่อาจทำให้เกิดการเรียกใช้โค้ดที่เป็นอันตรายจากระยะไกล (RCE) ภายใต้เงื่อนไขบางอย่าง

ช่องโหว่ดังกล่าวมีหมายเลข CVE-2024-56337 ถูกระบุว่าเป็นการแก้ไขปัญหาที่ไม่สมบูรณ์ของช่องโหว่ CVE-2024-50379 (คะแนน CVSS: 9.8) ซึ่งเป็นช่องโหว่ด้านความปลอดภัยระดับ Critical อีกช่องโหว่หนึ่งในผลิตภัณฑ์เดียวกัน และเคยได้รับการแก้ไขไปแล้วเมื่อวันที่ 17 ธันวาคม 2024

นักพัฒนาได้ระบุในคำแนะนำเมื่อสัปดาห์ที่แล้วว่า "ผู้ใช้ที่ใช้งาน Tomcat บนระบบไฟล์ที่ไม่คำนึงถึงตัวพิมพ์เล็ก-ใหญ่ (case insensitive) และเปิดใช้งานการเขียน default servlet (ตั้งค่าพารามิเตอร์ readonly เริ่มต้นเป็นค่า false ซึ่งไม่ใช่ค่าเริ่มต้น) อาจจำเป็นต้องตั้งค่าเพิ่มเติม เพื่อแก้ไขช่องโหว่ CVE-2024-50379 ให้สมบูรณ์ แต่ก็ขึ้นอยู่กับเวอร์ชั่นของ Java ที่ใช้งานร่วมกับ Tomcat ด้วย"

ช่องโหว่ทั้งสองรายการเป็นช่องโหว่แบบ Time-of-check Time-of-use (TOCTOU) ที่อาจส่งผลให้เกิดการเรียกใช้โค้ดบนระบบไฟล์ที่ไม่แยกความแตกต่างระหว่างตัวอักษรพิมพ์เล็ก-พิมพ์ใหญ่ เมื่อมีการเปิดใช้งาน default servlet สำหรับการเขียน

Apache ระบุไว้ในการแจ้งเตือนสำหรับ CVE-2024-50379 "การอ่าน และการอัปโหลดพร้อมกันภายใต้โหลดของไฟล์เดียวกัน สามารถหลีกเลี่ยงการตรวจสอบความแตกต่างของตัวอักษรพิมพ์เล็ก-พิมพ์ใหญ่ของ Tomcat และทำให้ไฟล์ที่อัปโหลดถูกมองว่าเป็น JSP ซึ่งจะนำไปสู่การเรียกใช้โค้ดที่เป็นอันตรายจากระยะไกลได้"

CVE-2024-56337 ส่งผลกระทบต่อ Apache Tomcat ตามเวอร์ชันต่อไปนี้

Apache Tomcat 11.0.0-M1 ถึง 11.0.1 (แก้ไขแล้วในเวอร์ชั่น 11.0.2 หรือเวอร์ชันใหม่กว่า)
Apache Tomcat 10.1.0-M1 ถึง 10.1.33 (แก้ไขแล้วในเวอร์ชั่น 10.1.34 หรือเวอร์ชันใหม่กว่า)
Apache Tomcat 9.0.0.M1 ถึง 9.0.97 (แก้ไขแล้วในเวอร์ชั่น 9.0.98 หรือเวอร์ชันใหม่กว่า)

นอกจากนี้ ผู้ใช้งานจำเป็นต้องดำเนินการเปลี่ยนแปลงการตั้งค่าต่อไปนี้ ขึ้นอยู่กับเวอร์ชันของ Java ที่กำลังใช้งาน

Java 8 หรือ Java 11: กำหนดค่า system property sun.