CVE-2024-41667
OpenAM FreeMarker template injection
Record summary
CVE-2024-41667 has a selected CVSS score of 8.8 (high); EIP currently links 1 Nuclei template.
Description
OpenAM is an open access management solution. In versions 15.0.3 and prior, the `getCustomLoginUrlTemplate` method in RealmOAuth2ProviderSettings.java is vulnerable to template injection due to its usage of user input. Although the developer intended to implement a custom URL for handling login to override the default OpenAM login, they did not restrict the `CustomLoginUrlTemplate`, allowing it to be set freely. Commit fcb8432aa77d5b2e147624fe954cb150c568e0b8 introduces `TemplateClassResolver.SAFER_RESOLVER` to disable the resolution of commonly exploited classes in FreeMarker template injection. As of time of publication, this fix is expected to be part of version 15.0.4.
Exploitation context
Available material
- Nuclei templates
- 1
CISA SSVC decision
CISA Coordinator · SSVC 2.0.3 · Evaluated Jul 26, 2024 · Source: CVE List
Affected products and versions
2| Product | Source | Version range | Status |
|---|---|---|---|
Default status: unknown | CVE List | < 15.0.4 | affected |
| Before 15.0.4 | affected | ||
org.openidentityplatform.openam:openam-oauth2Browse Maven / org.openidentityplatform.openam:openam-oauth2 | GitHub Advisory | Before 15.0.4 · Fixed in 15.0.4 | affected |
Nuclei templates
1ProjectDiscoveryHIGHOpenAM<=15.0.3 FreeMarker - Template InjectionCVSS 8.8
OpenAM is an open access management solution. In versions 15.0.3 and prior, the `getCustomLoginUrlTemplate` method in RealmOAuth2ProviderSettings.java is vulnerable to template injection due to its usage of user input
Impact
Authenticated attackers can exploit template injection to execute arbitrary code on the OpenAM server.
Remediation
Update OpenAM to a version later than 15.0.3 that patches the template injection vulnerability.
Source: ProjectDiscovery