-
09/04/2020
-
93
-
600 bài viết
Node.js vá lỗ hổng nghiêm trọng cho phép chiếm quyền điều khiển từ xa
Đội ngũ đứng sau Node.js hôm qua ra khuyến cáo bảo mật đề nghị người dùng cập nhật phiên bản mới nhất để ngăn chặn hàng loạt lỗi.
Lỗ hổng đầu tiên (CVE-2021-3672/CVE-2021-2293) xuất phát từ việc xử lý không đúng các ký tự không điển hình trong tên miền, dẫn đến nguy cơ khai thác RCE hoặc XSS.
Lỗ hổng cũng có thể gây lỗi ứng dụng do không thể xác nhận input (đầu vào) của hostname (tên máy chủ) được trả về bởi các Domain Name Server trong thư viện Node.js DNS.
Điều này có thể khiến việc output (xuất ra) hostname không chính xác - gây nguy cơ chiếm quyền điều khiển miền – và tạo ra hàng loạt lỗi trên các ứng dụng sử dụng Node.js.
Lỗ hổng thứ hai (CVE-2021-22939) xuất phát từ tình trạng xác thực không đầy đủ tham số “rejectUnauthorized”.
Nếu API HTTPS trên Node.js được sử dụng không đúng cách và tham số “undefined” bị nhận nhầm là tham số “rejectUnauthorized”, khi đó sẽ không có thông báo lỗi nào được trả lại và kết nối đến máy chủ có chứng chỉ đã hết hạn sẽ được chấp nhận. Lỗ hổng được đánh giá có mức nghiêm trọng thấp.
Cuối cùng là lỗ hổng use-after-free (CVE-2021-22930) có thể cho phép kẻ tấn công khai thác lỗi bộ nhớ để thay đổi hành vi của quy trình.
Người dùng nên nâng cấp lên phiên bản Node.js mới nhất để được bảo vệ. Xem thêm các thông tin tại blog Node.js.
Lỗ hổng đầu tiên (CVE-2021-3672/CVE-2021-2293) xuất phát từ việc xử lý không đúng các ký tự không điển hình trong tên miền, dẫn đến nguy cơ khai thác RCE hoặc XSS.
Lỗ hổng cũng có thể gây lỗi ứng dụng do không thể xác nhận input (đầu vào) của hostname (tên máy chủ) được trả về bởi các Domain Name Server trong thư viện Node.js DNS.
Điều này có thể khiến việc output (xuất ra) hostname không chính xác - gây nguy cơ chiếm quyền điều khiển miền – và tạo ra hàng loạt lỗi trên các ứng dụng sử dụng Node.js.
Lỗ hổng thứ hai (CVE-2021-22939) xuất phát từ tình trạng xác thực không đầy đủ tham số “rejectUnauthorized”.
Nếu API HTTPS trên Node.js được sử dụng không đúng cách và tham số “undefined” bị nhận nhầm là tham số “rejectUnauthorized”, khi đó sẽ không có thông báo lỗi nào được trả lại và kết nối đến máy chủ có chứng chỉ đã hết hạn sẽ được chấp nhận. Lỗ hổng được đánh giá có mức nghiêm trọng thấp.
Cuối cùng là lỗ hổng use-after-free (CVE-2021-22930) có thể cho phép kẻ tấn công khai thác lỗi bộ nhớ để thay đổi hành vi của quy trình.
Người dùng nên nâng cấp lên phiên bản Node.js mới nhất để được bảo vệ. Xem thêm các thông tin tại blog Node.js.
Theo Portswigger