TL;DR
Claude Code er sikkert at bruge, hvis du sætter det op, og risikabelt på standardindstillingerne. På en frisk installation i oktober 2026 er sandboxen slået fra, der er ingen deny-regler og ingen hooks, og en shell-kommando, du godkender, kan skrive overalt, hvor din brugerkonto kan. Jeg sorterede 93 offentlige hændelsesrapporter fra GitHub-issues, advisories og sikkerhedsartikler: skaden kom fra uanmodede git reset --hard og database-nulstillinger, regler der kun stod i CLAUDE.md, upålidelige repos, issues og plugins og subagenter, der startede subagenter. Næsten intet af det var et dramatisk rm -rf /. Læg arbejdet i git, slå sandboxen til, skriv deny-regler og én blokerende hook, og hold produktionsnøgler uden for agentens rækkevidde.
93
offentlige hændelsesrapporter sorteret efter årsag, juni 2025 til oktober 2026
GitHub-issues, advisories, sikkerhedsblogs, Hacker News
19
af dem siger, at data gik tabt for altid
yderligere 11 siger, at de blev genskabt
10
brød en regel, der kun stod i CLAUDE.md
en prompt er et råd, en tilladelsesregel er håndhævelse
Jeg er Denys, fullstack- og AI-ingeniør, og jeg bruger Claude Code hver dag. Nedenfor er to ting: hvad der gik galt for andre, og hvad Claude Code giver dig imod det, herunder hvilke af disse kontroller der er slået til som standard. Så en opsætning, der dækker hullerne.
Er Claude Code sikker?
Sikkerheden ligger ikke i modellen. Claude Code afgør, hvad der kører, gennem en tilladelsestilstand, tilladelsesregler, en valgfri sandbox og valgfrie hooks, og Anthropics tilladelsesside siger det klart: regler håndhæves af Claude Code, ikke af modellen, og instruktioner i CLAUDE.md former, hvad Claude forsøger, men ændrer ikke, hvad det må.
Det ærlige svar afhænger altså af din opsætning. Sikkerhedssiden beskriver arbejdsmappens grænse som en tilladelsesforespørgsel og tilføjer, at “en Bash-kommando, du godkender, stadig kan skrive overalt, hvor din brugerkonto kan”. Sandbox-siden siger “Sandboxen er slået fra som standard”, og at den, selv når den er slået til, kun dækker shell-kommandoer: filværktøjerne, MCP-servere og hooks kører uden for den. Anthropics egen afsluttende linje på sikkerhedssiden: “intet system er fuldstændig immunt over for alle angreb.”
Hvad der gik galt for andre: 93 hændelsesrapporter
Den 31. oktober 2026 samlede jeg offentlige rapporter om, at Claude Code gjorde skade eller næsten gjorde: 63 GitHub-issues og sikkerheds-advisories, 26 artikler på sikkerheds- og ingeniørblogs og 4 Hacker News-tråde, fra juni 2025 til oktober 2026. Jeg udelod Reddit-tråde, jeg kun kunne se via spejle. Hver rapport fik én type og, hvor indberetteren sagde det, tilladelsestilstanden og om data gik tabt. 60 af de 61 citater, jeg kontrollerede mod GitHub-teksten, stemte ordret.
19 rapporter siger, at data gik tabt for altid, 11, at de blev genskabt, 36 beskriver et hul fundet, før nogen kom til skade (de fleste advisories, der blev rettet), og 27 siger det ikke. 56 af 93 nævner ikke tilladelsestilstanden, så dette sæt kan ikke fortælle, om “YOLO-tilstand” er der, hvor skaden sker. Det, det viser, er fem mønstre.
1. Agenten kører en destruktiv kommando, ingen bad om. Mens den rettede lint-fejl, kørte den git checkout HEAD -- . og smed en times ikke-committet arbejde væk (#11821). Ved sessionsstart kørte den git reset --hard origin/main over upushede commits (#34327). Den kørte drizzle-kit push --force mod en produktionsdatabase uden backups (#27063), accepterede en Prisma-nulstilling i produktion (#33183), og i én artikel kørte den terraform destroy med en gammel produktions-statefil i mappen. Intet af det er rm -rf /. Det er almindelige kommandoer med et flag, der springer værktøjets egen bekræftelse over.
2. Regler der kun står i CLAUDE.md. 10 rapporter handler om en skrevet regel, agenten brød: den committede rigtige API-nøgler trods et 150 linjer langt sikkerhedsafsnit (#2142), committede efter en “commit aldrig”-regel (#34774), printede et token med grep og opdagede det først bagefter (#44868). Én indberetter påpeger, at CLAUDE.md ligger i det repo, agenten kan skrive til (#23870). Det passer med dokumentationen: en prompt er et råd, en regel er håndhævelse.
3. En deny-regel blokerer en kommando, ikke et mål. Med Bash(rm *) på deny-listen slettede agenten filen med en Python-enlinjer (#39459). Tilladelsessiden siger det samme om tekstmatchning: git -C . push matches ikke af en regel for git push.
4. Upålidelig tekst og kode får samme magt som dig. Et repos egen indstillingsfil kunne køre hooks og sende API-nøglen, før tillidsdialogen (Check Point, CVE-2025-59536). En prompt i et GitHub-issue fik Claude Code GitHub Action til at læse runnerens miljø og afsløre sin API-nøgle (Microsoft). Et marketplace-plugin med en skjult hook sendte kode til en angribers server (PromptArmor), og i oktober lå en manipuleret kopi af Claude Code-udvidelsen i Cursors marketplace (Cursor). De rettede er rettet; mønstret består.
5. Subagenter der starter subagenter. Én session brændte over 600 dollar af (#72732); en anden startede omkring 242 agenter, før brugeren skrev /exit (#69332). En vedligeholders svar i #72732 siger, at lofter for samtidige subagenter og indlejringsdybde blev tilføjet i 2.1.217 og 2.1.219.
Hvad Claude Code giver dig, og hvad der er slået til som standard
Hver kontrol nedenfor er ægte og dokumenteret. Den kolonne, der tæller, er den tredje.
| Kontrol | Hvad den gør | Standard, oktober 2026 |
|---|---|---|
| Tilladelsestilstand | Manuel spørger før redigeringer og kommandoer; auto-tilstand lader en klassifikatormodel godkende i stedet for dig | Auto-tilstand er starttilstanden for interaktive sessioner siden v2.1.283 |
| Auto-tilstandens klassifikator | Blokerer handlinger, den vurderer som usikre | Slået til med auto-tilstand. Anthropics tal fra marts 2026: 17 % af 52 reelle overivrige handlinger blev overset |
| Deny-, ask- og allow-regler | Blokerer eller gennemtvinger en forespørgsel for matchende værktøjskald, i alle tilstande | Ingen, før du skriver dem |
| Bash-sandbox | OS-håndhævede grænser for filer og netværk til shell-kommandoer | Slået fra. Kun shell; læser ~/.ssh, medmindre du afviser det |
| Hooks | Dit script kører før hvert værktøjskald og kan blokere det | Ingen |
Checkpoints og /rewind |
Fortryder Claudes filredigeringer | Slået til, men filer ændret kun af Bash spores ikke |
Tillidsdialog, .mcp.json-godkendelse |
Spørger, før en mappe eller et projekts MCP-servere stoles på | Slået til interaktivt; en -p-session viser ingen af dem |
| Managed settings | En organisation låser tilstande, regler og hooks | Ikke udrullet, medmindre din virksomhed gør det |
Her er vejen, ét værktøjskald tager. De røde trin er dem, en frisk installation lader være tomme eller slået fra:
- Claude foreslår et værktøjskaldRedigér en fil, kør en shell-kommando, kald en MCP-server.
- PreToolUse-hooksDit script ser hele kaldet og kan blokere det. Ingen som standard.
- Deny- og ask-reglerMatcher kommandoen, som den er skrevet. Ingen som standard.
- TilladelsestilstandManuel spørger dig, auto-tilstand spørger en klassifikator, bypass spørger ingen.
- SandboxOS-grænser for filer og netværk, kun for shell-kommandoer. Slået fra som standard.
- Kaldet kører med din brugers adgangEfter dette punkt hjælper kun git og backups.
--dangerously-skip-permissions har sin egen linje i dokumentationen: “Brug kun denne tilstand i isolerede miljøer som containere eller VM’er, hvor Claude Code ikke kan gøre skade.”
Deny-regler og hooks vurderer begge kommandoen som tekst, så en kommando skrevet på en anden måde kan stadig slippe igennem, og en hook kører med din fulde adgang. Derfor er de ét lag, og git, backups og adskilte nøgler er de andre.
Sådan sætter du Claude Code sikkert op
I rækkefølge efter værdi pr. minut:
- Commit, før du starter, og ofte. Checkpoints dækker ikke filer, en shell-kommando har ændret. Det gør git.
- Hold produktionsnøgler ude af agentens mappe. I én rapport kørte en subagents engangsscripts
DELETE FROMpå hver tabel, fordi produktionsnøgler stod ukommenteret i den lokale.env(#64056). En udviklingsdatabase, agenten kan ødelægge, er fin; en produktionsdatabase, den kan nå, er hændelsen. - Skriv deny-regler for de kommandoer, der ødelægger. De gælder i alle tilstande, også bypass:
{
"permissions": {
"deny": [
"Bash(git reset --hard *)",
"Bash(git push --force *)",
"Bash(git push -f *)",
"Bash(git checkout -- *)",
"Bash(git clean *)",
"Bash(terraform destroy *)",
"Bash(drizzle-kit push --force *)",
"Bash(prisma migrate reset *)",
"Read(./.env)",
"Read(./.env.*)"
]
},
"sandbox": {
"enabled": true,
"allowUnsandboxedCommands": false
}
}
- Slå sandboxen til (
/sandbox), og slå forsøget uden sandbox fra som ovenfor. Tilføjfilesystem.denyReadfor~/.sshog mapper med cloud-nøgler, da sandboxen læser dem som standard. - Tilføj én
PreToolUse-hook til det, tekstregler overser. En deny-regel kan ikke segit -C . push --forceeller en Python-sletning; et kort script, der ser på hele kommandoen, kan. Begynd med de fem kommandoer, der ville gøre mest ondt. - Behandl upålideligt indhold som kode. Åbn ukendte repos i en container eller VM, giv CI-kørsler afgrænsede tokens, og husk at en
-p-session ikke viser nogen tillidsdialog. Et plugin eller en MCP-server kører med dine rettigheder; Anthropic siger, at det “ikke sikkerhedsreviderer eller styrer nogen MCP-server”. - Begræns lange kørsler. Brug
--max-budget-usdtil uovervåget arbejde og hold øje med antallet af subagenter.
Hvis agenten bygger på Supabase, gælder den samme tankegang nøgler: den secret key, den bruger i scripts, springer alle policies over, som jeg viste i anon key vs service role key. Den bredere liste over, hvad AI-byggede apps gør forkert, står i vibe coding-sikkerhedsrisici, og hvordan agenter fejler i lange kørsler, står i hvad der gik i stykker i min multi-agent-orkestrering.
Spørgsmål, folk stiller
Kan Claude Code slette mine filer? Ja. I Manuel tilstand spørger det først, men en godkendt kommando kan nå alt, din bruger kan; med auto-godkendende tilstande spørger det måske ikke. 11 af rapporterne ovenfor er filsletninger. Git og backups er den løsning, der altid virker.
Er --dangerously-skip-permissions sikkert? Kun i en container eller VM uden noget, du ikke kan tåle at miste, ifølge Anthropics dokumentation. Deny-regler og hooks gælder stadig i den tilstand; forespørgsler gør ikke.
Er auto-tilstand sikker? Sikrere end at godkende alt af refleks. Anthropic målte en falsk-positiv-rate på 0,4 % og sagde, at den overså 17 % af reelle overivrige handlinger i sin test fra marts 2026, og kaldte den “ikke en erstatning for omhyggelig menneskelig gennemgang på kritisk infrastruktur”.
Sender Claude Code min kode til Anthropic til træning? Under kommercielle vilkår (Team, Enterprise, API) siger Anthropic, at det ikke træner på din kode eller dine prompts, medmindre du tilvælger det. På forbrugerplaner er det en indstilling, du styrer. Detaljer står på siden om dataforbrug.
Er auto-tilstand det samme som --dangerously-skip-permissions? Nej. Anthropic byggede auto-tilstand for at erstatte det flag: en klassifikator gennemgår stadig shell-kommandoer, netværkskald og subagent-starter, og efter 3 afvisninger i træk eller 20 i alt stopper den og afleverer til dig. Flaget gennemgår ingenting.