“wp2shell” ภัยคุกคามใหม่บน WordPress รู้ทันวิธีการโจมตี และวิธีป้องกันก่อนถูกยึดเว็บไซต์

 

Summary

  • wp2shell เป็นช่องโหว่การเรียกใช้โค้ดที่เป็นอันตรายจากระยะไกล (RCE) ที่ส่งผลกระทบกับ WordPress version 6.9.0 - 6.9.4, 7.0.0 - 7.0.1
  • ช่องโหว่ดังกล่าวถูกโจมตีได้ผ่าน API /batch/v1 เพื่อทำการยกระดับสิทธิ์เป็น Admin ทำให้สามารถ Upload Backdoor Plugin เพื่อ Execute Code ได้
  • พบว่ามี Hacker หลายกลุ่มเริ่มโจมตีด้วยช่องโหว่นี้แล้ว

Detail

วันที่ 17 กรกฎาคม 2026 Searchlight Cyber เปิดเผยว่า ได้ค้นพบช่องโหว่การเรียกใช้โค้ดที่เป็นอันตรายจากระยะไกล (RCE) ของ WordPress Core ซึ่งถูกเรียกว่า “wp2shell” โดยนักวิจัยใช้ GPT5.6 ของ OpenAI ในการช่วยหาช่องโหว่, ขั้นตอนในการโจมตี โดยใช้ช่องโหว่ CVE-2026-63030 และ CVE-2026-60137 สองรายการเพื่อทำ Exploit Chain

เมื่อส่ง Exploit Payload ด้วย Nested Json ไปยัง /batch/v1 แบบ anonymous แล้ว API ดังกล่าวจะมีการทำ parameter sanitization ที่ผิดพลาด (CVE-2026-63030) ซึ่งทำให้สามารถ Bypass การตรวจสอบ Exploit Payload ได้

เมื่อใช้ร่วมกับอีกช่องโหว่ที่สามารถทำ SQL injection โดยการแก้ไข parameter author__not_in (CVE-2026-60137) จะทำให้ยกระดับสิทธิ์จาก anonymous เป็น Administrator ชั่วคราวได้ จากนั้นใช้สิทธิ์ Administrator ที่มี Upload plugin ที่มี Backdoor เพื่อทำให้เกิดการเรียกใช้โค้ดที่เป็นอันตรายจากระยะไกล (RCE) ได้

เพียงในเวลาไม่กี่วันก็ได้มีการปล่อย Source code exploit ช่องโหว่ “wp2shell” ใน GitHub และบริษัททางด้าน Security หลายแห่ง ได้รายงานการพบเห็น Hacker เริ่มโจมตีโดยใช้ช่องโหว่นี้แล้ว แนะนำให้ผู้ดูแลระบบเร่งทำการอัปเดต Patch เป็น WordPress version ใหม่โดยเร็วที่สุด

Detection

สามารถตรวจสอบหาพฤติกรรมการโจมตีได้ด้วย Web Access Log และ EDR Log ดังนี้:

1. ตรวจสอบ Request มาที่ API เพื่อโจมตีช่องโหว่เพื่อยกระดับสิทธิ์เป็น Admin

หมายเหตุ ด้วย Log ประเภทนี้เพียงอย่างเดียว อาจไม่สามารถยืนยันได้ว่ามีการโจมตีเกิดขึ้นจริง

  • POST /?rest_route=/batch/v1
  • POST /wp-json/batch/v1

2. ตรวจสอบ Request upload plugin และการสร้าง Admin User

2.1 พบ Request upload plugin ในเวลาใกล้เคียงกันหลังจาก Request /batch/v1 

     เพื่อการทำการฝัง plugin backdoor

  • POST /wp-admin/plugin-install.php
  • POST /wp-admin/update.php?action=upload-plugin

หากมีการติดตั้ง Endpoint Detection and Response (EDR) อาจจะเห็น Log web process เช่น httpd, apache2, php-fpm เขียนไฟล์ในเครื่อง เช่น

  • เขียนไฟล์ zip plugin (เช่น wp2shell_6a5566a6.zip) ลงที่ wp-content/uploads/
  • เขียนไฟล์ php (เช่น wp2shell_<hex>.php) ลงที่ wp-content/plugins/

     2.2  ในบางกรณี Hacker อาจใช้ API สร้าง Admin User ขึ้นมาใหม่

  • POST /wp-json/wp/v2/users?context=edit

3. Web Process เรียกใช้คำสั่งผิดปกติ

หลังจากที่ Hacker สามารถฝัง Backdoor ได้แล้ว อาจจะพบการเรียกใช้งานคำสั่งผ่าน Webshell ซึ่งเมื่อตรวจสอบจาก EDR จะเห็น Web process เช่น httpd, apache2, php-fpm เรียกใช้งานคำสั่งต่าง ๆ เช่น bash, sh, dash รวมถึงการเรียกใช้งานคำสั่งเช่น id, whoami, hostname, curl ซึ่งหากเป็นคำสั่งที่อันตราย EDR ส่วนใหญ่จะสามารถ Detect และ Block ได้

รูปตัวอย่าง Process Tree การโจมตี

apache2
└─ /bin/sh -c curl ... -o /tmp/<file>

Affected WordPress Version

  • 6.9.0 - 6.9.4
  • 7.0.0 - 7.0.1

Recommendation

  • Upgrade WordPress เป็น version 6.9.5 หรือ 7.0.2 ขึ้นไป
  • หากไม่สามารถ Upgrade WordPress ได้ แนะนำให้
  • ติดตั้ง plugin ที่สามารถ block anonymous API access
  • Block การใช้งาน /wp-json/batch/v1 and ?rest_route=/batch/v1 ที่  Web Application Firewall (WAF)
  • Block Network IOC ที่ Firewall/WAF
  • ติดตั้ง EDR เพื่อช่วย Detect และป้องกันการเรียกใช้งานคำสั่งผ่าน Web Process ที่ผิดปกติ

Network IOC

Exploit IP

  • 18[.]157[.]122[.]248
  • 34[.]31[.]88[.]250
  • 35[.]192[.]232[.]168
  • 45[.]148[.]10[.]18
  • 45[.]148[.]10[.]247
  • 51[.]195[.]39[.]149
  • 51[.]195[.]39[.]150
  • 52[.]173[.]161[.]248
  • 80[.]82[.]65[.]226
  • 103[.]168[.]66[.]101
  • 103[.]168[.]67[.]253
  • 103[.]215[.]74[.]26
  • 103[.]215[.]75[.]19
  • 103[.]215[.]75[.]66
  • 140[.]174[.]186[.]101

Exploit Script UserAgent

  • wp2shell
  • cve-2026-63030/1.0
  • rezwp2shell

อ้างอิง