VDB
KO
HIGH 8.8

GHSA-5c37-5j7w-8mh8

LimeSurvey constructs account password-reset links from the client-supplied HTTP Host header without validating it.

Details

LimeSurvey constructs account password-reset links from the client-supplied HTTP Host header without validating it. The optional allowedHosts allowlist that would constrain this is undefined in the default (and documented) configuration, so LSHttpRequest::checkIsAllowedHost() results in no operation. A remote, unauthenticated attacker who submits a forgotten-password request for a known account (requiring only the target's username and email) with a spoofed Host header causes LimeSurvey to email that account a reset link whose hostname is attacker-controlled while embedding the genuine validation_key. When the recipient or an automated inbound mail-security link scanner dereferences the link, the valid reset token is disclosed to the attacker, who replays it against the legitimate host's newPassword endpoint to set a new password and take over the account.

Are you affected?

Enter the version of the package you're using.

Affected packages

Packagist / limesurvey/limesurvey
Introduced in: 0

No fixed version published yet for limesurvey/limesurvey (composer). Pin to a known-safe version or switch to an alternative.

References