# Claude Code 보안 검토: 단계별 가이드와 2026년 GitHub Action 자동화

> Claude Code의 /security-review로 바이브 프로젝트의 보안을 확인하는 방법. 설정 단계, GitHub Action 템플릿, 6가지 취약점 유형과 솔직한 한계.

Source: https://ailoot.ai/blog/ko/claude-code-security-review/
Canonical: https://ailoot.ai/blog/ko/claude-code-security-review/
Language: ko
Publisher: Ailoot (https://ailoot.ai/)
Translation: guide-212
Revision: sha256-03c783291ffd058830f18114cba156bdcc7619b714d51de2d38670953a2da057


원문 작성자는 자신의 경험을 이렇게 설명합니다. “내 바이브 프로젝트에서 security-review를 방금 실행했는데, 팀이 4분 만에 이미 수정된 실제 문제 몇 가지를 찾아냈습니다.” 예전에는 외부 컨설턴트가 하루 동안 하던 작업입니다.

도구 구성에 관한 추가 자료는 [Ailoot 문서](https://ailoot.ai/docs/)에서 확인할 수 있습니다.

<div class="aside" data-semantic="ailoot-cta" role="note" aria-label="Ailoot 가이드">

[Ailoot 가이드](https://ailoot.ai/docs/)

</div>

## Claude Code의 /security-review란?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="섹션 주요 내용">

주요 내용

`/security-review`는 터미널에서 바로 전체 프로젝트나 현재 변경 사항의 보안 분석을 실행하는 Claude Code 내장 명령어입니다. Anthropic은 2026년 2월 20일 Claude Code Security의 일부로 이 기능을 출시했으며, Pro, Max, API Console 사용자 모두 사용할 수 있도록 공개했습니다. 요청 비용은 일반 Claude API 잔액에서 차감됩니다.

</div>

이 명령어는 두 가지 방식으로 작동합니다. 로컬 방식에서는 터미널에서 `/security-review`를 실행하면 Claude가 저장소를 읽고 보고서를 작성합니다. 서버 측 방식에서는 같은 엔진을 GitHub Action으로 설치해 모든 Pull Request에 자동으로 인라인 댓글을 남깁니다.

Snyk Code, Semgrep, SonarQube 같은 기존 SAST 스캐너와 달리 `/security-review`는 고정된 규칙에 따라 작동하지 않습니다. 실제 엔지니어처럼 코드를 읽습니다. 데이터 흐름을 추적하고, 어떤 프레임워크를 사용하는지와 신뢰 경계가 어디에 있는지 이해하며, 규칙으로 표현되지 않는 취약점도 찾아냅니다.

<figure>
<blockquote>
<p>Claude Code Security는 인간 보안 연구자처럼 코드를 읽고 추론합니다. 구성 요소가 어떻게 상호작용하는지 이해하고, 애플리케이션에서 데이터가 이동하는 경로를 추적하며, 규칙 기반 도구가 놓치는 복잡한 취약점을 찾아냅니다.</p>
</blockquote>
<figcaption>— Anthropic, https://www.anthropic.com/news/claude-code-security</figcaption>
</figure>

그렇다고 `/security-review`가 외부 침투 테스트나 스테이징 환경에서의 실시간 테스트를 대체한다는 뜻은 아닙니다. 초기 코드 검토 일부를 자동화할 수 있지만 이 글은 감사 범위의 비율을 측정하지 않습니다. 아래에서 올바르게 실행하는 방법과 Claude가 프로젝트에서 무엇을 찾아내는지 설명합니다.

## /security-review를 5단계로 실행하는 방법

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="섹션 주요 내용">

주요 내용

Claude Code를 최신 버전으로 업데이트하고, 터미널에서 프로젝트를 연 다음 `/security-review`를 실행합니다. 보고서가 나올 때까지 기다리고(일반적인 프로젝트는 1~5분), 심각도 판정을 읽은 뒤 Claude에게 수정을 요청하세요. Next.js, Django, FastAPI, Rails, Go, Rust 등 어떤 스택에서도 작동하며 별도의 설정은 필요하지 않습니다.

</div>

**1단계. Claude Code를 업데이트합니다.** 이 명령어는 2026년 2월 20일자 릴리스부터 사용할 수 있습니다.

```bash
claude update
```

npm으로 Claude Code를 설치했다면 다음 명령어를 실행할 수도 있습니다.

```bash
npm install -g @anthropic-ai/claude-code@latest
```

`/security-review`가 표시되는지 확인합니다.

```bash
claude /help | grep security
```

**2단계. 프로젝트를 열고 Claude Code에 로그인합니다.**

```bash
cd ~/projects/my-vibe-project
claude
```

**3단계. 명령어를 실행합니다.** Claude Code 안에 다음을 입력하기만 하면 됩니다.

```
/security-review
```

Claude는 자동으로 3단계 분석을 수행합니다.

1.  **저장소 컨텍스트 조사** - 구조를 읽고 스택, 경로, 데이터베이스 쿼리를 파악합니다.
2.  **비교 분석** - 현재 상태를 해당 스택에서 흔히 발견되는 취약점 패턴과 비교합니다.
3.  **취약점 평가** - 각 의심 항목을 1~10의 신뢰도 점수와 함께 나열합니다. 신뢰도 ≥ 8인 결과만 보고서에 포함됩니다.

**4단계. 보고서를 읽습니다.** 출력은 Markdown 표 형식입니다. Claude는 각 문제에 대해 다음을 제공합니다.

- **파일 및 줄 번호** (예: `src/auth/login.ts:42`)
- **심각도** (HIGH / MEDIUM / LOW)
- **범주** (`sql_injection`, `xss`, `auth_bypass`, `insecure_storage`)
- **설명** - 무엇이 잘못되었는지
- **악용 시나리오** - 공격자가 어떻게 악용할 수 있는지
- **권장 사항** - 해결 방법

**5단계. 수정 사항을 적용해 달라고 요청합니다.** 이후에는 일반 에이전트처럼 활용할 수 있습니다.

> “보고서에서 심각도가 HIGH인 수정 사항을 하나씩 적용하고, PR 설명도 작성해 줘.”

Claude는 파일을 하나씩 열고 변경 사항을 제안하며, 사용자가 이를 확인합니다. 실제 프로젝트에서 예정된 3시간 대신 40분 만에 5건의 결과를 해결했습니다.

<div class="aside" data-semantic="ailoot-cta" role="note" aria-label="Ailoot 가이드">

[Ailoot 가이드](https://ailoot.ai/docs/)

</div>

## /security-review가 찾아내는 취약점은?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="섹션 주요 내용">

주요 내용

Claude는 6가지 유형을 찾아냅니다. SQL 인젝션과 일반적인 인젝션, XSS, 인증 및 권한 부여 문제, 민감 데이터 유출, 타사 의존성의 취약점, 코드에 하드코딩된 비밀 정보입니다. 또한 규칙 기반 스캐너가 처리하지 못하는 여러 파일에 분산된 인증 로직도 분석할 수 있습니다.

</div>

기본 분석에 포함되는 항목의 전체 목록은 [Anthropic 공식 문서](https://support.claude.com/en/articles/11932705-automated-security-reviews-in-claude-code)에 설명되어 있습니다.

| 범주 | 탐지 대상 |
|----|----|
| **SQL 인젝션** | SQL에서 문자열을 직접 연결하는 코드, 안전하지 않은 ORM 호출(매개변수 없는 `raw()`), Prisma `$queryRawUnsafe` |
| **XSS** | 정제 없이 사용하는 `dangerouslySetInnerHTML`, 자동 이스케이프가 없는 템플릿 시스템, 사용자 입력을 사용하는 `innerHTML` |
| **인증 결함** | 재사용 가능한 토큰, API 경로에 누락된 권한 확인, 만료 날짜가 없는 JWT, 세션 고정 |
| **안전하지 않은 데이터 처리** | 클라이언트 측에서만 수행하는 검증, 불필요한 필드가 포함된 응답(over-fetching), 오픈 리디렉션 |
| **의존성 취약점** | `npm audit` 및 이에 준하는 도구로 확인한 npm/pip/cargo 패키지의 취약 버전 |
| **비밀 정보** | 하드코딩된 API 키, `.env.example`의 토큰, 코드에 포함된 비밀번호 |

또한 자동 스캐너가 좀처럼 찾아내지 못하는 범주도 분석합니다.

- **Command injection** - 셸에서 사용자 입력 실행 (`child_process.exec(userInput)`)
- **Path traversal** - `../../etc/passwd`를 통해 파일 로드
- **XXE** - 외부 엔터티가 포함된 XML
- **Template injection** - Jinja/Handlebars/EJS의 SSTI
- **NoSQL injection** - MongoDB 쿼리의 `$ne`, `$gt` 연산자
- **암호화 오용** - MD5, ECB 모드, 고정 IV 사용

Claude는 각 결과에 심각도를 부여합니다. 기준은 간단합니다.

- **HIGH** - 인증 없이 원격으로 악용 가능, 모든 사용자에게 영향을 미치는 데이터 유출
- **MEDIUM** - 추가 조건이 필요한 악용(세션 필요 / 특정 입력 필요)
- **LOW** - 잠재적 공격 경로로, 현재는 치명적이지 않지만 수정할 가치가 있음

알아둘 점: 기본 설정에서 Claude는 DoS, 속도 제한, 메모리 고갈, 입증된 영향이 없는 오픈 리디렉션, 정규식 인젝션 / ReDoS 또는 로그 위조를 **보고하지 않습니다**. 불필요한 경고가 쏟아지지 않도록 의도적으로 제외한 것입니다. 이러한 유형이 중요하다면 규칙을 확장하세요(아래의 오탐 필터링 섹션 참조).

## 자동 검토를 위한 GitHub Action 설정 방법

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="섹션 주요 내용">

주요 내용

Anthropic은 공식 Action인 `anthropics/claude-code-security-review@main`을 공개했습니다. 워크플로 파일 하나로 연결하면 발견한 취약점을 모든 Pull Request에 자동으로 인라인 댓글로 남깁니다. CLAUDE_API_KEY와 워크플로 권한을 설정하세요. 공식 Action은 프롬프트 인젝션에 강화되지 않았고 신뢰한 PR을 검토해야 한다고 경고합니다. 활성화 전에 기여자·워크플로 접근을 검토하세요.

</div>

**1단계. API 키를 발급받습니다.** [console.anthropic.com](https://console.anthropic.com/)으로 이동해 API 키를 만들고 복사합니다.

**2단계. 저장소 비밀 정보에 키를 추가합니다.** GitHub에서 Settings → Secrets and variables → Actions → New repository secret으로 이동합니다. 이름은 `CLAUDE_API_KEY`로 지정하고, 값에는 키를 입력합니다.

**3단계. 워크플로 파일을 만듭니다.** `.github/workflows/security.yml`로 저장합니다.

```yaml
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단계. 브랜치를 main에 병합합니다.** 다음 PR부터 Action이 자동으로 실행됩니다.

**Action의 작동 방식:**

- 새로 열리거나 동기화된 모든 Pull Request에서 실행됩니다.
- PR 브랜치와 main 사이의 차이를 가져옵니다.
- 로컬 `/security-review`와 같은 엔진을 실행합니다.
- 의심 항목이 발견된 코드 줄에 직접 인라인 댓글을 게시합니다.
- 전체 보고서를 Job Summary에도 복사합니다.

**`permissions`의 중요 설정:**

- `pull-requests: write` - 인라인 댓글을 게시하기 위한 권한입니다.
- `contents: read` - 코드를 읽기 위한 권한입니다. `write` 권한은 없습니다. Action은 코드를 직접 수정하지 않고 결과만 보고합니다.

비공개 저장소라면 이 권한으로 충분합니다. 공개 저장소에서 재사용 가능한 워크플로를 사용한다면 `actions: read`를 추가로 지정할 수 있습니다.

## 오탐을 필터링하고 민감도를 변경하는 방법

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="섹션 주요 내용">

주요 내용

Action에는 프로젝트에 맞게 작동을 설정할 수 있는 입력값이 9개 있습니다. 주요 입력값은 `exclude-directories`(예: `tests/,fixtures/`), `false-positive-filtering-instructions`(“이것은 ... 때문에 취약점이 아닙니다”라는 규칙을 담은 md 파일의 경로), 프로젝트별 추가 검사를 위한 `custom-security-scan-instructions`입니다.

</div>

GitHub Action 입력값 전체 표([출처: 저장소 README](https://github.com/anthropics/claude-code-security-review)):

| 입력값 | 기본값 | 기능 |
|----|----|----|
| `claude-api-key` | \- | Anthropic API 키. 필수입니다. |
| `comment-pr` | `true` | PR에 인라인 댓글을 게시할지 여부 |
| `upload-results` | `true` | 결과를 90일간 artifact로 저장할지 여부 |
| `exclude-directories` | \- | 쉼표로 구분: `tests/,docs/,fixtures/` |
| `claude-model` | `claude-opus-4-1-20250805` | 사용할 모델 |
| `claudecode-timeout` | `20` | 제한 시간(분) |
| `run-every-commit` | `false` | PR에서만이 아니라 모든 push에서 실행할지 여부 |
| `false-positive-filtering-instructions` | \- | 규칙이 담긴 md 파일의 경로 |
| `custom-security-scan-instructions` | \- | 추가 검사가 담긴 md 파일의 경로 |

**오탐 필터 설정 예시.** `.claude/security/false-positives.md` 파일을 만듭니다.

```markdown
# 우리 프로젝트의 오탐 필터링 규칙

- `src/lib/email/layout.ts` 내의 `dangerouslySetInnerHTML`은 모두 안전합니다.
  HTML은 신뢰할 수 있는 템플릿으로 구성되며 렌더링 시점이 아니라
  데이터베이스에 기록할 때 `sanitize-html`을 거칩니다.
- `__tests__/fixtures/*.ts`에 하드코딩된 테스트 API 키는 보고하지 마세요.
  모든 키는 `sk-test-fake-`로 시작합니다.
- `src/lib/admin/migrations.ts`의 SQL 문자열 연결은 허용됩니다. 이 파일은
  root로만 실행되며 입력 데이터는 환경 변수에서 가져옵니다.
```

워크플로에 연결합니다.

```yaml
- 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
```

**사용자 지정 보안 검사 지침**도 비슷합니다. 프로젝트에 특히 중요한 규칙이 담긴 파일을 만듭니다.

```markdown
# 우리 프로젝트의 추가 검사

- `/api/admin/*` 아래의 모든 엔드포인트는 공통 래퍼를 통해 관리자 역할을
  확인해야 합니다. 이 래퍼가 없으면 심각도는 HIGH입니다.
- 모든 YooKassa / CloudPayments 웹훅은 본문을 분석하기 전에 서명을 확인해야
  합니다. 확인하지 않으면 심각도는 HIGH입니다.
- 매직 링크 토큰은 한 번만 사용할 수 있어야 합니다(첫 번째 유효한 요청 후
  사용됨으로 표시). 재사용 가능한 토큰의 심각도는 MEDIUM입니다.
```

이제 Anthropic의 사전 설정이 아니라 Claude가 매번 적용할 규칙에 프로젝트에 관한 전문 지식을 옮기는 것입니다. 이것이 바로 “모델보다 방법론”의 핵심입니다.

Claude의 컨텍스트 방법론에 관한 자세한 내용은 [“CLAUDE.md 설정 방법”](https://ailoot.ai/blog/ko/claude-md-template/) 및 [“Claude Code의 Second Brain”](https://ailoot.ai/blog/ko/claude-code-second-brain/) 가이드를 참조하세요.

## Claude가 찾아내지 못하는 것과 그 이유: 솔직한 한계

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="섹션 주요 내용">

주요 내용

코드 검토 자체는 실행 앱이나 실제 배포 환경을 시험하지 않습니다. 코드에 드러난 경쟁 조건, 업무 로직, 설정 문제를 지적할 수 있지만 동작과 남은 위험을 확인하려면 스테이징 시험과 실제 배포 검사가 필요합니다.

</div>

Anthropic은 기본적으로 비활성화된 항목과 이유를 명확히 나열합니다([출처: 저장소 README](https://github.com/anthropics/claude-code-security-review)).

- **서비스 거부(DoS)** - 불필요한 경고가 너무 많고, 영향도 거의 항상 낮습니다.
- **속도 제한 문제** - 코드가 아니라 인프라 수준에서 처리합니다.
- **메모리 / CPU 고갈** - 같은 이유입니다.
- **입증된 영향이 없는 일반적인 입력 검증** - 모든 필드를 검증하면 오탐이 급증합니다.
- **오픈 리디렉션** - 의도된 동작인 경우가 많습니다.

실행 또는 배포 증거 없이 코드 검토만으로 완전히 검증할 수 없는 항목:

- **프로덕션 서버 설정.** NGINX 헤더, CORS 정책, TLS 설정, 수신 대기 포트는 스테이징 환경에서 직접 확인해야 합니다.
- **경쟁 조건.** 예를 들어 동시에 여러 환불 요청이 들어올 때 이중으로 환불되는 문제는 정적 분석으로 의심 패턴을 지적할 수 있지만 동시 동작은 시험해야 합니다.
- **결제 비즈니스 로직 결함.** 주문 총액을 클라이언트에서 계산해 결제 제공업체에 그대로 전송한다면 심각도는 HIGH입니다. 하지만 결제가 어떤 방식으로 작동해야 하는지 명시적인 맥락이 없으면 Claude가 이 패턴을 항상 찾아내지는 못합니다.
- **데이터베이스 수준의 IDOR.** `SELECT * FROM orders WHERE id = $1` 쿼리에 `WHERE user_id = $session.userId` 조건이 없는 경우 Claude가 자주 찾아냅니다. 하지만 ORM 미들웨어에서 검사를 수행하고 Claude가 전체 데이터 흐름을 볼 수 없다면 놓칠 수 있습니다.
- **사회 공학 / 피싱 대응.** 코드와는 무관합니다.

`/security-review`를 초기 정적 검토로 사용하고 스테이징 동적 시험, 역할·권한 검사, 관련 SAST, 실제 배포 구성을 이어서 확인하세요. 여기서 측정된 범위 비율은 없습니다.

외부 평가의 범위와 시점은 시스템 위험과 변경에 따라 결정하세요. 명령 하나나 정기 외부 감사 모두 100% 보안 범위를 입증하지 못합니다.

## 원문 작성자가 바이브 프로젝트에서 보안 검토를 실행한 방법

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="섹션 주요 내용">

주요 내용

Next.js, Prisma, PostgreSQL, Redis를 사용하는 내 TypeScript 프로젝트에서 `/security-review`를 실행했습니다. 명령어는 4분 만에 초기 감사를 수행하고, 다양한 심각도의 근거가 충분한 결과를 몇 가지 반환했습니다. 실제 수정 작업을 완료하는 데는 결국 1시간 반이 걸렸습니다. 어떤 외부 침투 테스트보다 저렴하고 빨랐습니다.

</div>

무엇이 발견되었을까요? “프로덕션에서 작동하지만 검토받지 않은” 단계의 일반적인 바이브 프로젝트라면 대체로 인증 흐름, 결제 연동 웹훅 처리 로직, 파일 업로드 처리, 렌더링 시점의 HTML 처리에 관한 구체적인 지적이 몇 가지 나옵니다. 세부 내용은 공개하지 않겠습니다. 일부 권고 사항은 이미 적용했고, 나머지는 아직 PR에 있습니다. 보고된 프로젝트의 초기 검사는 빠르고 유용했지만 감사 범위 비율이나 일반 완료 시간을 입증하지는 않습니다.

오탐으로 판단해 제외한 항목:

- 입력 검증 정규식을 통한 DoS 관련 결과 - 실제 부하는 해당 정규식에 걸리지 않습니다.
- 하드코딩된 API 키 관련 결과 하나 - fixture에 있던 테스트 키였으며, `fake-` 접두사가 명시되어 있었습니다.

걸린 시간. 실행 자체는 4분이었습니다. 보고서를 검토하는 데 25분이 걸렸습니다. 테스트를 포함해 수정 사항을 적용하는 데 약 한 시간이 걸렸습니다. 시작부터 “모두 main에 반영”까지 총 약 1시간 반입니다. 같은 범위의 외부 침투 테스트는 달력 기준 일주일이 걸리고 비용은 수십 배 더 듭니다.

핵심 요점. `/security-review`는 외부 침투 테스트를 대체하지 않습니다. 저자의 4분 검사 사례처럼 유용한 코드 지적을 찾을 수 있습니다. 수정 검토·시험 후 실행 동작과 배포 설정을 따로 확인하세요. 검사가 프로젝트 보안 위험을 제거하지는 않습니다.

## /security-review를 pre-commit 루틴에 통합하는 방법

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="섹션 주요 내용">

주요 내용

중요한 변경 커밋 전에 세션에서 `/security-review`를 실행하고 지적을 읽어 확인된 문제를 수정한 뒤 관련 테스트를 다시 실행하세요. 이는 검토 절차이지 커밋의 기술적 금지가 아닙니다.

</div>

앞서 제시했던 `git_commit`, `--severity HIGH`, `--fail-on-find` 훅은 문서화된 작동법이 아니므로 보안 관문으로 쓰지 마세요. 이 글은 검증된 로컬 커밋 차단 훅을 제공하지 않습니다. 공식 GitHub Action은 PR 지적을 게시하며 댓글을 단다는 이유로 커밋·병합 차단을 추정해서는 안 됩니다.

훅에 대한 자세한 설명은 [“Claude Code의 훅”](https://ailoot.ai/blog/ko/claude-code-hooks/) 가이드에서 확인할 수 있습니다.

[routines](https://ailoot.ai/blog/ko/claude-code-routines/)를 활용하는 대안은 `/security-review` + `npm run build` + `npm run test`를 명령어 하나로 실행하는 `pre-deploy-check` 루틴을 만드는 것입니다. 추가 자료는 Ailoot 문서에서 확인할 수 있습니다.

[MCP 서버](https://ailoot.ai/blog/ko/mcp-servers-claude-code/)를 사용한다면 `/security-review` 결과를 인시던트 시스템(Sentry, Linear, Notion)에 연동해 HIGH 결과가 자동으로 티켓이 되도록 할 수 있습니다.

## /security-review FAQ

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="섹션 주요 내용">

주요 내용

자주 묻는 질문 5가지: 비용, 실행 빈도, 지원하는 스택, Claude가 이미 취약점을 찾아낸 경우의 대처 방법, 특정 파일만 검사할 수 있는지 여부입니다. 군더더기 없이 짧게 답합니다.

</div>

**한 번 실행하는 데 비용이 얼마나 드나요?** 프로젝트 크기에 따라 다릅니다. 내 프로젝트는 30K줄 기준으로 한 번 실행할 때 API 잔액에서 약 \$0.30-0.50가 차감됩니다. 100만 줄짜리 대규모 기업 저장소는 한 번에 최대 \$5-8가 듭니다. 어떤 SaaS 스캐너 구독료보다도 수십 배 저렴합니다.

**로컬에서는 얼마나 자주 실행해야 하나요?** 최소한 프로덕션에 배포할 때마다 실행하세요. 중요한 커밋과 PR 전에도 검토하세요. 이 글에는 검증된 자동 커밋 차단 훅이 없습니다.

**어떤 스택에서 작동하나요?** Claude가 읽을 수 있는 스택이라면 무엇이든 됩니다. 작성자의 경험에 따르면 Next.js / Node.js, Python (Django, FastAPI), Go, Rust, PHP (Laravel), Ruby on Rails를 확인했습니다. 매우 생소한 언어(Erlang, Elixir, Clojure)에서는 품질이 낮지만, 그래도 무언가는 찾아냅니다.

**Claude가 실제 취약점이 아닌데도 매번 같은 “취약점”을 찾아내면 어떻게 해야 하나요?** “왜 안전한지” 설명을 덧붙여 `false-positive-filtering-instructions`에 추가하세요. 이후 실행에서는 Claude가 해당 항목을 더 이상 보고하지 않습니다.

**특정 파일만 검사할 수 있나요?** 로컬에서는 가능합니다. `/security-review src/lib/auth/*.ts`를 실행하면 됩니다. GitHub Action에서는 현재 PR의 diff만 검사하는데, 보통 “특정 파일”이라는 의미에 해당합니다.

## 출처

<div class="section" role="doc-bibliography" aria-label="출처">

### 출처

- [Anthropic - Claude Code Security 출시 발표](https://www.anthropic.com/news/claude-code-security) - 2026년 2월 20일자 공식 발표
- [Anthropic Help Center - Automated Security Reviews in Claude Code](https://support.claude.com/en/articles/11932705-automated-security-reviews-in-claude-code) - 실행 방법에 관한 공식 안내
- [GitHub: anthropics/claude-code-security-review](https://github.com/anthropics/claude-code-security-review) - 전체 README가 포함된 GitHub Action 소스
- [Claude Code Docs - Code Review](https://code.claude.com/docs/en/code-review) - Anthropic의 일반 문서
- [Anthropic Help Center - Use Claude Security](https://support.claude.com/en/articles/14661296-use-claude-security) - 관련 제품
- [Port - Ingest Claude Code Security Reviews](https://docs.port.io/guides/all/ingest-claude-code-security-reviews/) - 내부 개발자 포털에 결과를 통합하는 방법
- [Claude Code Changelog](https://code.claude.com/docs/en/changelog) - 명령어 릴리스 내역

</div>

추가 자료는 [Ailoot 문서](https://ailoot.ai/docs/)에서 확인할 수 있습니다.



<div class="aside" data-semantic="ailoot-cta" role="note" aria-label="Ailoot 가이드">

[Ailoot 가이드](https://ailoot.ai/docs/)

</div>

<div class="aside" data-semantic="ailoot-cta" role="note" aria-label="Ailoot로 이동">

[Ailoot로 이동](https://ailoot.ai/)

</div>

## Claude Code 보안 검토: 단계별 가이드와 2026년 GitHub Action 자동화: 자주 묻는 질문

### 지적 없는 security-review 보고서가 앱 보안을 입증하나요?

아닙니다. 누락과 필터링이 가능한 초기 검토입니다. 수정을 검증하고 스테이징에서 역할과 동시 동작을 시험하며 실제 배포 구성을 확인하세요.

### 예시 GitHub Action이 커밋이나 병합을 자동 차단하나요?

표시된 구성은 그런 보장을 입증하지 않습니다. PR 지적을 게시하므로 읽고 확인된 수정을 시험하세요. 이 글에는 검증된 로컬 커밋 차단 훅이 없습니다.


## Ailoot · 회사와 그 프로젝트 포트폴리오

Ailoot는 축적된 운영 경험, 폭넓은 고객 기반, 안정적인 서비스, 지속적인 KPI 관리를 바탕으로 합니다.

회사와 그 프로젝트 포트폴리오: 수백만 고객, 매월 수십억 규모의 매출.

Ailoot는 이러한 운영 경험을 고객의 제품, 에이전트, 애플리케이션, 자동화에서 AI 기능을 이용할 수 있는 API 접근에 활용합니다.
