🔐
바이브코딩할 때 보안 실수
심화AI가 만든 코드에서 흔히 발생하는 보안 구멍과 대응법
AI는 보안을 신경 안 쓴다
AI가 만든 코드는 대부분 "동작"에 초점이 맞춰져 있습니다. 보안은 명시적으로 요청하지 않으면 무시되는 경우가 많습니다. 실제 사례: • API 키를 프론트엔드 코드에 그대로 노출 • 사용자 입력을 검증 없이 DB에 저장 • CORS를 * (전체 허용)로 설정 • 비밀번호를 평문으로 저장 바이브코딩을 "진짜 프로덕트"로 만들려면, 보안은 반드시 신경 써야 합니다.
흔한 실수: API 키 노출
AI에게 "OpenAI API 연동해줘"라고 하면, 대부분 API 키를 프론트엔드 코드에 직접 넣어줍니다. 이렇게 하면 누구나 브라우저 개발자 도구에서 키를 볼 수 있습니다.
❌ 이렇게 말하면 애매해요
OpenAI API를 연동해서 챗봇 만들어줘✅ 이렇게 말하면 정확해요
OpenAI API를 연동해서 챗봇을 만들어줘.
보안 요구사항:
- API 키는 서버 사이드(API Route)에서만 사용
- 프론트엔드에서는 /api/chat 엔드포인트만 호출
- .env.local에 키 저장, .gitignore에 포함
- rate limiting 추가흔한 실수: 입력 검증 누락
AI가 만든 폼은 보통 입력값 검증이 없거나 불충분합니다. 위험한 예: • 이메일 필드에 스크립트 태그 입력 가능 (XSS) • SQL 쿼리에 사용자 입력을 직접 연결 (SQL Injection) • 파일 업로드에 타입 제한 없음 해결법: AI에게 "보안 검증도 포함해줘"라고 반드시 요청하세요.
❌ 이렇게 말하면 애매해요
회원가입 폼 만들어줘✅ 이렇게 말하면 정확해요
회원가입 폼을 만들어줘.
보안 체크 포함:
- 이메일 형식 검증
- 비밀번호 최소 8자 + 특수문자
- XSS 방지 (입력값 이스케이프)
- CSRF 토큰 포함
- 서버 사이드에서도 동일한 검증Compit에서 보안 기초 배우기
Compit의 보안 기초 코스에서 7가지 핵심 보안 개념을 배울 수 있습니다: 🔑 API 키 관리 🛡️ XSS 방어 📁 환경 변수 🔒 HTTPS 🎭 CSRF 방어 🌐 CORS 📦 npm 패키지 보안 바이브코딩으로 만든 프로젝트를 "진짜"로 만들고 싶다면, 보안은 필수입니다.
보안 기초 배우러 가기 →