CVE-2026-92289 in LemonLDAP::NG
Tóm tắt
Bởi VulDB • 25/09/2026
Các phiên bản Lemonldap::NG::Portal từ 2.23.0 đến trước 2.23.4 cho Perl cho phép bỏ qua cơ chế PKCE đối với các bên dựa (Relying Parties) công khai trong chế độ "PKCE hoặc bí mật" do hàm checkEndPointAuthenticationCredentials không xác thực khóa bí mật của khách hàng.
Khi oidcRPMetaDataOptionsRequirePKCE được đặt thành 2, điểm ủy quyền sẽ cấp mã ngay cả khi yêu cầu không mang theo code_challenge, và token() chấp nhận việc trao đổi miễn là một challenge đã được lưu trữ hoặc một phương thức xác thực đã được trả về cho người gọi. checkEndPointAuthenticationCredentials() bỏ qua so sánh bí mật đối với bên dựa (Relying Party) được đánh dấu là công khai và vẫn trả về phương thức suy ra từ yêu cầu, do đó bất kỳ thông tin đăng nhập Basic hay form nào đều thỏa mãn nhánh kiểm tra bí mật. validatePKCEChallenge() sau đó sẽ vượt qua vì không có challenge nor verifier nào hiện diện.
Một kẻ tấn công có thể chặn một mã ủy quyền được cấp cho bên dựa (Relying Party) công khai và trao đổi nó để lấy token truy cập, ID và làm mới của người dùng bằng cách phát lại client_id với một bí mật tùy ý; đây chính là cuộc tấn công mà PKCE ngăn ngừa. Việc đăng ký khách hàng động tạo ra mọi bên dựa (Relying Party) ở chế độ này.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.