"로그인 페이지 만들어줘." 5분 만에 완성. 화면도 예쁘고, 로그인도 잘 돼요. 그대로 배포했어요. 그리고 3주 뒤, 그 안에 있던 18,000명의 사용자 데이터가 인터넷에 떠 있었어요. 실제로 Lovable로 만들어진 한 앱에서 벌어진 일이에요.
이게 바이브 코딩의 진짜 얼굴이에요. 잘 돌아가는 코드와 안전한 코드는 전혀 다른 물건인데, AI가 5분 만에 뽑아주는 코드는 돌아가는 쪽만 책임져요. 나머지는 당신 몫이고요.
먼저, 왜 이걸 안 멈출 수 없는지부터
욕먹을 각오로 솔직히 말하면, 바이브 코딩은 미친 듯이 잘 돼요. 그래서 위험한 거예요.
2025년 2월, 전 OpenAI 공동창업자이자 Tesla AI 리더였던 Andrej Karpathy가 X에 이렇게 썼어요. "나는 이걸 바이브 코딩이라고 부르겠다. 완전히 바이브에 몸을 맡기고, 코드가 존재한다는 사실 자체를 잊어라." 자연어로 지시하고, 나온 코드를 리뷰 없이 받고, 에러가 나면 에러 메시지를 그대로 다시 붙여넣는 방식이에요. Merriam-Webster가 2025년 3월 슬랭으로 등재했고, MIT Technology Review는 2026년 1월 "Generative Coding"이라는 이름으로 10대 혁신 기술에 올렸어요.
그럴 만했어요. 개발자 74%가 생산성 향상을 체감했고, 커밋 빈도는 1.4~1.9배, 신규 기능 완료 시간은 20~45% 줄었어요. 20인 이하 스타트업의 60% 이상이 이미 일상으로 쓰고 있고, Meta·Google·Microsoft는 내부 신규 코드의 25~30%를 AI로 찍어내요. 이건 되돌릴 수 있는 흐름이 아니에요.
문제는 이 속도에 우리가 한 가지를 빼먹고 있다는 거예요. 정확히는 두 가지.
첫 번째 빚: 빠르게 만들면, 빠르게 뚫린다
"내가 만든 작은 앱을 누가 굳이 해킹해?"라고 생각하기 쉬워요. 그런데 데이터는 정반대를 말해요. 2025년 12월 CodeRabbit이 470개 오픈소스 GitHub PR을 분석했더니, AI가 공동 작성한 코드는 사람 코드보다 평균 1.7배 더 많은 이슈를 품고 있었어요. PR당 사람 6.45개 vs AI 10.83개. 그냥 '이슈'만 많은 게 아니라, 하필 보안 쪽이 더 심각했어요.
| 사람이 작성한 코드 | AI 생성 코드 (위험도) | |
|---|---|---|
| XSS 취약점 | 기준선 (1x) | 2.74배 높음 |
| 안전하지 않은 객체 참조 | 기준선 (1x) | 1.91배 높음 |
| 비밀번호 처리 오류 | 기준선 (1x) | 1.88배 높음 |
| 안전하지 않은 역직렬화 | 기준선 (1x) | 1.82배 높음 |
| 로직/정확성 오류 | 기준선 (1x) | 1.75배 높음 |
이게 한두 도구의 문제가 아니라는 게 핵심이에요. 보안 스타트업 Tenzai는 Claude Code, OpenAI Codex, Cursor, Replit, Devin — 5개 주요 도구로 동일한 앱을 3개씩(총 15개) 만들어봤어요. 결과는 69개의 취약점, 그중 약 6개가 치명적(critical) 등급. 모든 도구가 예외 없이 SSRF 취약점을 만들었고, CSRF 보호나 보안 헤더를 챙긴 앱은 단 하나도 없었어요. 도구를 바꾼다고 피할 수 있는 문제가 아니라는 뜻이에요.
그리고 이건 이미 실험실 밖, 실제 인터넷에서 벌어지고 있어요. Escape.tech가 공개된 바이브 코딩 앱 5,600개 이상을 스캔했더니 2,000개 이상의 취약점, 400개 이상의 노출된 시크릿 키, 175건의 개인정보 — 의료 기록·IBAN·전화번호까지 — 가 그냥 떠 있었어요. 맨 앞에서 본 18,000명 데이터 유출이 그중 하나고요.
가장 뼈아픈 건 이거예요. Kaspersky에 따르면 AI 코드의 45%가 OWASP Top-10 취약점을 포함하고, 이 비율은 2년간 전혀 개선되지 않았어요. 게다가 GPT-4o로 코드를 5회 반복 수정하면 치명적 취약점이 오히려 37% 더 늘었어요. 우리가 "AI야 고쳐줘"를 반복하는 그 행동이, 문제를 키우고 있던 거예요.
두 번째 빚: 스캐너로도 못 잡는 '인지적 부채'
보안 취약점은 그나마 양반이에요. 스캐너로 잡을 수 있으니까. 진짜 무서운 건 어떤 도구로도 스캔이 안 되는, 당신 머릿속에 쌓이는 빚이에요. 이름은 인지적 부채(Cognitive Debt).
기술 부채가 코드에 남는 빚이라면, 인지적 부채는 개발자 머릿속에 남는 빚이에요. AI가 코드를 쓸 때 당신이 건너뛰는 건 타이핑만이 아니에요. "왜 이 구조를 골랐는지", "이 컴포넌트가 저 컴포넌트와 어떻게 엮이는지" — 그 깊은 사고를 통째로 건너뛰는 거예요. 그래서 시간이 지나면, 자기가 만든 시스템조차 손을 못 대게 돼요.
숫자로 보면 등골이 서늘해요. AI 에이전트는 분당 140~200줄의 의미 있는 코드를 뽑아내는데, 사람이 읽고 이해하는 속도는 분당 20~40줄. 5~7배의 이해력 격차가 매 순간 벌어지고 있어요. Anthropic 연구에선 AI 보조를 쓰는 개발자의 스킬 숙련도가 17% 떨어졌고, 코드 생성을 통째로 AI에 위임한 개발자는 이해도 테스트에서 40% 미만을 받은 반면, AI를 개념 탐구에 쓴 개발자는 65% 이상을 받았어요. 같은 AI인데, 쓰는 방식이 결과를 갈랐어요.
그래서 67%의 개발자가 "생산성은 올랐는데 AI 코드 디버깅에 시간을 더 쓴다"고 답하는 모순이 생겨요. 인지적 부채는 보통 6~12개월 뒤에 터져요. 그때쯤이면 팀 전체가 자기 시스템을 이해하지 못하는 상태고요. 지금 빠른 게, 반년 뒤의 발목을 잡는 구조예요.
그럼 어떻게 막느냐 — 4개의 방어선
오해 말아요. "바이브 코딩 쓰지 마라"는 얘기가 아니에요. 못 쓰는 게 아니라 못 안 쓰는 시대니까. 핵심은 딱 하나, "돌아간다"를 "안전하다"로 착각하지 않는 것이에요. 이걸 시스템으로 박아두는 4가지 방법이에요.
- 사람 리뷰 '전에' 자동 스캔을 먼저 건다
SAST(정적 분석) 도구를 CI/CD에 통합하세요. AI 코드는 주니어 개발자 수준의 취약점 패턴을 그대로 보여줘요. 즉, 패턴이 뻔해서 스캐너가 잘 잡아요. 사람이 보기 전에 자동 스캔이 먼저 거르게 만드는 게 가성비 1위예요. - 프롬프트에 보안 요구사항을 박아 넣는다
"로그인 만들어줘"가 아니라 "OWASP Top-10 기준으로 안전한 로그인 만들어줘. 입력값 검증, bcrypt 암호화, CSRF 토큰 포함"이라고 지시하세요. 프롬프트가 구체적일수록 취약점이 줄어요. 같은 모델이라도 무엇을 요구하느냐가 결과물의 보안을 바꿔요. - '5회 룰': 같은 걸 5번 고치게 하면 직접 손댄다
"AI야 다시 고쳐줘"를 반복하면 취약점이 37%씩 늘어난다는 걸 기억하세요. 3~5회 시도해도 안 풀리면, 거기서 멈추고 직접 코드를 읽고 구조를 재설계하는 게 더 빠르고 안전해요. 반복 수정은 해결이 아니라 부채 적립이에요. - "왜 이 구조인지"를 최소 1명은 설명할 수 있어야 한다
생성이 5~7배 빠르다고 읽기를 건너뛰면 인지적 부채가 쌓여요. 팀 규칙으로 박으세요 — 머지 전에 팀원 1명 이상이 "왜 이렇게 짰는지"를 설명할 수 있을 것. AI를 대신 쳐주는 손이 아니라 함께 생각하는 동료로 쓰는 순간, 같은 도구가 부채가 아니라 자산이 돼요.
바이브 코딩의 청구서는 항상 늦게 도착해요. 보안은 몇 주 뒤에, 인지적 부채는 몇 달 뒤에. 그래서 지금 잘 돌아간다는 감각이 가장 위험한 거예요. 속도를 즐기되, 청구서가 오기 전에 위 4개를 미리 깔아두세요.





