들어가며
AI 도구의 확산은 생산성 혁명을 가져왔지만, 동시에 새로운 보안 위협도 만들어냈다. AI가 코드를 생성하고, 외부 시스템에 접근하며, 자율적으로 의사결정을 내리는 시대 — 공격 표면(attack surface)이 기하급수적으로 넓어지고 있다.
1. AI 시대의 주요 보안 위협
프롬프트 인젝션 (Prompt Injection)
AI에게 의도치 않은 행동을 유도하는 공격이다. 사용자 입력이나 외부 데이터에 악의적인 지시를 숨겨, AI가 시스템 프롬프트를 무시하고 공격자의 명령을 따르게 만든다.
간접 프롬프트 인젝션이 특히 위험하다: 이메일 본문이나 웹 페이지에 숨겨진 지시를 AI가 읽으면, 사용자 모르게 기밀 정보를 유출하거나 의도치 않은 행동을 수행할 수 있다.
AI 생성 코드의 공급망 취약점
AI가 생성한 코드에 보안 취약점이 포함될 수 있다. OWASP Top 10(SQL 인젝션, XSS, 인증 우회 등)에 해당하는 취약점이 AI 생성 코드에서도 발견된다. AI가 학습 데이터에 포함된 취약한 코드 패턴을 그대로 재현하는 경우가 있기 때문이다.
더 심각한 것은 환각(hallucination)에 의한 패키지 추천이다. AI가 존재하지 않는 라이브러리를 추천하면, 공격자가 해당 이름으로 악성 패키지를 등록하여 개발자가 설치하게 유도할 수 있다.
MCP 서버를 통한 공격
MCP 서버는 AI와 외부 시스템을 연결하는 중간 계층인데, 악의적인 MCP 서버가 AI의 동작을 가로채거나 데이터를 유출할 수 있다. 신뢰할 수 있는 소스에서만 MCP 서버를 설치하고, 접근 권한을 최소화하는 것이 중요하다.
데이터 유출
AI 도구에 기업 코드나 기밀 문서를 입력하면, 해당 데이터가 AI 제공업체의 서버로 전송될 수 있다. 학습 데이터로 사용되지 않더라도, 전송 과정에서의 보안이나 제3자 접근 리스크가 존재한다.
2. AI 코드 리뷰와 보안
AI가 코드를 짜는 시대에 코드 리뷰는 더 중요해졌다. Anthropic 공식 블로그에 따르면 Claude Code로 엔지니어 1인당 코드 생산량이 200% 증가했지만, 리뷰어의 인지 용량은 그대로다. AI가 생성한 코드라도 반드시 사람이 보안 관점에서 검토해야 한다.
보안 관점의 코드 리뷰 체크리스트
- 인증/인가 로직이 올바른지 확인
- 사용자 입력 검증이 적절한지 확인
- 기밀 정보(API 키, 패스워드)가 코드에 하드코딩되지 않았는지 확인
- SQL 쿼리가 파라미터화되었는지 확인
- XSS 방지를 위한 출력 이스케이핑이 적용되었는지 확인
3. 에이전트 보안: 자율 시스템의 제어
AI 에이전트가 자율적으로 행동하면서 새로운 보안 패러다임이 필요해졌다:
최소 권한 원칙
에이전트에게 필요 최소한의 권한만 부여하라. 파일 읽기만 필요한 작업에 쓰기 권한까지 주지 않는다.
인간 승인 체크포인트
위험한 작업(파일 삭제, 외부 API 호출, 결제 등)은 반드시 사람의 승인을 거치도록 설계한다. Claude Code의 Auto Mode가 이 원칙을 잘 구현한 사례다.
감사 로깅
에이전트의 모든 행동을 기록하여 사후 추적이 가능하도록 한다. 어떤 도구를 호출했는지, 어떤 파일을 수정했는지, 어떤 판단을 내렸는지를 상세히 로깅한다.
가드레일
에이전트가 절대 하면 안 되는 행동을 명시적으로 정의한다. OpenAI Agents SDK의 Guardrails, Claude Code의 Permission 설정이 이를 지원한다.
4. 방산과 AI 보안
AUKUS(호주-영국-미국 안보 동맹)와 한국의 Pillar 2 참여 논의는 AI가 국가 안보에서 얼마나 중요해졌는지를 보여준다. AI 기술의 군사적 활용, 사이버 방어 역량, 공급망 보안 등이 국가 차원의 전략적 과제가 되고 있다.
5. 보안 베스트 프랙티스
AI 도구를 안전하게 사용하기 위한 체크리스트:
- 신뢰할 수 있는 도구만 사용: MCP 서버, 플러그인, 확장 프로그램의 출처를 확인
- 기밀 데이터 주의: AI에 입력하는 데이터의 민감도를 항상 판단
- AI 생성 코드 검증: 자동 생성된 코드는 반드시 보안 리뷰 후 배포
- 최소 권한 원칙: AI 에이전트의 접근 권한을 필요 최소한으로 제한
- 정기적 감사: AI 도구의 사용 로그를 정기적으로 검토
- 업데이트 유지: AI 도구와 의존성 패키지를 항상 최신 버전으로 유지
마무리
AI 보안은 더 이상 선택이 아니다. AI가 생산성을 높여주는 만큼, 새로운 공격 표면도 만들어내고 있다. 프롬프트 인젝션, 공급망 공격, 데이터 유출 등 AI 특유의 보안 위협에 대비하면서, AI의 생산성 이점을 안전하게 활용하는 균형이 필요하다. "보안은 속도를 늦추는 것이 아니라, 속도를 안전하게 유지하는 것"이라는 인식이 중요하다.