Cross Site Scripting vulnerability in the Solarwinds Web Help Desk


Solarwinds Web Help Desk centralizes and automates ticketing management tasks so you can better support your customers. Keep track of tasks, including ticket assignment, routing, and escalation. Link incident tickets to a single problem for better organization, associate problem tickets with IT assets, and track the history of asset service requests.

eSecForte Technologies Security Researcher – Abhinav Khanna found Cross-Site Scripting vulnerability in the Solarwinds Web Help Desk and it has been assigned CVE-2019-16958 by the MITRE.


Cross-Site Scripting (XSS) attacks are a type of injection, in which malicious scripts are injected into otherwise benign and trusted websites. XSS attacks occur when an attacker uses a web application to send malicious code, generally in the form of a browser side script, to a different end user. Flaws that allow these attacks to succeed are quite widespread and occur anywhere a web application uses input from a user within the output it generates without validating or encoding it.



  • Impersonate or masquerade as the victim user.
  • Carry out any action that the user is able to perform.
  • Read any data that the user is able to access.
  • Capture the user’s login credentials.
  • Perform virtual defacement of the website.
  • Inject trojan functionality into the website.



  1. To prevent XSS in HTTP responses that aren’t intended to contain any HTML or JavaScript, you can use the Content-Type and X-Content-Type-Options headers to ensure that browsers interpret the responses in the way you intend.
  2. Properly validate the data that is entered by the end-user on both client-side and server-side.
  3. Use Content Security Policy to reduce the impact of Cross-Site Scripting, in case the vulnerability exists.

Steps to Reproduce:-

  1. Open the application and log in using valid credentials.

2. After login, click on Setup and go to Locations. Then, select Location & Rooms.

Solwar Winds

3. Now, click on New and in location parameter, inject cross site scripting payload and save it.


4. The cross-site scripting payload gets executed successfully.


[Disclosure Process]


  1. Reported the Vulnerability to the Vendor Security or PSIRT Team.
  1. Acknowledged confirmed from the Vendor that vulnerability exist.
  2. CVE has been filed in NVD.
  3. The vendor confirms that the vulnerability is fixed or the latest version, the patch is released.
  4. Vulnerability disclosed to the public.





[Has the vendor confirmed or acknowledged the vulnerability?]



Abhinav Khanna from eSec Forte Technologies Pvt Ltd