SSH.NET: ScpClient Recursive Download Allows Arbitrary File Write via Server-Controlled SCP Filenames
SSH.NET is a Secure Shell (SSH) library for .NET. In 2025.1.0 and earlier, ScpClient.Download(string directoryName, DirectoryInfo directoryInfo) trusts file and directory names returned by a remote SCP server and combines them with the requested local directory without containment validation, allowing a malicious, compromised, or man-in-the-middle server to use ../ sequences or absolute paths to create or overwrite files anywhere writable by the client process. This issue is fixed in version 2026.0.0.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-48798
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 2 Nov 2026, 21:18 UTC · Revision 1
Source evidence
SSH.NET: ScpClient Recursive Download Allows Arbitrary File Write via Server-Controlled SCP Filenames
core-osv · Original sourcePublished 18 Aug 2026, 14:57 UTC
SSH.NET is a Secure Shell (SSH) library for .NET. In 2025.1.0 and earlier, ScpClient.Download(string directoryName, DirectoryInfo directoryInfo) trusts file and directory names returned by a remote SCP server and combines them with the requested local directory without containment validation, allowing a malicious, compromised, or man-in-the-middle server to use ../ sequences or absolute paths to create or overwrite files anywhere writable by the client process. This issue is fixed in version 2026.0.0.
osv:CVE-2026-48798
Complete source record
{
"id": "bc646766ad2241a0be5f0d730582fbb2525f22ee8a3738a4d4b537759e811b1a",
"url": "https://osv.dev/vulnerability/CVE-2026-48798",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "SSH.NET: ScpClient Recursive Download Allows Arbitrary File Write via Server-Controlled SCP Filenames",
"summary": "SSH.NET is a Secure Shell (SSH) library for .NET. In 2025.1.0 and earlier, ScpClient.Download(string directoryName, DirectoryInfo directoryInfo) trusts file and directory names returned by a remote SCP server and combines them with the requested local directory without containment validation, allowing a malicious, compromised, or man-in-the-middle server to use ../ sequences or absolute paths to create or overwrite files anywhere writable by the client process. This issue is fixed in version 2026.0.0.",
"evidence": "osv:CVE-2026-48798",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2026-48798",
"aliases": [
"CVE-2026-48798",
"GHSA-q939-rpr3-3284"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:L"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/sshnet/ssh.net",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "7b2fd3dbf2c86a80a7b06cea020aa5f821c9902e"
},
{
"fixed": "600be0de543765995a189b5d7cd4efac5007f3ce"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "2026.0.0"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "600be0de543765995a189b5d7cd4efac5007f3ce"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "7b2fd3dbf2c86a80a7b06cea020aa5f821c9902e"
}
],
"source": "REFERENCES_TAG",
"original_tag": "2026.0.0"
}
]
}
}
],
"versions": [
"2025.1.0",
"2025.0.0",
"2024.2.0",
"2024.1.0",
"2024.0.0",
"2023.0.1",
"2023.0.0",
"2016.1.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-48798.json"
}
}
],
"modified": "2026-10-28T02:30:23.545438774Z",
"provider": "osv",
"references": [
"https://github.com/sshnet/SSH.NET/releases/tag/2026.0.0",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/48xxx/CVE-2026-48798.json",
"https://github.com/sshnet/SSH.NET/security/advisories/GHSA-q939-rpr3-3284",
"https://nvd.nist.gov/vuln/detail/CVE-2026-48798",
"https://github.com/sshnet/SSH.NET/commit/600be0de543765995a189b5d7cd4efac5007f3ce"
],
"provider_metadata": {
"cwe_ids": [
"CWE-22",
"CWE-73"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/48xxx/CVE-2026-48798.json"
}
},
"related_cves": [
{
"value": "CVE-2026-48798",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 490174,
"published_at": "2026-08-18T14:57:05.059+00:00"
}