นักพัฒนา PHP ประกาศปล่อยแพทช์ฉุกเฉิน (8.5.12, 8.4.27, 8.3.36 และ 8.2.35) ในวันนี้เวลา 17:00 น. (MSK) เพื่อแก้ไขช่องโหว่ที่สำคัญสองรายการ ขอแนะนำให้ผู้ดูแลระบบเซิร์ฟเวอร์ PHP ทุกคนติดตั้งแพทช์บนระบบของตนทันทีหลังจากที่ปล่อยแพทช์แล้ว รายละเอียดอย่างเป็นทางการจะเปิดเผยเมื่อแพทช์พร้อมใช้งานแล้ว แต่จากข้อมูลที่เปิดเผยต่อสาธารณะ ช่องโหว่เหล่านี้คือ CVE-2026-109618 และ CVE-2026-109619 ซึ่งอาจทำให้สามารถเรียกใช้โค้ดจากระยะไกลบนเว็บเซิร์ฟเวอร์ใด ๆ ที่รันสคริปต์ PHP ในการกำหนดค่าเริ่มต้นได้ ปัญหาดังกล่าวส่งผลกระทบต่อ PHP ทุกเวอร์ชันตั้งแต่ 5.4 ขึ้นไป
การโจมตีต้นแบบ (1, 2) ได้ปรากฏออนไลน์แล้วเพื่อทดสอบช่องโหว่ของระบบ บันทึกการโจมตีอ้างว่าช่องโหว่เกิดจากการเข้าถึงหน่วยความจำที่ถูกปล่อยไปแล้วในตัวจัดการติดตามความคืบหน้าการดาวน์โหลดไฟล์ เซิร์ฟเวอร์ (session.upload_progress) การโจมตีนี้ไม่จำเป็นต้องมีฟังก์ชันการอัปโหลดไฟล์บนเว็บไซต์ การเปิดใช้งานตัวจัดการเนื้อหา "multipart/form-data" ในตัวแปล PHP โดยอัตโนมัติก็เพียงพอแล้ว การโจมตีที่ประสบความสำเร็จต้องอาศัยการระบุโครงสร้างหน่วยความจำของกระบวนการ ซึ่งมีความเฉพาะเจาะจงสำหรับแต่ละเวอร์ชัน (ปัญหานี้สามารถแก้ไขได้โดยการโจมตีแบบ Brute-force โดยใช้ค่าออฟเซ็ตที่คำนวณไว้ล่วงหน้าสำหรับแพ็กเกจจากระบบปฏิบัติการต่างๆ)
เพื่อแก้ไขปัญหาชั่วคราว บางคนแนะนำให้ตั้งค่าพารามิเตอร์ php.ini เป็น "session.upload_progress.enabled = off" (หรือ "php_admin_flag[session.upload_progress.enabled] = off" ใน PHP-FPM) แต่ตัวแทนโครงการ PHP รวมถึงผู้เขียนต้นแบบการโจมตีครั้งแรก อ้างว่าวิธีนี้ไม่เพียงพอที่จะป้องกันช่องโหว่ทั้งสองได้ หมายเหตุสำหรับต้นแบบการโจมตีครั้งที่สองระบุว่า นอกเหนือจากการตั้งค่า php.ini ดังกล่าวแล้ว จำเป็นต้องบล็อกคำขอที่มีประเภทเนื้อหา "multipart/form-data" อย่างสมบูรณ์เพื่อป้องกันการโจมตีโดยไม่ต้องใช้แพทช์
ใน Apache httpd สามารถใช้กฎต่อไปนี้ใน mod_rewrite เพื่อบล็อกคำขอแบบ multipart ได้:
RewriteCond %{HTTP:Content-Type} multipart [NC]
กฎการเขียนใหม่ ^ — [F,L]
วิธีบล็อกใน nginx:
ถ้า ($http_content_type ~* "multipart") {
403 กลับ;
}
วิธีการจอง Caddy:
@multipart header_regexp Content-Type (?i)multipart
ตอบกลับ @multipart 403
อัปเดต: แพทช์ PHP เวอร์ชัน 8.5.12, 8.4.27, 8.3.36 และ 8.2.35 ได้ถูกปล่อยออกมาแล้ว พร้อมรายละเอียดเกี่ยวกับช่องโหว่ที่สำคัญที่ได้รับการแก้ไข การวิเคราะห์โดยละเอียดเกี่ยวกับช่องโหว่และวิธีแก้ไขที่แนะนำอย่างเป็นทางการมีอยู่ในข่าวแยกต่างหาก
ที่มา: opennet.ru
