본문 바로가기
DEVEL/ETC

AI 코딩 도구 보안 체크리스트: 회사 코드를 넣어도 될까?

by codebyai 2026. 6. 17.
반응형

1. 도입부: AI 코딩 도구는 편하지만 회사 코드에는 주의가 필요하다

작성 시점: 2026년 6월 17일, Asia/Seoul 기준.
AI 코딩 도구 보안 정책, 가격, 플랜 구성, 데이터 처리 방식은 자주 바뀝니다. 따라서 이 글의 내용은 작성 시점 기준이며, 실제 도입 전에는 각 도구의 공식 문서, 계약 조건, DPA, 회사 보안 정책을 다시 확인해야 합니다.

Cursor, GitHub Copilot, Claude Code, Codex CLI, Windsurf, Gemini CLI 같은 AI 코딩 도구는 개발 속도를 크게 높여줍니다. 하지만 회사 코드 AI 도구 사용은 개인 토이 프로젝트와 다릅니다. 회사 비공개 저장소, 고객 개인정보, API 키, DB 비밀번호, 보안 취약점 정보가 AI 도구로 전송되면 단순한 생산성 문제가 아니라 사내 코드 유출 방지, 개인정보 보호, 감사 로그, 계약 책임, 보안 사고 대응 문제가 됩니다.

이 글은 “AI 코딩 도구는 위험하니 쓰지 말자”는 글도 아니고, “요즘은 다 안전하니 마음껏 쓰자”는 글도 아닙니다. 개발자, 팀 리더, 스타트업 CTO, 보안 담당자가 회사에서 Cursor 써도 될까, 회사에서 Copilot 써도 될까, 개인 계정으로 회사 코드를 다뤄도 될까를 판단할 수 있도록 만든 실전형 AI 코딩 도구 보안 체크리스트입니다.


2. 5줄 핵심 요약

  1. 회사 코드를 AI 코딩 도구에 넣어도 되는지는 도구 이름이 아니라 회사 정책, 계정 유형, 플랜, 데이터 처리 조건, 저장소 등급에 따라 달라집니다.
  2. 개인 Free/Pro 계정과 Business/Enterprise 계정은 데이터 학습, 관리자 통제, 감사 로그, SSO, 보관 정책에서 차이가 날 수 있습니다.
  3. .env, API 키, DB 비밀번호, SSH private key, 고객 개인정보, 결제 정보, 민감 로그는 AI 도구에 입력하지 않는 것을 기본 원칙으로 삼아야 합니다.
  4. AI 에이전트가 파일 수정, 터미널 명령 실행, Git 작업, MCP 서버 접근 권한을 갖는 순간 프롬프트 인젝션과 과도한 권한 문제가 커집니다.
  5. 안전하게 쓰려면 Privacy Mode, Content Exclusion, Zero Data Retention, 기업용 계정, Git diff 검토, 코드 리뷰, 보안 스캔, 사내 사용 정책이 함께 필요합니다.

3. 결론부터: 회사 코드를 AI 코딩 도구에 넣어도 될까?

조건부로 가능하지만, 기본값은 “확인 전에는 넣지 않는다”입니다.

회사 코드 AI 도구 사용은 다음 조건을 만족할 때 비교적 안전하게 검토할 수 있습니다.

판단 기준회사 코드 입력 가능성
회사가 해당 AI 도구 사용을 명시적으로 허용함 가능성 높음
회사 계정 또는 기업용 플랜 사용 가능성 높음
데이터가 모델 학습에 사용되지 않음을 공식 문서와 계약에서 확인 가능성 높음
민감 파일 제외, 저장소 등급 분류, secret 차단이 적용됨 가능성 높음
AI 에이전트의 파일 수정·명령 실행이 승인 기반으로 제한됨 가능성 높음
개인 Pro 계정으로 회사 비공개 저장소를 열어 자동완성 사용 제한 또는 금지 검토
.env, 고객 로그, 결제 정보, 취약점 리포트 포함 금지에 가까움
금융·의료·공공·고객 데이터 프로젝트 기업 계약, 보안 검토, 컴플라이언스 확인 전 제한

GitHub는 Copilot Business/Enterprise 고객 데이터를 모델 학습에 사용하지 않는다고 설명하지만, 개인용 Copilot Free/Pro/Pro+/Max의 경우 2026년 4월 24일부터 사용자가 opt-out하지 않으면 상호작용, 입력, 출력, 코드 스니펫, 컨텍스트가 모델 개선·학습에 사용될 수 있다고 안내합니다. 이 차이만 봐도 개인 계정과 회사 계정을 같은 기준으로 보면 안 됩니다.

Cursor도 Privacy Mode가 켜져 있으면 고객 데이터를 학습에 사용하지 않고 일부 제공자와 Zero Data Retention 조건을 둔다고 설명하지만, Privacy Mode가 꺼져 있으면 코드베이스 데이터, 프롬프트, 에디터 액션, 코드 스니펫 등이 기능 개선과 모델 학습에 사용될 수 있다고 밝히고 있습니다.

따라서 결론은 이렇습니다.

개인 프로젝트는 본인 책임으로 판단할 수 있지만, 회사 코드는 회사 승인 계정, 기업 플랜, 데이터 학습 제외, 민감정보 제외, 에이전트 권한 제한, Git diff 검토가 갖춰진 경우에만 사용을 검토하는 것이 안전합니다.


4. 왜 회사 코드와 개인 프로젝트 코드는 다르게 봐야 할까?

개인 토이 프로젝트에서는 실수해도 피해 범위가 작을 수 있습니다. 반면 회사 코드는 다음 정보를 포함할 수 있습니다.

회사 코드에 포함될 수 있는 정보문제가 되는 이유
비공개 비즈니스 로직 경쟁력, 영업비밀, 제품 전략 노출
API 키, 토큰, DB 접속 정보 외부 시스템 접근 위험
고객 개인정보 개인정보 보호, 계약, 컴플라이언스 이슈
내부 서버 주소, 배포 스크립트 공격 표면 노출
취약점 수정 전 코드 보안 사고 가능성 증가
라이선스 제한이 있는 코드 오픈소스·상용 라이선스 분쟁 가능성
결제·인증·권한 처리 코드 금전 피해, 권한 상승, 계정 탈취 위험

여기서 핵심은 “AI가 코드를 본다” 자체가 아니라, 어떤 데이터가 어디로 전송되고, 얼마나 보관되며, 모델 학습에 쓰이는지, 누가 접근할 수 있는지, 사고가 났을 때 감사할 수 있는지입니다. NIST AI Risk Management Framework는 AI 위험 관리를 거버넌스, 매핑, 측정, 관리 기능으로 나누어 접근하도록 제시합니다. AI 개발 도구 보안 정책도 같은 방식으로 “누가, 어떤 데이터에, 어떤 권한으로, 어떤 통제 아래 쓰는가”를 정해야 합니다.


5. AI 코딩 도구가 실제로 접근하는 데이터

AI 코딩 도구 개인정보 이슈는 단순히 프롬프트 입력창에 붙여넣은 내용만의 문제가 아닙니다. 최신 AI 코딩 도구는 IDE, CLI, 에이전트, MCP 서버와 연결되면서 더 넓은 데이터를 읽을 수 있습니다.

AI 도구가 읽을 수 있는 데이터

데이터 유형예시주의점
직접 입력한 프롬프트 “이 인증 코드를 고쳐줘” 코드·로그·토큰을 붙여넣을 수 있음
선택한 코드 블록 IDE에서 선택한 함수 일부 코드만 보낸다고 생각했지만 주변 컨텍스트가 추가될 수 있음
열린 파일 현재 열려 있는 파일, 관련 파일 자동완성·채팅 컨텍스트에 포함될 수 있음
저장소 인덱스 파일 청크, 임베딩, 파일명, 해시 코드 검색과 에이전트 이해를 위해 사용
터미널 출력 테스트 결과, 에러 로그 로그에 개인정보나 토큰이 포함될 수 있음
Git diff 변경된 파일, 커밋 메시지 비공개 코드 변경 내용이 분석될 수 있음
MCP 응답 GitHub 이슈, Jira 티켓, Slack 메시지, DB 조회 결과 외부 시스템 데이터가 AI 컨텍스트로 들어올 수 있음

예를 들어 Cursor는 코드베이스 인덱싱을 위해 코드를 작은 청크로 서버에 업로드해 임베딩을 계산하고, Privacy Mode가 켜져 있을 때는 원문 파일 내용은 요청 후 사라지지만 임베딩과 파일명·해시 같은 메타데이터는 저장될 수 있다고 설명합니다. 또한 사용자가 자체 API 키를 쓰더라도 최종 프롬프트 구성을 위해 요청이 Cursor 백엔드를 통과한다고 안내합니다.

GitHub Copilot Chat은 프롬프트, 열린 파일, 활성 저장소, 대화 기록, 웹 검색 결과 같은 컨텍스트를 사용할 수 있으며, 에이전트 모드에서는 파일 편집이나 터미널 명령 같은 도구를 호출할 수 있다고 설명합니다.

Claude Code는 로컬에서 사용할 때도 프롬프트와 모델 출력을 네트워크로 전송하며, 명령 실행·파일 편집은 권한 승인 모델을 통해 통제한다고 설명합니다.

OpenAI Codex CLI도 로컬 터미널에서 실행되지만, 선택한 디렉터리의 코드를 읽고 변경하고 명령을 실행할 수 있는 로컬 코딩 에이전트입니다. “로컬에서 실행된다”는 말이 “아무 데이터도 외부로 나가지 않는다”는 뜻은 아닙니다.


6. 가장 먼저 확인해야 할 7가지

AI 코딩 도구 회사 코드 사용 전에는 최소한 다음 7가지를 먼저 확인해야 합니다.

  1. 회사에서 해당 도구 사용을 허용했는가?
    팀에서 암묵적으로 쓰고 있어도, 회사 정책상 미승인 SaaS일 수 있습니다.
  2. 개인 계정인가, 회사 계정인가?
    개인 Pro 계정은 회사의 감사, 삭제, SSO, 퇴사자 회수, DPA 관리 범위 밖일 수 있습니다.
  3. 코드가 모델 학습에 사용되는가?
    “학습에 사용하지 않는다”는 문구가 어느 플랜에 적용되는지 확인해야 합니다.
  4. 프롬프트와 로그는 얼마나 보관되는가?
    30일, 90일, 180일, 5년 등 도구와 플랜에 따라 다를 수 있습니다.
  5. 민감 파일을 제외할 수 있는가?
    .env, 인증 키, 로그, 덤프 파일, 고객 데이터는 AI 컨텍스트에서 제외해야 합니다.
  6. AI 에이전트가 명령을 실행하기 전에 승인을 받는가?
    테스트 실행은 유용하지만, 패키지 설치, 파일 삭제, Git push, 배포 명령은 위험할 수 있습니다.
  7. Git diff와 코드 리뷰를 사람이 확인하는가?
    AI가 만든 코드는 그럴듯하지만 보안 취약점, 권한 오류, 예외 처리 누락을 포함할 수 있습니다.

7. 회사 코드 입력 전 체크리스트

표 1. 회사 코드 입력 전 핵심 체크리스트

체크 항목왜 중요한가확인 방법위험도
회사가 해당 AI 도구 사용을 허용했는가 미승인 SaaS 사용은 계약·보안 정책 위반이 될 수 있음 보안 정책, SaaS 승인 목록, CTO/보안팀 확인 높음
개인 계정이 아니라 회사 계정/기업 플랜을 사용하는가 개인 계정은 감사, 퇴사자 회수, DPA 관리가 어려움 SSO, 조직 계정, 관리자 콘솔 확인 높음
코드가 모델 학습에 사용되는지 확인했는가 비공개 코드가 모델 개선 데이터로 쓰일 수 있음 Data Use, Privacy, Training 설정 확인 매우 높음
민감 파일을 제외할 수 있는가 .env, 키, 로그가 컨텍스트에 들어갈 수 있음 .gitignore, .cursorignore, Content Exclusion, 저장소 정책 확인 매우 높음
.env, API 키, SSH 키가 포함되어 있지 않은가 외부 시스템 접근 권한이 노출될 수 있음 secret scanning, pre-commit hook, GitHub secret scanning 등 매우 높음
AI 에이전트가 명령을 실행하기 전 승인을 받는가 파일 삭제, 패키지 설치, 외부 요청, 배포 명령 위험 승인 모드, sandbox, allowlist/denylist 설정 확인 높음
Git diff를 사람이 검토하는가 AI가 만든 취약 코드가 그대로 병합될 수 있음 PR 리뷰, protected branch, CODEOWNERS 적용 높음
로그와 프롬프트가 어디에 저장되는지 확인했는가 프롬프트에 회사 정보·고객 정보가 포함될 수 있음 retention 문서, 관리자 설정, DPA 확인 높음
보안 사고 발생 시 감사 로그를 볼 수 있는가 누가 어떤 기능을 썼는지 추적해야 함 audit log, usage report, SIEM 연동 여부 확인 중간~높음

8. 개인 계정과 회사 계정의 차이

개인 계정과 회사 계정의 가장 큰 차이는 생산성 기능이 아니라 통제권입니다.

구분개인 Free/Pro 계정회사 Business/Enterprise 계정
결제 주체 개인 회사
데이터 처리 조건 개인 약관 기준 조직·기업 약관, DPA 기준
모델 학습 opt-out 개인이 직접 설정 조직 정책으로 통제 가능할 수 있음
감사 로그 제한적이거나 없음 플랜에 따라 제공 가능
SSO/SCIM 보통 제한적 지원 가능
퇴사자 계정 회수 어려움 중앙 관리 가능
저장소 접근 통제 개인 설정 의존 조직 정책과 연동 가능
보안 사고 조사 개인 협조 필요 관리자 로그 기반 조사 가능

GitHub Copilot의 경우 Business/Enterprise에서는 고객 데이터를 모델 학습에 사용하지 않는다고 명시하지만, 개인용 Free/Pro/Pro+/Max는 사용자 설정에 따라 모델 개선·학습 사용 여부가 달라질 수 있습니다. 회사 코드 AI 도구 사용을 개인 계정에 맡기면 회사가 이 설정을 중앙에서 보장하기 어렵습니다.

Claude Code도 Consumer Free/Pro/Max와 Team/Enterprise/API 등 상업용 조건에서 데이터 사용 기준이 다릅니다. Anthropic은 상업용 조건에서는 고객이 opt-in하지 않는 한 코드나 프롬프트를 생성 모델 학습에 사용하지 않는다고 설명합니다.

OpenAI도 ChatGPT Business, Enterprise, Edu, API 같은 비즈니스 데이터는 기본적으로 모델 학습에 사용하지 않는다고 설명합니다. 다만 개인용 ChatGPT, API, Codex CLI, ChatGPT 워크스페이스, 조직 플랜은 각각 데이터 제어와 보관 조건이 다를 수 있으므로 실제 사용 경로를 기준으로 확인해야 합니다.


9. Free/Pro와 Business/Enterprise 플랜 차이

AI 코딩 도구 보안에서 Free/Pro와 Business/Enterprise의 차이는 보통 다음 지점에서 나타납니다.

항목Free/Pro에서 주로 확인할 점Business/Enterprise에서 주로 확인할 점
모델 학습 사용 여부 기본값, opt-out 위치, 개인 설정 기본 비학습 여부, DPA, opt-in 조건
데이터 보관 기간 프롬프트·로그 보관 기간 retention 설정, 삭제 정책, ZDR 가능 여부
관리자 통제 개인 설정 중심 조직 정책, 모델 제한, 기능 제한
인증 개인 로그인 SSO, SCIM, 도메인 캡처, RBAC
감사 제한적 audit log, usage report, compliance API
민감 파일 제외 로컬 ignore 설정 의존 조직·엔터프라이즈 단위 제외 정책 가능
에이전트 권한 사용자 개인 설정 조직 단위 승인 정책, allowlist/denylist
계약 개인 약관 DPA, 보안 문서, Trust Center, 조달 검토

핵심은 가격이 아니라 계약과 통제입니다.
같은 도구라도 개인 Pro 계정으로 회사 코드를 여는 것과 회사 Enterprise 플랜에서 SSO, 감사 로그, 데이터 학습 제외, 저장소 제외 정책을 적용하는 것은 보안상 전혀 다른 상황입니다.


10. 도구별 보안 체크포인트

아래 내용은 작성 시점 기준 공식 문서를 바탕으로 정리했습니다. 공식 문서에서 확인되지 않은 항목은 “확인 필요”로 표시합니다.


10-1. Cursor 보안 체크포인트

Cursor 보안에서 가장 먼저 확인할 항목은 Privacy Mode입니다. Cursor는 Privacy Mode가 켜져 있으면 고객 데이터를 학습에 사용하지 않고, 모델 제공자와 Zero Data Retention 조건을 적용한다고 설명합니다. 반대로 Privacy Mode가 꺼져 있으면 코드베이스 데이터, 프롬프트, 코드 스니펫, 에디터 액션 등이 기능 개선과 모델 학습에 사용될 수 있다고 안내합니다.

Cursor는 코드베이스 인덱싱 과정에서 파일을 작은 청크로 서버에 업로드해 임베딩을 계산하며, Privacy Mode가 켜진 경우 원문 파일 내용은 요청 후 사라지지만 임베딩과 파일명·해시 같은 메타데이터가 저장될 수 있다고 설명합니다. 즉, Cursor 보안을 검토할 때는 “Privacy Mode만 켰는가”뿐 아니라 인덱싱 대상 파일, 민감 파일 제외, 모델 선택, 로그 정책까지 확인해야 합니다.

Cursor는 민감 파일 제외와 관련해 .cursorignore, .cursorindexingignore 같은 ignore 설정을 문서화하고 있습니다. 회사 코드에서는 .env, 키 파일, 로그, 덤프, 고객 데이터가 Cursor 컨텍스트나 인덱싱 대상에 들어가지 않도록 별도 정책을 둬야 합니다.

Cursor의 에이전트·터미널 기능은 생산성을 높이지만, 명령 실행 권한이 커질수록 위험도 커집니다. Cursor는 터미널 명령 실행, sandbox 설정, LLM Safety Controls, MCP 연결 문서를 제공하므로, 회사에서는 자동 실행 범위와 승인 절차를 정해야 합니다.

Cursor 사용 시 확인할 것

항목체크포인트
데이터 학습 Privacy Mode 켜짐 여부, 팀/엔터프라이즈 강제 여부
코드 인덱싱 .cursorignore, .cursorindexingignore, 민감 파일 제외
모델 선택 비-ZDR 모델 사용 여부, 외부 모델 제공자 조건
터미널 자동 실행 제한, sandbox 설정
MCP 신뢰 가능한 서버만 연결, 최소 권한
조직 관리 SSO, SCIM, RBAC, audit log 지원 여부 확인
결론 회사 코드는 Privacy Mode와 민감 파일 제외 없이 열지 않는 것을 권장

10-2. GitHub Copilot 보안 체크포인트

GitHub Copilot 보안에서 가장 중요한 구분은 개인 플랜과 Business/Enterprise 플랜의 데이터 사용 차이입니다. GitHub는 Copilot Business/Enterprise 고객 데이터를 모델 학습에 사용하지 않는다고 설명합니다. 반면 개인용 Copilot Free/Pro/Pro+/Max에서는 2026년 4월 24일부터 사용자가 opt-out하지 않으면 입력, 출력, 코드 스니펫, 컨텍스트 등이 모델 개선·학습에 사용될 수 있다고 안내합니다.

GitHub Copilot은 Content Exclusion 기능을 통해 특정 파일이나 경로를 Copilot이 무시하도록 설정할 수 있습니다. 하지만 GitHub 공식 문서는 Copilot CLI, Copilot coding agent, Copilot Chat IDE의 Agent mode에는 Content Exclusion이 지원되지 않는다고 명시합니다. 따라서 “Content Exclusion을 설정했으니 모든 Copilot 기능에서 민감 파일이 제외된다”고 단정하면 안 됩니다.

GitHub 조직 관리자는 Copilot 기능, 모델, 정책을 관리할 수 있고, Copilot Business/Enterprise에서는 조직 단위 정책 설정이 가능합니다. 또한 Copilot 사용량과 활동 관련 보고 기능도 제공되지만, 어떤 로그가 얼마나 보이는지는 플랜과 설정에 따라 확인해야 합니다.

GitHub Copilot Chat과 agent mode는 열린 파일, 활성 저장소, 대화 기록 같은 컨텍스트를 사용하고, 파일 편집·터미널 명령 같은 작업을 수행할 수 있습니다. GitHub는 Copilot을 인간 개발자를 대체하는 도구가 아니라 보조 도구로 사용하고, 생성 코드를 검토·테스트하라고 안내합니다.

GitHub Copilot 사용 시 확인할 것

항목체크포인트
개인 Pro 사용 회사 승인 없으면 제한 또는 금지 검토
Business/Enterprise 고객 데이터 학습 제외 조건 확인
Content Exclusion 적용 범위 확인. CLI, cloud agent, Agent mode 미지원 항목 주의
BYOK 외부 모델 제공자 데이터 처리 조건 확인
Agent mode 파일 수정·명령 실행 전 승인 절차 확인
조직 정책 모델, 기능, 저장소 접근 정책 설정
결론 회사 비공개 저장소는 Business/Enterprise와 조직 정책 기반 사용이 안전

10-3. Claude Code 보안 체크포인트

Claude Code 보안에서 중요한 점은 Consumer 계정과 상업용 계정의 차이, 그리고 명령 실행 권한 모델입니다. Anthropic은 Consumer Free/Pro/Max 사용자가 데이터 사용을 허용할 수 있지만, Team/Enterprise/API 등 상업용 조건에서는 고객이 opt-in하지 않는 한 코드나 프롬프트를 생성 모델 학습에 사용하지 않는다고 설명합니다.

Claude Code는 기본적으로 엄격한 read-only 모드에서 시작하고, 파일 편집, 테스트 실행, 명령 실행에는 명시적 권한이 필요하다고 설명합니다. Bash 도구는 시작 폴더와 하위 폴더로 쓰기 범위가 제한되며, 네트워크 fetch 명령은 기본적으로 승인을 요구한다고 문서화되어 있습니다.

Claude Code는 MCP 서버 연결 시 신뢰할 수 있는 서버만 사용하라고 권고합니다. 특히 외부 콘텐츠를 가져오는 MCP 서버는 프롬프트 인젝션 위험이 있으므로, GitHub, Slack, Jira, DB 같은 시스템과 연결할 때는 최소 권한과 승인 절차가 필요합니다.

Claude Enterprise는 SSO, 도메인 캡처, RBAC, Compliance API, 조직 단위 설정 같은 기능을 제공한다고 설명합니다. 감사 로그는 Enterprise에서 제공되며, 문서상 과거 180일 로그 내보내기를 지원하지만 채팅 내용 자체는 감사 로그에 포함되지 않는다고 안내합니다.

Claude Code 사용 시 확인할 것

항목체크포인트
계정 유형 Consumer인지 Team/Enterprise/API인지 확인
데이터 학습 상업용 조건에서 opt-in 없는 학습 제외 여부 확인
로컬 기록 ~/.claude/projects/ 등 로컬 transcript 보관 확인
명령 실행 read-only 기본값, 승인 정책, allowlist 확인
MCP 신뢰 가능한 서버만 연결, 민감 시스템 최소 권한
Enterprise SSO, RBAC, Compliance API, audit log 확인
결론 회사 코드는 Team/Enterprise/API 조건과 권한 정책 확인 후 사용

10-4. Codex CLI 보안 체크포인트

OpenAI Codex CLI는 로컬 터미널에서 실행되는 코딩 에이전트이며, 선택한 디렉터리의 코드를 읽고, 파일을 변경하고, 명령을 실행할 수 있습니다. 따라서 Codex CLI 보안은 “로컬 도구니까 안전하다”가 아니라 로컬 권한을 가진 AI 에이전트가 어디까지 할 수 있는가를 기준으로 봐야 합니다.

Codex CLI는 기본적으로 네트워크가 꺼져 있고, OS 기반 sandbox로 현재 작업 공간 중심의 권한을 제한하며, approval policy를 통해 언제 사용자 승인을 받을지 제어한다고 설명합니다. Sandbox는 git, 패키지 매니저, 테스트 러너 같은 하위 명령에도 적용됩니다.

주의할 점은 --dangerously-bypass-approvals-and-sandbox, --yolo 같은 옵션입니다. OpenAI 공식 문서는 이 옵션이 모든 명령을 승인과 sandbox 없이 실행하며, 외부에서 강화된 격리 환경 안에서만 사용하라고 설명합니다. 회사 프로젝트에서는 기본적으로 금지하는 것이 안전합니다.

OpenAI는 ChatGPT Business/Enterprise 및 API의 비즈니스 데이터를 기본적으로 모델 학습에 사용하지 않는다고 설명합니다. API도 기본적으로 학습에 사용하지 않지만, abuse monitoring 로그가 최대 30일 보관될 수 있고, Zero Data Retention은 승인이 필요한 조건이라고 설명합니다.

Codex CLI 사용 시 확인할 것

항목체크포인트
실행 범위 작업 디렉터리, 추가 write 디렉터리 제한
Sandbox 기본 sandbox 활성 상태 유지
Approval 명령 실행 전 승인 정책 유지
위험 옵션 --yolo, sandbox bypass 금지
데이터 처리 ChatGPT/API/Business/Enterprise 중 실제 사용 경로 확인
ZDR 필요한 경우 API·Enterprise 조건에서 공식 확인
결론 로컬 실행이어도 회사 코드는 승인된 계정·sandbox·diff 검토가 필수

10-5. Windsurf 보안 체크포인트

Windsurf 관련 공식 문서는 Cognition/Devin Desktop 문서와 함께 확인해야 합니다. Cognition의 개인정보 처리 문서는 Devin과 Windsurf 서비스에 적용된다고 설명하며, 입력, 파일 업로드, 피드백, 출력 같은 user content를 수집할 수 있다고 안내합니다. 또한 서비스를 제공·운영·개선·개발하기 위해 정보를 사용할 수 있다고 설명합니다.

반면 Devin Enterprise 문서는 Enterprise-grade security/privacy 항목에서 데이터가 통제된 환경에 저장되고 학습에 사용되지 않는다고 설명합니다. 또한 VPC, SOC 2 Type 2, audit logs, fine-grained access controls, custom IdP 같은 기업 기능을 언급합니다. 따라서 Windsurf 보안은 개인/팀 사용과 Enterprise 사용을 분리해서 판단해야 합니다.

Windsurf/Devin Desktop의 Cascade는 코드베이스를 분석하고 코드를 생성·수정할 수 있으며, 터미널, 웹 검색, MCP 같은 도구를 사용할 수 있습니다. 터미널 명령 자동 실행은 Disabled, Allowlist Only, Auto, Turbo 같은 단계가 있고, Teams/Enterprise 관리자는 최대 자동 실행 수준과 allowlist/denylist를 설정할 수 있다고 설명합니다.

Devin Local Agent 문서는 파일 읽기·쓰기, 명령 실행, HTTP fetch, MCP tool에 대해 Deny/Ask/Allow 권한 모델을 제공한다고 설명합니다. MCP 도구는 기본적으로 실행 전 확인하도록 설정할 수 있으며, 프로젝트·사용자·조직 단위 설정을 구분합니다.

Windsurf 사용 시 확인할 것

항목체크포인트
데이터 처리 개인/팀/Enterprise 약관과 개인정보 처리 문서 확인
Enterprise 학습 미사용, VPC, audit log, IdP 조건 확인
코드 인덱싱 어떤 파일이 분석·인덱싱되는지 확인
터미널 자동 실행 수준을 Disabled 또는 Allowlist 중심으로 제한
MCP 조직 whitelist, 최소 권한, DB·Slack·GitHub 접근 제한
감사 Enterprise audit log와 접근 통제 확인
결론 회사 코드는 Enterprise 조건 또는 명확한 데이터 처리 확인 후 사용 권장

10-6. Gemini CLI / Gemini Code Assist 보안 체크포인트

Gemini CLI와 Gemini Code Assist는 같은 “Gemini” 이름을 쓰더라도 사용 경로가 다를 수 있습니다. 개인 Google 계정, Gemini API 무료 사용, Google Cloud, Vertex AI, Gemini Code Assist Standard/Enterprise 중 무엇을 쓰는지에 따라 데이터 처리와 계약 조건이 달라질 수 있습니다.

Google은 Gemini API Additional Terms에서 unpaid services의 경우 입력·출력이 제품 개선을 위해 검토될 수 있으며, 민감·기밀·개인정보를 unpaid services에 제출하지 말라고 명시합니다. 따라서 회사 코드나 고객 데이터는 개인·무료 경로에 넣지 않는 것을 기본 원칙으로 삼아야 합니다.

Gemini Code Assist Standard/Enterprise는 고객 코드, 입력, 추천을 공유 모델 학습이나 제품 개발에 사용하지 않는다고 설명합니다. 또한 Google Cloud의 보안·접근 제어, IAM, VPC Service Controls 등과 연계되는 기업용 통제 항목을 제공합니다.

Gemini CLI는 프로젝트 파일을 읽고 프로젝트 관례를 파악할 수 있는 CLI 기반 AI 도구이며, shell mode를 통해 명령 실행도 가능합니다. Google의 공식 가이드는 보안·컴플라이언스가 필요한 enterprise/production workload에는 Vertex AI 사용을 언급하므로, 회사 프로젝트에서는 개인 인증이 아니라 조직 Google Cloud 계정과 정책 기반 사용을 검토해야 합니다.

Gemini CLI / Gemini Code Assist 사용 시 확인할 것

항목체크포인트
사용 경로 개인 계정, 무료 API, Google Cloud, Vertex AI, Code Assist 구분
데이터 학습 unpaid services 금지 기준과 Code Assist 기업용 조건 확인
회사 코드 Code Assist Standard/Enterprise 또는 Vertex AI 조건 검토
명령 실행 Gemini CLI shell mode 사용 시 승인 절차 필요
로그/텔레메트리 Gemini CLI telemetry/audit 설정 확인
접근 통제 IAM, VPC Service Controls, Enterprise Access Controls 확인
결론 회사 코드는 개인·무료 경로가 아니라 조직 관리형 Google Cloud/Code Assist 조건에서 검토

6. 도구별 보안 비교표

표 2. 도구별 보안 기능 비교

도구데이터 학습 opt-out기업용 데이터 보호민감 파일 제외 기능명령 실행 승인로그/감사 기능팀 관리 기능회사 코드 사용 적합도공식 문서 재확인 필요 항목
Cursor Privacy Mode 켜면 학습 미사용. 꺼지면 코드·프롬프트 등이 개선·학습에 사용될 수 있음 Privacy Mode, ZDR 제공자 조건, Enterprise 보안 기능 확인 .cursorignore, .cursorindexingignore 터미널 sandbox, LLM safety controls 확인 audit/compliance 기능 확인 필요 SSO, SCIM, RBAC 문서 확인 Privacy Mode와 민감 파일 제외 적용 시 제한적 사용 가능 선택 모델, 비-ZDR 모델, 보관 기간, abuse classifier 예외
GitHub Copilot 개인 Free/Pro 계정은 opt-out 필요. Business/Enterprise는 고객 데이터 학습 미사용 Business/Enterprise, DPA, 조직 정책 Content Exclusion. 단, CLI·cloud agent·Agent mode 미지원 항목 있음 Agent mode 명령 실행·파일 수정은 IDE/정책 확인 필요 Copilot metrics, 조직 보고 기능 org/enterprise policy, 모델 제어 회사 저장소는 Business/Enterprise 권장 개인 Pro 사용, Content Exclusion 적용 범위, BYOK 제공자 조건
Claude Code Consumer와 commercial 조건 다름. Team/Enterprise/API는 opt-in 없으면 학습 미사용 Enterprise SSO, RBAC, Compliance API, ZDR 가능 조건 전용 파일 제외보다는 작업 디렉터리·권한·프로젝트 정책 중심 확인 read-only 기본, 편집·명령 승인 Enterprise audit log, telemetry 설정 Team/Enterprise 관리 기능 승인된 상업용 계정과 권한 정책 적용 시 사용 가능 ZDR 대상 여부, 로컬 transcript, MCP 서버 권한
Codex CLI 사용 경로에 따라 다름. OpenAI API/Business/Enterprise는 기본 학습 미사용 ChatGPT Business/Enterprise, API data controls, ZDR 승인 조건 작업 디렉터리·sandbox·추가 디렉터리 제한 중심 sandbox, approval policy. --yolo 금지 Enterprise/API 로그·보관 정책 확인 ChatGPT workspace 또는 API 조직 정책 확인 sandbox와 승인 정책 유지 시 제한적 사용 가능 개인 ChatGPT 경로, retention, ZDR, 명령 실행 옵션
Windsurf 일반 개인정보 문서와 Enterprise 조건 구분 필요 Enterprise는 통제 환경, 학습 미사용, VPC, audit log 등 설명 코드 인덱싱·ignore 설정은 공식 문서에서 재확인 필요 Disabled, Allowlist Only, Auto, Turbo. 관리자 제한 가능 Enterprise audit logs Teams/Enterprise allowlist/denylist, IdP Enterprise 조건 또는 명확한 데이터 처리 확인 후 사용 개인/팀 플랜 데이터 사용, 인덱싱 제외, MCP 권한
Gemini CLI / Gemini Code Assist unpaid services는 민감정보 제출 금지. Code Assist Standard/Enterprise는 공유 모델 학습 미사용 Google Cloud, IAM, VPC Service Controls, Enterprise controls CLI 파일 제외 설정은 공식 문서 재확인 필요 Gemini CLI shell mode 사용 시 내부 승인 정책 필요 telemetry/audit 설정 가능 Google Cloud IAM, 조직 정책 Code Assist Standard/Enterprise 또는 Vertex AI 조건 권장 개인 계정·무료 API 사용, telemetry, CLI 권한 모델

11. 민감정보를 AI 도구에 넣으면 안 되는 이유

AI 코딩 도구 개인정보 문제는 “AI가 똑똑해서 위험하다”가 아니라, 입력한 정보가 프롬프트, 로그, 보관 데이터, 모델 제공자 요청, 에이전트 컨텍스트, MCP 응답에 포함될 수 있다는 점 때문에 생깁니다.

OWASP Top 10 for LLM Applications는 Prompt Injection, Sensitive Information Disclosure, Supply Chain Vulnerabilities, Excessive Agency 같은 위험을 주요 항목으로 분류합니다. 특히 민감정보 노출은 LLM 애플리케이션에서 반복적으로 문제가 되는 영역이며, 에이전트가 외부 도구를 사용할수록 과도한 권한 문제가 커질 수 있습니다.

표 3. 입력하면 안 되는 데이터

데이터 유형예시위험대체 방법
API 키 <API_KEY_PLACEHOLDER> 외부 서비스 무단 호출 키 제거 후 에러 메시지만 공유
DB 비밀번호 <DB_PASSWORD_PLACEHOLDER> DB 접근 위험 로컬 더미 값으로 치환
JWT secret <JWT_SECRET_PLACEHOLDER> 토큰 위조 가능성 구조만 설명하고 secret 제거
SSH private key <SSH_PRIVATE_KEY_PLACEHOLDER> 서버 접근 위험 키 파일 제외, 경로도 최소화
OAuth client secret <OAUTH_SECRET_PLACEHOLDER> 계정 연동 악용 위험 client ID와 secret 모두 제거
고객 개인정보 이름, 이메일, 전화번호, 주소 개인정보 보호·계약 이슈 익명화·가명화된 샘플 사용
결제 정보 카드번호, 결제 토큰, 청구 주소 PCI·결제 사고 위험 테스트 토큰·문서 예제만 사용
내부 서버 주소 사내 VPN 주소, admin endpoint 내부 구조 노출 internal-service.local처럼 치환
보안 취약점 보고서 미패치 CVE, 침투 테스트 결과 공격 정보 노출 보안 승인 환경에서만 분석
비공개 알고리즘 추천·가격·위험평가 로직 영업비밀 노출 최소 재현 코드로 축소
라이선스가 민감한 코드 상용 SDK, 고객사 납품 코드 계약·저작권 이슈 계약 조건 확인 후 제한 사용

12. .env와 API 키를 보호하는 방법

.env, API 키, DB 비밀번호, 토큰, SSH 키는 AI 코딩 도구 보안에서 가장 먼저 차단해야 하는 데이터입니다. 이 값들은 코드 품질을 설명하는 데 거의 필요하지 않지만, 노출되면 실제 시스템 접근으로 이어질 수 있습니다.

실무 보호 방법

보호 방법설명
.gitignore 적용 .env, .env.*, *.pem, *.key, id_rsa, secrets.*, *.dump, *.sql 제외
AI 도구별 ignore 설정 Cursor는 .cursorignore, .cursorindexingignore 확인. Copilot은 Content Exclusion 확인
secret scanning GitHub secret scanning, gitleaks, trufflehog, pre-commit hook 등 적용
샘플 파일 분리 .env.example에는 더미 값만 넣기
로컬 권한 제한 키 파일 권한을 최소화하고 공유 폴더에 두지 않기
로그 정제 테스트 실패 로그에 토큰·쿠키·Authorization 헤더가 찍히지 않도록 마스킹
유출 시 즉시 회전 AI 도구에 노출된 secret은 “이미 노출된 것”으로 보고 rotate

GitHub의 Content Exclusion은 특정 파일이나 경로를 Copilot 컨텍스트에서 제외하는 기능이지만, CLI, cloud agent, IDE Agent mode에는 적용되지 않는다고 문서화되어 있습니다. 따라서 .env 보호는 특정 기능 하나에 의존하지 말고, 저장소 수준의 ignore, secret scanning, PR 검사, 에이전트 권한 제한을 함께 적용해야 합니다.


13. AI 에이전트의 파일 수정과 명령 실행 권한 관리

AI 에이전트가 파일을 읽기만 할 때와, 파일을 수정하고 터미널 명령까지 실행할 때의 위험은 다릅니다.

위험도가 높아지는 행동

행동위험
파일 자동 수정 의도치 않은 로직 변경, 보안 검사 우회
패키지 자동 설치 악성·취약 의존성 설치
테스트 명령 실행 로그에 민감정보 출력 가능
마이그레이션 실행 DB 스키마·데이터 변경 위험
Git commit/push 검토 전 코드 반영
배포 명령 실행 프로덕션 장애·보안 사고
외부 API 호출 데이터 전송·비용 발생
MCP DB 조회 고객 데이터 노출 가능

Claude Code는 기본 read-only, 편집·명령 실행 승인, 네트워크 fetch 승인 같은 보호 모델을 설명합니다. Codex CLI는 sandbox와 approval policy를 제공하며, sandbox bypass 옵션은 외부 격리 환경이 아닌 곳에서 사용하지 말라고 안내합니다. Windsurf/Devin Desktop은 터미널 자동 실행 수준과 allowlist/denylist 설정을 제공합니다.

권장 설정

설정권장값
기본 모드 read-only 또는 ask-before-edit
터미널 명령 기본 승인 필요
자동 실행 Disabled 또는 allowlist only
패키지 설치 사람이 검토 후 실행
Git 작업 commit은 허용 가능하더라도 push는 금지 또는 승인 필요
DB 명령 로컬 더미 DB만 허용
배포 명령 AI 에이전트 직접 실행 금지
위험 옵션 --yolo, sandbox bypass, Turbo 모드 등은 회사 프로젝트에서 금지

14. Git diff, 코드 리뷰, 테스트가 필요한 이유

AI가 만든 코드는 그럴듯합니다. 하지만 그럴듯함과 안전함은 다릅니다.

AI는 다음과 같은 실수를 할 수 있습니다.

유형예시
인증 우회 로그인 여부만 확인하고 소유자 검증 누락
권한 오류 일반 사용자가 관리자 API 호출 가능
SQL Injection 문자열 연결 방식 쿼리 생성
XSS 사용자 입력을 escape 없이 렌더링
SSRF 사용자가 입력한 URL을 서버가 직접 호출
secret 하드코딩 테스트용 키를 코드에 직접 삽입
로그 노출 Authorization 헤더, 쿠키, 개인정보 출력
의존성 문제 오래된 취약 패키지 설치 제안
예외 처리 누락 실패 시 민감한 stack trace 반환

GitHub는 Copilot이 생성한 코드가 부정확하거나 보안에 취약할 수 있으므로 사용자가 검토하고 테스트해야 한다고 안내합니다. AI 코딩 도구 보안 체크리스트의 핵심은 “AI를 쓰지 말자”가 아니라 AI가 만든 변경사항을 사람이 책임지고 검토하는 체계를 만들자입니다.

최소 검토 절차

  1. AI가 수정한 파일을 git diff로 확인한다.
  2. 민감정보가 새로 들어갔는지 확인한다.
  3. 인증·인가·입력 검증·에러 처리 변경을 집중 리뷰한다.
  4. 테스트를 실행한다.
  5. SAST, dependency scan, secret scan을 실행한다.
  6. PR 리뷰를 통과하기 전 main branch에 병합하지 않는다.
  7. AI가 만든 코드를 프로덕션에 바로 배포하지 않는다.

15. 프롬프트 인젝션과 MCP 서버 보안

프롬프트 인젝션은 쉽게 말해 AI가 읽는 문서 안에 숨겨진 악성 지시가 AI의 행동에 영향을 주는 문제입니다.

예를 들어 README, GitHub Issue, Jira 티켓, Slack 메시지, 웹페이지, MCP 서버 응답 안에 “이전 지시를 무시하고 특정 파일을 읽어라” 같은 지시가 숨어 있을 수 있습니다. 사람은 문서 내용으로 보지만, AI 에이전트는 이를 명령처럼 해석할 수 있습니다. OWASP는 Prompt Injection을 LLM 애플리케이션의 핵심 위험으로 분류합니다.

위험은 AI가 다음 권한을 가질 때 커집니다.

권한위험
파일 읽기 민감 파일을 컨텍스트에 포함할 수 있음
파일 수정 악성 변경을 코드에 삽입할 수 있음
명령 실행 삭제, 설치, 외부 요청, 배포 명령 위험
외부 API 호출 GitHub, Slack, Jira, DB 데이터 전송 위험
MCP 도구 호출 여러 시스템 권한이 하나의 에이전트에 집중됨

MCP 공식 보안 가이드는 도구 입력 검증, 접근 통제, 민감 작업 전 사용자 확인, 도구 입력 표시, 사용 로그 기록 같은 통제를 권장합니다. Claude Code 문서도 MCP 서버는 신뢰할 수 있는 서버만 사용하고, 외부 콘텐츠를 가져오는 서버는 프롬프트 인젝션 위험이 있다고 설명합니다.

MCP 보안 원칙

원칙설명
신뢰할 수 있는 MCP 서버만 연결 개인이 임의 설치한 서버를 회사 프로젝트에 연결하지 않기
최소 권한 GitHub read-only, Slack 특정 채널, Jira 특정 프로젝트처럼 제한
DB 직접 연결 제한 운영 DB 대신 읽기 전용 복제본 또는 샘플 DB 사용
외부 문서 읽은 직후 명령 실행 금지 README·웹페이지·이슈 내용이 명령에 영향을 줄 수 있음
도구 호출 전 입력 확인 AI가 어떤 API를 어떤 파라미터로 호출하는지 사람이 확인
감사 로그 누가 어떤 MCP 도구를 호출했는지 기록
토큰 분리 MCP 서버용 토큰은 최소 권한·짧은 수명·회전 가능하게 관리

16. AI가 만든 코드의 보안 취약점 검토 방법

AI 생성 코드 검토는 “코드 스타일”보다 “보안 의미”를 먼저 봐야 합니다.

필수 보안 리뷰 항목

검토 항목확인 질문
인증/인가 오류 로그인만 확인하고 리소스 소유자 검증을 빼먹지 않았는가?
SQL Injection 사용자 입력이 파라미터 바인딩 없이 쿼리에 들어가지 않는가?
XSS 사용자 입력이 escape 없이 HTML에 출력되지 않는가?
CSRF 상태 변경 요청에 CSRF 방어가 있는가?
SSRF 서버가 사용자 입력 URL을 검증 없이 호출하지 않는가?
Path Traversal 파일 경로에 ../ 같은 입력이 허용되지 않는가?
Secret 하드코딩 API 키, 토큰, 비밀번호가 코드에 들어가지 않았는가?
취약한 암호화 MD5, SHA1, 고정 IV, 자체 암호화 로직을 쓰지 않는가?
의존성 취약점 AI가 제안한 패키지가 오래되었거나 악성 패키지와 유사하지 않은가?
과도한 권한 관리자 권한, broad OAuth scope, wildcard IAM이 들어가지 않았는가?
예외 처리 누락 에러 응답에 stack trace, SQL, 내부 경로가 노출되지 않는가?
로그에 민감정보 출력 토큰, 쿠키, 개인정보, 결제 정보가 로그에 찍히지 않는가?

추천 검토 흐름

  1. AI가 생성한 코드만 따로 diff로 본다.
  2. 인증·인가·입력값 검증 코드를 먼저 본다.
  3. 새 의존성을 설치했다면 패키지명, 유지보수 상태, 라이선스, 취약점을 확인한다.
  4. SAST, dependency scan, secret scan을 CI에 넣는다.
  5. 보안 민감 변경은 보안 담당자 또는 senior reviewer가 리뷰한다.
  6. AI가 설명한 내용이 아니라 실제 코드 동작을 테스트한다.

17. 회사용 AI 코딩 도구 도입 절차

회사에서 AI 개발 도구 보안 정책 없이 도구가 퍼지면, 나중에 누가 어떤 코드와 데이터를 어떤 계정으로 보냈는지 추적하기 어렵습니다. 작은 스타트업도 최소한의 도입 절차가 필요합니다.

1단계. 저장소 등급 분류

등급예시AI 도구 사용 기준
A. 공개 코드 오픈소스, 문서 사이트 비교적 허용 가능
B. 내부 일반 코드 사내 도구, 샘플 앱 회사 승인 도구에서 제한적 허용
C. 비공개 제품 코드 핵심 서비스 백엔드, 프론트엔드 기업용 계정, 학습 제외, 리뷰 필수
D. 민감정보 포함 코드 고객 로그, 인증, 결제, 운영 설정 원칙적으로 제한. 익명화·분리 필요
E. 고규제 코드 금융, 의료, 공공, 보안 제품 보안·법무·컴플라이언스 검토 전 금지

2단계. 허용 도구 목록 작성

항목예시
허용 도구 Copilot Business, Cursor Enterprise, Claude Team/Enterprise 등
제한 도구 개인 Pro 계정, 무료 API, 실험용 CLI
금지 사용 고객 로그 붙여넣기, .env 포함 프로젝트 전체 분석, 운영 DB MCP 연결
예외 승인 CTO 또는 보안 담당자 승인 필요

3단계. 계약·데이터 처리 확인

확인해야 할 문서는 다음과 같습니다.

문서확인 항목
Privacy Policy 어떤 데이터를 수집·사용하는가
Data Use 문서 모델 학습 사용 여부
Security 문서 암호화, 접근 통제, 보안 인증
DPA 개인정보 처리자·위탁 조건
Enterprise Terms 데이터 보관, 삭제, 감사, 책임 범위
Trust Center SOC 2, ISO, 침해 대응, 서브프로세서
Admin 문서 SSO, SCIM, RBAC, audit log, 정책 강제

4단계. 기술적 가드레일 적용

가드레일설명
SSO/SCIM 계정 발급·회수 자동화
RBAC 관리자와 일반 사용자 권한 분리
Content Exclusion 민감 경로 제외
secret scanning AI 사용 전후 secret 탐지
branch protection AI 코드 직접 병합 방지
PR template “AI 사용 여부”, “민감정보 확인” 체크
allowlist/denylist 터미널 명령, MCP 서버, 외부 API 제한
로그 보관 감사와 사고 대응 가능하게 설정

5단계. 파일럿 후 확대

처음부터 전사 도입하지 말고, 민감도가 낮은 저장소와 소수 개발자 그룹에서 파일럿을 진행합니다. 파일럿 결과로 productivity, 보안 이벤트, secret 탐지 결과, 리뷰 부하, 비용, 개발자 만족도를 함께 봐야 합니다.


8. 역할별 체크리스트

표 5. 역할별 체크리스트

역할체크리스트
개발자 회사의 AI 도구 사용 정책을 확인했는가
개인 계정이 아닌 회사 승인 계정을 사용하는가
Privacy Mode 또는 데이터 학습 opt-out을 확인했는가
.env, secret, token, key 파일을 제외했는가
AI가 수정한 코드를 Git diff로 검토했는가
AI가 만든 코드를 테스트했는가
AI가 제안한 패키지를 무조건 설치하지 않았는가
민감 로그나 고객정보를 붙여넣지 않았는가
팀 리더/CTO 사용 가능한 AI 도구 목록을 정했는가
개인 계정 사용을 허용할지 금지할지 정했는가
Enterprise/Business 플랜 필요성을 검토했는가
저장소 등급별 허용 기준을 정했는가
코드 리뷰와 보안 스캔 절차를 정했는가
사고 발생 시 로그와 감사 절차를 마련했는가
보안 담당자 데이터 처리 약관과 DPA를 검토했는가
모델 학습 사용 여부를 확인했는가
보관 기간과 삭제 정책을 확인했는가
SSO, SCIM, RBAC, audit log 지원 여부를 확인했는가
민감정보 탐지 도구를 적용했는가
MCP 서버와 외부 도구 연동 권한을 관리하고 있는가
프롬프트 인젝션과 supply chain 위험을 고려했는가
법무/컴플라이언스 담당자 고객 계약상 코드·데이터 외부 처리 제한을 확인했는가
개인정보 처리 위탁 또는 국외 이전 이슈를 확인했는가
라이선스가 민감한 코드 사용 기준을 확인했는가
고규제 산업 요구사항을 반영했는가
AI 도구 약관 변경 모니터링 절차를 정했는가

9. 사용 가능/제한/금지 기준표

표 4. 사용 가능/제한/금지 기준표

상황판단이유권장 조치
개인 토이 프로젝트 사용 가능 본인 코드이고 민감정보가 적음 secret 제외, 공개 저장소 여부 확인
오픈소스 프로젝트 대체로 가능 공개 코드 중심 라이선스, 보안 취약점 이슈 확인
사내 비공개 저장소 제한적 허용 영업비밀·비공개 로직 포함 가능 회사 승인 계정, 기업 플랜, 학습 제외
고객 정보가 포함된 코드 제한 또는 금지 개인정보·계약 이슈 익명화, 샘플 데이터 사용
금융/의료/공공 프로젝트 제한 또는 금지 규제·감사 요구사항 높음 보안·법무 검토 후 승인
보안 취약점이 포함된 코드 제한 공격 정보가 될 수 있음 보안 승인 환경에서만 분석
프로덕션 DB 접속 정보가 있는 프로젝트 금지에 가까움 운영 시스템 접근 위험 .env 제거, 키 회전, 로컬 더미 사용
회사가 승인한 Enterprise 플랜 사용 조건부 허용 DPA, SSO, 감사, 정책 통제 가능 저장소 등급별 사용 정책 적용
개인 Pro 계정으로 회사 코드 사용 제한 또는 금지 회사 통제·감사·계약 범위 밖 회사 계정으로 전환, opt-out 확인
AI가 배포 명령까지 실행 제한 또는 금지 프로덕션 장애·보안 사고 위험 배포 명령은 CI/CD 승인 절차로 분리
MCP로 GitHub, Slack, DB, Jira 연결 제한 권한 집중·프롬프트 인젝션 위험 최소 권한, allowlist, 감사 로그

18. 실전 시나리오별 판단

시나리오 1. 개인 GitHub Copilot Pro 계정으로 회사 비공개 저장소에서 자동완성을 쓰는 경우

항목내용
위험도 높음
왜 위험한가 개인 계정은 회사의 DPA, 감사 로그, 조직 정책, 퇴사자 회수 범위 밖일 수 있습니다. GitHub는 개인용 Copilot Free/Pro/Pro+/Max에서 opt-out하지 않으면 일부 상호작용과 코드 컨텍스트가 모델 개선·학습에 사용될 수 있다고 안내합니다.
확인해야 할 공식 문서/설정 Copilot 개인 데이터 설정, Copilot Business/Enterprise 데이터 정책, 회사 보안 정책
안전하게 쓰려면 회사 승인 Copilot Business/Enterprise 계정 사용, 조직 정책 적용, 필요한 경우 Content Exclusion 설정
결론 회사 승인 없이 개인 Pro 계정으로 비공개 저장소를 쓰는 것은 제한 또는 금지 대상으로 보는 것이 안전합니다.

 


시나리오 2. Cursor Free/Pro에서 Privacy Mode를 켜지 않고 회사 코드를 여는 경우

항목내용
위험도 높음
왜 위험한가 Cursor는 Privacy Mode가 꺼져 있으면 코드베이스 데이터, 프롬프트, 코드 스니펫, 에디터 액션 등이 기능 개선과 모델 학습에 사용될 수 있다고 설명합니다.
확인해야 할 공식 문서/설정 Cursor Privacy Mode, Data Use, codebase indexing, .cursorignore
안전하게 쓰려면 Privacy Mode를 켜고, 팀/엔터프라이즈에서 강제하며, 민감 파일을 인덱싱 제외합니다.
결론 회사 코드는 Privacy Mode를 켜지 않은 Cursor Free/Pro에서 열지 않는 것이 안전합니다.

 


시나리오 3. Claude Code가 프로젝트 전체를 읽고 테스트 명령을 실행하는 경우

항목내용
위험도 중간~높음
왜 위험한가 Claude Code는 코드와 명령 출력이 모델 요청 컨텍스트에 포함될 수 있고, 테스트 로그에 secret이나 개인정보가 찍힐 수 있습니다. 다만 Claude Code는 read-only 기본값, 편집·명령 승인, 네트워크 fetch 승인 같은 통제를 제공합니다.
확인해야 할 공식 문서/설정 Claude Code data usage, security, permissions, MCP 설정
안전하게 쓰려면 Team/Enterprise/API 같은 승인된 상업용 계정 사용, 테스트 로그 마스킹, 명령 승인 유지, 민감 파일 제외
결론 승인된 계정과 권한 설정이 있으면 제한적으로 사용할 수 있지만, 전체 프로젝트 분석 전 민감 파일과 로그를 정리해야 합니다.

 


시나리오 4. Codex CLI가 로컬 프로젝트에서 파일을 수정하고 명령을 실행하는 경우

항목내용
위험도 중간~높음
왜 위험한가 로컬 실행이라도 Codex CLI는 선택한 디렉터리의 코드를 읽고, 파일을 바꾸고, 명령을 실행할 수 있습니다. sandbox와 approval policy가 꺼지거나 우회되면 위험이 커집니다.
확인해야 할 공식 문서/설정 Codex CLI sandbox, approval policy, data controls, 사용 계정
안전하게 쓰려면 기본 sandbox 유지, --yolo 금지, 작업 디렉터리 제한, 명령 승인 유지, Git diff 검토
결론 로컬 CLI라는 이유만으로 안전하다고 볼 수 없으며, sandbox와 승인 정책이 핵심입니다.

 


시나리오 5. Windsurf에서 회사 코드를 인덱싱하는 경우

항목내용
위험도 중간~높음
왜 위험한가 코드 인덱싱은 파일 내용, 파일명, 컨텍스트가 AI 도구에 제공될 수 있다는 뜻입니다. Cognition/Windsurf 관련 개인정보 문서는 user content 수집과 서비스 개선 목적 사용을 설명하며, Enterprise 문서는 별도 보호 조건을 설명합니다.
확인해야 할 공식 문서/설정 Windsurf/Cognition Privacy, Devin Enterprise, Cascade, terminal, MCP, ignore 설정
안전하게 쓰려면 Enterprise 조건 확인, 인덱싱 제외 파일 설정, 자동 명령 실행 제한, 민감 저장소 등급 분류
결론 개인/팀 플랜과 Enterprise 조건을 분리해서 판단해야 하며, 민감 저장소는 공식 데이터 처리 조건 확인 전 제한해야 합니다.

 


시나리오 6. Gemini CLI 또는 Gemini Code Assist를 회사 프로젝트에 연결하는 경우

항목내용
위험도 중간~높음
왜 위험한가 개인·무료 경로와 Google Cloud/Code Assist 기업용 경로의 데이터 처리 조건이 다를 수 있습니다. Google은 unpaid services에 민감·기밀·개인정보를 제출하지 말라고 안내합니다.
확인해야 할 공식 문서/설정 Gemini API Additional Terms, Gemini Code Assist security, Google Cloud DPA, Vertex AI, telemetry
안전하게 쓰려면 회사 Google Cloud 조직, Code Assist Standard/Enterprise 또는 Vertex AI 조건에서 사용하고, 개인·무료 API에는 회사 코드나 고객 데이터를 넣지 않습니다.
결론 회사 프로젝트는 개인 Gemini CLI 사용보다 조직 관리형 Google Cloud/Code Assist 조건에서 검토해야 합니다.

 


시나리오 7. MCP 서버를 통해 AI 도구가 GitHub, Slack, DB, Jira에 접근하는 경우

항목내용
위험도 높음~매우 높음
왜 위험한가 MCP는 AI 도구가 외부 시스템의 데이터와 액션을 사용할 수 있게 합니다. GitHub, Slack, Jira, DB 접근 권한이 한 에이전트에 모이면 프롬프트 인젝션, 과도한 권한, 데이터 노출 위험이 커집니다.
확인해야 할 공식 문서/설정 MCP security best practices, 도구별 MCP 문서, OAuth scope, audit log
안전하게 쓰려면 신뢰된 MCP 서버만 허용, read-only 우선, 최소 scope, 도구 호출 전 사용자 확인, 운영 DB 연결 금지 또는 읽기 전용
결론 MCP 보안은 AI 코딩 도구 보안의 핵심입니다. 회사에서는 whitelist와 감사 로그 없이는 제한해야 합니다.

 


시나리오 8. .env 파일이 포함된 프로젝트를 AI 에이전트에게 분석시키는 경우

항목내용
위험도 매우 높음
왜 위험한가 .env에는 API 키, DB 비밀번호, JWT secret, OAuth secret, 운영 endpoint가 포함될 수 있습니다. AI 에이전트가 프로젝트 전체를 읽으면 이런 값이 프롬프트, 로그, 명령 출력, 인덱싱 대상에 포함될 수 있습니다.
확인해야 할 공식 문서/설정 도구별 ignore, Content Exclusion, Privacy Mode, secret scanning
안전하게 쓰려면 .env 제거, .env.example만 제공, secret scanning 적용, 노출된 키는 즉시 회전
결론 .env가 포함된 상태로 AI 에이전트에게 전체 프로젝트 분석을 맡기면 안 됩니다.

시나리오 9. 고객 개인정보가 포함된 로그를 AI에게 붙여넣는 경우

항목내용
위험도 매우 높음
왜 위험한가 고객 이름, 이메일, 전화번호, 주소, 결제 정보, 세션 토큰이 로그에 포함될 수 있습니다. 이는 개인정보 처리, 고객 계약, 보관 기간, 국외 이전, 접근 통제 문제로 이어질 수 있습니다.
확인해야 할 공식 문서/설정 Privacy Policy, DPA, retention, data controls, 회사 개인정보 처리 정책
안전하게 쓰려면 로그를 익명화·마스킹하고, 샘플 로그를 재현 데이터로 바꿔 사용합니다.
결론 고객 개인정보가 포함된 원본 로그는 AI 도구에 붙여넣지 않는 것이 기본 원칙입니다.

 


시나리오 10. AI가 만든 코드를 그대로 프로덕션에 배포하는 경우

항목내용
위험도 높음
왜 위험한가 AI 생성 코드는 인증/인가 오류, injection, secret 하드코딩, 취약 의존성, 예외 처리 누락을 포함할 수 있습니다.
확인해야 할 공식 문서/설정 도구별 responsible use, 보안 리뷰 정책, CI/CD 검사
안전하게 쓰려면 Git diff, 코드 리뷰, 테스트, SAST, dependency scan, secret scan을 통과시킨 뒤 배포합니다.
결론 AI가 만든 코드는 초안으로 보고, 사람의 리뷰와 자동 보안 검사를 거친 뒤 배포해야 합니다.

 


19. 개발자용 체크리스트

  • 회사의 AI 도구 사용 정책을 확인했는가
  • 개인 계정이 아닌 회사 승인 계정을 사용하는가
  • Privacy Mode 또는 데이터 학습 opt-out을 확인했는가
  • .env, secret, token, key 파일을 제외했는가
  • AI가 수정한 코드를 Git diff로 검토했는가
  • AI가 만든 코드를 테스트했는가
  • AI가 제안한 패키지를 무조건 설치하지 않았는가
  • 민감 로그나 고객정보를 붙여넣지 않았는가
  • AI 에이전트가 실행하려는 터미널 명령을 읽어봤는가
  • MCP 서버가 어떤 권한을 갖는지 확인했는가
  • 운영 DB, 운영 API, 배포 권한을 AI 에이전트에 주지 않았는가
  • AI가 만든 코드에 인증/인가, injection, secret 노출 문제가 없는지 봤는가

20. 팀 리더/CTO용 체크리스트

  • 사용 가능한 AI 도구 목록을 정했는가
  • 개인 계정 사용을 허용할지 금지할지 정했는가
  • Enterprise/Business 플랜 필요성을 검토했는가
  • 저장소 등급별 허용 기준을 정했는가
  • 코드 리뷰와 보안 스캔 절차를 정했는가
  • 사고 발생 시 로그와 감사 절차를 마련했는가
  • SSO, SCIM, RBAC 적용 가능성을 검토했는가
  • 퇴사자 계정 회수 절차를 마련했는가
  • AI 사용 PR template 또는 commit guideline을 만들었는가
  • AI 에이전트가 배포·DB 변경·Git push를 직접 수행하지 못하도록 막았는가
  • MCP 서버 whitelist와 승인 프로세스를 만들었는가

21. 보안 담당자용 체크리스트

  • 데이터 처리 약관과 DPA를 검토했는가
  • 모델 학습 사용 여부를 확인했는가
  • 보관 기간과 삭제 정책을 확인했는가
  • SSO, SCIM, RBAC, audit log 지원 여부를 확인했는가
  • 민감정보 탐지 도구를 적용했는가
  • MCP 서버와 외부 도구 연동 권한을 관리하고 있는가
  • 프롬프트 인젝션과 supply chain 위험을 고려했는가
  • Zero Data Retention이 필요한 저장소 등급을 정했는가
  • 관리자 콘솔에서 모델, 기능, 외부 연결을 제한할 수 있는지 확인했는가
  • 보안 사고 발생 시 vendor 로그, 내부 로그, Git history를 함께 조사할 수 있는가
  • 고규제 데이터가 AI 도구로 전송되지 않도록 DLP 정책을 적용했는가

22. 회사에서 AI 코딩 도구 사용 정책을 만드는 방법

사내 AI 개발 도구 보안 정책은 길고 복잡한 문서보다, 개발자가 실제로 지킬 수 있는 기준이어야 합니다.

정책 문서에 들어가야 할 항목

항목내용
목적 생산성 향상과 회사 코드 보호를 동시에 달성
적용 범위 IDE, CLI, 웹 챗봇, 에이전트, MCP, 브라우저 확장
허용 도구 회사가 승인한 도구와 플랜
금지 도구 개인 계정, 무료 API, 미승인 SaaS
금지 데이터 .env, secret, 고객정보, 결제정보, 운영 로그
저장소 등급 공개, 내부, 비공개, 민감, 고규제
계정 기준 회사 계정, SSO, 퇴사자 회수
데이터 학습 opt-out 또는 기업용 비학습 조건
에이전트 권한 파일 수정, 터미널, Git, MCP, 배포 명령 기준
리뷰 절차 Git diff, PR review, 테스트, 보안 스캔
사고 대응 노출 시 secret rotate, vendor 문의, 로그 조사

23. 최종 결론

AI 코딩 도구 보안의 핵심 질문은 “Cursor가 안전한가?”, “GitHub Copilot 보안은 괜찮은가?”, “Claude Code 보안은 충분한가?”, “Codex CLI 보안은 로컬이라 괜찮은가?”가 아닙니다.

더 정확한 질문은 다음입니다.

우리 회사의 어떤 코드와 데이터를, 어떤 계정과 플랜으로, 어떤 데이터 처리 조건과 권한 제한 아래, 어떤 리뷰 절차를 거쳐 사용할 것인가?

개인 개발자는 민감정보를 제거하고 opt-out을 확인하는 것만으로도 위험을 줄일 수 있습니다. 스타트업은 회사 승인 도구 목록, 개인 계정 사용 기준, .env 금지, Git diff 리뷰부터 정해야 합니다. 중견기업은 SSO, SCIM, RBAC, audit log, DPA, 저장소 등급 분류가 필요합니다. 엔터프라이즈는 Zero Data Retention, VPC, 규제 데이터, 공급망 보안, MCP 접근 통제까지 봐야 합니다.

AI 코딩 도구는 회사 코드에 사용할 수 있습니다. 그러나 아무 계정으로, 아무 코드나, 아무 설정 없이 쓰면 안 됩니다.
가장 안전한 접근은 다음 한 줄로 정리할 수 있습니다.

회사 승인 계정 + 데이터 학습 제외 + 민감정보 차단 + 에이전트 권한 제한 + Git diff 검토 + 보안 스캔 + 사내 정책.


10. FAQ

Q1. 회사 코드를 Cursor에 넣어도 되나요?

회사 정책이 허용하고, Privacy Mode가 켜져 있으며, 민감 파일이 제외되어 있다면 제한적으로 검토할 수 있습니다. Cursor는 Privacy Mode가 켜져 있을 때 고객 데이터를 학습에 사용하지 않는다고 설명하지만, Privacy Mode가 꺼져 있으면 코드베이스 데이터와 프롬프트 등이 개선·학습에 사용될 수 있다고 안내합니다. 회사 코드는 개인 설정에 맡기지 말고 팀 또는 엔터프라이즈 정책으로 강제하는 것이 안전합니다.

Q2. GitHub Copilot은 회사 코드를 학습에 사용하나요?

GitHub는 Copilot Business/Enterprise 고객 데이터를 모델 학습에 사용하지 않는다고 설명합니다. 반면 개인용 Copilot Free/Pro/Pro+/Max는 설정에 따라 입력, 출력, 코드 스니펫, 컨텍스트가 모델 개선·학습에 사용될 수 있으므로 opt-out과 회사 정책을 확인해야 합니다. 회사 비공개 저장소는 개인 Pro보다 Business/Enterprise와 조직 정책을 권장합니다.

Q3. Claude Code가 회사 코드를 읽어도 안전한가요?

Claude Code는 Consumer 계정과 Team/Enterprise/API 같은 상업용 조건에서 데이터 사용 기준이 다릅니다. Anthropic은 상업용 조건에서는 고객이 opt-in하지 않는 한 코드나 프롬프트를 생성 모델 학습에 사용하지 않는다고 설명합니다. 그래도 회사 코드를 읽히기 전에는 로컬 transcript, 명령 승인, MCP 서버, 민감 파일 제외를 확인해야 합니다.

Q4. Codex CLI는 로컬에서 실행되면 안전한가요?

로컬에서 실행된다는 말은 안전하다는 뜻이 아닙니다. Codex CLI는 선택한 디렉터리의 코드를 읽고, 파일을 변경하고, 명령을 실행할 수 있는 도구입니다. OpenAI는 sandbox와 approval policy를 제공하지만, 이를 우회하는 옵션은 회사 프로젝트에서 금지하는 것이 안전합니다.

Q5. AI 코딩 도구에 .env 파일이 노출되면 어떻게 되나요?

.env에는 API 키, DB 비밀번호, JWT secret, OAuth secret, 운영 서버 주소가 들어갈 수 있습니다. AI 도구에 노출된 secret은 프롬프트, 로그, 터미널 출력, 인덱싱 대상에 포함될 수 있으므로 이미 유출된 것으로 보고 회전하는 것이 안전합니다. 이후 .gitignore, 도구별 ignore, secret scanning, pre-commit hook을 적용해야 합니다.

Q6. 개인 계정으로 회사 코드를 AI 도구에 넣어도 되나요?

일반적으로 회사 승인 없이는 권장하지 않습니다. 개인 계정은 회사의 DPA, 감사 로그, 계정 회수, 관리자 정책, 모델 학습 설정 통제 범위 밖일 수 있습니다. 회사 코드는 회사 계정, 조직 플랜, 공식 데이터 처리 조건, 보안 정책 안에서 다루는 것이 안전합니다.

Q7. Privacy Mode를 켜면 완전히 안전한가요?

아닙니다. Privacy Mode는 데이터 학습이나 보관 위험을 줄이는 기능일 수 있지만, .env 노출, 터미널 명령 실행, MCP 권한, Git diff 검토 누락, AI 생성 코드 취약점까지 자동으로 해결하지는 않습니다. Privacy Mode는 보안 정책의 한 요소이지 전체 보안 대책이 아닙니다.

Q8. AI 코딩 도구 사용을 회사에서 허용하려면 무엇을 확인해야 하나요?

도구별 Privacy/Data Use 문서, DPA, 보관 기간, 모델 학습 여부, SSO, SCIM, RBAC, audit log, 민감 파일 제외, 에이전트 권한, MCP 연결 정책을 확인해야 합니다. 또한 저장소 등급별로 허용·제한·금지 기준을 나눠야 합니다. 처음에는 민감도가 낮은 저장소에서 파일럿을 진행하는 것이 좋습니다.

Q9. AI가 만든 코드를 그대로 배포해도 되나요?

그대로 배포하면 안 됩니다. AI 생성 코드는 인증/인가 오류, SQL Injection, XSS, CSRF, SSRF, secret 하드코딩, 취약 의존성 같은 문제를 포함할 수 있습니다. Git diff, 코드 리뷰, 테스트, SAST, dependency scan, secret scan을 통과한 뒤 배포해야 합니다. GitHub도 Copilot이 만든 코드를 검토하고 테스트해야 한다고 안내합니다.

Q10. MCP 서버를 AI 코딩 도구에 연결해도 되나요?

MCP 서버 연결은 강력하지만 위험도 큽니다. GitHub, Slack, Jira, DB, 내부 API가 연결되면 AI 에이전트가 여러 시스템 데이터를 읽거나 작업을 수행할 수 있습니다. 신뢰할 수 있는 MCP 서버만 허용하고, 최소 권한, read-only 기본값, 사용자 승인, 감사 로그, prompt injection 방어를 적용해야 합니다.

반응형