OpenCATS: Authenticated RCE in the Import module
OpenCATS is an open-source applicant tracking system and recruitment CRM for staffing agencies and hiring teams. Prior to 0.10.0, the OpenCATS Import module in modules/import/ImportUI.php can preserve an uploaded file's original name for one import data type and place the file in the web-accessible temporary directory. An authenticated user with Import privileges can select the affected import path and upload a PHP file that remains under an attacker-controlled executable filename, and an import error can leave the file on disk. If the temporary directory is served with PHP execution enabled, requesting the staged file can execute arbitrary PHP code with the web server process privileges, exposing or modifying recruiting data and the host system. This issue is fixed in version 0.10.0.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-54454
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 4 Nov 2026, 15:49 UTC · Revision 1
Source evidence
OpenCATS: Authenticated RCE in the Import module
core-osv · Original sourcePublished 13 Oct 2026, 16:33 UTC
OpenCATS is an open-source applicant tracking system and recruitment CRM for staffing agencies and hiring teams. Prior to 0.10.0, the OpenCATS Import module in modules/import/ImportUI.php can preserve an uploaded file's original name for one import data type and place the file in the web-accessible temporary directory. An authenticated user with Import privileges can select the affected import path and upload a PHP file that remains under an attacker-controlled executable filename, and an import error can leave the file on disk. If the temporary directory is served with PHP execution enabled, requesting the staged file can execute arbitrary PHP code with the web server process privileges, exposing or modifying recruiting data and the host system. This issue is fixed in version 0.10.0.
osv:CVE-2026-54454
Complete source record
{
"id": "46818efe9bcc2f2e22050554b08deeb48e786df800584eb99840f825974e1c56",
"url": "https://osv.dev/vulnerability/CVE-2026-54454",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "OpenCATS: Authenticated RCE in the Import module",
"summary": "OpenCATS is an open-source applicant tracking system and recruitment CRM for staffing agencies and hiring teams. Prior to 0.10.0, the OpenCATS Import module in modules/import/ImportUI.php can preserve an uploaded file's original name for one import data type and place the file in the web-accessible temporary directory. An authenticated user with Import privileges can select the affected import path and upload a PHP file that remains under an attacker-controlled executable filename, and an import error can leave the file on disk. If the temporary directory is served with PHP execution enabled, requesting the staged file can execute arbitrary PHP code with the web server process privileges, exposing or modifying recruiting data and the host system. This issue is fixed in version 0.10.0.",
"evidence": "osv:CVE-2026-54454",
"products": [],
"severity": "critical",
"structured": {
"id": "CVE-2026-54454",
"aliases": [
"CVE-2026-54454",
"GHSA-v9gx-5qhj-jf7c"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/opencats/opencats",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "e8caaa631b0068ef17ed216be3a0526e7f951ca0"
},
{
"fixed": "7f151741598c36c8233ada4b6b64f12b721d4907"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "0.10.0"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "7f151741598c36c8233ada4b6b64f12b721d4907"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "e8caaa631b0068ef17ed216be3a0526e7f951ca0"
}
],
"source": "REFERENCES_TAG",
"original_tag": "v0.10.0"
}
]
}
}
],
"versions": [
"0.9.7.4",
"0.9.7.3",
"v0.9.7.2",
"opencats-0.9.7",
"0.9.6",
"0.9.4-3",
"0.9.4-2",
"0.9.4-1",
"0.9.4",
"0.9.3-3",
"0.9.3-2",
"0.9.3-1",
"0.9.1a",
"opencats-0.9.3(final)",
"opencats-0.9.3(alpha)",
"opencats-0.9.3",
"0.9.3"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54454.json"
}
}
],
"modified": "2026-10-28T02:30:37.039373018Z",
"provider": "osv",
"references": [
"https://github.com/opencats/OpenCATS/releases/tag/v0.10.0",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54454.json",
"https://github.com/opencats/OpenCATS/security/advisories/GHSA-v9gx-5qhj-jf7c",
"https://nvd.nist.gov/vuln/detail/CVE-2026-54454",
"https://github.com/opencats/OpenCATS/commit/7f151741598c36c8233ada4b6b64f12b721d4907",
"https://github.com/opencats/OpenCATS/pull/808"
],
"provider_metadata": {
"cwe_ids": [
"CWE-434"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54454.json"
}
},
"related_cves": [
{
"value": "CVE-2026-54454",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 504280,
"published_at": "2026-10-13T16:33:49.786+00:00"
}