안전
AI 취약점 발견
AI Vulnerability Discovery

AI가 방대한 코드베이스를 직접 분석해 사람이 놓쳤던 보안 취약점을 능동적으로 찾아내는 기술. 기존 정적 분석 도구가 패턴 매칭에 의존하는 것과 달리, AI는 코드의 맥락과 동작 방식을 이해해 실제로 악용 가능한 버그를 식별한다.

어떻게 다른가

기존 보안 스캐너(CodeQL, Semgrep 등)는 미리 정의된 규칙과 패턴으로 코드를 검사한다. "이런 형태의 코드는 위험할 수 있다"는 식의 규칙 기반 접근이라, 알려진 패턴 밖의 취약점은 찾지 못하고 오탐도 많다. AI 취약점 발견은 다르다. LLM이 코드의 흐름과 의미를 이해하고, 여러 컴포넌트 간의 복잡한 상호작용 속에서 악용 가능한 조건을 추론한다.

2024년 Google Project Zero의 Big Sleep 프로젝트가 대표적인 출발점이다. Gemini 모델이 SQLite에서 스택 버퍼 언더플로우를 발견했는데, 이는 정식 릴리스 전에 AI가 먼저 잡아낸 첫 zero-day 사례였다. AI가 취약점을 직접 검증하는 게 아니라, 결정론적 도구들을 조율하며 피드백을 바탕으로 다음 단계를 추론하는 구조가 핵심이다.

사용 예시

2025년 Anthropic 연구원 Nicholas Carlini는 Claude Code에 Linux 커널 소스 파일을 하나씩 넘겨주면서 "취약점을 찾아라"고 지시하는 간단한 스크립트를 만들었다. Claude는 NFS 드라이버에서 23년간 누구도 발견하지 못한 취약점을 찾아냈다. 두 NFS 클라이언트가 협력해 서버를 공격할 때, 1024바이트짜리 소유자 ID가 112바이트 버퍼에 쓰이는 힙 오버플로우였다. 이 버그를 찾으려면 NFS 프로토콜 내부 동작을 깊이 이해해야 했고, 이는 규칙 기반 도구가 할 수 없는 영역이다.

Claude Code를 직접 쓸 때도 비슷하게 적용할 수 있다. 특정 모듈을 지정하고 "메모리 안전성 이슈나 경쟁 조건을 찾아줘"라고 요청하면, 코드의 실행 흐름 전체를 추적해 잠재적으로 악용 가능한 경로를 제시한다. 정적 분석 도구와 함께 쓰면 더 효과적이다. 정적 분석이 후보군을 걸러내면, AI가 그중 실제로 악용 가능한 것을 추려내는 식으로 오탐률을 낮출 수 있다.

현재 동향

이 분야는 빠르게 확장되고 있다. OpenAI의 Codex Security는 자율적으로 취약점을 탐색하는 에이전트형 보안 연구자를 표방한다. Trend Micro의 ÆSIR는 2025년 중반 이후 NVIDIA, MLflow, MCP 툴링에서 21개의 CVE를 발굴했다. 공통적인 접근 패턴은 에이전트형 감사(agentic auditing)다. AI가 코드를 탐색하고, 가설을 세우고, 동적 분석 도구를 호출해 실제로 악용 가능한지 검증하는 루프를 자율적으로 돌린다.

주의할 점

현재 가장 큰 병목은 AI가 쏟아내는 후보 취약점을 사람이 검증하는 과정이다. AI가 틀린 가설을 자신 있게 제시하는 경우도 있어, 보안 전문가의 검토 없이 AI 결과를 그대로 신뢰하면 위험할 수 있다. 또한 이 기술은 방어만큼 공격에도 쓰일 수 있다는 점에서, AI가 발견한 취약점의 책임 있는 공개와 패치 우선순위 결정이 중요해지고 있다.

#보안#코드분석#취약점#zero-day
← AI Wiki에서 더 보기