# AI-Generated Code Assurance (AI 생성 코드 검토 및 보안

## 📌 Brief Summary
AI 생성 코드는 개발 생산성을 극적으로 향상시키지만, 인간 작성 코드보다 보안 취약점(XSS, 인젝션 등) 발생률이 높고 '환각(Hallucination)'으로 인한 가짜 API 호출 위험을 내포합니다 [1]. 연구에 따르면 AI가 작성한 풀 리퀘스트(PR)는 인간보다 1.7배 더 많은 보안 취약점을 포함하는 경향이 있습니다 [7, 8]. 따라서 AI 생성 코드는 완성본이 아닌 '초안'으로 취급되어야 하며, 정적 분석(SAST), 소프트웨어 구성 분석(SCA) 등 자동화 도구와 인간 리뷰어의 비판적 검토가 결합된 엄격한 품질 게이트(Quality Gate) 적용이 필수적입니다.

## 📖 Core Content
*   **증가하는 보안 위협과 취약점 발생률:** AI 생성 코드는 XSS(교차 사이트 스크립팅) 취약점 도입 확률이 2.74배 높으며, 하드코딩된 자격 증명이나 입력값 검증 누락이 빈번합니다 [1, 7].
*   **AI 특화 위험 (환각 및 슬롭스쿼팅):** AI 모델은 존재하지 않는 패키지를 제안하는 '환각(Hallucination)' 현상을 보이며, 공격자들은 이를 악용해 악성 코드를 배포하는 '슬롭스쿼팅(Slopsquatting)' 공격을 시도합니다 [2, 9].
*   **비즈니스 맥락 및 엣지 케이스 무시:** AI는 주로 '해피 패스(Happy path)' 시나리오에 집중하여, Null 값 처리나 예외 상황 등 중요한 엣지 케이스를 누락하는 경향이 있습니다 [3, 12].
*   **품질 저하 및 라이선스 위반:** 불필요하게 장황한 코드(Slop)를 양산하거나, AGPL-3.0 등 라이선스가 엄격한 오픈소스 코드를 무단 복제하여 지적 재산권 문제를 일으킬 수 있습니다 [17].
*   **검증 프로세스 통합:** SonarQube, Semgrep, CodeQL 등 SAST/SCA 도구를 CI/CD 파이프라인에 통합하여 최소 80% 이상의 테스트 커버리지를 강제하고, 모든 AI 생성 코드에 태깅을 수행합니다 [15, 18].

## ⚖️ Trade-offs & Caveats
*   **속도 vs 안전성:** AI 코딩 어시스턴트는 마이그레이션 기간을 획기적으로 단축하지만, 예측 가능한 보안 약점을 시스템에 도입합니다. 이를 위해 자동화된 보안 검증 리소스 투자가 트레이드오프로 요구됩니다 [19].
*   **자동화의 사각지대:** AI 기반 리뷰 도구는 30~60%의 오탐률을 보이며 실제 취약점의 약 22%를 놓치는 근본적인 한계가 있습니다 [Augment Code 벤치마크]. 아키텍처 설계와 비즈니스 로직의 무결성 판단에는 여전히 인간의 수동 검토가 필수 불가결합니다.
*   **리뷰 피로도(Review Fatigue):** AI가 양산하는 대량의 코드(Slop)는 리뷰어의 인지 부하를 높여 형식적인 승인(Rubber-stamping)을 유도할 위험이 있습니다.

## 🔗 Knowledge Connections

### Related Concepts
*   **[[Static Analysis & Linting (정적 분석 및 린팅)|Static Analysis & Linting]]**: AI 코드의 구문적 오류와 보안 결함을 자동 식별하는 1차 방어선입니다.
*   **[[Software Security Standards & Vulnerabilities (소프트웨어 보안 표준 및 취약점)|Software Security Standards & Vulnerabilities]]**: AI가 자주 위반하는 OWASP Top 10 등 보안 표준에 대한 이해가 필요합니다.
*   **Shift-Left Security**: AI 대량 생산 코드를 배포 전 PR 단계에서 조기에 차단하는 전략입니다.
*   **Software Supply Chain Security**: AI 환각으로 인한 악성 패키지 도입을 방어하는 전체적인 공급망 보안 전략입니다.

### Deeper Research Questions
*   AI의 '의존성 환각'을 CI/CD 단계에서 실시간으로 차단하기 위한 패키지 레지스트리 교차 검증 아키텍처는 무엇인가?
*   Self-hosted LLM을 활용하여 소스 코드 노출 없이 AI 리뷰를 수행할 때의 성능과 비용 효율성은 어떠한가?
*   AI 생성 코드의 라이선스 위반 여부를 실시간으로 감지하는 소스 코드 지문 분석(Fingerprinting) 기술의 정확도는?

### Practical Application Contexts
*   **Implementation:** AI 코드를 복사하기 전 파라미터화된 쿼리 사용 여부를 직접 검증합니다.
*   **System Design:** AI 제안 로직이 기존 아키텍처 결정(ADR)과 충돌하지 않는지 확인합니다.
*   **My Project Relevance:** PR 템플릿에 "AI 생성 코드 체크리스트"를 추가하고 보안 스캔 통과를 강제합니다.

### Adjacent Topics
*   **Technical Debt Management**: AI가 양산하는 '작동하지만 유지보수성 낮은 코드' 관리 전략입니다.
*   **Vibe Coding**: 인간이 논리보다 의도에 집중하는 환경에서의 리뷰어 역량 변화를 탐구합니다.

---
*Last updated: 2026-05-02*
