CVE-2026-35582 in Emissary
Tóm tắt
Bởi VulDB • 26/05/2026
Emissary là một công cụ điều phối quy trình làm việc (workflow engine) dựa trên dữ liệu và kiến trúc P2P. Trong các phiên bản 8.42.0 trở về trước, hàm Executrix.getCommand() dễ bị tấn công bằng cách tiêm lệnh hệ điều hành (OS command injection) do nó nội suy các đường dẫn tệp tạm thời vào chuỗi lệnh shell /bin/sh -c mà không thực hiện bất kỳ quá trình thoát ký tự (escaping) hay xác thực đầu vào nào. Các khóa cấu hình IN_FILE_ENDING và OUT_FILE_ENDING được đưa trực tiếp vào các đường dẫn này, cho phép tác giả của một nơi làm việc (place author) có khả năng ghi hoặc sửa đổi tệp .cfg để tiêm các ký tự đặc biệt của shell tùy ý, từ đó thực thi các lệnh hệ điều hành trong ngữ cảnh bảo mật của tiến trình JVM. Khung làm việc đã thực hiện quá trình làm sạch tên nơi làm việc (placeName) thông qua danh sách cho phép (allowlist) trước khi nhúng nó vào cùng chuỗi lệnh shell, nhưng không áp dụng quá trình làm sạch tương đương cho các giá trị phần mở rộng tệp. Không yêu cầu đặc quyền thời gian chạy nào ngoài quyền tác giả cấu hình nơi làm việc, cũng như không cần truy cập API hoặc mạng để khai thác lỗ hổng này. Đây là một lỗi ở cấp độ khung làm việc mà không có biện pháp giảm thiểu an toàn nào khả thi cho các nhà triển khai hạ nguồn, vì Executrix không cung cấp cơ chế thoát ký tự cũng như các điều kiện tiên đề được tài liệu hóa để đối phó với các ký tự đặc biệt trong đầu vào phần mở rộng tệp. Vấn đề này đã được sửa chữa trong phiên bản 8.43.0.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.