Przejdź do głównej zawartości

Audyt bezpieczeństwa z Claude Code łączy skanery deterministyczne (Gitleaks, TruffleHog, npm audit) z trzema recenzentami Claude: wbudowaną komendą /security-review dla diffu gałęzi, pluginem Claude Security do zweryfikowanego skanu całego repozytorium z plikami łatek oraz pluginem security-guidance działającym w trakcie pisania kodu. Każde przyjęte znalezisko potwierdza nieprzechodzący test exploita, a otwarte znalezisko blokuje merge.

Dostajesz raport z pentestu: 18 znalezisk, sześć krytycznych. SQL injection w API panelu administracyjnego, sekret JWT zacommitowany dwa lata temu i zależność z opublikowanym advisory o zdalnym wykonaniu kodu. Za miesiąc przegląd zgodności, a zespół wypuszcza większość kodu przez agentów. Musisz ustalić, co jest realne, naprawić to bez psucia zachowania aplikacji i nie dopuścić, żeby te same klasy błędów wróciły. Ta strona jest dla dewelopera, który prowadzi audyt, i dla tech leada, który potem odpowiada za bramki.

  • Sześciokrokową kolejność audytu, którą uruchomisz na dowolnym repozytorium w tym tygodniu: od odcięcia sekretów po bramki w CI.
  • Prompty do skopiowania: ocena osiągalności podatnych zależności, przegląd sekretów w całej historii git i poprawki zaczynające się od testu exploita.
  • Regułę przyjmowania znalezisk, która nie wymaga czytania całego diffu: nie ma nieprzechodzącego testu exploita, nie ma poprawki.
  • Bramkę scalania, która blokuje merge, dopóki jakiekolwiek znalezisko bezpieczeństwa jest otwarte, oraz dwa sposoby zamknięcia znaleziska, które według zespołu Claude Code w Anthropic obowiązują u niego: poprawka albo zamknięty wątek z krótkim uzasadnieniem.
  • Blok bezpieczeństwa do CLAUDE.md, plik polityki claude-security-guidance.md i job GitHub Actions do zacommitowania bez zmian.

Które narzędzie bezpieczeństwa Claude Code do którego zadania?

Dział zatytułowany „Które narzędzie bezpieczeństwa Claude Code do którego zadania?”

Claude Code ma kilka funkcji bezpieczeństwa i łatwo je pomylić. Różnią się zakresem, kosztem i tym, czy znalezisko ktoś niezależnie sprawdził. Stan na Claude Code 2.1.283 (kanał latest) i README pluginów, sprawdzone 2026-09-26. 2026-10-16 dostępność, klasy podatności i zachowanie Action sprawdzono z artykułem pomocy Anthropic automated security reviews in Claude Code. Zakres z pierwszego wiersza, czyli diff gałęzi względem origin/HEAD, pochodzi z pliku komendy (sprawdzone 2026-09-26), bo artykuł pomocy mówi tylko, że komenda analizuje twój kod.

NarzędzieCo skanujeKiedy go użyćCo dostajesz
/security-review (wbudowane)Diff między twoją gałęzią a origin/HEADPrzed każdym PR, który dotyka uwierzytelniania, obsługi wejścia lub dostępu do danychZnaleziska w sesji: injection, problemy z uwierzytelnianiem, ekspozycja danych
Plugin Claude Security (/claude-security)Całe repozytorium, wybrany fragment, diff gałęzi, pull request albo jeden commitPierwszy audyt, potem cyklicznieRaport CLAUDE-SECURITY-<timestamp>/ w Markdown, JSONL i SARIF 2.1.0 oraz opcjonalne pliki łatek
Plugin security-guidanceKażdą edycję, każdą zakończoną turę oraz każdy git commit i git pushStale włączony w zespołach, w których agenci piszą większość koduZnaleziska wracają do Claude, zanim zobaczysz jego odpowiedź
GitHub Action anthropics/claude-code-security-reviewKażdy pull requestCI, tylko dla zaufanych PRKomentarze inline w PR i artefakt z wynikami
Gitleaks, TruffleHog, npm audit, SemgrepSekrety, pakiety ze znanymi podatnościami, wzorce oparte na regułachKażdy commit i każde uruchomienie CIDeterministyczne, powtarzalne wyniki

Artykuł pomocy Anthropic mówi, że zarówno /security-review, jak i Action są dostępne dla „all Claude Code users, including” indywidualnych planów Pro i Max oraz indywidualnych lub firmowych kont API Console z rozliczeniem za użycie. Oba sprawdzają typowe wzorce podatności: SQL injection, cross-site scripting, błędy uwierzytelniania i autoryzacji, niebezpieczną obsługę danych i podatności w zależnościach. Artykuł pomocy Anthropic zastrzega, że mają uzupełniać, a nie zastępować, dotychczasowe praktyki bezpieczeństwa i ręczne code review. Action uruchamia się, gdy pull request zostaje otwarty, stosuje konfigurowalne reguły filtrowania, żeby ograniczyć fałszywe alarmy, i publikuje komentarze przy liniach z opisem problemu i rekomendowaną poprawką.

/code-review sprawdza poprawność, a nie bezpieczeństwo; opisuje go przewodnik po automatycznym code review razem z Ultrareview i zarządzanym Code Review. Semgrep, Snyk, SonarQube i inne skanery, którymi otoczysz agenta, porównuje strona bramki bezpieczeństwa dla kodu pisanego przez agentów.

Jak przeprowadzić audyt bezpieczeństwa z Claude Code krok po kroku

Dział zatytułowany „Jak przeprowadzić audyt bezpieczeństwa z Claude Code krok po kroku”

Kolejność ma znaczenie. Odcięcie sekretów idzie przed wykrywaniem, bo wyciekły klucz jest wykorzystywany, gdy ty czytasz raport. Skanery deterministyczne idą przed modelem, bo ich wynik to twarde dane, na których model może rozumować zamiast zgadywać.

  1. Trzymaj sekrety poza sesją. Zanim Claude przeczyta repozytorium, zablokuj mu pliki z żywymi poświadczeniami. Dodaj to do .claude/settings.json (ustawienia projektu):

    {
    "permissions": {
    "deny": ["Read(./.env)", "Read(./.env.*)", "Read(./secrets/**)"]
    }
    }

    Jeśli audytujesz repozytorium, któremu nie ufasz, na przykład zewnętrzną zależność, uruchom całą sesję wewnątrz sandbox-runtime od Anthropic. Plugin Claude Security nie dodaje własnej izolacji: hooki z .claude/ i CLAUDE.md repozytorium działają jak w każdej innej sesji.

  2. Uruchom skanery deterministyczne i zachowaj ich wynik. W terminalu, w katalogu głównym repozytorium:

    Okno terminala
    gitleaks git --report-path gitleaks-report.json # secrets in full git history
    trufflehog git file://. --results=verified,unknown # checks secrets against the issuing service
    npm audit --omit=dev --json > npm-audit.json # advisories in production dependencies
    semgrep scan --config auto --json -o semgrep.json # rule-based patterns; auto sends your project URL to the Semgrep Registry

    Każdy sekret, który TruffleHog oznaczy jako verified, jest aktywny. Unieważnij go i wygeneruj nowy teraz, zanim zrobisz cokolwiek innego z tej strony.

  3. Zainstaluj plugin Claude Security i przeskanuj kod. W prompcie Claude Code:

    /plugin install claude-security@claude-plugins-official
    /reload-plugins
    /claude-security

    Menu oferuje Scan codebase, Scan changes i Suggest patches. Możesz je pominąć zwykłą prośbą, na przykład run a quick Claude Security scan on the whole repo. Skan podaje swój czas i koszt w tokenach i raz prosi o potwierdzenie. Wymaga Pythona 3.9 lub nowszego w PATH. README pluginu zaleca Claude Opus 5.5 albo Claude Fable 5.1 (zobacz przegląd modeli) i ostrzega, że zabezpieczenia cybernetyczne mogą przełączyć część skanu na Opus 4.8.

    Każde kandydujące znalezisko trafia do agentów weryfikujących, których zadaniem jest je obalić; do CLAUDE-SECURITY-RESULTS.md trafia tylko to, co przetrwa. Każdy katalog najwyższego poziomu jest albo skanowany, albo odłożony z podanym powodem, a sekcja Coverage raportu wymienia wszystko, co pominięto, i dlaczego, więc czysty wynik mówi ci, co faktycznie sprawdzono.

  4. Oceń advisory zależności pod kątem osiągalności. npm audit raportuje to, co jest zainstalowane, a nie to, co wywołuje twój kod. Przekaż Claude zapisany raport i poproś o analizę ekspozycji (prompt niżej). Advisory w kodzie, do którego aplikacja nigdy nie dociera, trafiają do śledzonego backlogu, a nie do pracy na ten tydzień.

  5. Naprawiaj, zaczynając od testu exploita. Dla każdego przyjętego znaleziska Claude pisze test, który wykonuje exploit i nie przechodzi na obecnym kodzie, potem poprawkę, a potem pokazuje przechodzący test. Zadanie Suggest patches w Claude Security zapisuje jeden F<n>.patch na znalezisko w CLAUDE-SECURITY-<timestamp>/patches/ i niczego samo nie aplikuje. Przeczytaj notatkę obok każdej łatki i zastosuj ją poleceniem git apply CLAUDE-SECURITY-<timestamp>/patches/F1.patch.

  6. Postaw bramki, żeby te same klasy błędów nie wracały. Dodaj reguły do CLAUDE.md i plugin security-guidance opisane niżej, wpisz /security-review w rutynę przed każdym PR, wstaw Gitleaks i Action z przeglądem bezpieczeństwa do CI i spraw, żeby otwarte znalezisko bezpieczeństwa blokowało merge.

Pierwszego promptu użyj, gdy nie możesz zainstalować pluginu, na przykład w zablokowanej instalacji firmowej. Wymaga tych samych dowodów co plugin: ścieżki exploita, a nie dopasowania wzorca.

Jak zweryfikować poprawki bezpieczeństwa bez czytania każdej linii?

Dział zatytułowany „Jak zweryfikować poprawki bezpieczeństwa bez czytania każdej linii?”

Audyt ma wartość tylko wtedy, gdy jego wynik możesz przyjąć na podstawie dowodów. Te kontrole zastępują czytanie każdej poprawki linia po linii:

DowódCo udowadniaKto zatwierdza
Test exploita, który nie przechodził przed poprawką i przechodzi po niejZnalezisko było prawdziwe i jest zamknięteDeweloper odpowiedzialny za moduł
Cały zestaw testów na zielonoPoprawka nie zmieniła poprawnego zachowaniaCI
Czysty Gitleaks i npm audit --audit-level=high w CIBrak nowych sekretów i advisory o wysokiej wadzeCI, jako wymagany check
SARIF wgrany do GitHub code scanningZnaleziska są śledzone między skanami; stabilny claudeSecurityPluginFindingId odróżnia nowe od znanychTech lead przegląda otwartą listę co tydzień
CLAUDE-SECURITY-REVISION-<sha12>.jsonKtóry commit przeskanowano, z jakim wysiłkiem i jak dokładnie zweryfikowano wynikiDołączony do dokumentacji audytu
Wyciszenie z pisemnym uzasadnieniemFałszywy alarm został oceniony, a nie zignorowanyTech lead albo osoba odpowiedzialna za bezpieczeństwo
Każdy wątek bezpieczeństwa naprawiony albo zamknięty krótkim uzasadnieniem przed scaleniemŻadne znalezisko nie zostało bez odpowiedzi; tę regułę zespół Claude Code opisał 2026-10-15Ochrona gałęzi wymagająca rozwiązania rozmów i checka claude-review; cotygodniowa próbka zamkniętych wątków

Skan Claude Security działa na twojej maszynie, więc nic nie wgra jego SARIF za ciebie. Zacommituj katalog raportu na gałąź audytu i dodaj do workflow krok z github/codeql-action/upload-sarif oraz sarif_file: CLAUDE-SECURITY-<timestamp>/CLAUDE-SECURITY-RESULTS.sarif; bez code scanning zarchiwizuj SARIF razem z dokumentacją audytu.

Człowiek nadal czyta dwie rzeczy: test exploita (czy atakuje to, co opisuje znalezisko?) i każde wyciszenie. Obie są krótkie. Samą poprawkę ocenia test, zestaw testów i ponowny skan.

Zapisz reguły bezpieczeństwa tak, żeby obowiązywały przy każdej zmianie

Dział zatytułowany „Zapisz reguły bezpieczeństwa tak, żeby obowiązywały przy każdej zmianie”

CLAUDE.md kształtuje to, co Claude pisze; plugin security-guidance sprawdza to, co napisał. Używaj obu. Zacznij od takiego bloku w projektowym CLAUDE.md (gdzie się ładuje, opisuje przewodnik po systemie pamięci):

## Security requirements
- Database access goes through the ORM or parameterized queries. Never build SQL with string concatenation or template literals.
- Every route requires the auth middleware except this list: /health, /ready, /api/auth/login, /api/auth/register.
- Passwords are hashed with argon2id or bcrypt (cost 12). Never MD5 or SHA-family hashes for passwords.
- All request bodies, query parameters and path parameters are validated with Zod schemas before use.
- Secrets come from environment variables. Never commit a credential, including in tests or fixtures.
- Outbound HTTP to a user-supplied URL goes through src/lib/net/safe-fetch.ts (SSRF allowlist).
- A security fix ships with a test that performs the exploit.

Następnie zainstaluj plugin security-guidance, który działa jako hooki i nie zajmuje stale kontekstu:

Okno terminala
claude plugin install security-guidance@claude-plugins-official

Ma trzy warstwy: ostrzeżenia regex dla około 25 niebezpiecznych wzorców przy każdym Edit/Write, przegląd diffu przez LLM, gdy Claude kończy turę, oraz agentowego recenzenta przy git commit i git push, który śledzi przepływ danych między plikami. Wymaga Claude Code 2.1.144 lub nowszego i Pythona 3.8 lub nowszego. Przegląd diffu domyślnie używa claude-opus-4-7; zmienisz to zmienną SECURITY_REVIEW_MODEL (a recenzenta przy commicie zmienną SG_AGENTIC_MODEL), podając na Bedrocku lub Google Cloud identyfikator modelu właściwy dla dostawcy. Reguły specyficzne dla twojego kodu umieść w .claude/claude-security-guidance.md i zacommituj razem z repozytorium:

# Payments API security rules
- Reads from the customers and orders tables use db.replica, never db.primary.
- Background jobs never use a user's auth token; they call jobs.getServiceAccount().
- Any fetch() with a user-controlled URL must use safeFetch() from src/lib/net/safe-fetch.ts.

Plik ma budżet 8 KB i trafia do modelu przy każdym przeglądzie, więc nie trzymaj w nim sekretów. Recenzent uruchamiany przy commicie jeszcze go nie czyta (README pluginu, 2026-09-26).

Skaner deterministyczny niech będzie wymaganym checkiem. Recenzent Claude publikuje podpowiedzi przy każdym PR, dopóki nie uczynisz jego wątków wymogiem, co opisuje sekcja jak sprawić, żeby znalezisko bezpieczeństwa blokowało merge. Tylko job z przeglądem może pisać komentarze w PR. Zapisz to jako .github/workflows/security.yml:

name: Security
on:
pull_request:
permissions:
contents: read
jobs:
secrets:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
with:
persist-credentials: false
fetch-depth: 0
- uses: gitleaks/gitleaks-action@v3 # v2 ran on Node 20, which GitHub-hosted runners have dropped
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITLEAKS_LICENSE: ${{ secrets.GITLEAKS_LICENSE }} # free key; required for organization-owned repos
claude-review:
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write # only this job posts PR comments
steps:
- uses: actions/checkout@v7
with:
persist-credentials: false
ref: ${{ github.event.pull_request.head.sha || github.sha }}
fetch-depth: 2
# Pin to a full commit SHA instead of @main before relying on this job
- uses: anthropics/claude-code-security-review@main
with:
comment-pr: true
claude-api-key: ${{ secrets.CLAUDE_API_KEY }}
claude-model: claude-opus-5-5 # the built-in default is claude-opus-4-1-20250805, retired on the Claude API

Dwie linie w tym pliku nie są opcjonalne. Domyślny model samej Action to claude-opus-4-1-20250805, a Claude Opus 4.1 został wycofany z Claude API, więc workflow skopiowany z quick startu Action bez claude-model nie ma na czym działać (aktualne identyfikatory modeli znajdziesz w przeglądzie modeli). Z kolei gitleaks-action@v2 działała na Node 20; jej README (sprawdzone 2026-09-26) przechodzi na @v3 z actions/checkout@v6, bo GitHub we wrześniu 2026 usuwa Node 20 ze swoich runnerów. Ta strona przypina actions/checkout@v7, aktualną wersję główną (v7.0.1, sprawdzone 2026-10-03). Klucz claude-api-key musi mieć włączony dostęp zarówno do Claude API, jak i do Claude Code.

README tej Action mówi wprost, że nie jest odporna na prompt injection. W repozytorium publicznym włącz Require approval for all external contributors, żeby job ruszał dopiero wtedy, gdy maintainer obejrzy PR. Przewodnik po pipeline CI/CD opisuje sekrety i przypinanie wersji, a cykliczne skany bezpieczeństwa — uruchamianie skanu tylko do odczytu według harmonogramu, z zachowanymi dowodami.

Jak sprawić, żeby znalezisko bezpieczeństwa blokowało merge?

Dział zatytułowany „Jak sprawić, żeby znalezisko bezpieczeństwa blokowało merge?”

Zespół Claude Code w Anthropic opisał 2026-10-15 w tekście How the Claude Code team does code review, że bezpieczeństwo ma własny przegląd automatyczny i że ten przegląd potrafi zablokować: „A PR can’t merge while any finding from the bug review or the security review is still open.” To wypowiedzi Anthropic o jego własnych repozytoriach. Tekst podaje dwa sposoby zamknięcia znaleziska:

  • Napraw je. Jeśli późniejszy commit naprawia problem, znalezisko zamyka się samo.
  • Zamknij wątek krótkim uzasadnieniem. W ten sposób usuwasz fałszywy alarm.

Tekst mówi, że to samo można ustawić przez otwartoźródłową GitHub Action do przeglądu bezpieczeństwa albo polecenie /security-review, i odsyła do artykułu pomocy o konfiguracji. Jego lista wdrożeniowa każe dodać automatyczny przegląd bezpieczeństwa i „require every review thread resolved before merge”, ale nie wskazuje ustawienia. Artykuł pomocy mówi, że Action publikuje komentarze przy liniach w pull requeście, i nie opisuje, jak Action zamyka je później (sprawdzone 2026-10-16). Zbuduj więc bramkę z udokumentowanych elementów i udowodnij ją, zanim zaczniesz na niej polegać:

  1. Uruchom Action na każdym pull requeście i uczyń go wymaganym. Użyj jobu claude-review z sekcji Dodaj bramkę przeglądu bezpieczeństwa do CI. Publikuje znaleziska jako komentarze przy liniach, czyli wątki, które liczy bramka. W regule ochrony gałęzi dodaj claude-review jako wymagany status check. Bez tego bramka przepuszcza: job, który zawiódł (błąd modelu, awaria, brak CLAUDE_API_KEY w pull requeście z forka) albo jeszcze się nie skończył, nie publikuje żadnego wątku, a GitHub pozwala na merge.

  2. Wymagaj rozwiązania każdej rozmowy. W regule ochrony gałęzi domyślnej włącz Require conversation resolution before merging (GitHub: about protected branches). GitHub odmówi wtedy scalenia, dopóki wątek jakiegokolwiek znaleziska jest otwarty, niezależnie od tego, czy znalezisko pochodzi z Action, z zarządzanego Code Review, czy od człowieka.

  3. Dopuść tylko dwa wyjścia. Znalezisko jest naprawione, z testem exploita, który nie przechodził przed poprawką, albo jego wątek zostaje zamknięty z uzasadnieniem. Uzasadnienie to jedno zdanie, które wskazuje kontrolę zapobiegającą atakowi i cytuje file:line. Samo „false positive” nie jest uzasadnieniem.

  4. Przeglądaj zamknięte wątki. Zamknięty wątek to wyciszenie, a człowiek czyta każde wyciszenie. Ścieżki, które mają znaczenie, takie jak uwierzytelnianie, płatności i workflow CI, obejmij CODEOWNERS i włącz Require review from Code Owners, żeby właściciel musiał zatwierdzić zmiany w tych ścieżkach. To nie sprawia, że właściciel przeczyta uzasadnienie zamknięcia: każdy z prawem zapisu może rozwiązać wątek po zatwierdzeniu, a rozwiązanie wątku nie jest pushem, więc GitHub zachowuje zatwierdzenie. Przyjmij w zespole regułę, że wątki bezpieczeństwa w tych ścieżkach rozwiązuje właściciel kodu, a nie autor, i co tydzień przeglądaj próbkę zamkniętych wątków.

  5. Raz udowodnij bramkę. Na gałęzi roboczej dodaj trasę, która skleja SQL z parametru adresu URL, otwórz pull request i sprawdź, że Action publikuje wątek, a GitHub odmawia scalenia, dopóki wątek nie zostanie zamknięty. Jeśli znalezisko przychodzi jako zwykły komentarz, a nie wątek przeglądu, bramka nie działa i potrzebujesz innej kontroli. Potem spraw, żeby job claude-review zawiódł, na przykład przez nieprawidłowy CLAUDE_API_KEY, i sprawdź, że GitHub odmawia scalenia, dopóki wymagany check jest czerwony.

Tekst opisuje samoistne zamykanie się znaleziska po commicie z poprawką dla konfiguracji Anthropic. Artykuł pomocy nie obiecuje tego dla Action, więc obserwuj testowy pull request, żeby dowiedzieć się, czy naprawione wątki zamykasz ręcznie.

Zastąp PR_NUMBER numerem pull requesta. Uzasadnienia czyta osoba, która kieruje agentem: przy wątku bezpieczeństwa błędne uzasadnienie to podatność wypuszczona z zielonym checkiem.

/security-review kończy się błędem fatal: ambiguous argument 'origin/HEAD...'. Komenda porównuje z origin/HEAD, którego często brakuje w klonach jednogałęziowych i w CI. Uruchom git fetch origin i git remote set-head origin --auto albo podaj gałąź wprost: git remote set-head origin main, i spróbuj ponownie.

Job z przeglądem bezpieczeństwa pada, zanim cokolwiek skomentuje. Najpierw poszukaj w logu błędu modelu: bez claude-model Action prosi o claude-opus-4-1-20250805, którego Claude API już nie obsługuje. Ustaw claude-model jak w workflow powyżej. Jeśli log pokazuje za to błąd środowiska Node w kroku Gitleaks, przejdź na gitleaks/gitleaks-action@v3.

Pull request został scalony z otwartym znaleziskiem bezpieczeństwa. Ochrona gałęzi nie wymaga rozwiązania rozmów albo Action opublikowała znalezisko jako zwykły komentarz, a nie wątek przeglądu. Włącz Require conversation resolution before merging, potem powtórz test na gałęzi roboczej z sekcji o bramce.

Każdy wątek bezpieczeństwa jest zamykany jako fałszywy alarm. Zamknięty wątek to wyciszenie, którego nikt nie przeczytał. Wymagaj jednozdaniowego uzasadnienia, które wskazuje kontrolę i cytuje file:line, niech wątki bezpieczeństwa w wrażliwych ścieżkach (objętych CODEOWNERS) rozwiązuje właściciel kodu, a nie autor, i co tydzień przeglądaj próbkę zamkniętych wątków.

Dwa skany zwracają różne znaleziska. Skany oparte na modelu są niedeterministyczne. Śledź znaleziska po claudeSecurityPluginFindingId w code scanning zamiast porównywać raporty na oko i planuj skany cyklicznie, żeby pokrycie rosło z czasem.

Claude zgłasza jako nieuwierzytelnioną trasę, która z założenia jest publiczna. Dopisz ją do listy tras publicznych w CLAUDE.md. Plugin security-guidance traktuje komentarz inline wyjaśniający, dlaczego linia jest bezpieczna, jako wyłączenie. W Action wskaż w false-positive-filtering-instructions plik tekstowy z zaakceptowanymi wzorcami.

Łatka zamyka znalezisko, ale psuje poprawne żądania. Przegląd łatek w Claude Security traktuje zmianę akceptowanych danych wejściowych jako zmianę zachowania i informuje, gdy żaden test projektu nie wykonał łatanego kodu. Traktuj taką notatkę jako brakujący test: przed zastosowaniem łatki napisz test dla poprawnego przypadku.

Aktualizacja zależności psuje build. Poproś o analizę changelogu z promptu o osiągalności przed aktualizacją i podnoś jedną wersję główną na commit, żeby czerwony zestaw testów wskazywał jeden pakiet.

Restrykcyjny Content-Security-Policy psuje frontend. Wdróż go najpierw jako Content-Security-Policy-Report-Only, zbierz naruszenia z konsoli przeglądarki lub endpointu raportów i wklej je Claude, żeby dopuścił dokładnie te źródła.

Przegląd w hooku Stop uruchamia się na pracy innego agenta. W układach ze wspólnym worktree, w których kilku agentów przesuwa HEAD, ustaw ENABLE_STOP_REVIEW=0 i zostaw przeglądy przy commicie i pushu.

Raport albo log zawiera poświadczenie. Claude Security w miarę możliwości zamazuje wartości poświadczeń w raportach, a katalog raportu ma własny .gitignore. Sprawdź pliki, zanim je komuś udostępnisz.

Ten sam audyt w pozostałych narzędziach: audyt bezpieczeństwa z Codex, Codex Security i bezpieczeństwo w Cursorze. Wróć do przeglądu sekcji Eksploatacja.