Debian แก้ช่องโหว่ libspreadsheet-xlsx-perl DSA-6627-1
ผู้ดูแลระบบและนักพัฒนาที่ใช้ libspreadsheet-xlsx-perl อ่านไฟล์จากภายนอกควรเร่งอัปเดตแพ็กเกจที่แก้แล้ว
1-minute summary
- Symptom / problem
- การประมวลผลเอกสาร XLSX ที่สร้างขึ้นเป็นพิเศษอาจทำให้บริการหยุดทำงานหรือรันโค้ดตามที่ผู้โจมตีต้องการ
- Who should read
- ผู้ดูแลระบบและนักพัฒนาที่ใช้ libspreadsheet-xlsx-perl โดยเฉพาะงานนำเข้าไฟล์จากภายนอก
- Fix in short
- อัปเดต libspreadsheet-xlsx-perl บน Debian trixie เป็น 0.20-0+deb13u1 หรือรุ่นใหม่กว่าจากคลังของรุ่นที่ใช้งาน
พอดีไล่ฟีด Debian เจอประกาศ DSA-6627-1 ลงวันที่ 13 พฤศจิกายน 2026 แก้ช่องโหว่ใน libspreadsheet-xlsx-perl โมดูล Perl ตัวนี้ใช้สำหรับอ่านไฟล์ MS Excel 2007 หรือ XLSX ถ้าโปรแกรมอ่านเอกสารที่ผู้โจมตีเตรียมมา บริการอาจหยุดทำงานหรือถูกสั่งให้รันโค้ดได้ งานที่รับไฟล์จากภายนอกมาอ่านอัตโนมัติควรเร่งตรวจและอัปเดต
ใครต้องทำอะไร
- ผู้ดูแลระบบ: อัปเดตแพ็กเกจนี้บน Debian trixie โดยเร็ว และเริ่มจากบริการที่รับไฟล์จากภายนอกก่อน
- นักพัฒนา: ตรวจว่าแอปใช้ Spreadsheet::XLSX หรือไม่ แล้วอัปเดตตัวที่แอปใช้งานโดยเร็ว โดยเฉพาะแอปที่รับไฟล์จากผู้ใช้
เกิดอะไรขึ้น
Debian ระบุว่าพบช่องโหว่หลายรายการ และอ้างถึง CVE-2026-115943 ผลกระทบรวมถึง denial of service หรือบริการหยุดทำงาน และอาจรันโค้ดของผู้โจมตีได้ ปัญหาเกิดเมื่อโมดูลอ่านเอกสารที่ผู้โจมตีเตรียมมา
รายละเอียดใน บันทึกบั๊ก Debian หมายเลข 1152516 อธิบายว่า Spreadsheet::XLSX ก่อนรุ่น 0.19 ใช้ string eval ตรวจเงื่อนไขการแสดงตัวเลขใน ExcelFmt ทั้งเงื่อนไขและค่าของเซลล์มาจากเอกสาร ผู้โจมตีเลยใส่โค้ด Perl ลงในไฟล์ให้ทำงานตอนเปิดอ่านได้ รุ่น upstream 0.19 แก้จุดนี้ด้วยการเปรียบเทียบตัวเลขแทน string eval
สำหรับงานเว็บ ให้ตรวจทั้งส่วนที่นำเข้าตารางคำนวณและงานเบื้องหลังที่อ่านไฟล์จากคิว ดูว่าแต่ละส่วนเรียกโมดูลนี้หรือไม่ การตรวจเฉพาะหน้ารับอัปโหลดอาจตกหล่นส่วนที่อ่านไฟล์จริง
CVE-2026-115943 ยังไม่อยู่ใน KEV ฉบับ 13 พฤศจิกายน 2026 ตาม JSON ในคลังทางการของ CISA สถานะนี้ไม่ได้แปลว่าไฟล์จากภายนอกปลอดภัย ควรอัปเดตตามคำแนะนำของ Debian
ใครโดนและรุ่นที่แก้
DSA ฉบับนี้ออกอัปเดตให้ Debian stable ชื่อ trixie ส่วน Debian Security Tracker แสดงรุ่นเดิมและรุ่นแก้ดังนี้
| รุ่น Debian / แพ็กเกจ | รุ่นที่มีช่องโหว่ใน Tracker | รุ่นที่แก้แล้ว |
|---|---|---|
| trixie / libspreadsheet-xlsx-perl | 0.18-1 | 0.20-0+deb13u1 |
ให้เทียบเลขรุ่น Debian ทั้งชุด รวมส่วนท้าย +deb13u1 ด้วย รุ่น upstream 0.19 แก้ CVE ข้างต้น แต่เป้าหมายของการอัปเดตบน trixie คือ 0.20-0+deb13u1 ตาม DSA หากใช้ Debian รุ่นอื่น ให้ดูสถานะของรุ่นนั้นใน Tracker ของ CVE ก่อนเลือกแพ็กเกจ
ต้องทำอะไร
ตรวจว่าเครื่องที่รันโปรแกรมติดตั้งแพ็กเกจนี้หรือไม่ แล้วดูว่าคลังแพ็กเกจมีรุ่นแก้ให้หรือยัง คำสั่งต่อไปนี้ใช้กับการติดตั้งผ่านแพ็กเกจ Debian
dpkg-query -W libspreadsheet-xlsx-perl
sudo apt update
apt-cache policy libspreadsheet-xlsx-perl
sudo apt install --only-upgrade libspreadsheet-xlsx-perl
dpkg-query -W libspreadsheet-xlsx-perl
หลังอัปเดต ตรวจว่ารุ่นบน trixie เป็น 0.20-0+deb13u1 หรือใหม่กว่าจากคลังของ trixie หากยังได้รุ่นเก่า ให้ตรวจแหล่งแพ็กเกจและข้อผิดพลาดจาก apt update จากนั้นลองนำเข้า XLSX ด้วยไฟล์ทดสอบที่เชื่อถือได้ ตรวจทั้งข้อมูลและรูปแบบตัวเลขว่าอ่านได้ตามเดิม
ควรตรวจตัวโมดูลที่แอปใช้งานจริงด้วย หากแอปอยู่ในคอนเทนเนอร์หรือมีไลบรารีติดตั้งแยก ให้อัปเดตในส่วนนั้นด้วย ส่วนโปรเซส Perl ที่ทำงานค้างอยู่ควรเริ่มใหม่ตามขั้นตอนของบริการ เพื่อให้โหลดโค้ดที่อัปเดตแล้ว
ส่วนตัวผมให้เร่งแพตช์หากระบบใช้โมดูลนี้อ่าน XLSX จากภายนอก ส่วนงานที่อ่านเฉพาะไฟล์ภายในที่ควบคุมได้ให้จัดเข้ารอบบำรุงรักษาที่ใกล้ที่สุด ที่มา: Debian Security Advisory DSA-6627-1 หากมีรายละเอียดเพิ่มเติม เดี๋ยวกลับมาแก้เพิ่มให้ภายหลังครับ
Want us to set this up?
Get help with server setup, configuration, migration, or troubleshooting. Save time for the work that matters.
Hit something like this? Stuck somewhere?
Come trade notes on the LinuxThai board



Comments 0
No comments yet — be the first