ช่องโหว่ความปลอดภัยระดับสูงสุดในปลั๊กอิน WordPress ชื่อ Modular DS (CVE-2026-23550, คะแนน CVSS: 10.0) กำลังถูกนำไปใช้ประโยชน์ในการโจมตีจริง ช่องโหว่นี้เป็นการยกระดับสิทธิ์โดยไม่ผ่านการรับรองความถูกต้อง ซึ่งส่งผลกระทบต่อปลั๊กอินทุกเวอร์ชันก่อนหน้าและรวมถึง 2.5.1 ได้รับการแก้ไขแล้วในเวอร์ชัน 2.5.2 ปลั๊กอินนี้มีการติดตั้งใช้งานมากกว่า 40,000 แห่ง.
Severity: วิกฤต
System Impact:
- WordPress plugin Modular DS (เวอร์ชัน 2.5.1 และต่ำกว่า)
- เว็บไซต์ WordPress ที่ติดตั้งปลั๊กอิน Modular DS (มากกว่า 40,000 เว็บไซต์)
Technical Attack Steps:
- ช่องโหว่เกิดจากกลไกการกำหนดเส้นทาง (routing mechanism) ของปลั๊กอิน Modular DS ที่เปิดเผยเส้นทางภายใต้ ‘/api/modular-connector/’
- ผู้โจมตีสามารถข้ามกลไกการตรวจสอบสิทธิ์ได้โดยการระบุพารามิเตอร์ ‘origin’ เป็น ‘mo’ และพารามิเตอร์ ‘type’ เป็นค่าใดก็ได้ (เช่น ‘origin=mo&type=xxx’)
- การระบุพารามิเตอร์ดังกล่าวทำให้คำขอถูกพิจารณาว่าเป็น ‘Modular direct request’ ซึ่งอนุญาตให้ข้าม middleware การตรวจสอบสิทธิ์ไปได้ แม้ว่าไซต์จะเชื่อมต่อกับ Modular แล้วก็ตาม
- ผู้โจมตีที่ไม่ผ่านการรับรองความถูกต้องสามารถใช้ประโยชน์จากเส้นทาง ‘/login/{modular_request}’ เพื่อเข้าถึงสิทธิ์ผู้ดูแลระบบ ซึ่งนำไปสู่การยกระดับสิทธิ์
- การเข้าถึงสิทธิ์ผู้ดูแลระบบนี้อาจนำไปสู่การประนีประนอมเว็บไซต์โดยสมบูรณ์ ทำให้สามารถเปลี่ยนแปลงเนื้อหาที่เป็นอันตราย, ติดตั้งมัลแวร์ หรือเปลี่ยนเส้นทางผู้ใช้ไปยังการหลอกลวงได้
- การโจมตีครั้งแรกถูกตรวจพบเมื่อวันที่ 13 มกราคม 2569 เวลาประมาณ 02:00 น. UTC โดยมีการเรียก HTTP GET ไปยังปลายทาง ‘/api/modular-connector/login/’ ตามด้วยความพยายามในการสร้างผู้ใช้ที่เป็นผู้ดูแลระบบ
Recommendations:
Short Term:
- อัปเดตปลั๊กอิน Modular DS เป็นเวอร์ชัน 2.5.2 หรือใหม่กว่าโดยเร็วที่สุด
Long Term:
- ทบทวนการออกแบบความปลอดภัยที่เกี่ยวข้องกับการเชื่อถือเส้นทางคำขอภายในโดยปริยายเมื่อเปิดเผยสู่สาธารณะ
- ปรับปรุงกลไกการจับคู่เส้นทาง (URL-based route matching) และโหมด ‘direct request’ ที่อนุญาตมากเกินไป
- ปรับปรุงการตรวจสอบสิทธิ์ที่อาศัยเพียงสถานะการเชื่อมต่อไซต์
- ทบทวนขั้นตอนการเข้าสู่ระบบที่อาจมีการกลับไปใช้บัญชีผู้ดูแลระบบโดยอัตโนมัติ
Source: https://thehackernews.com/2026/01/critical-wordpress-modular-ds-plugin.html
Share this content: