Shapelib แก้ double free ใน shpsort — USN-8992-1
ผู้ดูแล Ubuntu ที่ใช้ shpsort ประมวลผลไฟล์จากภายนอกควรจัดคิวอัปเดต Shapelib โดยเร็ว
สรุปใน 1 นาที
- อาการ/ปัญหา
- การจัดการอินพุตบางแบบใน shpsort ทำให้เกิด double free และอาจทำให้โปรแกรมล่มหรือรันโค้ดตามสิทธิ์ผู้ใช้ที่เปิดไฟล์
- ใครควรอ่าน
- ประกาศครอบคลุมแพ็กเกจ shapelib บน Ubuntu 22.04 LTS, 20.04 LTS, 18.04 LTS และ 16.04 LTS
- ทางแก้แบบสั้น
- อัปเดตแพ็กเกจ shapelib ให้ตรงรุ่น Ubuntu ตามตาราง และตรวจช่องทาง ESM สำหรับแพ็กเกจที่เกี่ยวข้อง
พอดีเห็น Ubuntu ออกประกาศ USN-8992-1 เรื่องช่องโหว่ใน Shapelib ไลบรารีสำหรับอ่านและเขียนไฟล์ ESRI Shapefile โดยจุดที่มีปัญหาคือเครื่องมือ shpsort ซึ่งจัดการอินพุตบางแบบผิดพลาด ผู้ดูแลระบบที่มีงานประมวลผลข้อมูลแผนที่หรือรับไฟล์จากภายนอกควรตรวจว่าใช้เครื่องมือนี้อยู่หรือไม่ ประกาศลงวันที่ 3 พฤศจิกายน 2026 และอ้างถึง CVE-2022-0699
เกิดอะไรขึ้น
ปัญหาคือ double free โปรแกรมพยายามคืนพื้นที่หน่วยความจำที่คืนไปแล้ว ทำให้การทำงานผิดพลาดได้ Ubuntu ระบุว่าข้อมูลนำเข้าบางแบบทำให้ shpsort เกิดข้อผิดพลาดนี้
ผลกระทบที่ประกาศระบุมีทั้งการทำให้โปรแกรมหยุดทำงานจนเกิด denial of service และความเป็นไปได้ที่จะรันโค้ดตามที่ผู้โจมตีต้องการ หากเปิดไฟล์ที่สร้างขึ้นเป็นพิเศษ โค้ดอาจทำงานด้วยสิทธิ์ของบัญชีที่เปิดไฟล์นั้น ประเด็นเรื่องสิทธิ์เลยสำคัญกับงานอัตโนมัติที่เรียกเครื่องมือประมวลผลไฟล์ด้วยบัญชีที่เข้าถึงข้อมูลอื่นได้
ประกาศไม่ได้ให้ระดับความรุนแรงหรือคะแนน CVSS และไม่ได้ระบุว่าพบการโจมตีจริง CVE-2022-0699 ยังไม่อยู่ใน KEV ฉบับ 4 พฤศจิกายน 2026 ผู้ดูแลควรตรวจว่างานนำเข้าข้อมูลหรือสคริปต์แปลงไฟล์ส่งอะไรเข้า shpsort บ้าง การมีแพ็กเกจนี้ไม่ได้แปลว่าทุกเว็บบน Ubuntu รับการโจมตีผ่านเครือข่ายได้โดยตรง
ใครโดนและรุ่นที่แก้
Ubuntu ระบุแพ็กเกจ shapelib ในรุ่นต่อไปนี้ พร้อมเลขรุ่นที่แก้แล้ว ตารางนี้เป็นรุ่นแพ็กเกจของ Ubuntu แต่ละ release ไม่ใช่ข้อกำหนดให้ติดตั้งเลขรุ่นเดียวกันข้ามระบบ
| Ubuntu release | แพ็กเกจ | รุ่นที่แก้แล้ว |
|---|---|---|
| 22.04 LTS (jammy) | shapelib | 1.5.0-2+deb11u1build0.22.04.1 |
| 20.04 LTS (focal) | shapelib | 1.5.0-1ubuntu0.1~esm1 |
| 18.04 LTS (bionic) | shapelib | 1.4.1-1ubuntu0.1~esm1 |
| 16.04 LTS (xenial) | shapelib | 1.3.0-5ubuntu0.1~esm1 |
หน้าแจ้งเตือนระบุว่าแพตช์สำหรับ Ubuntu 20.04 และ 18.04 อยู่ใน Ubuntu Pro ผ่าน ESM Apps ส่วนแพ็กเกจของ 16.04 มีส่วนท้าย ~esm1 ตามตารางต้นทาง ผู้ดูแลควรตรวจว่าเครื่องเข้าถึงแหล่งแพ็กเกจที่มีแพตช์ได้จริง ประกาศไม่ได้แจกแจงช่วงรุ่นที่มีช่องโหว่ทั้งหมด เลยควรใช้รายการ release และรุ่นที่แก้แล้วเป็นหลักในการตรวจสอบ
ต้องทำอะไร
เริ่มจากตรวจแพ็กเกจที่ติดตั้งและรุ่นที่ repository เสนอให้ หากมี shapelib อยู่แล้ว ให้อัปเดตผ่านแหล่งแพ็กเกจของ Ubuntu ที่ตรงกับ release ตัวอย่างต่อไปนี้แสดงรุ่นก่อนอัปเดต รีเฟรชรายการแพ็กเกจ อัปเดตเฉพาะแพ็กเกจที่ติดตั้งอยู่ และตรวจรุ่นอีกครั้ง
dpkg-query -W -f='${Package} ${Version}\n' shapelib
sudo apt update
apt-cache policy shapelib
sudo apt install --only-upgrade shapelib
dpkg-query -W -f='${Package} ${Version}\n' shapelib
หากรุ่นที่เสนอให้ยังไม่ถึงรุ่นแก้ไขตามตาราง ให้ตรวจแหล่งแพ็กเกจและสิทธิ์ ESM ที่เกี่ยวข้องก่อนถือว่างานแพตช์เสร็จ ไม่ควรนำแพ็กเกจจาก Ubuntu คนละ release มาติดตั้งเพื่อให้เลขรุ่นตรง หลังอัปเดตควรทดสอบงานนำเข้าหรือประมวลผลด้วยไฟล์ปกติที่เชื่อถือได้ เพื่อยืนยันว่าขั้นตอนใช้งานเดิมยังทำงานครบ
Ubuntu ระบุว่าการอัปเดตระบบตามปกติเพียงพอสำหรับการแก้ปัญหานี้ และไม่ได้ให้ workaround เฉพาะช่องโหว่ หากยังติดข้อจำกัดในการอัปเดต การจำกัดไฟล์ที่ป้อนเข้าเครื่องมือและใช้บัญชีที่มีสิทธิ์เท่าที่จำเป็นเป็นข้อเสนอเพื่อลดความเสี่ยงระหว่างรอ ไม่ใช่สิ่งทดแทนแพตช์จากผู้ผลิต
ส่วนตัวผมให้เร่งแพตช์เมื่อมีการใช้ shpsort กับไฟล์จากภายนอก ส่วนงานที่ใช้เฉพาะไฟล์ที่ควบคุมแหล่งที่มาได้ให้จัดเข้ารอบบำรุงรักษาใกล้ที่สุด ที่มา: USN-8992-1: Shapelib vulnerability หากมีข้อมูลเพิ่มเติมจากประกาศต้นทาง เดี๋ยวกลับมาแก้เพิ่มให้ภายหลังครับ
อยากให้เราทำให้ไหม?
ให้เราช่วยติดตั้ง ตั้งค่า ย้ายระบบ หรือแก้ปัญหาเซิร์ฟเวอร์ เพื่อให้คุณมีเวลาไปทำงานที่สำคัญกว่า
เคยเจองานแบบนี้ไหม? ติดตรงไหน?
มาแลกวิธีกันต่อในบอร์ด LinuxThai



ความคิดเห็น 0
ยังไม่มีความคิดเห็น — เป็นคนแรกเลย