CVE-2026-48716CWE-22

nanobot: Path traversal via unsanitized WhatsApp document fileName enables arbitrary file write

High · published June 18, 2026

CVSS v3.1
8.7
EPSS
0%
Percentile
35.4
In the wild
Unconfirmed
What it is

nanobot is a personal AI assistant. In versions 0.1.5.post3 and prior, the WhatsApp bridge in bridge/src/whatsapp.ts constructs a filesystem path using the fileName field from an incoming WhatsApp document message without sanitization. The WhatsApp bridge downloads media attachments and writes them to disk using a filename derived from the sender's message via documentMessage.fileName, which is concatenated with a prefix and its raw value is passed directly to path.join(mediaDir, outFilename). Node.js path.join resolves .. components, allowing an attacker to escape the intended media/ directory by sending a document with a crafted fileName such as ../../../.ssh/authorized_keys. Because the attacker also controls the file content (the downloaded buffer), this is a write-anywhere primitive — both path and content are attacker-controlled. A fix for this issue is planned for version 0.1.5.post4.

The record
Technical detail
CVSS v3.1
8.7 · HIGH
Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00422 · 35.4th percentile
Weakness
CWE-22 · Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
Published
2026-06-18T18:46Z
EPSS history
Timeline
  • 18 JUN 18:46Z
    nanobot: Path traversal via unsanitized WhatsApp document fileName enables arbitrary file write
    cvelistv5