WordPress ออกแพตช์แก้ไขช่องโหว่ด้านความปลอดภัยระดับสูง ซึ่งเป็นช่องโหว่ประเภท Pre-Authentication Reflected Cross-Site Scripting (XSS) บริเวณหน้า Login และส่งผลกระทบต่อ WordPress ทุกเวอร์ชันก่อนการติดตั้งแพตช์
รายละเอียดและการทำงานของช่องโหว่
ช่องโหว่นี้ถูกระบุในหมายเลข CVE-2026-64638 มีคะแนนความรุนแรง (CVSS) 8.9 โดยสาเหตุของช่องโหว่จะอยู่ที่กระบวนการจัดการ Username หลังจากการ Login ล้มเหลว
ข้อมูล Username ที่ถูกประมวลผลผ่านฟังก์ชันหลายส่วนของ WordPress ซึ่งใช้กลไกในการวิเคราะห์และกรอง HTML แตกต่างกัน ทำให้ข้อมูลที่มีการสร้างขึ้นเป็นพิเศษสามารถผ่านขั้นตอนแรกในลักษณะข้อความธรรมดา แต่ภายหลังกลับถูกตีความเป็น HTML ที่สามารถทำงานบนหน้า Login ได้
ผลลัพธ์ก็คือผู้โจมตีสามารถสร้าง DOM Element ที่ควบคุมได้ขึ้นบนหน้า Login และใช้ร่วมกับ JavaScript ภายใน WordPress เพื่อดำเนินการโจมตีต่อไป และเนื่องจากช่องโหว่นี้เป็น Pre-Authentication XSS ผู้โจมตีจึงไม่จำเป็นต้องมีบัญชีหรือผ่านการยืนยันตัวตนบน WordPress ก่อนเพื่อกระตุ้นช่องโหว่ดังกล่าว
จาก XSS ต่อยอดไปเป็นการรัน PHP
ทีมวิจัย pwn.ai ได้ตั้งชื่อ Attack Chain ที่ค้นพบว่า XSS2Shell และแสดงให้เห็นว่าสามารถต่อยอดจาก XSS ไปสู่การรัน PHP Code บนเซิร์ฟเวอร์ได้
อย่างไรก็ตาม การโจมตีในขั้นนี้มีเงื่อนไขเพิ่มเติม คือเหยื่อต้องเป็นผู้ใช้ที่ Login ด้วยสิทธิ์ Administrator อยู่แล้ว และต้องมีปฏิสัมพันธ์กับหน้าเว็บที่ผู้โจมตีควบคุม ซึ่งในการสาธิตของนักวิจัยใช้การคลิกเพียงแคหนึ่งครั้งเท่านั้น
หนึ่งในวิธีที่นักวิจัยสาธิตคือการใช้ XSS ภายใต้ Origin ของ WordPress เพื่อเรียกกระบวนการอนุมัติ Application Password ผ่าน Session ของ Administrator
เมื่อสร้าง Application Password สำเร็จ ผู้โจมตีจะได้ Credential สำหรับเข้าถึง WordPress REST API โดยไม่จำเป็นต้องขโมย Password หลักของ Administrator
จากนั้นนักวิจัยสามารถใช้สิทธิ์ดังกล่าวเพื่อสร้างหน้า WordPress ที่มี JavaScript และใช้ Session ของ Administrator เพื่อดึง Nonce สำหรับการอัปโหลด Plugin ก่อนอัปโหลดไฟล์ ZIP ที่ผู้โจมตีเตรียมไว้
หลังจากไฟล์ถูกแตกลงใน Plugin Directory แล้ว ไฟล์ PHP ภายในสามารถถูกเรียกใช้งานโดยตรงได้ โดยไม่จำเป็นต้อง Activate Plugin ก่อน
สิ่งที่จะเกิดขึ้นเมื่อโจมตีสำเร็จ
หากผู้โจมตีสามารถไปถึงขั้น PHP Code Execution ได้สำเร็จ ผลกระทบต่อเว็บไซต์อาจรุนแรงตั้งแต่
- เข้าถึงข้อมูล Database Credential ภายในไฟล์ wp-config.php
- สร้างบัญชี Administrator สำหรับรักษาสิทธิ์การเข้าถึงระบบ
- แก้ไขหรือควบคุมเนื้อหาภายในเว็บไซต์
- เข้าถึงไฟล์และข้อมูลสำคัญที่ PHP Worker มีสิทธิ์อ่าน
- รันคำสั่งของระบบปฏิบัติการภายใต้สิทธิ์ของ PHP Worker
แพตช์แก้ไขความปลอดภัย
WordPress ได้ออกแพตช์แก้ไขช่องโหว่นี้แล้วในเวอรชัน 7.0.3 พร้อมนำแพตช์กลับไปใช้กับ WordPress รุ่นเก่าจนถึง Branch 4.7
เว็บไซต์ที่รองรับ Automatic Background Updates ควรได้รับ Security Release โดยอัตโนมัติ แต่ผู้ดูแลเว็บไซต์ควรตรวจสอบเวอร์ชันอีกครั้งเพื่อให้แน่ใจว่าได้รับแพตช์เรียบร้อยแล้ว
สำหรับ WordPress ที่เวอร์ชันเก่ากว่า 4.7 ยังคงได้รับผลกระทบและอยู่นอกช่วงเวอร์ชันที่ได้รับการ Backport แพตช์ ควรพิจารณาอัปเกรดไปยัง WordPress รุ่นที่ยังได้รับการสนับสนุนโดยเร็วที่สุด
นับว่าเป็นช่องโหว่ที่ผู้ดูแลเว็บไซต์ WordPress ไม่ควรมองข้าม เนื่องจากอยู่ใน WordPress Core และสามารถเกิด XSS ได้โดยที่ผู้โจมตีไม่ต้องผ่านการยืนยันตัวตน อีกทั้งนักวิจัยยังพิสูจน์แล้วว่าสามารถนำไปประกอบเป็น Attack Chain เพื่อรัน PHP บนเซิร์ฟเวอร์ได้ภายใต้เงื่อนไขที่เหมาะสม
ที่มา: BleepingComputer


