CVE-2020-8128: Server-Side Request Forgery and Inclusion of Functionality from Untrusted Control Sphere in jsreport

jsreport Updated 02 Oct 2025

Summary

13/04/2021
Yes i
High
9.8

CVE-2020-8128: Server-Side Request Forgery and Inclusion of Functionality from Untrusted Control Sphere in jsreport. Affects jsreport versions < 2.6.0. Fixed in 2.6.0. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored MarkAI Find prospects already talking about the problem you solve AI watches the communities your customers use to find qualified prospects, then alerts you when a conversation is worth joining. See MarkAI

Background

jsreport is an npm package that provides a platform for generating reports using JavaScript. It allows users to create and customize reports using various templates and data sources. However, versions 2.5.0 and earlier of jsreport are vulnerable to an unintended require and server-side request forgery (SSRF) attack. This vulnerability can be exploited by attackers to execute arbitrary code.

Vulnerability Detail

The vulnerability in jsreport arises from the unintended require and SSRF vulnerabilities. The unintended require vulnerability allows an attacker to include functionality from an untrusted control sphere, potentially leading to the execution of arbitrary code. The SSRF vulnerability enables an attacker to make requests to internal resources or external systems, bypassing any restrictions that may be in place. This can result in unauthorized access to sensitive information or the execution of malicious actions.

How To Fix

Minimum fixed version

2.6.0

This is the first release that contains the fix.

npm install jsreport@2.6.0

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

If updating jsreport is not immediately feasible, a temporary workaround is to implement proper input validation and sanitization. This can help prevent the exploitation of the SSRF vulnerability by blocking malicious requests to internal or external resources. Additionally, it is crucial to review and restrict the permissions of the application to minimize the potential impact of an unintended require attack.

Conclusion

The vulnerability in jsreport version 2.5.0 and earlier poses a significant risk as it allows for server-side request forgery and the inclusion of functionality from an untrusted control sphere. To mitigate this vulnerability, it is crucial to update jsreport to version 2.6.0 or later. Additionally, implementing input validation and sanitization can serve as a temporary workaround. For further support on vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for jsreport →

Share this vulnerability

FAQ

jsreport is an npm package that provides a platform for generating reports using JavaScript. It allows users to create and customize reports using various templates and data sources.

An unintended require vulnerability occurs when a package or application includes functionality from an untrusted control sphere. This can lead to the execution of arbitrary code and potential security breaches.

Server-side request forgery (SSRF) is a vulnerability that allows an attacker to make requests to internal resources or external systems from the server-side. This can bypass any restrictions and potentially result in unauthorized access or the execution of malicious actions.

The vulnerability in jsreport can allow attackers to execute arbitrary code, potentially leading to unauthorized access, data breaches, or the execution of malicious actions. It is crucial to patch this vulnerability to prevent any potential harm.

To update jsreport to the fixed version (2.6.0 or later), you can use the package manager for your project (e.g., npm) and run the command to update the package. For example, with npm, you can use the command 'npm update jsreport'.

Related vulnerabilities

Recent vulnerabilities recorded for jsreport.

How To Fix

Minimum fixed version

2.6.0

This is the first release that contains the fix.

npm install jsreport@2.6.0

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback