ช่องโหว่ Protocol-Relative URLs ใน Angular

ทีมงาน Angular ได้ออกประกาศเตือนเกี่ยวกับช่องโหว่ใน HTTP Client ของเฟรมเวิร์ก ซึ่งเกิดจากการตรวจสอบ URL ที่ไม่สมบูรณ์ โดยปกติ Angular จะป้องกัน CSRF ด้วยการแนบ X-XSRF-TOKEN ไปกับ Request ที่ส่งไปยัง same-origin เท่านั้น แต่หากมีการใช้ URL ที่ขึ้นต้นด้วย // Angular จะเข้าใจผิดว่าเป็น same-origin และแนบ Token ไปด้วย ทำให้ข้อมูลรั่วไหลไปยังโดเมนที่ผู้โจมตีควบคุมได้

ผลกระทบและความเสี่ยง
หากผู้โจมตีสามารถบังคับให้แอปพลิเคชันส่ง Request ไปยังโดเมนที่ควบคุมโดยตนเองด้วยรูปแบบ //attacker.com พวกเขาจะได้รับ XSRF Token ที่ถูกต้อง และสามารถใช้มันเพื่อปลอมแปลงคำสั่งในระบบของผู้ใช้ได้ทันที เช่น การเปลี่ยนรหัสผ่าน การลบข้อมูล หรือการทำธุรกรรมที่ไม่ได้รับอนุญาต

ช่องโหว่นี้ถือเป็นการ ล้มเหลวของกลไกป้องกัน CSRF ที่มีอยู่ใน Angular และอาจส่งผลกระทบต่อเว็บแอปพลิเคชันจำนวนมากที่ยังไม่ได้อัปเดต

การแก้ไขและคำแนะนำ
Angular ได้ออกแพตช์แก้ไขแล้วในเวอร์ชัน v21.0.1, v20.3.14 และ v19.2.16 ผู้พัฒนาควรอัปเดตทันที หากไม่สามารถอัปเดตได้ในตอนนี้ ควรหลีกเลี่ยงการใช้ protocol-relative URLs และใช้เฉพาะ relative paths (/api/data) หรือ absolute URLs ที่เชื่อถือได้ (https://api.my-app.com) เท่านั้น

สรุปประเด็นสำคัญ
ช่องโหว่ CVE-2025-66035 ใน Angular HTTP Client
เกิดจากการใช้ Protocol-Relative URLs (//)
ทำให้ XSRF Token ถูกส่งไปยังโดเมนที่ไม่ปลอดภัย

ผลกระทบต่อผู้ใช้
ผู้โจมตีสามารถขโมย Token และทำ CSRF ได้
เสี่ยงต่อการปลอมแปลงคำสั่ง เช่น ลบข้อมูลหรือทำธุรกรรม

การแก้ไขจาก Angular
อัปเดตเป็น v21.0.1, v20.3.14 หรือ v19.2.16
ใช้เฉพาะ relative paths หรือ absolute URLs ที่เชื่อถือได้

คำเตือนสำหรับนักพัฒนา
หากยังใช้ Protocol-Relative URLs จะเสี่ยงต่อการรั่วไหลของ Token
การไม่อัปเดตแพตช์อาจเปิดช่องให้ผู้โจมตีเข้าควบคุมระบบได้

https://securityonline.info/angular-alert-protocol-relative-urls-leak-xsrf-tokens-cve-2025-66035/
⚠️ ช่องโหว่ Protocol-Relative URLs ใน Angular ทีมงาน Angular ได้ออกประกาศเตือนเกี่ยวกับช่องโหว่ใน HTTP Client ของเฟรมเวิร์ก ซึ่งเกิดจากการตรวจสอบ URL ที่ไม่สมบูรณ์ โดยปกติ Angular จะป้องกัน CSRF ด้วยการแนบ X-XSRF-TOKEN ไปกับ Request ที่ส่งไปยัง same-origin เท่านั้น แต่หากมีการใช้ URL ที่ขึ้นต้นด้วย // Angular จะเข้าใจผิดว่าเป็น same-origin และแนบ Token ไปด้วย ทำให้ข้อมูลรั่วไหลไปยังโดเมนที่ผู้โจมตีควบคุมได้ 🔐 ผลกระทบและความเสี่ยง หากผู้โจมตีสามารถบังคับให้แอปพลิเคชันส่ง Request ไปยังโดเมนที่ควบคุมโดยตนเองด้วยรูปแบบ //attacker.com พวกเขาจะได้รับ XSRF Token ที่ถูกต้อง และสามารถใช้มันเพื่อปลอมแปลงคำสั่งในระบบของผู้ใช้ได้ทันที เช่น การเปลี่ยนรหัสผ่าน การลบข้อมูล หรือการทำธุรกรรมที่ไม่ได้รับอนุญาต ช่องโหว่นี้ถือเป็นการ ล้มเหลวของกลไกป้องกัน CSRF ที่มีอยู่ใน Angular และอาจส่งผลกระทบต่อเว็บแอปพลิเคชันจำนวนมากที่ยังไม่ได้อัปเดต 🛠️ การแก้ไขและคำแนะนำ Angular ได้ออกแพตช์แก้ไขแล้วในเวอร์ชัน v21.0.1, v20.3.14 และ v19.2.16 ผู้พัฒนาควรอัปเดตทันที หากไม่สามารถอัปเดตได้ในตอนนี้ ควรหลีกเลี่ยงการใช้ protocol-relative URLs และใช้เฉพาะ relative paths (/api/data) หรือ absolute URLs ที่เชื่อถือได้ (https://api.my-app.com) เท่านั้น 📌 สรุปประเด็นสำคัญ ✅ ช่องโหว่ CVE-2025-66035 ใน Angular HTTP Client ➡️ เกิดจากการใช้ Protocol-Relative URLs (//) ➡️ ทำให้ XSRF Token ถูกส่งไปยังโดเมนที่ไม่ปลอดภัย ✅ ผลกระทบต่อผู้ใช้ ➡️ ผู้โจมตีสามารถขโมย Token และทำ CSRF ได้ ➡️ เสี่ยงต่อการปลอมแปลงคำสั่ง เช่น ลบข้อมูลหรือทำธุรกรรม ✅ การแก้ไขจาก Angular ➡️ อัปเดตเป็น v21.0.1, v20.3.14 หรือ v19.2.16 ➡️ ใช้เฉพาะ relative paths หรือ absolute URLs ที่เชื่อถือได้ ‼️ คำเตือนสำหรับนักพัฒนา ⛔ หากยังใช้ Protocol-Relative URLs จะเสี่ยงต่อการรั่วไหลของ Token ⛔ การไม่อัปเดตแพตช์อาจเปิดช่องให้ผู้โจมตีเข้าควบคุมระบบได้ https://securityonline.info/angular-alert-protocol-relative-urls-leak-xsrf-tokens-cve-2025-66035/
SECURITYONLINE.INFO
Angular Alert: Protocol-Relative URLs Leak XSRF Tokens (CVE-2025-66035)
CVE-2025-66035: Angular protocol-relative URLs leak XSRF tokens, bypassing CSRF protection. Update to v19.2.16, v20.3.14, or v21.0.1 now.
0 ความคิดเห็น 0 การแบ่งปัน 14 มุมมอง 0 รีวิว