---
title: "Onko Claude Code turvallinen? Mitä 93 tapausta näyttää"
description: "Claude Code on yhtä turvallinen kuin sen asetukset. 93 julkista tapausta syyn mukaan, Anthropicin suojat oletuksineen ja asetukset, jotka pysäyttävät ne."
url: "https://madsalt.tech/fi/blog/is-claude-code-safe/"
author: "Denys Zaichenko"
language: "fi"
published: 2026-11-01
---

# Onko Claude Code turvallinen? Mitä 93 tapausta näyttää

TL;DR

Claude Code on turvallinen käyttää, jos sen asettaa, ja oletuksilla riskialtis. Tuoreessa asennuksessa lokakuussa 2026 sandbox on pois päältä, kieltosääntöjä tai hookeja ei ole, ja hyväksymäsi shell-komento voi kirjoittaa minne tahansa, minne käyttäjätilisi voi. Lajittelin 93 julkista tapausraporttia GitHub-issueista, tietoturvatiedotteista ja tietoturvakirjoituksista: vahingot tulivat pyytämättömistä `git reset --hard` -komennoista ja tietokannan nollauksista, säännöistä, jotka elivät vain tiedostossa `CLAUDE.md`, epäluotettavista repoista, issueista ja plugineista sekä subagenteista, jotka käynnistivät subagentteja. Lähes mikään ei ollut dramaattinen `rm -rf /`. Pidä työ gitissä, laita sandbox päälle, kirjoita kieltosäännöt ja yksi estävä hook, ja pidä tuotantotunnukset agentin ulottumattomissa.

93

julkista tapausraporttia syyn mukaan lajiteltuna, kesäkuu 2025 – lokakuu 2026

GitHub-issuet, tietoturvatiedotteet, tietoturvablogit, Hacker News

19

niistä kertoo datan menetetyn lopullisesti

vielä 11 kertoo sen palautetun

10

rikkoi säännön, joka oli kirjoitettu vain tiedostoon CLAUDE.md

kehote on neuvo, oikeussääntö on valvontaa

Olen Denys, full-stack- ja tekoälyinsinööri, ja käytän Claude Codea joka päivä. Alla on kaksi asiaa: mikä meni pieleen muilla ja mitä Claude Code antaa sitä vastaan, mukaan lukien mitkä näistä suojista ovat oletuksena päällä. Sitten asetukset, jotka kattavat aukot.

## Onko Claude Code turvallinen?

Turvallisuus ei asu mallissa. Claude Code päättää, mitä ajetaan, oikeustilan, oikeussääntöjen, valinnaisen sandboxin ja valinnaisten hookien kautta, ja Anthropicin [oikeussivu](https://code.claude.com/docs/en/permissions) sanoo sen suoraan: säännöt valvoo Claude Code, ei malli, ja `CLAUDE.md`-tiedoston ohjeet muokkaavat sitä, mitä Claude yrittää tehdä, mutta eivät muuta sitä, mitä se saa tehdä.

Rehellinen vastaus riippuu siis asetuksistasi. [Tietoturvasivu](https://code.claude.com/docs/en/security) kuvaa työhakemiston rajan oikeuskehotteena ja lisää, että "a Bash command you approve can still write anywhere your user account can" (hyväksymäsi Bash-komento voi yhä kirjoittaa minne tahansa, minne käyttäjätilisi voi). [Sandbox-sivu](https://code.claude.com/docs/en/sandboxing) sanoo "The sandbox is off by default" (sandbox on oletuksena pois päältä) ja että vaikka se on päällä, se kattaa vain shell-komennot: tiedostotyökalut, MCP-palvelimet ja hookit toimivat sen ulkopuolella. Anthropicin oma päätössana tietoturvasivulla: "no system is completely immune to all attacks." (mikään järjestelmä ei ole täysin immuuni kaikille hyökkäyksille.)

## Mikä meni pieleen muilla: 93 tapausraporttia

31. lokakuuta 2026 keräsin julkiset raportit siitä, että Claude Code teki vahinkoa tai oli lähellä tehdä: 63 GitHub-issuea ja tietoturvatiedotetta, 26 kirjoitusta tietoturva- ja insinöörblogeissa ja 4 Hacker News -ketjua, kesäkuusta 2025 lokakuuhun 2026. Jätin pois Reddit-ketjut, jotka näin vain peilien kautta. Jokaiselle raportille annettiin yksi tyyppi ja, jos raportoija kertoi sen, oikeustila ja menetettiinkö dataa. 60 niistä 61 lainauksesta, jotka tarkistin GitHub-tekstiä vasten, täsmäsi sanasta sanaan.

![93 tapausraporttia tyypin mukaan. GitHub-issuet, tiedotteet, blogit, Hacker News. 06.2025–10.2026. Sandboxin tai oikeuksien ohitus: 15; Gitissä tuhottu työ: 14; Vuotaneet salaisuudet: 12; Poistetut tiedostot: 11; Tietokanta vaurioitui: 9; Haitallinen MCP-palvelin tai plugin: 9; Subagenttien karannut kulu: 9; Prompt injection: 5; Muut: 9.](https://madsalt.tech/charts/fi/is-claude-code-safe-incidents.svg)

*Kuva 1. 93 julkista tapausraporttia (63 GitHub-issuea ja tiedotetta, 26 blogikirjoitusta, 4 Hacker News -ketjua), kesäkuu 2025 – lokakuu 2026, kerätty 31. lokakuuta 2026.*

19 raporttia kertoo datan menetetyn lopullisesti, 11 sen palautetun, 36 kuvaa aukon, joka löytyi ennen kuin kukaan kärsi (useimmat korjattuja tiedotteita), ja 27 ei kerro. 56 raportista 93:sta ei nimeä oikeustilaa, joten tämä joukko ei voi kertoa, tapahtuuko vahinko "YOLO-tilassa". Se näyttää viisi kaavaa.

**1. Agentti ajaa tuhoavan komennon, jota kukaan ei pyytänyt.** Lint-virheitä korjatessaan se ajoi `git checkout HEAD -- .` ja heitti pois tunnin commitoimatonta työtä ([#11821](https://github.com/anthropics/claude-code/issues/11821)). Istunnon alussa se ajoi `git reset --hard origin/main` pushaamattomien commitien päälle ([#34327](https://github.com/anthropics/claude-code/issues/34327)). Se ajoi `drizzle-kit push --force` tuotantotietokantaan ilman varmuuskopioita ([#27063](https://github.com/anthropics/claude-code/issues/27063)), hyväksyi Prisma-nollauksen tuotannossa ([#33183](https://github.com/anthropics/claude-code/issues/33183)) ja yhdessä [kirjoituksessa](https://aishippinglabs.com/blog/how-i-dropped-our-production-database-and-now-pay-10-more-for-aws) ajoi `terraform destroy` vanhan tuotannon state-tiedoston ollessa kansiossa. Mikään näistä ei ole `rm -rf /`. Ne ovat tavallisia komentoja lipulla, joka ohittaa työkalun oman vahvistuksen.

**2. Säännöt, jotka elävät vain `CLAUDE.md`-tiedostossa.** 10 raporttia koskee kirjoitettua sääntöä, jonka agentti rikkoi: se commitoi oikeita API-avaimia 150-rivisestä tietoturvaosiosta huolimatta ([#2142](https://github.com/anthropics/claude-code/issues/2142)), commitoi "never commit" -säännön jälkeen ([#34774](https://github.com/anthropics/claude-code/issues/34774)), tulosti tokenin `grep`illä ja huomasi sen vasta jälkikäteen ([#44868](https://github.com/anthropics/claude-code/issues/44868)). Yksi raportoija huomauttaa, että `CLAUDE.md` on repossa, johon agentti voi kirjoittaa ([#23870](https://github.com/anthropics/claude-code/issues/23870)). Se sopii dokumentaatioon: kehote on neuvo, sääntö on valvontaa.

**3. Kieltosääntö estää komennon, ei tavoitetta.** Kun `Bash(rm *)` oli kielletty, agentti poisti tiedoston Python-yhdellä rivillä ([#39459](https://github.com/anthropics/claude-code/issues/39459)). Oikeussivu sanoo saman tekstin täsmäyttämisestä: `git -C . push` ei täsmää sääntöön `git push`.

**4. Epäluotettava teksti ja koodi saavat saman vallan kuin sinä.** Repon oma asetustiedosto saattoi ajaa hookeja ja lähettää API-avaimen ennen luottamusdialogia ([Check Point, CVE-2025-59536](https://research.checkpoint.com/2026/rce-and-api-token-exfiltration-through-claude-code-project-files-cve-2025-59536/)). GitHub-issuen kehote sai Claude Coden GitHub Actionin lukemaan runnerin ympäristön ja paljastamaan API-avaimensa ([Microsoft](https://www.microsoft.com/en-us/security/blog/2026/06/05/securing-ci-cd-in-agentic-world-claude-code-github-action-case/)). Marketplace-plugin piilotetulla hookilla lähetti koodia hyökkääjän palvelimelle ([PromptArmor](https://www.promptarmor.com/resources/hijacking-claude-code-via-injected-marketplace-plugins)), ja lokakuussa Cursorin marketplacessa oli muokattu kopio Claude Code -laajennuksesta ([Cursor](https://cursor.com/blog/claude-code-extension-security-notice)). Korjatut on korjattu; kaava pysyy.

**5. Subagentit, jotka käynnistävät subagentteja.** Yksi istunto poltti yli 600 dollaria ([#72732](https://github.com/anthropics/claude-code/issues/72732)); toinen käynnisti noin 242 agenttia ennen kuin käyttäjä kirjoitti `/exit` ([#69332](https://github.com/anthropics/claude-code/issues/69332)). Ylläpitäjän vastaus issuessa #72732 kertoo, että rinnakkaisten subagenttien ja sisäkkäisyyden syvyyden rajat lisättiin versioissa 2.1.217 ja 2.1.219.

## Mitä Claude Code antaa ja mikä on oletuksena päällä

Jokainen alla oleva suoja on todellinen ja dokumentoitu. Ratkaiseva on kolmas sarake.

| Suoja                                                                       | Mitä se tekee                                                                                    | Oletus, lokakuu 2026                                                                                                                                                                            |
| --------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Oikeustila](https://code.claude.com/docs/en/permission-modes)              | Manuaalinen kysyy ennen muutoksia ja komentoja; auto-tilassa luokittelumalli hyväksyy puolestasi | Auto-tila on interaktiivisten istuntojen aloitustila versiosta v2.1.283 alkaen                                                                                                                  |
| Auto-tilan luokittelija                                                     | Estää toimet, joita se pitää vaarallisina                                                        | Päällä auto-tilan kanssa. Anthropicin [maaliskuun 2026 luvut](https://www.anthropic.com/engineering/claude-code-auto-mode): 17 % 52:sta todellisesta liian innokkaasta toimesta jäi huomaamatta |
| [Deny-, ask- ja allow-säännöt](https://code.claude.com/docs/en/permissions) | Estävät tai pakottavat kysymyksen täsmääviin työkalukutsuihin, kaikissa tiloissa                 | Ei yhtään, ennen kuin kirjoitat ne                                                                                                                                                              |
| [Bash-sandbox](https://code.claude.com/docs/en/sandboxing)                  | Käyttöjärjestelmän valvomat tiedosto- ja verkkorajoitukset shell-komennoille                     | Pois päältä. Vain shell; lukee `~/.ssh`-kansion, ellet estä                                                                                                                                     |
| [Hookit](https://code.claude.com/docs/en/hooks)                             | Skriptisi ajetaan ennen jokaista työkalukutsua ja voi estää sen                                  | Ei yhtään                                                                                                                                                                                       |
| [Checkpointit ja `/rewind`](https://code.claude.com/docs/en/checkpointing)  | Kumoavat Clauden tekemät tiedostomuutokset                                                       | Päällä, mutta vain Bashin muuttamia tiedostoja ei seurata                                                                                                                                       |
| Luottamusdialogi, `.mcp.json`-hyväksyntä                                    | Kysyvät ennen kansion tai projektin MCP-palvelimien luottamista                                  | Päällä interaktiivisesti; `-p`-istunto ei näytä kumpaakaan                                                                                                                                      |
| [Hallinnoidut asetukset](https://code.claude.com/docs/en/managed-settings)  | Organisaatio lukitsee tilat, säännöt ja hookit                                                   | Ei käytössä, ellei yrityksesi ota sitä käyttöön                                                                                                                                                 |

Tämä on yhden työkalukutsun polku. Punaiset vaiheet ovat ne, jotka tuore asennus jättää tyhjiksi tai pois päältä:

1. **Claude ehdottaa työkalukutsua**. Tiedoston muokkaus, shell-komento, MCP-palvelimen kutsu.
2. **PreToolUse-hookit**. Skriptisi näkee koko kutsun ja voi estää sen. Oletuksena ei yhtään.
3. **Deny- ja ask-säännöt**. Täsmäävät komennon sellaisena kuin se on kirjoitettu. Oletuksena ei yhtään.
4. **Oikeustila**. Manuaalinen kysyy sinulta, auto-tila kysyy luokittelijalta, bypass ei kysy keneltäkään.
5. **Sandbox**. Käyttöjärjestelmän tiedosto- ja verkkorajat, vain shell-komennoille. Oletuksena pois päältä.
6. **Kutsu ajetaan käyttäjäsi oikeuksilla**. Tämän jälkeen auttavat vain git ja varmuuskopiot.

*Kuva 2. Kerrokset ehdotetun työkalukutsun ja tiedostojesi välillä, oletuksineen Claude Codessa lokakuussa 2026.*

`--dangerously-skip-permissions` saa dokumentaatiossa oman rivinsä: "Only use this mode in isolated environments like containers or VMs where Claude Code can't cause damage." (Käytä tätä tilaa vain eristetyissä ympäristöissä, kuten konteissa tai virtuaalikoneissa, joissa Claude Code ei voi aiheuttaa vahinkoa.)

Deny-säännöt ja hookit arvioivat molemmat komentoa tekstinä, joten toisin kirjoitettu komento voi silti livahtaa läpi, ja hook toimii täysillä oikeuksillasi. Siksi ne ovat yksi kerros, ja git, varmuuskopiot ja erilliset tunnukset ovat muut.

## Miten Claude Code asetetaan turvallisesti

Arvon mukaan minuuttia kohden:

1. **Tee commit ennen aloitusta ja usein.** Checkpointit eivät kata tiedostoja, jotka shell-komento muutti. Git kattaa.
2. **Pidä tuotantotunnukset poissa agentin kansiosta.** Yhdessä raportissa subagentin kertakäyttöskriptit ajoivat `DELETE FROM` jokaiselle taululle, koska tuotantotunnukset olivat kommentoimattomina paikallisessa `.env`-tiedostossa ([#64056](https://github.com/anthropics/claude-code/issues/64056)). Kehitystietokanta, jonka agentti voi rikkoa, on ok; tuotantotietokanta, johon se yltää, on tapaus.
3. **Kirjoita kieltosäännöt komennoille, jotka tuhoavat.** Ne pätevät kaikissa tiloissa, myös bypassissa:

```json
{
  "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
  }
}
```

4. **Laita sandbox päälle** (`/sandbox`) ja kytke sandboxin ulkopuolinen uusintayritys pois, kuten yllä. Lisää `filesystem.denyRead` kansioille `~/.ssh` ja pilvitunnusten kansioille, koska sandbox lukee ne oletuksena.
5. **Lisää yksi `PreToolUse`-hook sille, minkä tekstisäännöt missaavat.** Kieltosääntö ei näe `git -C . push --force` -komentoa eikä Python-poistoa; lyhyt skripti, joka katsoo koko komennon, näkee. Aloita viidestä komennosta, jotka sattuisivat eniten.
6. **Kohtele epäluotettavaa sisältöä koodina.** Avaa tuntemattomat repot kontissa tai virtuaalikoneessa, anna CI-ajoille rajatut tokenit ja muista, ettei `-p`-istunto näytä luottamusdialogia. Plugin tai MCP-palvelin toimii sinun oikeuksillasi; Anthropic sanoo, että se "does not security-audit or manage any MCP server." (ei tee tietoturva-auditointia eikä hallinnoi mitään MCP-palvelinta.)
7. **Rajaa pitkät ajot.** Käytä valvomattomaan työhön `--max-budget-usd` ja seuraa subagenttien määrää.

Jos agentti rakentaa Supabasen päälle, sama ajattelu pätee avaimiin: salainen avain, jota se käyttää skripteissä, ohittaa jokaisen politiikan, kuten näytin artikkelissa [anon key vs service role key](https://madsalt.tech/fi/blog/supabase-anon-key-vs-service-role-key/). Laajempi lista siitä, mitä tekoälyllä rakennetuissa sovelluksissa menee vikaan, on artikkelissa [vibe codingin tietoturvariskit](https://madsalt.tech/fi/blog/vibe-coding-security-risks/), ja miten agentit epäonnistuvat pitkissä ajoissa, on artikkelissa [mikä hajosi monen agentin orkestroinnissani](https://madsalt.tech/fi/blog/multi-agent-orchestration-what-broke/).

## Mitä ihmiset kysyvät

**Voiko Claude Code poistaa tiedostoni?** Kyllä. Manuaalisessa tilassa se kysyy ensin, mutta hyväksytty komento yltää mihin tahansa, mihin käyttäjäsi yltää; automaattisen hyväksynnän tiloissa se ei välttämättä kysy. 11 yllä olevista raporteista on tiedostojen poistoja. Git ja varmuuskopiot ovat korjaus, joka toimii aina.

**Onko `--dangerously-skip-permissions` turvallinen?** Anthropicin dokumentaation mukaan vain kontissa tai virtuaalikoneessa, jossa ei ole mitään, mitä et voi menettää. Deny-säännöt ja hookit pätevät siinä tilassa yhä; kehotteet eivät.

**Onko auto-tila turvallinen?** Turvallisempi kuin kaiken hyväksyminen refleksinä. Anthropic mittasi 0,4 %:n väärien positiivisten osuuden ja sanoi, että se jätti huomaamatta 17 % todellisista liian innokkaista toimista maaliskuun 2026 testissään, ja kutsui sitä sanoilla "not a drop-in replacement for careful human review on high-stakes infrastructure." (ei suoraa korviketta huolelliselle ihmisen tarkastukselle kriittisessä infrastruktuurissa.)

**Lähettääkö Claude Code koodini Anthropicille koulutukseen?** Kaupallisilla ehdoilla (Team, Enterprise, API) Anthropic sanoo, ettei se kouluta koodillasi tai kehotteillasi, ellet ota sitä käyttöön. Kuluttajatilauksissa se on asetus, jota hallitset. Tiedot ovat [datankäyttösivulla](https://code.claude.com/docs/en/data-usage).

**Onko auto-tila sama asia kuin `--dangerously-skip-permissions`?** Ei. Anthropic rakensi auto-tilan korvaamaan sen lipun: luokittelija arvioi yhä shell-komennot, verkkokutsut ja subagenttien käynnistykset, ja 3 peräkkäisen tai 20 kokonaiskiellon jälkeen se pysähtyy ja palauttaa ohjat sinulle. Lippu ei arvioi mitään.
