VYPR
Moderate severityNVD Advisory· Published Nov 16, 2023· Updated Aug 29, 2024

Cross-site scripting in bootstrap.jsp

CVE-2023-40314

Description

Cross-site scripting in bootstrap.jsp in multiple versions of OpenNMS Meridian and Horizon allows an attacker access to confidential session information. The solution is to upgrade to Horizon 32.0.5 or newer and Meridian 2023.1.9 or newer

Meridian and Horizon installation instructions state that they are intended for installation within an organization's private networks and should not be directly accessible from the Internet.

OpenNMS thanks

Moshe Apelbaum

for reporting this issue.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
org.opennms:opennms-webappMaven
< 32.0.532.0.5

Affected products

3

Patches

Vulnerability mechanics

Root cause

"Improper neutralization of user-controllable input in bootstrap.jsp allows cross-site scripting (XSS)."

Attack vector

An attacker can inject malicious script input that is not properly neutralized before being rendered in `bootstrap.jsp`, leading to cross-site scripting (XSS) [CWE-79]. The advisory states that OpenNMS installations are intended for private networks and should not be directly accessible from the Internet, so the attacker likely needs network access to the internal OpenNMS web interface. The injected script can then access confidential session information of other users viewing the affected page.

Affected code

The vulnerability resides in `opennms-webapp/src/main/java/org/opennms/web/utils/Bootstrap.java`. The patch replaces Guava collection utilities (`Lists.newArrayList()`, `Sets.newHashSet()`) with standard Java collections (`new ArrayList&lt;&gt;()`, `new HashSet&lt;&gt;()`). The advisory does not specify which function or code path in `bootstrap.jsp` is vulnerable, only that cross-site scripting occurs there.

What the fix does

The patch removes Guava collection imports (`Lists`, `Sets`) and replaces `Lists.newArrayList()` and `Sets.newHashSet()` with standard Java `new ArrayList&lt;&gt;()` and `new HashSet&lt;&gt;()` [patch_id=1640650]. While the commit message says "No guava," this change alone does not directly fix an XSS vulnerability; it appears to be a cleanup that accompanies a more substantive fix not shown in this diff. The advisory recommends upgrading to Horizon 32.0.5 or Meridian 2023.1.9, which include the complete fix.

Preconditions

  • networkAttacker must have network access to the OpenNMS web interface (installations are intended for private networks).
  • configThe bootstrap.jsp page must be served to other users who have active sessions.

Generated on May 23, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

4

News mentions

0

No linked articles in our index yet.