CVE-2025-58765
BaseFortify
Publication date: 2025-09-09
Last updated on: 2025-09-11
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| webrecorder | replaywebpage | 2.3.17 |
| webrecorder | wabac.js | 2.23.10 |
| webrecorder | wabac.js | 2.23.11 |
| webrecorder | archivewebpage | 0.15.4 |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-79 | The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability is a Reflected Cross-Site Scripting (XSS) issue in wabac.js versions 2.23.10 and below. It occurs because the parameter 'requestURL', derived from the original request target, is directly embedded into an inline <script> block without any sanitization or escaping. This allows an attacker to craft a malicious URL that executes arbitrary JavaScript code in the victim's browser when accessed. The exploitability may be influenced by CORS policies depending on how wabac.js is deployed. The vulnerability is fixed in version 2.23.11. [2]
How can this vulnerability impact me? :
This vulnerability can allow an attacker to execute arbitrary JavaScript code in the browser of a user who accesses a maliciously crafted URL. This can lead to unauthorized actions such as stealing sensitive information, manipulating the user interface, or performing actions on behalf of the user. The impact includes low confidentiality, integrity, and availability losses, but the scope of the attack can extend beyond the original security boundary, making it a significant security risk. [2]
How can this vulnerability be detected on my network or system? Can you suggest some commands?
Detection can involve checking the version of wabac.js or related npm packages to see if they are at or below the vulnerable versions (wabac.js v2.23.10 and below, @webrecorder/archivewebpage below 0.15.4, replaywebpage below 2.3.17). You can inspect web server logs or proxy logs for requests containing suspicious or crafted URLs that include script payloads targeting the 404 error handling. Since the vulnerability involves reflected XSS in the 404 error handling, testing by accessing URLs with crafted parameters in the requestURL parameter and observing if arbitrary JavaScript executes can help detect it. For example, you can use curl or browser developer tools to test URLs that include script tags in the request path and see if they are reflected unsanitized in the response. Specific commands might include: 1) Checking package versions: `npm list @webrecorder/wabac` or `npm list @webrecorder/archivewebpage` 2) Using curl to test for reflected script injection: `curl -i 'http://yourserver/invalidpath<script>alert(1)</script>'` and inspecting the response for unsanitized script injection. [2]
What immediate steps should I take to mitigate this vulnerability?
The immediate mitigation step is to upgrade wabac.js and related packages to the fixed versions: wabac.js to version 2.23.11 or later, @webrecorder/archivewebpage to 0.15.4 or later, and replaywebpage to 2.3.17 or later. These versions include security updates that sanitize the requestURL parameter and prevent the reflected XSS vulnerability. Additionally, reviewing and applying any security patches or updates from the official wabac.js releases is recommended. If upgrading immediately is not possible, consider implementing web application firewall (WAF) rules to block suspicious requests containing script tags or other XSS payloads targeting the 404 error handling paths. Also, ensure proper Content Security Policy (CSP) headers are in place to reduce the impact of potential XSS attacks. [1, 2]