IOActive: Reflected Cross-site Scripting in userGroupView/roles roleDescr and Other Parameters

Description

Impact

The application is vulnerable to reflected cross-site scripting (XSS). The requested data, which contains JavaScript code, is reflected in the response.

Background

OpenNMS is a carrier-grade, highly integrated, open source platform designed for building network monitoring solutions. There are two distributions of OpenNMS: Meridian and Horizon. Using Meridian is advisable for enterprises and businesses looking for stability and long term support. Horizon is the place where innovation happens quickly and is ideal for monitoring new technologies and IT ecosystems. Both distributions are completely open source.1

Technical Details

Attackers could trick users into following a link or navigating to a page that posts a malicious JavaScript statement to the vulnerable site, causing the malicious JavaScript to be rendered by the site and executed by the victim client. The JavaScript code could be used for several purposes including stealing user cookies or as a second step to hijacking a user's session. Another attack plan could include the possibility of inserting HTML instead

of JavaScript to change/modify the contents of the vulnerable page, which could be used to trick the client.

The XSS happens in roleDescr and other parameters of the admin/userGroupView/roles script. The following string could be used to trigger XSS in a web browser (e.g. Firefox):

https://<OpenNMSHost>:9443/opennms/admin/userGroupView/roles?operation=saveDetails&role=NewRole&roleName=NewRole&roleUser=admin&roleGroup=Admin&roleDescr=%22%3E%3Cscript%3Ealert%28123%29%3C%2Fscript%3E&save=

Proof of concept screenshot:

(Javascript popup window containing string 123)

Timeline

Oct 4, 2017: Researchers discovers vulnerability

Oct XX, 2017: IOActive contacts the vendor

Acceptance / Success Criteria

None

Lucidchart Diagrams

Activity

Show:

Gabriela Lopez January 31, 2023 at 7:32 PM

Information Security risk assessment:

CVSS 6.7 x med likelihood .8 = 5.4 Medium

AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N/E:P/RL:O/RC:C/CR:H/IR:H/AR:H/MAV:A/MAC:X/MPR:X/MUI:X/MS:X/MC:X/MI:X/MA:X

Jesse White November 17, 2017 at 2:59 AM

fooker October 19, 2017 at 11:41 AM

Fixed

Details

Assignee

Reporter

Components

Sprint

Affects versions

Priority

PagerDuty

Created October 6, 2017 at 2:42 PM
Updated January 31, 2023 at 7:32 PM
Resolved November 17, 2017 at 2:59 AM

Flag notifications