These report templates were written to be unique and valuable to the client receiving a vulnerability report. They have variables that will automatically be replaced by the platform created during workflow automation. The following is the Reflected Cross-Site Scripting report template.

See the full template in raw markdown on GitHub.


Metadata

Introduction/Description

A reflected cross-site scripting vulnerability was found on the [rxss-hostname] domain at the [rxss-path] endpoint in the [rxss-param] parameter.

Reflected 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.

Proof of Concept

Visit the below URL to see the domain [rxss-hostname] in a pop-up alert box. The domain name verifies the DOM is reachable through this cross-site scripting attack, allowing the attacker to access cookies.

Impact

An attacker can use a reflected cross-site scripting attack to steal [rxss-hostname] cookies from an authenticated user by having them click on a malicious link. Stolen cookies allow the attacker to take over the user’s session. This vulnerability may also allow attackers to deface [rxss-hostname] or embed malicious content.

Remediation

Help prevent XSS attacks by using the following best practices.

Validate and sanitize user input

Make sure to validate and sanitize all user input to ensure that it does not contain any malicious code. This can be done using server-side input validation and sanitization functions.

Use content security policies (CSPs).

CSPs allow you to specify which domains are allowed to load resources on your website. This can help to prevent attackers from injecting malicious code from third-party domains.

Use an XSS prevention library.

There are several libraries available that can help to prevent XSS attacks by automatically escaping user input and implementing other security measures.

Keep your software and libraries up to date.

Make sure to keep all software and libraries used on your website up to date to ensure that you have the latest security fixes and patches.

Find out more from OWASP’s Cross Site Scripting Prevention Cheat Sheet

Severity Scores

[CWE-79]: Improper Neutralization of Input During Web Page Generation.
CVSS v3.1 Base Score: [6.1]

Details

Metric Value Comments
Attack Vector Network The attack can only be exploited over a network. The target [rxss-hostname] can be accessed over the internet.
Attack Complexity Low The attacker can expect repeatable success.
Privileges Required None The attacker requires no privileges to perform the attack.
User Interaction Required A victim needs to click the malicious link created by the attacker.
Scope Changed The vulnerable component is the vulnerable [rxss-hostname] server. The impacted component is the victim’s browser.
Confidentiality Low Information in the victim’s browser associated with [rxss-hostname] can be read by the malicious JavaScript code and sent to the attacker.
Integrity Low Information in the victim’s browser associated with [rxss-hostname] can be modified by the malicious JavaScript code.
Availability None The malicious JavaScript code cannot significantly impact the victim’s browser.

Figure C1. Reflected Cross-Site Scripting Report Template (Ross, 2022).