Một lỗ hổng bảo mật nghiêm trọng, được theo dõi với mã CVE-2025-49826, đã được phát hiện và khắc phục trong framework web phổ biến dựa trên React, Next.js.
Tổng quan về Lỗ hổng CVE-2025-49826
Lỗ hổng này ảnh hưởng đến các phiên bản Next.js >=15.1.0 và <15.1.8. Kẻ tấn công có thể khai thác lỗi cache poisoning (đầu độc bộ nhớ đệm), có khả năng dẫn đến tình trạng Denial of Service (DoS) – từ chối dịch vụ cho các ứng dụng bị ảnh hưởng. Thông tin chi tiết về lỗ hổng đã được Vercel, nhà phát triển Next.js, công bố trên trang changelog của họ.
Chi tiết Kỹ thuật và Cơ chế Khai thác
Lỗ hổng CVE-2025-49826 bắt nguồn từ việc xử lý không đúng cách các phản hồi HTTP 204 (No Content) trong một số kịch bản lưu bộ nhớ đệm nhất định. Cụ thể, dưới các điều kiện đặc biệt, một phản hồi 204 No Content có thể bị lưu vào bộ nhớ đệm cho các trang tĩnh (static pages) của ứng dụng Next.js.
Một khi phản hồi trống này được lưu vào bộ nhớ đệm, nó sẽ được phục vụ cho tất cả người dùng sau đó khi họ cố gắng truy cập trang bị ảnh hưởng. Điều này đồng nghĩa với việc nội dung thực của trang trở nên không thể truy cập được, gây ra tình trạng ngừng hoạt động dịch vụ (service blackout) cho trang đó.
Điều kiện Khai thác
Để lỗ hổng này có thể bị khai thác, các điều kiện sau đây phải đồng thời xảy ra:
- Ứng dụng sử dụng phiên bản Next.js nằm trong khoảng >=15.1.0 và <15.1.8.
- Trong quá trình hoạt động, ứng dụng tạo ra một phản hồi HTTP 204 No Content.
- Hệ thống bộ nhớ đệm của ứng dụng hoặc của môi trường triển khai cho phép phản hồi 204 No Content này được lưu vào bộ nhớ đệm cho một trang tĩnh hoặc trang được kết xuất phía máy chủ (SSR page).
Nếu những điều kiện này được thỏa mãn, kẻ tấn công có thể “đầu độc” bộ nhớ đệm với một phản hồi 204. Kết quả là, tất cả người dùng tiếp theo sẽ nhận được phản hồi trống đó, dẫn đến từ chối dịch vụ cho các trang tĩnh hoặc SSR bị ảnh hưởng.
Mức độ Nghiêm trọng
Lỗ hổng này được đánh giá với điểm CVSS (Common Vulnerability Scoring System) là 7.5, cho thấy mức độ nghiêm trọng cao (High Severity). Điểm CVSS phản ánh tiềm năng gây ảnh hưởng đáng kể đến tính khả dụng của ứng dụng.
Khắc phục và Khuyến nghị Nâng cấp
Đội ngũ phát triển Next.js đã phản ứng nhanh chóng để xử lý lỗ hổng này. Bản vá lỗi đã được phát hành trong phiên bản Next.js 15.1.8.
Khuyến nghị Nâng cấp
- Người dùng đang triển khai các phiên bản Next.js tự lưu trữ (self-hosted) hoặc tại chỗ (on-premises) trong khoảng 15.1.0 đến 15.1.7 được khuyến nghị nâng cấp ngay lập tức lên phiên bản 15.1.8.
- Đối với những người dùng đang sử dụng các phiên bản chính cũ hơn (earlier major versions), cần đảm bảo rằng họ đang ở phiên bản 15.0.4 hoặc thấp hơn để tránh các vấn đề tiềm ẩn liên quan đến cách xử lý phản hồi 204 No Content trong các kiến trúc bộ nhớ đệm tương tự.
Điều quan trọng cần lưu ý là các khách hàng đang lưu trữ ứng dụng trên nền tảng Vercel không bị ảnh hưởng bởi vấn đề này. Điều này cho thấy Vercel đã có các biện pháp bảo vệ hoặc cấu hình bộ nhớ đệm riêng để ngăn chặn việc khai thác lỗ hổng này trên cơ sở hạ tầng của họ.
Việc cập nhật thường xuyên các bản vá bảo mật là yếu tố thiết yếu để bảo vệ các ứng dụng web khỏi các mối đe dọa mới nổi.










