Phát hiện lỗ hổng nghiêm trọng PHP Composer cho phép thực thi lệnh tùy ý
Hai lỗ hổng bảo mật mức độ cao vừa được phát hiện trong Composer - trình quản lý gói phần mềm PHP phổ biến. Tin tặc có thể khai thác để thực thi lệnh tùy ý trên hệ thống mục tiêu. Các bản vá đã được phát hành khẩn cấp.

Cộng đồng an ninh mạng đang đặt trong tình trạng báo động cao sau khi phát hiện hai lỗ hổng bảo mật nghiêm trọng trong Composer, một trong những trình quản lý gói phần mềm quan trọng nhất của PHP. Những lỗ hổng này có thể cho phép kẻ tấn công thực thi các lệnh tùy ý trên hệ thống, tạo ra mối đe dọa lớn cho hàng triệu ứng dụng web trên toàn cầu. Sự việc một lần nữa nhấn mạnh tầm quan trọng của việc cập nhật bảo mật thường xuyên trong quá trình phát triển phần mềm.
Chi tiết sự việc
Hai lỗ hổng được phát hiện đều liên quan đến tính năng command injection (chèn lệnh) trong driver Perforce VCS của Composer. Lỗ hổng đầu tiên được mã hóa CVE-2026-40176 với điểm CVSS đáng báo động, cho thấy mức độ nguy hiểm cao của vấn đề này. Perforce VCS là một hệ thống kiểm soát phiên bản được tích hợp sâu trong Composer để quản lý mã nguồn và dependencies. Kẻ tấn công có thể lợi dụng cách thức xử lý input không an toàn để chèn các lệnh độc hại vào quá trình thực thi bình thường của hệ thống.
Cơ chế tấn công chủ yếu tập trung vào việc khai thác cách Composer xử lý các tham số được truyền vào driver Perforce. Thay vì kiểm tra và làm sạch dữ liệu đầu vào một cách chặt chẽ, hệ thống đã cho phép các ký tự đặc biệt và lệnh hệ thống được thực thi trực tiếp. Điều này tạo ra một cánh cửa nguy hiểm cho phép tin tặc có thể kiểm soát hoàn toàn máy chủ mục tiêu chỉ bằng cách gửi các payload được chế tạo đặc biệt.
Mức độ nghiêm trọng
Tác động của hai lỗ hổng này có thể lan rộng đến hàng triệu website và ứng dụng web sử dụng PHP trên toàn thế giới. Composer được sử dụng rộng rãi trong hầu hết các dự án PHP hiện đại, từ các website nhỏ đến các hệ thống enterprise quy mô lớn. Khi bị khai thác thành công, kẻ tấn công có thể thực hiện các hành động nguy hiểm như đọc, sửa đổi hoặc xóa dữ liệu nhạy cảm, cài đặt backdoor, hoặc sử dụng hệ thống bị tấn công làm bàn đạp để tấn công các mục tiêu khác.
Đặc biệt đáng lo ngại là khả năng leo thang đặc quyền của các lỗ hổng này. Trong nhiều môi trường production, Composer thường được chạy với quyền cao để có thể cài đặt và cập nhật các package một cách thuận tiện. Điều này có nghĩa là một cuộc tấn công thành công có thể mang lại cho tin tặc quyền kiểm soát gần như tuyệt đối đối với hệ thống mục tiêu, bao gồm khả năng truy cập vào cơ sở dữ liệu, file hệ thống quan trọng và thông tin cấu hình nhạy cảm.
Phân tích kỹ thuật
Về mặt kỹ thuật, hai lỗ hổng này thuộc loại command injection - một trong những dạng tấn công nguy hiểm nhất trong bảo mật ứng dụng web. Nguyên nhân gốc rễ nằm ở việc Composer không thực hiện sanitization (làm sạch) đúng cách đối với các tham số được truyền vào khi tương tác với hệ thống Perforce VCS. Khi người dùng hoặc ứng dụng thực hiện các thao tác với repository, các tham số này được ghép nối trực tiếp vào các lệnh shell mà không qua kiểm tra, tạo điều kiện cho kẻ tấn công chèn thêm các lệnh độc hại.
Quá trình khai thác thường bắt đầu bằng việc tin tặc tạo ra các repository hoặc package độc hại chứa metadata được chế tạo đặc biệt. Khi Composer xử lý những thông tin này, các ký tự đặc biệt như dấu chấm phẩy, dấu và (&), hoặc ký tự pipe (|) có thể được sử dụng để nối thêm các lệnh hệ thống. Ví dụ, một chuỗi có thể được thiết kế để kết thúc lệnh hợp lệ ban đầu và bắt đầu thực thi một lệnh hoàn toàn mới, chẳng hạn như tải xuống và chạy malware từ server được kiểm soát bởi kẻ tấn công.
Khuyến nghị bảo mật
Các tổ chức và nhà phát triển sử dụng PHP Composer cần thực hiện ngay lập tức việc cập nhật lên phiên bản mới nhất đã được vá lỗi. Ngoài ra, nên kiểm tra và giới hạn quyền truy cập của Composer trong môi trường production, đảm bảo rằng quá trình này chỉ có những quyền tối thiểu cần thiết để hoạt động. Việc thực hiện audit định kỳ các dependency và chỉ sử dụng các package từ nguồn đáng tin cậy cũng là biện pháp quan trọng để giảm thiểu rủi ro. Cuối cùng, các team DevOps nên triển khai monitoring system để phát hiện sớm các hoạt động bất thường có thể liên quan đến việc khai thác lỗ hổng này.
Bài viết liên quan

Lỗ hổng CVE-2026-33032 nginx-ui đang bị khai thác, chiếm quyền toàn bộ server
2 ngày trước
Cập nhật bảo mật tháng 4: Vá lỗi nghiêm trọng SAP, Adobe, Microsoft
2 ngày trước
Microsoft vá 169 lỗ hổng nguy hiểm, bao gồm SharePoint zero-day đang tấn công
3 ngày trước