Biztonsági felülvizsgálat a Claude Code-ban: lépésről lépésre útmutató és GitHub Action automatizálás 2026-ban
MarkdownHogyan ellenőrizd egy vibe projekt biztonságát a Claude Code /security-review parancsával. Beállítási lépések, GitHub Action-sablon, 6 sérülékenységtípus és őszinte korlátozások.
A teljes cikk elolvasása
Az eredeti anyag szerzője a saját tapasztalatát írja le: „Épp most futtattam le a security-review-t a saját vibe projektemen, és a csapat 4 perc alatt több valódi problémát talált, amelyeket már ki is javítottunk.” Ugyanez a munka korábban egy külső tanácsadónak egy teljes napjába telt.
Az eszközök konfigurálásáról további anyagok találhatók az Ailoot dokumentációjában.
Mi a /security-review a Claude Code-ban?
Főbb tudnivalók
A /security-review a Claude Code beépített parancsa, amely közvetlenül a terminálból futtat biztonsági elemzést a teljes projekten vagy az aktuális módosításokon. Az Anthropic 2026. február 20-án indította el a Claude Code Security részeként, és minden Pro, Max és API Console-felhasználó számára elérhetővé tette. A kérés díját a szokásos Claude API-egyenlegedből vonják le.
A parancs két módban működik. Helyben: futtasd a /security-review parancsot a terminálban, Claude pedig beolvassa a repót és jelentést készít. Szerveroldalon: ugyanaz a motor GitHub Actionként van telepítve, és automatikusan soron belüli megjegyzéseket fűz minden Pull Requesthez.
A hagyományos SAST-szkennerekkel (Snyk Code, Semgrep, SonarQube) ellentétben a /security-review nem rögzített szabályok alapján működik. Úgy olvassa a kódot, mint egy valódi mérnök: követi az adatfolyamot, megérti, milyen keretrendszert használsz, hol húzódnak a bizalmi határok, és olyan sérülékenységeket is észrevesz, amelyeket egy szabály nem ír le.
A Claude Code Security úgy olvassa és elemzi a kódodat, ahogyan egy emberi biztonsági kutató tenné: megérti, hogyan működnek együtt az összetevők, követi az adatok útját az alkalmazáson belül, és olyan összetett sérülékenységeket is észrevesz, amelyeket a szabályalapú eszközök nem találnak meg.
Ez nem jelenti azt, hogy a /security-review kiváltja a külső pentestet vagy az éles tesztelést staging környezetben. Automatizálhatja a kezdeti kódfelülvizsgálat egy részét, de a cikk nem mér auditlefedettségi arányt. Az alábbiakban elmagyarázom, hogyan futtasd megfelelően, és mit talál majd Claude a projektedben.
Hogyan futtasd a /security-review parancsot 5 lépésben?
Főbb tudnivalók
Frissítsd a Claude Code-ot a legújabb verzióra, nyisd meg a projektet egy terminálban, futtasd a /security-review parancsot, várd meg a jelentést (egy átlagos projektnél 1–5 perc), olvasd el a súlyossági besorolásokat, majd kérd meg Claude-ot a javítások alkalmazására. A parancs bármilyen stackkel működik: Next.js, Django, FastAPI, Rails, Go, Rust. Nincs szükség különleges konfigurációra.
1. lépés. Frissítsd a Claude Code-ot. A parancs a 2026. február 20-i kiadástól kezdve működik.
claude update
Ha npm-en keresztül telepítetted a Claude Code-ot, ezt is futtathatod:
npm install -g @anthropic-ai/claude-code@latest
Ellenőrizd, hogy megjelent-e a /security-review:
claude /help | grep security
2. lépés. Nyisd meg a projektet, és jelentkezz be a Claude Code-ba.
cd ~/projects/my-vibe-project
claude
3. lépés. Futtasd a parancsot. A Claude Code-ban egyszerűen írd be:
/security-review
Claude automatikusan végigmegy 3 elemzési fázison:
- Repository Context Research - beolvassa a struktúrát, és azonosítja a stacket, az útvonalakat és az adatbázis-lekérdezéseket.
- Comparative Analysis - összehasonlítja az aktuális állapotot a stackre jellemző sérülékenységi mintákkal.
- Vulnerability Assessment - minden gyanús esetet felsorol 1–10-es skálán megadott megbízhatósági szinttel. Csak a legalább 8-as megbízhatóságú megállapítások kerülnek a jelentésbe.
4. lépés. Olvasd el a jelentést. A kimenet formátuma egy markdown-táblázat. Claude minden problémához megadja:
- Fájl és sorszám (például
src/auth/login.ts:42) - Súlyosság (HIGH / MEDIUM / LOW)
- Kategória (
sql_injection,xss,auth_bypass,insecure_storage) - Leírás - mi a probléma
- Kihasználási forgatókönyv - hogyan használhatja ki egy támadó
- Javaslat - hogyan javítható
5. lépés. Kérd meg a javítások alkalmazására. Ezután úgy dolgozhatsz vele, mint egy hagyományos ügynökkel:
„Alkalmazd a jelentés MAGAS súlyosságú javításait egyenként, PR-leírással együtt.”
Claude megnyitja az egyes fájlokat, és javaslatot tesz egy módosításra; te jóváhagyod. Egy valódi projekten 40 perc alatt zártam le 5 megállapítást a tervezett 3 óra helyett.
Milyen sérülékenységeket talál meg a /security-review?
Főbb tudnivalók
Claude 6 kategóriát talál meg: SQL injection és általában az injekciós támadások, XSS, hitelesítési és jogosultságkezelési problémák, érzékeny adatok kiszivárgása, harmadik féltől származó függőségek hiányosságai, valamint a kódba égetett titkok. A parancs több fájlban szétszórt hitelesítési logikát is kezelni tud, amire a szabályalapú szkennerek nem képesek.
Az elemzésben alapértelmezetten szereplő dolgok teljes listáját az Anthropic hivatalos dokumentációja ismerteti:
| Kategória | Mit keres |
|---|---|
| SQL injection | Közvetlen karakterlánc-összefűzés SQL-ben, nem biztonságos ORM-hívások (raw() paraméterek nélkül), Prisma $queryRawUnsafe |
| XSS | dangerouslySetInnerHTML használata fertőtlenítés nélkül, automatikus escape-elés nélküli sablonrendszerek, felhasználói bemenetből származó innerHTML |
| Hitelesítési hibák | Újra felhasználható tokenek, hiányzó jogosultság-ellenőrzések az API-útvonalakon, lejárati dátum nélküli JWT, session fixation |
| Nem biztonságos adatkezelés | Csak kliensoldali validálás, extra mezőket tartalmazó válaszok (over-fetching), open redirect |
| Függőségek sérülékenységei | Sérülékeny npm/pip/cargo csomagverziók, npm audit és megfelelő eszközei által ellenőrizve |
| Titkok | Kódba égetett API-kulcsok, tokenek a .env.example fájlban, jelszavak a kódban |
Emellett a parancs olyan kategóriákat is lefed, amelyeket az automatikus szkennerek ritkán vizsgálnak:
- Command injection - felhasználói bemenet futtatása shellben (
child_process.exec(userInput)) - Path traversal - fájl betöltése a
../../etc/passwdútvonalon keresztül - XXE - külső entitásokat tartalmazó XML
- Template injection - SSTI Jinja/Handlebars/EJS környezetben
- NoSQL injection -
$ne,$gtoperátorok a MongoDB-lekérdezésekben - Kriptográfia helytelen használata - MD5, ECB mód vagy statikus IV használata
Claude minden megállapításhoz súlyossági besorolást rendel. A skála egyszerű:
- HIGH - távoli kihasználás hitelesítés nélkül, minden felhasználót érintő adatszivárgás
- MEDIUM - kihasználás további feltételekkel (munkamenet vagy konkrét bemenet szükséges)
- LOW - lehetséges támadási felület, jelenleg nem kritikus, de érdemes javítani
Érdemes tudni: alapértelmezett konfigurációban Claude nem jelent DoS-t, sebességkorlátozást, memóriakimerítést, bizonyított hatás nélküli open redirectet, regex injectiont / ReDoS-t vagy naplóhamisítást. Ez szándékos, hogy ne árasztson el zajjal. Ha ezek az osztályok fontosak, bővítsd a szabályokat (lásd alább a téves pozitív találatok szűréséről szóló részt).
Hogyan állíts be GitHub Actiont az automatikus felülvizsgálathoz?
Főbb tudnivalók
Az Anthropic kiadta a hivatalos anthropics/claude-code-security-review@main actiont. Egyetlen workflow-fájllal csatlakoztatható, és automatikusan soron belüli megjegyzéseket fűz minden Pull Requesthez az általa talált sérülékenységekről. Állítsd be a CLAUDE_API_KEY titkot és a workflow jogosultságait. A hivatalos Action figyelmeztet, hogy nincs megerősítve promptinjekció ellen, és megbízható PR-eket kell vizsgálnia; bekapcsolás előtt nézd át a közreműködők és workflow-k hozzáférését.
1. lépés. Szerezz API-kulcsot. Nyisd meg a console.anthropic.com oldalt, hozz létre egy API-kulcsot, és másold ki.
2. lépés. Helyezd el a kulcsot a repó secrets beállításai között. GitHubon: Settings → Secrets and variables → Actions → New repository secret. Neve legyen CLAUDE_API_KEY; az értéke pedig a kulcsod.
3. lépés. Hozz létre egy workflow-fájlt. Mentsd .github/workflows/security.yml néven:
name: Security Review
permissions:
pull-requests: write
contents: read
on:
pull_request:
jobs:
security:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha || github.sha }}
fetch-depth: 2
- uses: anthropics/claude-code-security-review@main
with:
comment-pr: true
claude-api-key: ${{ secrets.CLAUDE_API_KEY }}
4. lépés. Merge-eld az ágat a mainbe. Az action automatikusan elindul a következő PR-nél.
Mit csinál az action:
- Minden megnyitott / szinkronizált Pull Requestnél lefut.
- Lekéri a PR-ág és a main közötti diffet.
- Ugyanazt a motort futtatja, mint a helyi
/security-review. - Közvetlenül azokhoz a kódsorokhoz fűz soron belüli megjegyzéseket, ahol gyanús esetet talált.
- A teljes jelentést a Job Summary részben is közzéteszi.
Fontos részletek a permissions beállításban:
pull-requests: write- soron belüli megjegyzések közzétételéhez.contents: read- a kód olvasásához. Nincswrite. Az action nem módosítja a kódot, csak jelentést készít.
Ez a beállítás privát repóhoz elegendő. Nyilvános repónál megadhatod az actions: read engedélyt is, ha újrafelhasználható workflow-kat használsz.
Hogyan szűrd a téves pozitív találatokat és módosítsd az érzékenységet?
Főbb tudnivalók
Az action 9 bemenettel rendelkezik, amelyekkel beállíthatod a projektedhez tartozó működését. A legfontosabbak: exclude-directories (például tests/,fixtures/), false-positive-filtering-instructions (egy md fájl útvonala a „ez azért nem sérülékenység, mert...” szabályaiddal), valamint a custom-security-scan-instructions a további, területspecifikus ellenőrzésekhez.
A GitHub Action bemeneteinek teljes táblázata (forrás: a repó README-je):
| Bemenet | Alapértelmezett érték | Mit csinál |
|---|---|---|
claude-api-key | - | Anthropic API-kulcs. Kötelező. |
comment-pr | true | Kerüljenek-e soron belüli megjegyzések a PR-be |
upload-results | true | Az eredmény artefaktumként történő mentése 90 napra |
exclude-directories | - | Vesszővel elválasztva: tests/,docs/,fixtures/ |
claude-model | claude-opus-4-1-20250805 | A használandó modell |
claudecode-timeout | 20 | Időtúllépés percben |
run-every-commit | false | Minden pushnál fusson le, ne csak PR-eknél |
false-positive-filtering-instructions | - | A szabályokat tartalmazó md fájl útvonala |
custom-security-scan-instructions | - | A további ellenőrzéseket tartalmazó md fájl útvonala |
Példa a téves pozitív találatok szűrésének beállítására. Hozd létre a .claude/security/false-positives.md fájlt:
# Téves pozitív találatok szűrésére szolgáló szabályok a projektünkhöz
- A `src/lib/email/layout.ts` fájlban lévő minden `dangerouslySetInnerHTML` biztonságos -
a HTML megbízható sablonokból áll össze, és áthalad a `sanitize-html` eszközön
az adatbázisba íráskor, nem pedig rendereléskor.
- Ne jelentsd a `__tests__/fixtures/*.ts` fájlokban közvetlenül megadott teszt-API-kulcsokat.
Minden kulcs `sk-test-fake-` előtaggal kezdődik.
- A `src/lib/admin/migrations.ts` fájlban az SQL-összefűzés elfogadható - a fájl
csak rootként fut, a bemeneti adatok pedig környezeti változókból származnak.
Kapcsold be a workflow-ban:
- uses: anthropics/claude-code-security-review@main
with:
comment-pr: true
claude-api-key: ${{ secrets.CLAUDE_API_KEY }}
false-positive-filtering-instructions: .claude/security/false-positives.md
Az egyéni biztonsági vizsgálati utasítások hasonlóan működnek. Hozz létre egy fájlt a projektre különösen jellemző, kritikus szabályokkal:
# További ellenőrzések a projektünkhöz
- Minden `/api/admin/*` alatti végpontnak ellenőriznie kell az adminisztrátori szerepkört
egy közös wrapperen keresztül. Enélkül a súlyosság MAGAS.
- Minden YooKassa / CloudPayments webhooknak ellenőriznie kell az aláírást a törzs
feldolgozása előtt. Enélkül a súlyosság MAGAS.
- A magic link tokenek csak egyszer legyenek használhatók (az első érvényes kérés után
legyenek használtként megjelölve). Az újra felhasználható tokenek súlyossága KÖZEPES.
Ez már nem Anthropic-előbeállítás: a projektre vonatkozó szakértelmedet viszed át olyan szabályokba, amelyeket Claude minden alkalommal alkalmaz. Ez a „módszertan a modell felett” lényege.
A Claude kontextusmódszertanáról bővebben lásd a „A CLAUDE.md konfigurálása” és a „Second Brain a Claude Code-ban” útmutatókat.
Mit NEM talál meg Claude, és miért: őszinte korlátozások?
Főbb tudnivalók
Egy kódfelülvizsgálat önmagában nem próbálja ki a futó alkalmazást, és nem igazolja a telepített környezetét. Jelezhet a kódban jelen lévő lehetséges versenyhelyzeteket, üzletilogika-hibákat vagy konfigurációs problémákat, de a működés és maradó kockázatok megerősítéséhez staging tesztek és a tényleges telepítés vizsgálata kell.
Az Anthropic egyértelműen felsorolja, mi van alapértelmezetten letiltva, és miért (forrás: a repó README-je):
- Denial of Service - túl sok zajt okoz, és a hatása szinte mindig csekély.
- Sebességkorlátozási problémák - ezeket infrastruktúraszinten kezelik, nem a kódban.
- Memória-/CPU-kimerítés - ugyanez.
- Általános bemenetellenőrzés bizonyított hatás nélkül - minden mező ellenőrzése téves pozitív találatok tömegét eredményezi.
- Open redirect - gyakran szándékos működés.
Amit a kódfelülvizsgálat önmagában futásidejű vagy telepítési bizonyíték nélkül nem tud teljesen igazolni:
- Éles szerverkonfiguráció. NGINX-fejlécek, CORS-szabályok, TLS-beállítások, figyelt portok. Ezeket staging környezetben, manuálisan kell ellenőrizni.
- Versenyhelyzetek. Például kétszeres költés egyidejű visszatérítési kérések esetén. A statikus elemzés jelezhet gyanús mintákat, de a párhuzamos működést továbbra is tesztelni kell.
- Fizetési üzleti logikájának hibái. Ha a rendelés végösszegét a kliens számolja ki, és egyszerűen elküldi a fizetési szolgáltatónak, az HIGH súlyosságú, de Claude ezt a mintát nem mindig veszi észre annak kifejezett ismerete nélkül, hogyan kellene működnie a fizetésnek.
- Adatbázisszintű IDOR. Ha a
SELECT * FROM orders WHERE id = $1lekérdezésben nincsWHERE user_id = $session.userIdellenőrzés, Claude ezt gyakran felismeri. Ha azonban az ellenőrzés ORM middleware-en keresztül valósul meg, és Claude nem látja a teljes adatfolyamot, előfordulhat, hogy nem veszi észre. - A social engineeringgel / adathalászattal szembeni ellenállás. Ennek semmi köze a kódhoz.
A /security-review kezdeti statikus felülvizsgálatként használd. Kövessék staging környezetben végzett dinamikus tesztek, szerepkör- és jogosultság-ellenőrzések, releváns SAST-ellenőrzések és a ténylegesen telepített konfiguráció átnézése. Mért lefedettségi százalékot itt nem igazolunk.
A külső értékelés hatókörét és időzítését a rendszer kockázatai és változásai alapján határozd meg. Sem egy parancs, sem egy időszakos külső audit nem igazol 100%-os biztonsági lefedettséget.
Hogyan végzett biztonsági felülvizsgálatot az eredeti anyag szerzője egy vibe projekten?
Főbb tudnivalók
A saját TypeScript projektemen futtattam a /security-review parancsot, amely Next.js-t, Prismát, PostgreSQL-t és Redist használ. A parancs 4 perc alatt elvégzett egy kezdeti auditot, több, jól alátámasztott, különböző súlyosságú megállapítást adott, én pedig végül másfél óra alatt végrehajtottam a működő javításokat. Ez olcsóbb és gyorsabb volt bármely külső pentestnél.
Mik merültek fel? Tipikus kép egy átlagos vibe projektnél abban az állapotban, hogy „működik produkcióban, de még nem vizsgálták át”: több gyanús eset a hitelesítési folyamatban, a fizetési integráció webhookjainak feldolgozási logikájában, a fájlfeltöltés kezelésében, valamint néhány konkrét megjegyzés a HTML rendereléskori kezelésével kapcsolatban. A részleteket nem teszem közzé; néhány javaslatot már alkalmaztunk, mások még PR-ben vannak. A bemutatott projektben a kezdeti vizsgálat hasznos és gyors volt; ebből nem következik auditlefedettségi százalék vagy általános teljesítési idő.
Amit téves pozitív találatként elvetettem:
- Bemenetellenőrző regexeken keresztüli DoS-ra vonatkozó megállapítások - a valódi terhelés nem azokon a regexeken jelentkezik.
- Egy kódba égetett API-kulcsról szóló megállapítás - tesztkulcs volt, a fixtures fájlokban kifejezett
fake-előtaggal.
Mennyi ideig tartott? Maga a futtatás 4 percet vett igénybe. A jelentés áttekintése 25 percig tartott. A javítások alkalmazása tesztekkel együtt körülbelül egy órát vett igénybe. Összesen körülbelül másfél óra telt el a „kezdéstől” addig, hogy „minden a mainben legyen”. Egy külső pentest ugyanezen a felületen egy naptári hetet vesz igénybe, és több tucatszor többe kerül.
A fő tanulság. A /security-review nem váltja ki a külső pentestet. Hasznos kódszintű megállapításokat adhat, ahogy a szerző leírt négyperces vizsgálatában is. Nézd át és teszteld a javításokat, majd külön ellenőrizd a futásidejű működést és a telepített konfigurációt; a vizsgálat nem szünteti meg a projekt biztonsági kockázatát.
Hogyan építsd be a /security-review parancsot a pre-commit rutinodba?
Főbb tudnivalók
Jelentős módosítások commitolása előtt a projekt munkamenetében futtasd a /security-review parancsot, olvasd el a megállapításokat, javítsd a megerősített problémákat, és ismételd meg a releváns teszteket. Ez felülvizsgálati eljárás, nem a commitolás technikai tiltása.
A korábban bemutatott, git_commit, --severity HIGH és --fail-on-find elemeket használó hook nem dokumentált, működő recept, ezért nem használható biztonsági kapuként. A cikk nem ad igazolt helyi commitblokkoló hookot. A fent bemutatott hivatalos GitHub Action automatikus PR-megállapításokat ad; a PR megjegyzéseiből ne következtess commit- vagy egyesítésblokkolásra.
A hookok teljes magyarázatát a „Hookok a Claude Code-ban” útmutató tartalmazza.
A routines használatával az a másik lehetőség, hogy létrehozol egy pre-deploy-check rutint, amely egyetlen paranccsal futtatja a /security-review + npm run build + npm run test parancsokat. További anyagok az Ailoot dokumentációjában találhatók.
Ha MCP-szervereket használsz, a /security-review megállapításait incidenskezelő rendszerrel (Sentry, Linear, Notion) is integrálhatod, így minden HIGH súlyosságú megállapításból automatikusan jegy lesz.
GYIK a /security-review parancsról
Főbb tudnivalók
5 gyakori kérdés: mennyibe kerül, milyen gyakran érdemes futtatni, milyen stackeken működik, mit tegyél, ha Claude már megtalálta ezt a sérülékenységet, és futtathatod-e csak meghatározott fájlokon. Rövid, sallangmentes válaszok.
Mennyibe kerül egy futtatás? A projekt méretétől függ. Az én 30K soros projektemen egy futtatás körülbelül $0.30-0.50 API-egyenleget használ fel. Egy egymillió soros nagyvállalati repó futtatásonként akár $5-8-ba is kerülhet. Ez több tucatszor olcsóbb bármely SaaS-szkenner-előfizetésnél.
Milyen gyakran futtassam helyben? Legalább minden produkciós kiadás előtt. Jelentős commitok és PR-ek előtt is mérlegeld a futtatást. A cikk nem ad igazolt automatikus commitblokkoló hookot.
Milyen stackeken működik? Mindenen, amit Claude el tud olvasni. A szerző megfigyelései szerint ezeket már ellenőrizték: Next.js / Node.js, Python (Django, FastAPI), Go, Rust, PHP (Laravel), Ruby on Rails. Nagyon egzotikus nyelveken (Erlang, Elixir, Clojure) alacsonyabb a minőség, de így is talál valamit.
Mit tegyek, ha Claude minden alkalommal ugyanazt a „sérülékenységet” találja meg, pedig az valójában nem is sérülékenység? Vedd fel a false-positive-filtering-instructions beállításba annak magyarázatával, hogy „miért biztonságos ez”. Claude a következő futtatások során nem fogja többé jelenteni.
Futtathatom csak meghatározott fájlokon? Helyben igen: egyszerűen futtasd a /security-review src/lib/auth/*.ts parancsot. A GitHub Action csak az aktuális PR diffjét ellenőrzi, és általában ezt értjük „meghatározott fájlok” alatt.
Források
Források
- Anthropic - A Claude Code Security indulásának bejelentése - 2026. február 20-án kelt hivatalos bejelentés
- Anthropic Súgóközpont - Automatikus biztonsági felülvizsgálatok a Claude Code-ban - hivatalos útmutató a futtatáshoz
- GitHub: anthropics/claude-code-security-review - a GitHub Action forrása teljes README-vel
- Claude Code dokumentáció - Kódellenőrzés - általános Anthropic-dokumentáció
- Anthropic Súgóközpont - A Claude Security használata - kapcsolódó termékek
- Port - Claude Code biztonsági felülvizsgálatok beolvasztása - eredmények integrálása egy Internal Developer Portalba
- Claude Code változásnapló - a parancs kiadási előzményei
További anyagok az Ailoot dokumentációjában találhatók.
További részletek
Kérdések és válaszok: Biztonsági felülvizsgálat a Claude Code-ban: lépésről lépésre útmutató és GitHub Action automatizálás 2026-ban
A tiszta security-review jelentés bizonyítja az alkalmazás biztonságát?
Nem. Kezdeti kódfelülvizsgálatot jelent, lehetséges kihagyott találatokkal és szűréssel. Igazold a javításokat, staging környezetben próbáld ki a szerepkör- és párhuzamos működést, és nézd át a ténylegesen telepített konfigurációt.
Az itt bemutatott GitHub Action automatikusan blokkolja a commitokat vagy egyesítéseket?
A bemutatott workflow nem igazol ilyen garanciát. PR-megállapításokat tesz közzé. Nézd át őket, és teszteld a megerősített javításokat; a cikk nem ad igazolt, helyi commitblokkoló hookot.