CVE-2026-113648: ApostropheCMS Import-Export Package Lacks Authentication in Clean Export Route
Summary
CVE-2026-113648: ApostropheCMS: Missing Authentication in cleanExport Route. Affects @apostrophecms/import-export versions < 3.7.1. Fixed in 3.7.1. How to fix ↓
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.
No signup required · Results in about 60 seconds
Background
ApostropheCMS is an open-source content management system (CMS) designed for building websites and applications. It provides a flexible and user-friendly interface for managing content, allowing developers to create custom modules and features. The '@apostrophecms/import-export' package facilitates the import and export of content, enabling users to manage data efficiently. However, this package has a critical vulnerability that exposes certain API endpoints to unauthorized access, potentially compromising the integrity of the application.
Vulnerability Detail
The vulnerability arises from the absence of authentication and authorization checks in the API endpoint 'POST /api/v1/@apostrophecms/import-export/clean-export'. This oversight allows unauthenticated users, who have obtained a CSRF cookie, to invoke the clean export functionality directly. As a result, unauthorized users can delete temporary export files, modify job records in the database, and dismiss notifications without proper verification. The root cause is the lack of an explicit check for 'req.user' in the route definition, which permits anonymous requests to bypass access control.
How To Fix
Latest published version: 3.7.1 as of 22 Oct 2026
npm install @apostrophecms/import-export@3.7.1
The newest release already contains this fix.
Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →
Workaround
As a temporary workaround, you can implement a middleware function to check for user authentication before allowing access to the vulnerable endpoint. Here is an example of how to do this:
function authenticate(req, res, next) {
if (!req.user) {
return res.status(403).send('Forbidden');
}
next();
}
app.post('/api/v1/@apostrophecms/import-export/clean-export', authenticate, (req, res) => {
// Your clean export logic here
});
Conclusion
The vulnerability CVE-2026-113648 in the '@apostrophecms/import-export' package poses a significant risk due to the lack of authentication checks in the clean export route. It is crucial to update the package to the latest version to mitigate this risk and ensure the security of your application.
See every vulnerability recorded for @apostrophecms/import-export →
FAQ
CVE-2026-113648 is a vulnerability in the '@apostrophecms/import-export' package that allows unauthenticated users to access the clean export functionality, potentially leading to unauthorized data manipulation.
You can check if your application is affected by using Vulert, which monitors open-source vulnerabilities in real-time. Visit Vulert Scanner to test your application without requiring any signup.
The vulnerability can lead to broken access control, allowing unauthorized users to delete files and modify job records in the database, which can compromise the integrity of your application.
To fix this vulnerability, update the '@apostrophecms/import-export' package to version 3.7.1 or later using the command 'npm install @apostrophecms/import-export@3.7.1'.
If you cannot update the package immediately, implement a middleware function to check for user authentication before allowing access to the vulnerable endpoint as a temporary workaround.
References
Related vulnerabilities
Recent vulnerabilities recorded for @apostrophecms/import-export.