OPNsense: OpenVPN Client Specific Override common_name allows path traversal in generated CSO files
OPNsense is a FreeBSD based firewall and routing platform. Prior to version 26.1.11, the OpenVPN Client Specific Override common_name field accepts path traversal sequences and openvpn_csc_conf_write() concatenates the value into /var/etc/openvpn-csc// without normalization or a basename check. The affected event handlers are client_connect.php and user_pass_verify.php. An authenticated user with Client Specific Override privileges can store the traversal value, and a matching OpenVPN client-connect or authentication event causes a generated CSO file to be written outside the intended directory. The file content is generated OpenVPN configuration rather than arbitrary bytes, and practical exploitation requires the attacker to cause a matching common name or username to be processed. This issue is fixed in version 26.1.11.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-58393
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 3 Nov 2026, 16:57 UTC · Revision 1
Source evidence
OPNsense: OpenVPN Client Specific Override common_name allows path traversal in generated CSO files
core-osv · Original sourcePublished 15 Oct 2026, 15:15 UTC
OPNsense is a FreeBSD based firewall and routing platform. Prior to version 26.1.11, the OpenVPN Client Specific Override common_name field accepts path traversal sequences and openvpn_csc_conf_write() concatenates the value into /var/etc/openvpn-csc// without normalization or a basename check. The affected event handlers are client_connect.php and user_pass_verify.php. An authenticated user with Client Specific Override privileges can store the traversal value, and a matching OpenVPN client-connect or authentication event causes a generated CSO file to be written outside the intended directory. The file content is generated OpenVPN configuration rather than arbitrary bytes, and practical exploitation requires the attacker to cause a matching common name or username to be processed. This issue is fixed in version 26.1.11.
osv:CVE-2026-58393
Complete source record
{
"id": "49ee2af740b252fafd02904314bba13dfc0a918a9dfd07c7720626a4398c71d4",
"url": "https://osv.dev/vulnerability/CVE-2026-58393",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "OPNsense: OpenVPN Client Specific Override common_name allows path traversal in generated CSO files",
"summary": "OPNsense is a FreeBSD based firewall and routing platform. Prior to version 26.1.11, the OpenVPN Client Specific Override common_name field accepts path traversal sequences and openvpn_csc_conf_write() concatenates the value into /var/etc/openvpn-csc// without normalization or a basename check. The affected event handlers are client_connect.php and user_pass_verify.php. An authenticated user with Client Specific Override privileges can store the traversal value, and a matching OpenVPN client-connect or authentication event causes a generated CSO file to be written outside the intended directory. The file content is generated OpenVPN configuration rather than arbitrary bytes, and practical exploitation requires the attacker to cause a matching common name or username to be processed. This issue is fixed in version 26.1.11.",
"evidence": "osv:CVE-2026-58393",
"products": [],
"severity": "medium",
"structured": {
"id": "CVE-2026-58393",
"aliases": [
"CVE-2026-58393",
"GHSA-2m9v-p7r9-gfcw"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:L"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/opnsense/core",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "c930ab586ffe2d2e010e5135657e5e054316ff58"
},
{
"fixed": "3af496143a19153c18b2f9458b2510d58aff2b98"
},
{
"fixed": "6101b3e2c90482111f420a47775c14a447441a72"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "26.1.11"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "3af496143a19153c18b2f9458b2510d58aff2b98"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "6101b3e2c90482111f420a47775c14a447441a72"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
}
],
"versions": [
"26.1.10",
"26.1.9",
"26.7.b",
"26.1.8",
"26.1.6",
"26.1.7",
"26.1.5",
"26.1.4",
"26.1.3",
"26.1.2",
"26.1.1",
"26.1",
"26.7.a",
"26.1.r2",
"26.1.r1",
"26.1.r",
"26.1.b",
"26.1.a",
"25.7.r",
"25.7.b",
"25.7.a",
"25.1.r",
"25.1.b",
"25.1.a",
"24.7.r",
"24.7.b",
"24.7.a",
"24.1.r",
"24.1.b",
"24.1.a",
"23.7.r",
"23.7.b",
"23.7.a",
"23.1.r",
"23.1.b",
"23.1.a",
"22.7.r",
"22.7.b",
"22.7.a",
"22.1.r",
"22.1.b",
"22.1.a",
"21.7.r",
"21.7.b",
"21.7.a",
"21.1.r",
"21.1.b",
"21.1.a",
"20.7.r",
"20.7.b",
"20.7.a",
"20.1.r",
"20.1.b",
"20.1.a",
"19.7.r",
"19.7.b",
"19.7.a",
"19.1.r",
"19.1.b",
"19.1.a",
"18.7.r",
"18.7.b",
"18.7.a",
"18.1.r",
"18.1.b",
"18.1.a",
"17.7.r",
"17.7.b",
"17.7.a",
"17.1.r",
"17.1.b",
"17.1.a",
"16.7.r",
"16.7.b",
"16.7.a",
"15.7",
"15.1.12",
"15.1.11.4",
"15.1.11.3",
"15.1.11.2",
"15.1.11.1",
"15.1.11",
"15.1.10.2",
"15.1.10",
"15.1.9.2",
"15.1.9.1",
"15.1.9",
"15.1.8.4",
"15.1.8.3",
"15.1.8.2",
"15.1.8.1",
"15.1.8",
"15.1.7.2",
"15.1.7.1",
"15.1.7",
"15.1.6.1",
"15.1.6",
"15.1.5",
"15.1.4",
"15.1.3",
"15.1.2",
"15.1.1",
"15.1"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-58393.json"
}
}
],
"modified": "2026-10-28T02:30:30.726824989Z",
"provider": "osv",
"references": [
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/58xxx/CVE-2026-58393.json",
"https://github.com/opnsense/core/security/advisories/GHSA-2m9v-p7r9-gfcw",
"https://nvd.nist.gov/vuln/detail/CVE-2026-58393",
"https://github.com/opnsense/core/commit/3af496143a19153c18b2f9458b2510d58aff2b98",
"https://github.com/opnsense/core/commit/6101b3e2c90482111f420a47775c14a447441a72"
],
"provider_metadata": {
"cwe_ids": [
"CWE-22"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/58xxx/CVE-2026-58393.json"
}
},
"related_cves": [
{
"value": "CVE-2026-58393",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 497645,
"published_at": "2026-10-15T15:15:45.924+00:00"
}