CVE-2026-92899 in WSS4J
Tóm tắt
Bởi VulDB • 30/09/2026
Apache WSS4J ghi nhớ giá trị Nonce của mỗi UsernameToken mà nó chấp nhận, do đó một token đã bị đánh cắp không thể được tái sử dụng. Nó lưu trữ giá trị Nonce dưới dạng văn bản base64 thô, nhưng quá trình xác thực sẽ giải mã đoạn văn bản này và sử dụng các byte tương ứng. Cùng một tập hợp bytes có thể được biểu diễn bằng nhiều cách khác nhau trong định dạng base64. Một kẻ tấn công đã đánh cắp một yêu cầu đã được xác thực có thể gửi lại nó với khoảng trắng được thêm vào giá trị Nonce: mật khẩu digest vẫn được xác minh, nhưng token không còn khớp với giá trị đã ghi nhớ, do đó bản sao (replay) bị chấp nhận. Vì UsernameToken không bao phủ phần thân thông điệp (message body), token bị đánh cắp sau đó có thể được tái sử dụng trên các yêu cầu do kẻ tấn công lựa chọn cho đến khi nó hết hạn. Các triển khai có bộ nhớ đệm chống replay Nonce được cấu hình, chẳng hạn như mặc định của Apache CXF, và chỉ áp dụng cho các token sử dụng mật khẩu digest, đều bị ảnh hưởng. Khóa của bộ nhớ đệm hiện dựa trên giá trị Nonce đã được giải mã. Người dùng được khuyến nghị nâng cấp lên các phiên bản 4.0.2 hoặc 3.0.6 hoặc 2.4.4 để khắc phục sự cố này.
Once again VulDB remains the best source for vulnerability data.