Naar inhoud
PatchBriefing

Zoek in PatchBriefing

Typ minimaal twee tekens. Resultaten worden direct bijgewerkt.

Zoek op CVE’s, producten, packages en artikeltitels.

Niets gevonden. Kenmerken zoals CVE en GHSA zijn in beide talen doorzoekbaar.

Inschrijven

Gemiddeld · 5.0 Node.js & npm GHSA-9gfj-28hw-jchp CVE-2026-86439

Path traversal-lek in Knowns maakt willekeurig lezen, schrijven en verwijderen van bestanden mogelijk via MCP docs- en memory-tools

Knowns-versies tot en met 0.29.1 bevatten meerdere path traversal-kwetsbaarheden in de MCP docs- en memory-tools, waardoor aanvallers willekeurige bestanden buiten de bedoelde projectmap kunnen lezen, schrijven of verwijderen. Een fout in de rechtenclassificatie maakt het bovendien mogelijk om bestanden te verwijderen via een hernoemactie, zelfs voor gebruikers zonder verwijderrechten. Het probleem is verholpen in versie 0.30.0.

Door AI gesynthetiseerd uit 1 bron · bijgewerkt 1 uur geleden
Bronnen · samengevoegd door AI 1 totaal

AI-samenvatting

Een beveiligingsadvies (CVE-2026-86439 / GHSA-9gfj-28hw-jchp) beschrijft meerdere path traversal-kwetsbaarheden in Knowns, een tool die documentatie- en geheugenbeheerfunctionaliteit aanbiedt via MCP-tools (Model Context Protocol). De kwetsbaarheden zitten in de onderliggende opslaglaag die zowel door de 'docs'- als de 'memory'-tool wordt gebruikt, en in het rechtensysteem dat bepaalt welke acties gebruikers mogen uitvoeren.

Wat is er aan de hand

De interne opslagfuncties van Knowns voor documenten (doc_store.go) en geheugenitems (memory_store.go) bouwen bestandspaden op door gebruikersinvoer direct samen te voegen met een basismap via de Go-functie filepath.Join(). Omdat deze functie '../'-reeksen oplost zonder extra validatie, kan een aanvaller een pad zoals '../../../victim/secret' meegeven, waardoor de server bestanden buiten de bedoelde projectmap leest, schrijft of verwijdert. De MCP-handlers voor docs (doc.go) en memory (memory.go) geven gebruikersinvoer ongefilterd door aan deze kwetsbare opslagfuncties.

Technische oorzaak

De oorzaak ligt in het ontbreken van een controle op padcontainment na het opbouwen van bestandspaden met filepath.Join(). Geen van de betrokken functies (Get, Create, Update, Rename, Delete in doc_store.go; GetInLayer, Create, Update, Delete in memory_store.go) controleert of het uiteindelijke absolute pad binnen de bedoelde basismap blijft (bijvoorbeeld via een strings.HasPrefix-check), en ook worden absolute paden of '..'-reeksen niet geweigerd. Daarnaast is in het rechtenregister (registry.go) de actie 'docs.update' geclassificeerd met de CapWrite-rechten, terwijl deze actie bij gebruik van de parameter 'newPath' een Rename()-bewerking uitvoert die het oorspronkelijke bestand verwijdert via os.Remove(). Door deze verkeerde classificatie (CWE-863) wordt een verwijderactie uitgevoerd onder een controle die bedoeld is voor schrijfrechten.

Waarom dit belangrijk is

Een aanvaller die de docs- of memory-MCP-tools kan aanroepen, zou gevoelige bestanden buiten het project kunnen lezen, willekeurige bestanden kunnen overschrijven of bestanden op het hostsysteem kunnen verwijderen — allemaal via standaard tool-aanroepen, zonder directe toegang tot het bestandssysteem nodig te hebben. Het advies vermeldt ook dat deze kwetsbaarheid wordt versterkt door een apart gemelde authenticatie-bypass: wanneer de Knowns-server zonder wachtwoord wordt gestart, zijn deze MCP-tools bereikbaar zonder enige inloggegevens, waardoor misbruik in die configuratie mogelijk is zonder voorafgaande authenticatie. Het advies stelt niet dat de path traversal zelf standaard zonder authenticatie werkt; dat extra risico geldt specifiek wanneer de server zonder wachtwoordbeveiliging draait.

Wie wordt getroffen

Gebruikers die het npm-pakket 'knowns' draaien in een versie tot en met 0.29.1, met name elke installatie die de docs- of memory-MCP-tools aanbiedt, worden getroffen.

Getroffen versies

Alle versies van knowns tot en met 0.29.1 zijn kwetsbaar. Het probleem is verholpen in versie 0.30.0.

Oplossingen en mitigatie

De leverancier heeft versie 0.30.0 uitgebracht, die de in het advies beschreven path traversal- en rechtenclassificatieproblemen verhelpt. Een patch is beschikbaar via de GitHub-releasepagina van het project. Het advies geeft verder geen technische details over de precieze codewijzigingen, behalve dat er een fix beschikbaar is.

Aanbevolen actie

Werk knowns zo snel mogelijk bij naar versie 0.30.0 of hoger. Is directe update niet mogelijk, zorg er dan voor dat de Knowns-server niet zonder wachtwoordbeveiliging draait, aangezien ongeauthenticeerde toegang volgens het advies de uitbuitbaarheid van dit probleem aanzienlijk vergroot. Controleer documentatie- en memory-mappen van projecten op tekenen van bestanden die buiten de verwachte projectscope zijn geschreven of verwijderd.

PatchBriefing-score

5.0 / 10 · Gemiddeld

Officiële CVSS: 8.8

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Waarom deze score

Dit probleem heeft een CVSS-basisscore van 8.8 (hoog), wat duidt op een netwerkaanvalsvector, lage aanvalscomplexiteit, laag vereiste rechten, geen gebruikersinteractie en een hoge impact op vertrouwelijkheid, integriteit en beschikbaarheid. De berekende PatchBriefing-score van 5 is opgebouwd uit de bijdrage van de CVSS-basisscore (4.84) plus een kleine toevoeging omdat er geen gebruikersinteractie vereist is (0.2). Er zijn geen aanwijzingen voor actieve misbruik in het wild of publiek beschikbare exploitcode, en er werd geen EPSS-gebaseerde scorebijdrage geregistreerd in de aangeleverde gegevens. Er is een fix beschikbaar, wat in de deterministische score is verwerkt als geen extra risico toevoegend.

Getroffen versies

knowns <= 0.29.1
kwetsbaar
≥ 0.30.0
gepatcht

Gemelde oplossingen

De leverancier heeft versie 0.30.0 uitgebracht, die de in het advies beschreven path traversal- en rechtenclassificatieproblemen verhelpt. Een patch is beschikbaar via de GitHub-releasepagina van het project. Het advies geeft verder geen technische details over de precieze codewijzigingen, behalve dat er een fix beschikbaar is.

Hoe dit rapport is gemaakt

1 bronrecords zijn opgehaald, gekoppeld en gebruikt om het rapport hierboven op te stellen.

  • GitHub Advisory Database database
Eén rapport
Path traversal-lek in Knowns maakt willekeurig lezen, schrijven en verwijderen van bestanden mogelijk via MCP docs- en memory-tools
1 artikel · 1 bronnen geciteerd
Revisiegeschiedenis
  1. Gepubliceerd
  2. Gegenereerd
De Ochtendbriefing

Relevante veranderingen voor de stacks die je volgt.

Kies je stacks, onderwerpen en eventueel WordPress-plugins. Om 07:00 CEST worden passende meldingen en releases uit de rapportageperiode in één e-mail gegroepeerd.

✓ Kies stacks en onderwerpen✓ Pas voorkeuren altijd aan✓ Eén gebundelde e-mail