Node.js xử lý lỗ hổng command injection dễ bị khai thác trên hệ điều hành Windows

WhiteHat Team

Administrators
Thành viên BQT
09/04/2020
85
554 bài viết
Node.js xử lý lỗ hổng command injection dễ bị khai thác trên hệ điều hành Windows
Lỗ hổng có mã định danh CVE-2024-27980, là lỗi command injection có thể cho phép kẻ tấn công thực thi mã độc ngay cả khi tùy chọn 'shell' đã được vô hiệu hóa.

1712910192482.png

Node.js là một môi trường chạy mã JavaScript phía máy chủ (server-side) được xây dựng trên JavaScript engine V8 của Google Chrome. Nó cho phép viết mã JavaScript để thực thi trên máy chủ, thay vì chỉ chạy trên trình duyệt web.

Nguyên nhân tồn tại lỗ hổng liên quan đến cách Node.js xử lý các tệp batch Windows khi thực thi mã thông qua các hàm 'child_process.spawn' hoặc 'child_process.spawnSync'.

Khi xâm nhập thành công, kẻ tấn công có thể thực thi mã từ xa trên hệ thống mục tiêu, giành quyền kiểm soát hệ thống bị xâm nhập, bao gồm khả năng cài đặt phần mềm độc hại, đánh cắp dữ liệu hoặc làm gián đoạn hoạt động.

Lỗ hổng này được đánh giá có thể bị khai thác, ảnh hưởng đến các bản cài đặt Node.js chạy trên hệ điều hành Windows và tồn tại trong các phiên bản Node.js (18.x, 20.x, 21.x). Vì vậy, quản trị viên cần:
  • Cập nhật các phiên bản mới nhất trên trang chủ chính thức của Node.js.
  • Nếu đang sử dụng 'child_process.spawn' hoặc các hàm liên quan, hãy xem xét cách xử lý đầu vào để đảm bảo các đối số dòng lệnh không thể bị sửa đổi.
  • Bổ sung thêm giải pháp xác thực và làm sạch dữ liệu.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Thẻ
command injection cve-2024-27980 node.js windows
Bên trên