ช่องโหว่ Stored XSS (Persistent) ใน ซอฟต์แวร์ที่มีช่องโหว่ — CVE-2026-120205 (CVSS 8)
📋 สรุปช่องโหว่
ช่องโหว่ Stored XSS (Persistent) ถูกค้นพบในซอฟต์แวร์ที่มีช่องโหว่ โดยมี CVSS Score 8 ระดับ "สูง" ซึ่งถือว่ามีความรุนแรงที่ต้องได้รับความสนใจโดยเร็ว
ช่องโหว่ประเภท XSS เกิดจากการที่ระบบไม่ได้กรองหรือทำ sanitize ข้อมูลที่ผู้ใช้ป้อนเข้ามาอย่างเหมาะสม ทำให้ผู้โจมตีสามารถฉีด JavaScript อันตรายเข้าไปในหน้าเว็บได้ เมื่อผู้ใช้รายอื่นเปิดหน้าเว็บนั้น script จะถูกรันในเบราว์เซอร์ของเหยื่อโดยอัตโนมัติ
การโจมตีนี้ไม่จำเป็นต้องล็อกอิน ซึ่งหมายความว่าขอบเขตความเสี่ยงอาจกว้างกว่าที่คิด ผู้ดูแลระบบที่ใช้ซอฟต์แวร์ที่มีช่องโหว่ และยังไม่ได้อัพเดตควรดำเนินการทันที
💥 ผลกระทบที่อาจเกิดขึ้น
ผู้โจมตีที่ใช้ประโยชน์จากช่องโหว่นี้สำเร็จสามารถทำสิ่งต่อไปนี้ได้:
• ขโมย Session Cookie: ดึง session token ของผู้ดูแลระบบเพื่อเข้าสู่ระบบโดยไม่ต้องรู้รหัสผ่าน
• Hijack บัญชี Admin: หากผู้ดูแลระบบเปิดหน้าที่ถูก inject ผู้โจมตีอาจสร้าง admin ใหม่หรือเปลี่ยนรหัสผ่าน
• ฝัง Malware/Phishing: แทรกโค้ด redirect ผู้เข้าชมไปเว็บอันตราย หรือแสดง form ปลอมขโมยข้อมูลบัตรเครดิต
• ขโมยข้อมูลในฟอร์ม: ดักข้อมูลที่ผู้ใช้กรอก เช่น email รหัสผ่าน ข้อมูลส่วนตัว
• Defacement: เปลี่ยนแปลงหน้าตาเว็บไซต์ ทำลายชื่อเสียงองค์กร
• Drive-by Download: บังคับให้เบราว์เซอร์ดาวน์โหลดไฟล์อันตรายโดยไม่รู้ตัว
🖥️ ซอฟต์แวร์และระบบที่ได้รับผลกระทบ
ตรวจสอบรายละเอียดจาก https://nvd.nist.gov/vuln/detail/CVE-2026-120205
🔧 แนวทางการแก้ไขและป้องกัน
- ขั้นตอนแก้ไขทันที:
- 1. อัพเดตทันที: เข้า WordPress Dashboard > Plugins > Updates และอัพเดตเป็นเวอร์ชันล่าสุด
- 2. หากยังไม่มี patch: ปิดการใช้งาน plugin ชั่วคราวจนกว่าจะมี patch เพื่อป้องกันการโจมตี
- 3. ตรวจสอบ Logs: ดู access log หาคำขอที่มี <script>, javascript:, onerror= หรือ base64 strings ที่น่าสงสัย
- 4. ติดตั้ง WAF: ใช้ Wordfence Security, Cloudflare WAF หรือ ModSecurity เพื่อ block XSS attempts
- 5. เพิ่ม Content Security Policy: ตั้งค่า HTTP header Content-Security-Policy เพื่อจำกัด script ที่รันได้
- 6. ตรวจสอบ User Accounts: ดูว่ามีบัญชี admin ที่ไม่รู้จักถูกสร้างขึ้นหรือไม่
- 7. เปลี่ยนรหัสผ่าน: เปลี่ยน admin password ทุกบัญชีหากสงสัยว่าถูก compromise
- 8. ล้าง Cache: ล้าง plugin cache และ CDN cache หลังอัพเดตเพื่อให้ไฟล์ใหม่มีผล
📄 รายละเอียดต้นฉบับ (ภาษาอังกฤษ)
Thelia before 3.1.0 contains a stored cross-site scripting vulnerability in ForSomeCustomers::getSummary() that allows unauthenticated attackers to inject scripts via unescaped customer names. Attackers can register with a script payload as their name that executes when administrators view related coupons, stealing CSRF tokens to create administrator accounts.