nginx เวอร์ชันหลัก 1.31.3 ได้ถูกปล่อยออกมาแล้ว โดยยังคงพัฒนาฟีเจอร์ใหม่ๆ ต่อไป ในขณะเดียวกันก็มีการปล่อยเวอร์ชันเสถียรคู่ขนาน nginx 1.30.4 ซึ่งมีการเปลี่ยนแปลงเฉพาะที่เกี่ยวข้องกับการแก้ไขข้อบกพร่องและช่องโหว่ที่ร้ายแรงเท่านั้น การอัปเดตเหล่านี้แก้ไขช่องโหว่สามรายการ:
- CVE-2026-42533 — ช่องโหว่บัฟเฟอร์โอเวอร์โฟลว์เกิดขึ้นเมื่อคำสั่ง "map" ใช้การตรวจสอบนิพจน์ปกติ (regular expression) ร่วมกับการแทนที่โดยใช้ตัวแปรที่ไม่มีชื่อ (เช่น $1 และ $2) หรือตัวแปรที่มีชื่อ โดยมีเงื่อนไขว่าตัวแปรเหล่านั้นต้องถูกกล่าวถึงก่อนตัวแปรผลลัพธ์ของ map หรือต้องใช้ตัวแปรที่ไม่ถูกแคชไว้ ช่องโหว่นี้อาจนำไปสู่การเรียกใช้โค้ดจากระยะไกลได้ เซิร์ฟเวอร์ โดยการส่งคำขอ HTTP ที่สร้างขึ้นเป็นพิเศษ ปัญหานี้ได้รับการประเมินว่ามีความสำคัญอย่างยิ่ง (9.2 จาก 10)
- CVE-2026-60005 — เกิดการรั่วไหลของหน่วยความจำที่ไม่ได้เริ่มต้นในกระบวนการทำงานเมื่อใช้โมดูล ngx_http_slice_module และระบุการแทนที่นิพจน์ปกติโดยใช้ตัวแปรที่ไม่มีชื่อในคำสั่ง slice ช่องโหว่นี้มีระดับความรุนแรง 8.8 จาก 10
- CVE-2026-56434 คือช่องโหว่การใช้งานหน่วยความจำหลังจากถูกปล่อย (use-after-free) ในโมดูล ngx_http_ssi_module ซึ่งเกิดขึ้นเมื่อประมวลผลการตอบสนองที่สร้างขึ้นเป็นพิเศษซึ่งส่งคืนโดยแบ็กเอนด์พร็อกซี ช่องโหว่นี้อาจนำไปสู่การแก้ไขหน่วยความจำของกระบวนการทำงาน (worker process) ปัญหาดังกล่าวได้รับการจัดอันดับความรุนแรงที่ 8.3 จาก 10
การเปลี่ยนแปลงที่ไม่เกี่ยวข้องกับช่องโหว่:
- ในโมดูล ngx_http_xslt_filter_module การโหลดตัวแปรในเอกสาร XML ที่มีค่ามาจากแหล่งภายนอกถูกปิดใช้งานแล้ว มีการเพิ่มคำสั่ง "xml_external_entities" เพื่อควบคุมการโหลดส่วนประกอบภายนอกที่ระบุไว้ในบล็อก DTD ของเอกสาร XML ที่ประมวลผล
- เพิ่มคำสั่ง "proxy_socket_sndbuf", "proxy_socket_rcvbuf", "fastcgi_socket_sndbuf", "fastcgi_socket_rcvbuf", "grpc_socket_sndbuf", "grpc_socket_rcvbuf", "scgi_socket_sndbuf", "scgi_socket_rcvbuf", "uwsgi_socket_sndbuf", "uwsgi_socket_rcvbuf", "tunnel_socket_sndbuf" และ "tunnel_socket_rcvbuf" เพื่อกำหนดขนาดของบัฟเฟอร์สำหรับการส่ง (SO_SNDBUF) และการรับ (SO_RCVBUF)
- สำหรับสถาปัตยกรรม LoongArch64 นั้น ได้มีการนำนิยามของขนาดบล็อก (แคชไลน์) ที่ใช้ในการถ่ายโอนข้อมูลระหว่างแคชของ CPU และหน่วยความจำมาใช้งานแล้ว
- โมดูล ngx_http_proxy_v2_module และ ngx_http_grpc_module ใช้คำสั่ง proxy_buffer_size และ grpc_buffer_size เพื่อจำกัดขนาดของส่วนหัวและส่วนท้ายในคำตอบ HTTP/2
ที่มา: opennet.ru
