Anthropic popsal zranitelnost Claude Code až pět měsíců po její opravě
Bezpečnostní hlášení o zápisu mimo projekt přes podvržený symbolický odkaz vyšlo 5. října, oprava podle něj přišla ve verzi 2.1.129 z 5. května. Mezi hlášeními k Claude Code je to nejdelší odstup, jaký se dá doložit; obvykle je to kolem měsíce.

Anthropic 5. října zveřejnil v repozitáři Claude Code bezpečnostní hlášení GHSA-5j29-h97v-84ch se závažností vysoká. Týká se všech verzí před 2.1.129. Jenže ta podle registru npm vyšla 5. května, takže mezi opravou a zveřejněním uplynulo 152 dní.
Claude Code zapisoval tam, kam vedl podvržený odkaz
Claude Code před zápisem ověřil, že cílový soubor leží uvnitř pracovního adresáře projektu. Při samotném zápisu si ale cestu přeložil znovu a kontrolu už nezopakoval. Kdo měl do adresáře právo zápisu, mohl v té mezeře vyměnit soubor projektu za symbolický odkaz, tedy zástupce mířícího na jiný soubor. Nástroj pak úpravu zapsal tam, kam odkaz vedl – hlášení jako příklad uvádí konfiguraci shellu.
Hlášení chybu řadí do tří tříd: procházení cesty (CWE-22), následování symbolického odkazu (CWE-61) a souběh mezi kontrolou a použitím (CWE-367, anglicky time-of-check to time-of-use). Podmínky útoku jsou dvě. Útočník musí mít zápis do sdíleného pracovního prostoru a musí trefit krátký okamžik mezi kontrolou a zápisem. Scénář, který hlášení popisuje, je uživatel s nižšími právy, který takhle přesměruje neškodné úpravy v sezení někoho s vyššími právy.
Známku CVSS hlášení nemá. Číslo CVE-2026-103435 má přidělené, ale rejstřík cve.org k němu 5. října záznam nevedl. Chybu podle hlášení nahlásil přes HackerOne uživatel c_h4ck_0.
Poznámky k verzi 2.1.129 opravu nezmiňují
V poznámkách k vydání má verze 2.1.129 dvacet sedm položek. Žádná nemluví o symbolických odkazech ani o zápisu mimo projekt. Kdo poznámky čte, aby věděl, kdy povýšit, tuhle opravu v nich nenašel.
Podobně znějící položka stojí až u verze 2.1.251 z 28. srpna. Ta opravuje nástroje Read, Write a Edit, které po kontrole oprávnění následovaly symbolický odkaz vyměněný uvnitř pracovního adresáře, a mohly tak číst nebo zapisovat mimo schválené místo. Hlášení na tuhle položku neodkazuje. Z veřejných zdrojů se proto nedá poznat, jestli jde o tutéž chybu opravenou dvakrát, nebo o příbuznou díru, kterou Anthropic zalepil později.
Obvyklý odstup je kolem měsíce
Repozitář Claude Code vede 33 bezpečnostních hlášení. U 29 z nich se dá podle opravené verze v registru npm dohledat, kdy oprava vyšla. Zbylá čtyři jsou tři hlášení k aplikaci Claude Desktop, která se přes npm nevydává, a jedno s verzí 0.2.111, kterou registr nevede.
Medián odstupu mezi opravou a hlášením vychází na 34 dní, nejkratší je pět dní. Přes sto dní se dostala jen tři hlášení: obejití potvrzení důvěry před spuštěním (140 dní), obejití kontroly domén (145 dní) a teď zápis přes symbolický odkaz se 152 dny. Hodnoty jsou náš výpočet z dat zveřejnění v rozhraní GitHubu a dat vydání v registru npm.
Hlášení samo připomíná, že uživatelé s automatickými aktualizacemi opravu už mají. Kdo Claude Code aktualizuje ručně nebo přes firemní balíčky, se o ní dozvídá až teď.
Koho se to týká
Verzi ukáže příkaz claude --version. Opravené je všechno od 2.1.129 výš; registr npm k 5. říjnu vede jako nejnovější verzi 2.1.289 a ve stabilním kanálu 2.1.285. Riziko se týká hlavně sdílených strojů a kontejnerů, kde do pracovního adresáře může psát i někdo jiný než ten, kdo Claude Code spouští. Na jednouživatelském notebooku musí útočník do adresáře projektu zapisovat už předem.
Že Claude Code s cestami mimo projekt zápasí opakovaně, ukázaly i čtyři opravy ochrany proti čtení mimo pracovní adresář během dvou týdnů v září.