Windows PowerShell hiện thông tin cảnh báo khi chạy tập lệnh Invoke-WebRequest

16:12 | 12/12/2025

Microsoft xác nhận Windows PowerShell hiện đưa ra cảnh báo khi chạy các tập lệnh sử dụng cmdlet Invoke-WebRequest để tải xuống nội dung web, nhằm ngăn chặn việc thực thi mã có khả năng gây rủi ro.

Theo giải thích của Microsoft, điều này sẽ giảm thiểu lỗ hổng thực thi mã từ xa PowerShell có mức độ nghiêm trọng cao (CVE-2025-54100), chủ yếu ảnh hưởng đến môi trường do doanh nghiệp hoặc tổ chức sử dụng tập lệnh PowerShell để tự động hóa, vì tập lệnh PowerShell không được sử dụng phổ biến bên ngoài các môi trường như vậy.

Cảnh báo mới đã thêm vào Windows PowerShell 5.1, phiên bản PowerShell cài đặt theo mặc định trên hệ thống Windows 10 và Windows 11, được thiết kế để thêm cùng một quy trình phân tích web an toàn có trong PowerShell 7.

PowerShell sẽ cảnh báo rằng, nếu không có biện pháp phòng ngừa, các tập lệnh chứa trong các trang web được tải xuống bằng lệnh “Invoke-WebRequest” có thể thực thi trên hệ thống của người dùng. Theo mặc định, nếu nhấn “Enter” hoặc chọn “No”, thao tác sẽ bị hủy và PowerShell sẽ đề xuất chạy lại lệnh với tham số “-UseBasicParsing” để xử lý an toàn hơn.

Khi chọn “Yes”, PowerShell sẽ phân tích cấu trúc trang bằng phương pháp cũ hơn (HTML), cho phép nội dung và các tập lệnh nhúng được tải như trước. Hay nói cách khác, chọn “Yes” nghĩa là người dùng chấp nhận rủi ro, trong khi chọn “No” sẽ dừng hành động bảo vệ hệ thống.

Microsoft giải thích: “Windows PowerShell 5.1 hiện hiển thị prompt xác nhận bảo mật khi sử dụng lệnh Invoke-WebRequest để truy xuất các trang web không có tham số đặc biệt. Prompt này cảnh báo các tập lệnh trong trang có thể chạy trong quá trình phân tích cấu trúc và khuyến nghị nên sử dụng tham số -UseBasicParsing an toàn hơn, để tránh bất kỳ tập lệnh nào được thực thi. Người dùng phải chọn tiếp tục hoặc hủy thao tác”.

Sau khi cài đặt bản cập nhật KB5074204, quản trị viên sẽ thấy thông báo xác nhận sau cảnh báo về nguy cơ thực thi mã tập lệnh:

Thông tin cảnh báo

Để tránh tình trạng các tập lệnh tự động hóa bị treo cho đến khi được xác nhận thủ công, người dùng nên cập nhật các tập lệnh của mình để sử dụng tham số an toàn UseBasicParsing một cách rõ ràng.

Điều quan trọng cần lưu ý là trong PowerShell, lệnh “curl” được đặt tên là lệnh cmdlet Invoke-WebRequest, do đó người dùng cũng sẽ thấy những cảnh báo mới này khi chạy các tập lệnh gọi lệnh curl.

Microsoft lưu ý rằng hầu hết các tập lệnh và PowerShell sử dụng lệnh Invoke-WebRequest sẽ tiếp tục hoạt động mà không cần thay đổi đổi nhiều. Ví dụ, các tập lệnh chỉ tải xuống nội dung hoặc hoạt động với nội dung phản hồi dưới dạng văn bản hoặc dữ liệu sẽ không bị ảnh hưởng và không cần thay đổi.

Để lại bình luận