Formbricks ซึ่งเป็นแพลตฟอร์มโอเพ่นซอร์สสำหรับสร้างแบบสำรวจในแอปและเว็บไซต์ กำลังเผชิญกับช่องโหว่ด้านความปลอดภัยที่ร้ายแรงระดับ CVSS 9.4 โดยช่องโหว่นี้ถูกระบุเป็น CVE-2025-59934 และเปิดโอกาสให้ผู้โจมตีสามารถรีเซ็ตรหัสผ่านของผู้ใช้ได้โดยไม่ต้องมีสิทธิ์ใด ๆ เพียงแค่รู้ user.id ของเหยื่อ
สาเหตุของช่องโหว่มาจากการตรวจสอบ JSON Web Token (JWT) ที่ผิดพลาด โดยระบบใช้ฟังก์ชัน jwt.decode ซึ่งแค่ถอดรหัส payload โดยไม่ตรวจสอบลายเซ็น (signature), วันหมดอายุ, ผู้สร้าง หรือกลุ่มเป้าหมายของ token เลย ทำให้ผู้โจมตีสามารถสร้าง JWT ปลอมที่มี header เป็น alg: “none” แล้วส่งไปยัง endpoint สำหรับรีเซ็ตรหัสผ่านได้ทันที
ช่องโหว่นี้ส่งผลกระทบทั้งในส่วนของการยืนยันอีเมลและการรีเซ็ตรหัสผ่าน เพราะทั้งสองฟังก์ชันใช้ validator เดียวกันที่ไม่มีการตรวจสอบความถูกต้องของ token อย่างแท้จริง หากแฮกเกอร์รู้ user.id ของเหยื่อ เช่น cmfuc8pk60000vxfjud7bcl2w ก็สามารถสร้าง JWT ปลอมและส่งไปยัง /auth/forgot-password/reset?token=<JWT> ได้ทันที ระบบจะยอมรับ token นั้นและรีเซ็ตรหัสผ่านโดยไม่ถามอะไรเลย
Formbricks ได้ออกแพตช์แก้ไขในเวอร์ชัน 4.0.1 และแนะนำให้ผู้ใช้งานอัปเดตทันที พร้อมคำแนะนำเพิ่มเติม เช่น การจำกัดการเข้าถึง endpoint ที่เกี่ยวข้อง การตรวจสอบกิจกรรมรีเซ็ตรหัสผ่านที่ผิดปกติ และการเปลี่ยนรหัสผ่านของผู้ใช้หากสงสัยว่ามีการโจมตีเกิดขึ้น
ข้อมูลสำคัญจากข่าว
ช่องโหว่ CVE-2025-59934 มีระดับความรุนแรง CVSS 9.4 (Critical)
เกิดจากการใช้ jwt.decode โดยไม่ตรวจสอบลายเซ็นหรือข้อมูลสำคัญอื่น
ผู้โจมตีสามารถสร้าง JWT ปลอมด้วย alg: “none” และรีเซ็ตรหัสผ่านของผู้ใช้ได้
ช่องโหว่ส่งผลกระทบทั้งการยืนยันอีเมลและการรีเซ็ตรหัสผ่าน
หากรู้ user.id ของเหยื่อ ก็สามารถเข้ายึดบัญชีได้ทันที
Formbricks ได้ออกแพตช์แก้ไขในเวอร์ชัน 4.0.1
แนะนำให้จำกัดการเข้าถึง endpoint และตรวจสอบกิจกรรมผิดปกติ
มีการเผยแพร่ proof-of-concept ที่แสดงวิธีโจมตีอย่างชัดเจน
ข้อมูลเสริมจากภายนอก
JWT เป็นมาตรฐานการยืนยันตัวตนที่นิยมใช้ในเว็บแอปสมัยใหม่
การใช้ alg: “none” เป็นเทคนิคที่เคยถูกใช้โจมตีในหลายระบบมาก่อน
การตรวจสอบ JWT ควรใช้ jwt.verify แทน jwt.decode เพื่อความปลอดภัย
ช่องโหว่ลักษณะนี้สามารถนำไปสู่การยึดบัญชี (account takeover) ได้ทันที
การใช้ validator เดียวกันในหลายฟังก์ชันเป็นความเสี่ยงที่ควรหลีกเลี่ยง
https://securityonline.info/cve-2025-59934-critical-flaw-in-formbricks-allows-unauthorized-password-resets-via-forged-jwt-tokens/
สาเหตุของช่องโหว่มาจากการตรวจสอบ JSON Web Token (JWT) ที่ผิดพลาด โดยระบบใช้ฟังก์ชัน jwt.decode ซึ่งแค่ถอดรหัส payload โดยไม่ตรวจสอบลายเซ็น (signature), วันหมดอายุ, ผู้สร้าง หรือกลุ่มเป้าหมายของ token เลย ทำให้ผู้โจมตีสามารถสร้าง JWT ปลอมที่มี header เป็น alg: “none” แล้วส่งไปยัง endpoint สำหรับรีเซ็ตรหัสผ่านได้ทันที
ช่องโหว่นี้ส่งผลกระทบทั้งในส่วนของการยืนยันอีเมลและการรีเซ็ตรหัสผ่าน เพราะทั้งสองฟังก์ชันใช้ validator เดียวกันที่ไม่มีการตรวจสอบความถูกต้องของ token อย่างแท้จริง หากแฮกเกอร์รู้ user.id ของเหยื่อ เช่น cmfuc8pk60000vxfjud7bcl2w ก็สามารถสร้าง JWT ปลอมและส่งไปยัง /auth/forgot-password/reset?token=<JWT> ได้ทันที ระบบจะยอมรับ token นั้นและรีเซ็ตรหัสผ่านโดยไม่ถามอะไรเลย
Formbricks ได้ออกแพตช์แก้ไขในเวอร์ชัน 4.0.1 และแนะนำให้ผู้ใช้งานอัปเดตทันที พร้อมคำแนะนำเพิ่มเติม เช่น การจำกัดการเข้าถึง endpoint ที่เกี่ยวข้อง การตรวจสอบกิจกรรมรีเซ็ตรหัสผ่านที่ผิดปกติ และการเปลี่ยนรหัสผ่านของผู้ใช้หากสงสัยว่ามีการโจมตีเกิดขึ้น
ข้อมูลสำคัญจากข่าว
ช่องโหว่ CVE-2025-59934 มีระดับความรุนแรง CVSS 9.4 (Critical)
เกิดจากการใช้ jwt.decode โดยไม่ตรวจสอบลายเซ็นหรือข้อมูลสำคัญอื่น
ผู้โจมตีสามารถสร้าง JWT ปลอมด้วย alg: “none” และรีเซ็ตรหัสผ่านของผู้ใช้ได้
ช่องโหว่ส่งผลกระทบทั้งการยืนยันอีเมลและการรีเซ็ตรหัสผ่าน
หากรู้ user.id ของเหยื่อ ก็สามารถเข้ายึดบัญชีได้ทันที
Formbricks ได้ออกแพตช์แก้ไขในเวอร์ชัน 4.0.1
แนะนำให้จำกัดการเข้าถึง endpoint และตรวจสอบกิจกรรมผิดปกติ
มีการเผยแพร่ proof-of-concept ที่แสดงวิธีโจมตีอย่างชัดเจน
ข้อมูลเสริมจากภายนอก
JWT เป็นมาตรฐานการยืนยันตัวตนที่นิยมใช้ในเว็บแอปสมัยใหม่
การใช้ alg: “none” เป็นเทคนิคที่เคยถูกใช้โจมตีในหลายระบบมาก่อน
การตรวจสอบ JWT ควรใช้ jwt.verify แทน jwt.decode เพื่อความปลอดภัย
ช่องโหว่ลักษณะนี้สามารถนำไปสู่การยึดบัญชี (account takeover) ได้ทันที
การใช้ validator เดียวกันในหลายฟังก์ชันเป็นความเสี่ยงที่ควรหลีกเลี่ยง
https://securityonline.info/cve-2025-59934-critical-flaw-in-formbricks-allows-unauthorized-password-resets-via-forged-jwt-tokens/
Formbricks ซึ่งเป็นแพลตฟอร์มโอเพ่นซอร์สสำหรับสร้างแบบสำรวจในแอปและเว็บไซต์ กำลังเผชิญกับช่องโหว่ด้านความปลอดภัยที่ร้ายแรงระดับ CVSS 9.4 โดยช่องโหว่นี้ถูกระบุเป็น CVE-2025-59934 และเปิดโอกาสให้ผู้โจมตีสามารถรีเซ็ตรหัสผ่านของผู้ใช้ได้โดยไม่ต้องมีสิทธิ์ใด ๆ เพียงแค่รู้ user.id ของเหยื่อ
สาเหตุของช่องโหว่มาจากการตรวจสอบ JSON Web Token (JWT) ที่ผิดพลาด โดยระบบใช้ฟังก์ชัน jwt.decode ซึ่งแค่ถอดรหัส payload โดยไม่ตรวจสอบลายเซ็น (signature), วันหมดอายุ, ผู้สร้าง หรือกลุ่มเป้าหมายของ token เลย ทำให้ผู้โจมตีสามารถสร้าง JWT ปลอมที่มี header เป็น alg: “none” แล้วส่งไปยัง endpoint สำหรับรีเซ็ตรหัสผ่านได้ทันที
ช่องโหว่นี้ส่งผลกระทบทั้งในส่วนของการยืนยันอีเมลและการรีเซ็ตรหัสผ่าน เพราะทั้งสองฟังก์ชันใช้ validator เดียวกันที่ไม่มีการตรวจสอบความถูกต้องของ token อย่างแท้จริง หากแฮกเกอร์รู้ user.id ของเหยื่อ เช่น cmfuc8pk60000vxfjud7bcl2w ก็สามารถสร้าง JWT ปลอมและส่งไปยัง /auth/forgot-password/reset?token=<JWT> ได้ทันที ระบบจะยอมรับ token นั้นและรีเซ็ตรหัสผ่านโดยไม่ถามอะไรเลย
Formbricks ได้ออกแพตช์แก้ไขในเวอร์ชัน 4.0.1 และแนะนำให้ผู้ใช้งานอัปเดตทันที พร้อมคำแนะนำเพิ่มเติม เช่น การจำกัดการเข้าถึง endpoint ที่เกี่ยวข้อง การตรวจสอบกิจกรรมรีเซ็ตรหัสผ่านที่ผิดปกติ และการเปลี่ยนรหัสผ่านของผู้ใช้หากสงสัยว่ามีการโจมตีเกิดขึ้น
✅ ข้อมูลสำคัญจากข่าว
➡️ ช่องโหว่ CVE-2025-59934 มีระดับความรุนแรง CVSS 9.4 (Critical)
➡️ เกิดจากการใช้ jwt.decode โดยไม่ตรวจสอบลายเซ็นหรือข้อมูลสำคัญอื่น
➡️ ผู้โจมตีสามารถสร้าง JWT ปลอมด้วย alg: “none” และรีเซ็ตรหัสผ่านของผู้ใช้ได้
➡️ ช่องโหว่ส่งผลกระทบทั้งการยืนยันอีเมลและการรีเซ็ตรหัสผ่าน
➡️ หากรู้ user.id ของเหยื่อ ก็สามารถเข้ายึดบัญชีได้ทันที
➡️ Formbricks ได้ออกแพตช์แก้ไขในเวอร์ชัน 4.0.1
➡️ แนะนำให้จำกัดการเข้าถึง endpoint และตรวจสอบกิจกรรมผิดปกติ
➡️ มีการเผยแพร่ proof-of-concept ที่แสดงวิธีโจมตีอย่างชัดเจน
✅ ข้อมูลเสริมจากภายนอก
➡️ JWT เป็นมาตรฐานการยืนยันตัวตนที่นิยมใช้ในเว็บแอปสมัยใหม่
➡️ การใช้ alg: “none” เป็นเทคนิคที่เคยถูกใช้โจมตีในหลายระบบมาก่อน
➡️ การตรวจสอบ JWT ควรใช้ jwt.verify แทน jwt.decode เพื่อความปลอดภัย
➡️ ช่องโหว่ลักษณะนี้สามารถนำไปสู่การยึดบัญชี (account takeover) ได้ทันที
➡️ การใช้ validator เดียวกันในหลายฟังก์ชันเป็นความเสี่ยงที่ควรหลีกเลี่ยง
https://securityonline.info/cve-2025-59934-critical-flaw-in-formbricks-allows-unauthorized-password-resets-via-forged-jwt-tokens/
0 ความคิดเห็น
0 การแบ่งปัน
158 มุมมอง
0 รีวิว