모델이 취약점을 찾았다는 뉴스에서 진짜 봐야 할 건 와, 이제 AI가 다 해주네가 아니다.
진짜 봐야 할 건 그 취약점을 누가 검증했고, 언제 공개했고, 어떤 루프로 팀에 넣을 수 있냐다.
Anthropic은 2026년 3월 6일 기준으로 Claude가 발견한 취약점에 대해 별도 공개 원칙을 문서로 정리했고, 같은 시기 공개된 보안 글에서는 사람 검증과 패치 지원이 같이 들어갔다고 설명했다.
즉 이건 단순한 데모 자랑보다, AI가 보안 리뷰 루프 안으로 들어오기 시작했다는 신호에 가깝다.
솔직히 여기서 흥분만 하면 제일 먼저 망한다.
보안은 늘 그렇다.
툴이 강해질수록, 운영 루프는 더 보수적으로 설계해야 한다.
이 글은 Claude Code가 취약점을 찾았다는 이야기를 보고 개발팀이 실제로 바꿔야 할 코드리뷰 보안 루프를 정리한 메모다.
이 글이 필요한 사람
- Claude Code나 비슷한 코딩 에이전트를 이미 팀에서 쓰는 사람
/security-review나 PR 자동 보안 리뷰를 붙일지 고민하는 사람- AI가 취약점을 찾았다는 뉴스를 보고 기대와 불안을 같이 느낀 사람
- 코드리뷰는 있는데 보안리뷰는 사람 감각에만 의존하는 팀
- 도입은 하고 싶은데 과대광고 냄새 나는 발표 요약은 싫은 사람
지금 결론
AI가 취약점을 찾았다는 뉴스에서 개발팀이 바로 가져갈 건 5가지다.
탐지와판정을 분리한다.- 사람 검증 없이는 보안 이슈를 티켓으로 승격하지 않는다.
- false positive를 줄이는 필터 규칙을 먼저 만든다.
- 공개 시점과 외부 제보 루프를 문서화한다.
- 자동화는 read-only 리뷰부터 시작하고, 수정 자동화는 한참 뒤로 미룬다.
이 순서를 거꾸로 하면 뉴스는 멋있어도 팀 운영은 금방 피곤해진다.
먼저 팩트부터 보자
Anthropic의 공식 문서 기준으로, 2026년 3월 6일 업데이트된 Coordinated vulnerability disclosure for Claude-discovered vulnerabilities는 Claude가 발견한 취약점 공개 원칙을 따로 두고 있다.
핵심은 이거다.
- 오픈소스와 적절한 권한을 받은 폐쇄형 소프트웨어를 대상으로 한다
- 인간이 리뷰한 리포트를 전제로 한다
- 기본적으로 90일 공개 원칙을 지향한다
- maintainers가 감당 가능한 속도로 제보를 보낸다고 적었다
또 Anthropic RED 팀 블로그의 2026년 0-days 글에서는 Claude가 바로 정답을 찍은 게 아니라, 여러 실패 경로를 거친 뒤 사람 연구자가 검증하고 패치를 도왔다고 설명한다.
이 대목이 중요하다.
모델이 찾았다보다 사람 검증이 붙었다가 더 중요하다는 뜻이니까.
왜 이 뉴스가 과장만은 아닌가
보안 팀 입장에서 제일 중요한 질문은 늘 같다.
이게 재현 가능한가?
운영에 넣을 수 있는가?
사람 시간을 실제로 줄여주나?
Claude 관련 공개 사례를 보면 최소한 첫 번째와 두 번째 질문에는 답이 붙기 시작했다.
사람이 검증하고 패치 작성까지 도왔다는 건, 이게 단순한 랜덤 발견이 아니라 운영 가능한 프로세스로 옮겨가고 있다는 뜻이다.
특히 Claude Code 지원 문서에서 /security-review와 GitHub Action 기반 보안 리뷰를 같이 밀고 있는 걸 보면, Anthropic도 이걸 연구 데모만으로 두지는 않는 분위기다.
그런데 왜 바로 믿으면 안 되나
여기서 제일 흔한 착각이 나온다.
취약점을 찾을 수 있다 = 우리 팀 코드도 자동으로 잘 지켜준다
이건 아니다.
보안 리뷰는 늘 두 단계로 나뉜다.
- 뭔가 이상해 보이는 걸 찾는 단계
- 그게 실제 이슈인지 판정하는 단계
AI는 첫 단계에서 미친 듯이 빨라질 수 있다.
문제는 두 번째 단계다.
두 번째 단계에서 사람과 팀 규칙이 없으면, 경고만 잔뜩 쌓이고 아무도 안 믿는 시스템이 된다.
그 순간부터 보안 자동화는 도와주는 도구가 아니라 알람 소음기가 된다.
개발팀이 바로 바꿔야 할 루프
1. 탐지와 판정을 분리한다
AI에게 맡길 건 후보 발견까지다.
바로 심각도 확정까지 넘기면 피곤해진다.
더 현실적인 구조는 이렇다.
| 단계 | 담당 | 목표 |
|---|---|---|
| 후보 탐지 | Claude Code | 의심 포인트 수집 |
| 1차 분류 | 개발자 | 재현 가능성, 맥락 확인 |
| 2차 판정 | 보안 담당 또는 리뷰어 | 진짜 이슈 여부와 우선순위 확정 |
| 수정안 설계 | 개발자 + AI | 안전한 패치 초안 |
| 병합 전 검증 | 사람 | 회귀, 부작용, 범위 확인 |
이 표가 중요한 이유는 단순하다.
AI를 사람 위에 두지 않고, 사람 루프 안에 넣기 때문이다.
2. /security-review는 pre-commit보다 pre-merge에 가깝게 본다
Claude Code 도움말 문서를 보면 /security-review는 프로젝트 디렉토리에서 실행하고, 결과 설명을 검토한 뒤 수정까지 요청할 수 있게 돼 있다.
이건 편하다.
근데 편한 도구일수록 오해도 쉽게 생긴다.
이걸 모든 저장 순간마다 돌리는 만능 훅처럼 생각하면 금방 피곤해진다.
오히려 실무에서는 아래처럼 쓰는 편이 낫다.
- 큰 기능 PR 열기 전
- 인증, 권한, 입력 검증, 파일 업로드 관련 변경 전후
- 외부 API 호출이 새로 들어간 직후
- 시크릿, 세션, 쿠키를 만지는 코드 변경 후
즉 모든 커밋보다 위험도 높은 변경에 맞춰야 한다.
3. false positive 허용 한도를 정한다
AI 보안 리뷰가 진짜 팀에 먹히는지 아닌지는 정확도보다 팀이 얼마나 참을 수 있는가에 달려 있다.
예를 들어 한 PR에 20개 이슈를 띄웠는데 실제로 볼 만한 게 1개뿐이면, 두 번까진 봐줘도 세 번째부터는 아무도 안 본다.
그래서 최소한 아래는 정해야 한다.
- 어떤 종류의 경고만 남길지
- low severity는 어디까지 숨길지
- 의심 수준 메모와 확정 수준 코멘트를 어떻게 나눌지
- 인증/권한/주입 공격 계열만 먼저 켤지
Anthropic 도움말도 GitHub Action 쪽에서 필터 규칙 커스터마이징을 언급한다.
이건 옵션이 아니라 거의 필수다.
4. 공개와 제보 규칙을 미리 적어둔다
취약점은 찾는 것보다 공개가 더 어렵다.
Anthropic이 아예 coordinated disclosure 문서를 따로 둔 이유도 그거다.
팀에서도 최소한 아래 정도는 있어야 한다.
- 내부 이슈 발견 시 누구에게 먼저 알릴지
- 오픈소스면 maintainer 연락 경로를 어떻게 둘지
- 고객 영향이 있을 때 공개 시점을 누가 결정할지
- 패치 전까지 어떤 로그와 증적을 남길지
여기 문서가 없으면, 보안 이슈가 기술 문제가 아니라 조직 문제로 터진다.
그때부터 회의실 공기가 갑자기 서늘해진다.
5. 자동 수정은 맨 마지막이다
이건 진짜 중요하다.
AI가 취약점을 찾았다고 해서 바로 수정까지 맡기고 merge까지 자동화하면, 그건 용감한 게 아니라 그냥 급한 거다.
패치 초안 제안은 괜찮다.
자동 적용은 별개의 문제다.
특히 보안 수정은 부작용이 무섭다.
입력 검증을 강화했는데 정상 요청도 막아버릴 수 있고, 권한 체크를 손봤는데 운영 도구가 갑자기 죽을 수 있다.
그래서 첫 단계는 늘 이거다.
- 탐지 자동화
- 설명 자동화
- 패치 초안 자동화
그 다음도 이거다.
- 검증은 사람
- 병합도 사람
숫자 예시로 보면 더 쉽다
예를 들어 팀에 주당 30개 PR이 들어오고, 그중 인증/권한/입력 검증 관련 PR이 6개라고 하자.
여기에만 /security-review를 붙이면, 전체 PR에 난사하는 것보다 사람 시간을 아낄 가능성이 높다.
반대로 30개 전부에 걸었는데 경고가 PR당 8개씩 뜨면 주당 240개 경고다.
이건 보안 강화가 아니라 경고 인플레이션이다.
차라리 위험 영역 6개에만 걸고, 그중 진짜 확인할 만한 1~2개를 건지는 편이 팀 입장에선 훨씬 낫다.
직접 붙여보면 어디서 귀찮아지나
여기서부터가 TECHTAEK 포인트다.
실제로 /security-review 류 루프를 운영에 붙이면 멋있어 보이는 순간보다 귀찮아지는 순간이 더 빨리 온다.
1. 설명은 길어지는데 판정 기준은 짧다
AI가 남기는 설명은 생각보다 친절하다.
문제는 친절함과 정확함이 같은 말이 아니라는 거다.
설명은 길게 잘 쓰는데, 정작 팀이 필요한 건 이거 티켓으로 올릴까 말까 한 줄일 때가 많다.
그래서 운영에 넣을 땐 설명 길이보다 판정 규칙을 먼저 짧게 정해야 한다.
2. 보안 이슈보다 보안 느낌이 더 많이 나온다
이것도 자주 겪는다.
진짜 취약점은 아닌데 뭔가 위험해 보인다는 코멘트가 꽤 쌓인다.
이런 코멘트는 초반엔 유용하지만, 쌓이기 시작하면 팀이 금방 둔감해진다.
그래서 나는 보통 auth, permission, input validation, file upload 같이 범위를 좁혀서 시작하는 편이 낫다고 본다.
3. 수정 제안은 빠른데 책임은 여전히 사람이다
패치 초안은 빨라질 수 있다.
근데 병합 책임은 그대로 사람이다.
그래서 이 루프는 개발자를 없애는 방향보다, 개발자의 검증 시간을 더 비싼 데 쓰게 만드는 방향에 가깝다.
이걸 착각하면 툴 탓, 사람 탓, 리뷰어 탓이 한꺼번에 시작된다.
이런 팀엔 특히 잘 맞는다
| 팀 상태 | 왜 잘 맞나 |
|---|---|
| PR 수는 많고 보안 전담은 얇은 팀 | 1차 후보 탐지 시간을 줄여준다 |
| 인증/권한 코드 변경이 잦은 팀 | 위험 구간을 먼저 좁혀 볼 수 있다 |
| 사람이 리뷰는 하지만 체크리스트가 없는 팀 | 최소 운영 규칙을 문서화하기 좋다 |
| 이미 Claude Code를 다른 루프에 쓰는 팀 | 새 도구를 더 얹지 않고 확장 가능하다 |
이런 팀은 아직 천천히 가는 게 낫다
| 팀 상태 | 왜 아직 이른가 |
|---|---|
| 코드리뷰 기본 루틴도 없는 팀 | AI 경고만 더 쌓인다 |
| 누가 판정할지 안 정한 팀 | 보안 이슈가 공중에 뜬다 |
| 수정 자동화를 너무 빨리 원하는 팀 | false positive보다 부작용이 먼저 온다 |
| 외부 공개 원칙이 없는 팀 | 기술보다 커뮤니케이션에서 더 크게 터진다 |
실수 TOP
1. AI가 찾았으니 진짜 취약점이라고 생각한다
보안에서 가장 비싼 건 false positive다.
찾는 건 쉬워도, 믿는 순간 비용이 생긴다.
2. 모든 PR에 같은 강도로 돌린다
인증 코드와 문구 수정 PR을 같은 강도로 보면 팀이 금방 지친다.
3. 사람이 재현하지 않고 티켓부터 만든다
티켓이 쌓이는 속도만 빨라지고 신뢰는 떨어진다.
4. severity 기준이 없다
high와 low가 섞여 나오면 결국 아무도 안 본다.
5. 수정 자동화를 너무 빨리 붙인다
보안 패치는 설명보다 부작용 검증이 더 중요하다.
6. 공개 원칙이 없다
오픈소스 제보, 내부 보안 이슈, 고객 영향 공지가 뒤엉키면 기술보다 커뮤니케이션에서 사고 난다.
이럴 때 제일 효과가 좋다
- 인증, 인가, 세션 코드가 자주 바뀌는 팀
- 외부 입력을 많이 받는 서비스
- 파일 업로드, SQL, 템플릿 렌더링, 서드파티 연동이 많은 제품
- PR 수는 많은데 보안 전담 인력은 적은 팀
- 코드리뷰는 돌지만 보안 체크리스트는 약한 팀
이럴 때는 아직 이르다
- 팀에 기본 코드리뷰 루틴도 없는 경우
- 경고를 누가 볼지 정해진 사람이 없는 경우
- 로그와 권한 경계가 아직 정리되지 않은 경우
- AI가 남긴 설명을 검증할 시간이 전혀 없는 경우
AI는 빈 구멍을 메워주기도 하지만, 구멍 위에 더 큰 구멍을 뚫기도 한다.
최소 도입안
처음부터 거창하게 갈 필요 없다.
아래 정도면 충분하다.
- 위험도 높은 PR 3종만 정한다.
/security-review를 수동으로 붙여본다.- false positive 패턴을 2주간 모은다.
- 그다음 GitHub Action 범위를 좁게 연다.
- 사람이 보는 판정 규칙을 문서로 남긴다.
이렇게 가면 뉴스 소비가 아니라 운영 습관으로 바뀐다.
FAQ
Q1. Claude Code가 실제로 0-day까지 찾았다고 해서 우리 앱도 알아서 지켜주나?
아니다.
공개 사례는 가능성을 보여주는 거고, 팀 운영은 별도 설계가 필요하다.
Q2. /security-review를 모든 PR에 자동으로 걸면 더 안전한가?
항상 그렇진 않다.
위험도 높은 PR에 먼저 좁게 거는 편이 팀 피로도가 낮다.
Q3. AI가 제안한 보안 패치는 바로 적용해도 되나?
초안까지는 괜찮지만, 병합 전 검증은 사람이 하는 게 맞다.
Q4. 기술보다 먼저 정해야 할 건 뭔가?
누가 판정하고, 누가 공개를 결정하는지다.
Q5. 이 주제를 뉴스 요약으로만 다루면 왜 아쉬운가?
그러면 독자는 “와 멋지다”까지만 가져가고, 팀 운영은 하나도 안 바뀐다.
다음에 읽을 글
- Claude Code hooks 보안 2026 — 자동 실행이 편할수록 왜 시크릿과 권한 경계부터 봐야 할까
- Claude Code MCP vs script 2026 — 내부 도구 연결할 때 언제 커스텀 툴이 과하고 언제 셸이면 충분할까
- AI 코딩 에이전트 오케스트레이터가 필요한 순간 2026 — Claude Code·Codex·Copilot을 한 데 묶기 전 체크할 5가지