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.io.useCanonCaches เป็น false โดยเฉพาะ (ค่าเริ่มต้นคือ true)
- Java 17: ตั้งค่า system property sun.io.useCanonCaches เป็น false หากมีการตั้งค่าไว้แล้ว (ค่าเริ่มต้นคือ false)
- Java 21 และเวอร์ชันที่ใหม่กว่า: ไม่จำเป็นต้องดำเนินการใด ๆ เนื่องจาก system property นี้ถูกลบออกไปแล้ว
ASF ได้ให้เครดิตแก่ทีมนักวิจัยด้านความปลอดภัย Nacl, WHOAMI, Yemoli, และ Ruozhi สำหรับการค้นพบ และรายงานช่องโหว่ทั้งสองรายการ นอกจากนี้ยังขอบคุณทีม KnownSec 404 ที่รายงานช่องโหว่ CVE-2024-56337 พร้อมกับโค้ดตัวอย่าง (Proof-of-Concept: PoC)
รายงานนี้เกิดขึ้นในขณะที่ Zero Day Initiative (ZDI) ได้เผยแพร่รายละเอียดของช่องโหว่ระดับ Critical ใน Webmin (CVE-2024-12828, คะแนน CVSS: 9.9) ซึ่งอนุญาตให้ผู้โจมตีที่ผ่านการยืนยันตัวตน จะสามารถเรียกใช้โค้ดที่เป็นอันตรายจากระยะไกลได้
ZDI ระบุว่า "ช่องโหว่นี้เกิดขึ้นในกระบวนการจัดการ CGI request และปัญหาเกิดจากการขาดการตรวจสอบค่าที่ผู้ใช้กรอก ก่อนที่จะใช้ค่าดังกล่าวเพื่อเรียกใช้ system call ผู้โจมตีจึงสามารถใช้ประโยชน์จากช่องโหว่นี้เพื่อเรียกใช้โค้ดด้วยสิทธิ์ของ root ได้"
ที่มา : thehackernews
You must be logged in to post a comment.