CVE-2026-48716
WysokieCVSS 8.7Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 19 - wyżej niż 19% wszystkich znanych CVE
Streszczenie
W wersjach 0.1.5.post3 i wcześniejszych, mostek WhatsApp w nanobot nie sanitizuje pola fileName z wiadomości dokumentu, co pozwala na atakującemu na ucieczkę z katalogu media/ poprzez wysłanie odpowiednio skonstruowanej nazwy pliku.
Ocena ryzyka
Atakujący może zapisać pliki w dowolnym miejscu na serwerze, co stwarza poważne zagrożenie dla integralności systemu i danych.
Rekomendacja
Zaleca się aktualizację do wersji 0.1.5.post4, która zawiera poprawkę dla tej podatności.
Oryginalny opis (angielski, źródło NVD)
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.

