Next.js GHSA-673q: lỗi RCE trong use cache cần vá ngay
Cảnh báo mức nghiêm trọng 9,5 ảnh hưởng Next.js 16.0.0–16.4.0 trong một điều kiện Cache Components cụ thể. Đội phát triển cần nâng lên 16.4.1 và rà triển khai.

Một ứng dụng Next.js chạy trên VPS thường có quyền đọc biến môi trường, kết nối cơ sở dữ liệu và ghi vào hệ thống tệp. Vì vậy, lỗi cho phép thực thi mã từ xa không chỉ ảnh hưởng trang web mà còn có thể mở đường tới khóa API và dữ liệu phía sau. Ngày 22/10/2026, GitHub Advisory Database công bố bản đã duyệt của GHSA-673q-mjm6-r5xr cho Next.js.
Sự kiện mới là gì?
Cảnh báo GitHub ghi nhận upstream công bố ngày 14/10, nhưng được GitHub Advisory Database xuất bản, duyệt và cập nhật ngày 22/10/2026. Đây là lỗi đã có từ trước được đưa vào cơ sở dữ liệu ngày 22, không phải lỗ hổng vừa xuất hiện trong mã cùng ngày.
Lỗi được xếp mức Critical, CVSS v4 là 9,5. Phạm vi xác nhận là gói next từ 16.0.0 đến 16.4.0; bản đã sửa là 16.4.1. Ứng dụng cần dùng App Router với Cache Components và có hàm use cache trả về nhiều typed array — mảng nhị phân có kiểu như Uint8Array — thì mới đáp ứng điều kiện khai thác được mô tả.
Điều kiện ảnh hưởng cần đọc đúng
| Tình huống | Đánh giá ban đầu | Hành động |
|---|---|---|
| Next.js 16.0.0–16.4.0, App Router, Cache Components | Thuộc dải bị ảnh hưởng | Nâng lên 16.4.1 ngay |
Có use cache trả nhiều typed array | Khớp điều kiện cụ thể | Ưu tiên cao, cô lập nếu chưa thể vá |
| Next.js 15 hoặc cũ hơn | Không thuộc dải advisory này | Vẫn kiểm tra advisory khác |
| Đã dùng Next.js 16.4.1 | Bản vá được nêu | Xác minh image và tiến trình thật đã đổi |
GitHub cho biết không có biện pháp giảm thiểu đã biết cho ứng dụng có kiểu hàm bị ảnh hưởng và khuyến nghị nâng cấp ngay, kể cả khi chưa tìm thấy hàm tương tự. Cảnh báo không công bố bằng chứng lỗ hổng đang bị khai thác thực tế, vì vậy không nên khẳng định máy chủ đã bị xâm nhập chỉ vì chạy phiên bản cũ.
Checklist cho đội phát triển và vận hành
- Xác định phiên bản thật trong file khóa và container bằng
npm ls nexthoặc lệnh tương đương của trình quản lý gói. - Tìm cấu hình Cache Components cùng các hàm
use cache; ghi nhận hàm nào trảUint8Array,ArrayBufferhoặc nhiều typed array. - Tạo nhánh cập nhật lên Next.js 16.4.1, cài lại phụ thuộc từ file khóa và chạy kiểm thử App Router, cache, tải tệp cùng API.
- Build image mới không dùng cache cũ; kiểm tra digest image và phiên bản trong tiến trình đang phục vụ khách hàng.
- Luân chuyển khóa truy cập nếu log hoặc chỉ báo cho thấy tiến trình từng thực thi lệnh lạ; không luân chuyển hàng loạt khi chưa có căn cứ.
- Rà log tiến trình, thay đổi tệp, tiến trình con và kết nối ra ngoài; lưu bằng chứng trước khi dọn nếu có dấu hiệu bất thường.
WAF có thể giảm một phần lưu lượng đáng ngờ nhưng không thay thế bản vá. Lỗi thuộc nhóm giải tuần tự hóa dữ liệu không đáng tin; một quy tắc HTTP tổng quát khó đảm bảo chặn mọi biến thể mà không làm hỏng yêu cầu hợp lệ.
Ảnh hưởng với ứng dụng tự host tại Việt Nam
Ứng dụng tự host trên VPS hoặc Kubernetes cần kiểm tra cả kho mã lẫn artifact đang chạy. Nâng package.json nhưng không build lại image sẽ không thay đổi tiến trình. Với nhiều replica, nên cập nhật từng nhóm, kiểm tra lỗi 5xx, cache hit và thời gian phản hồi rồi mới mở rộng.
Nếu ứng dụng chạy cùng tài khoản với dịch vụ khác, hãy tách quyền hệ điều hành, giới hạn biến môi trường và mạng ra ngoài. Các lớp này không chữa lỗ hổng nhưng giảm phạm vi thiệt hại nếu một tiến trình web bị chiếm quyền.
Câu hỏi thường gặp
GHSA-673q có mã CVE chưa?
Tại thời điểm cảnh báo được đọc, GitHub ghi “No known CVE” và dùng mã GHSA-673q-mjm6-r5xr.
Không dùng typed array có cần nâng cấp không?
Có. GitHub khuyến nghị nâng ngay cả khi ứng dụng không có hàm tương tự, vì bản 16.4.1 là bản đã sửa được xác nhận.
Có bằng chứng khai thác thực tế không?
Cảnh báo không nêu bằng chứng khai thác thực tế. Hãy vá và rà dấu hiệu thay vì kết luận máy chủ đã bị tấn công.
Nguồn tham khảo
GitHub Advisory Database: GHSA-673q-mjm6-r5xr, cập nhật ngày 22/10/2026; bản đã sửa Next.js 16.4.1.
Bước tiếp theo
Đội Next.js nên chuẩn bị phiên bản ứng dụng, file khóa, cách triển khai và cửa sổ bảo trì. Gửi các thông tin đã che khóa bí mật qua trang Thuê Cloud VPS để trao đổi cấu hình kiểm thử và phương án triển khai lại; không cần nâng CPU hoặc RAM nếu nút thắt chỉ là cập nhật phần mềm.
Cần máy chủ cho workload này?
NOC thuemaychu.vn hỗ trợ chọn CPU, GPU và băng thông. PoC trong 24 giờ.
Bài viết liên quan
Bảo mậtBa lỗ hổng MCP TypeScript SDK: cách kiểm tra máy chủ HTTP
Ba cảnh báo mức cao của MCP TypeScript SDK liên quan tách phiên, cạn bộ nhớ và giao nhầm phản hồi. Nâng phiên bản là cần thiết nhưng có lỗi còn đòi hỏi sửa cấu hình, kiến trúc.
Bảo mậtCVE-2026-105192 trong LMCache: kiểm tra cụm LLM và vá
LMCache 0.3.9 đến 0.5.5 có thể bị thực thi lệnh từ xa nếu transport của chế độ multiprocess mở ra mạng. Bài viết giúp đội AI xác định đúng điều kiện rủi ro, nâng cấp đồng bộ lên 0.5.6 và rà cụm GPU an toàn.
Bảo mậtDebian vá Apache HTTP Server: kiểm tra VPS và cập nhật
DSA-6569-1 xử lý nhiều lỗ hổng Apache HTTP Server trên Debian 13. Bài viết giúp quản trị VPS xác định phiên bản, đánh giá cấu hình chịu tác động và cập nhật có kiểm soát.