ช่องโหว่วิกฤตหลายรายการในแพลตฟอร์ม n8n ซึ่งเป็นแพลตฟอร์ม Open Source สำหรับการจัดการ Workflow อัตโนมัติที่ได้รับความนิยม ได้ถูกเปิดเผยพร้อมกับ Public Exploits ที่สามารถใช้หลบหนีจากสภาพแวดล้อมที่ถูกจำกัดและเข้าควบคุมเซิร์ฟเวอร์โฮสต์ได้อย่างสมบูรณ์
Severity: วิกฤต
System Impact:
- แพลตฟอร์ม n8n Open-Source Workflow Automation
- เซิร์ฟเวอร์โฮสต์ที่รัน n8n
- ออบเจกต์ Node.js Global
- บริการคลัสเตอร์ภายใน (ในสภาพแวดล้อมแบบ Multi-tenant)
- บัญชี Cloud ที่เชื่อมต่อ
- Workflow ของ AI
Technical Attack Steps:
- ผู้ใช้ที่ได้รับการรับรองสิทธิ์ (Authenticated User) สร้างหรือแก้ไข Workflow บนแพลตฟอร์ม n8n
- ใช้ประโยชน์จากช่องโหว่ CVE-2026-25049 ซึ่งเกิดจากการทำ Sandboxing โดย AST ที่ไม่สมบูรณ์และ Sandboxing ที่อ่อนแอของนิพจน์ JavaScript ฝั่งเซิร์ฟเวอร์ที่เขียนโดยผู้ใช้ใน Workflow
- หลีกเลี่ยงการแพตช์สำหรับช่องโหว่ CVE-2025-68613
- ใช้ช่องโหว่ Type-confusion เนื่องจากฟังก์ชัน Sanitization ที่สันนิษฐานว่าคีย์ในการเข้าถึง Property เป็น String ซึ่งไม่ได้มีการบังคับใช้ขณะรันไทม์
- ทำการหลบหนี Sandbo (Sandbox Escape) และเข้าถึงออบเจกต์ Node.js Global
- ดำเนินการ Remote Code Execution (RCE) โดยไม่จำกัดบนเซิร์ฟเวอร์ n8n โดยอาจใช้ Function Constructor
- ทำให้สามารถรันคำสั่งระบบโดยพลการ, ขโมยข้อมูลประจำตัวที่จัดเก็บไว้/ความลับ (API keys, OAuth tokens) และไฟล์การกำหนดค่าที่ละเอียดอ่อน
- เปิดใช้งานการเข้าถึงระบบไฟล์และระบบภายใน, หมุนเวียนไปยังบัญชี Cloud ที่เชื่อมต่อ และทำการโจมตี Workflow ของ AI (ดักจับ Prompts, แก้ไข Responses, เปลี่ยนเส้นทางการรับส่งข้อมูล)
- ในสภาพแวดล้อมแบบ Multi-tenant อาจสามารถหมุนเวียนไปยังข้อมูลของ Tenants รายอื่นได้
Recommendations:
Short Term:
- อัปเดตแพลตฟอร์ม n8n เป็นเวอร์ชันล่าสุด (ปัจจุบันคือ 1.123.17 และ 2.5.2)
- หากไม่สามารถอัปเดตได้ทันที: จำกัดสิทธิ์การสร้างและแก้ไข Workflow ให้กับผู้ใช้ที่เชื่อถือได้เท่านั้น
- ติดตั้ง n8n ในสภาพแวดล้อมที่มีการเสริมความแข็งแกร่ง (Hardened Environment) ด้วยสิทธิ์ระบบปฏิบัติการที่จำกัดและการเข้าถึงเครือข่าย
Long Term:
- ทำการหมุนเวียน ‘N8N_ENCRYPTION_KEY’
- ทำการหมุนเวียนข้อมูลประจำตัวทั้งหมดที่จัดเก็บอยู่บนเซิร์ฟเวอร์
- ตรวจสอบ Workflow เพื่อหานิพจน์ที่น่าสงสัย
Share this content: