AI 생성 앱(Lovable, v0, Bolt, Cursor)을 위한 출시 전 보안 체크리스트. Supabase RLS, 노출된 키, 프롬프트 인젝션을 다루는 69개 항목. CVE-2025-48757(170개 앱)과 Moltbook 유출(150만 개 API 토큰)의 배후에 있던 것과 동일한 패턴.
출시를 알리는 트윗을 올리기 전에 이 69가지 체크리스트를 실행하세요. 이 항목들은 Lovable RLS CVE(CVE-2025-48757, 170+ 앱, 2025), Moltbook 유출(API 토큰 150만 개, 2026년 2월), 그리고 2026년 4월 Lovable 플랫폼 침해(다른 사용자 프로젝트의 소스 코드 + 서비스 키, 약 2.5개월간 노출) 뒤에 있는 정확한 패턴에 대응합니다.
전체 키트가 필요하신가요? 50개 감사 스킬, 15개 .cursorrules, 1개 MCP 설정 + 4개 CLI 레시피, 30개 적대적 리뷰 프롬프트, 10개 사례 연구. 5분 설치. 일괄 $10.
2025년 10월에 발표된 감사 보고서에서 Escape.tech는 14,600개 자산에 걸쳐 실제 AI 생성 앱 5,600개를 스캔했습니다(방법론). 이들은 해당 애플리케이션 1,400개에서 중대한 취약점 2,038개, 유출된 시크릿 400개 이상, 노출된 PII 175건을 보고했습니다(결과). 시크릿은 프런트엔드 번들에서 그대로 나왔습니다. 클라이언트 측 JavaScript에 Stripe, OpenAI, Supabase 키가 들어 있었습니다. 그 이후로도 개선되지 않았습니다. GitGuardian의 2026년 보고서는 2025년 공개 GitHub에서 새 시크릿 2,860만 개를 집계했으며(전년 대비 +34%), AI 서비스 시크릿은 81% 증가했고, 코딩 에이전트가 공동 작성한 커밋은 인간 기준치의 약 2배 비율로 시크릿을 유출했습니다. 이것은 69개의 구체적이고 테스트 가능한 항목으로 구성된 체크리스트입니다. 각 항목은 실제 사고 패턴에 대응합니다. 69개를 모두 체크할 수 있다면 출시하세요. 그럴 수 없다면 막고 있는 문제부터 해결하세요.
SaaS가 아닙니다. 스캐너도 아닙니다. 프로덕션에 푸시하기 전에 살펴보는 평범한 목록입니다.
출시까지 30분 남았습니다. 멈추세요. 이것부터 실행하세요.
Lovable RLS 취약점 하나만으로도(CVE-2025-48757, 2025, CVSS 9.3) 170개 이상의 프로덕션 앱이 노출되었습니다. Moltbook은 2026년 2월에 API 토큰 150만 개를 — 단 한 번의 curl로 조회 가능한 상태로 — 노출했습니다. 이것들은 극단적인 사례가 아니었습니다. 일반적인 출시였습니다.
이 체크리스트는 인증, 시크릿, API, 데이터베이스, 프런트엔드, AI/LLM, 에이전트 도구, 배포 전반에 걸쳐 69개의 구체적이고 테스트 가능한 항목을 묶어 놓은 것입니다. 69개를 모두 체크할 수 없다면 출시하지 마세요.
NEXT_PUBLIC_을 grep하고 모든 변수를 감사하세요.git log --all -p | grep -i "api_key\|secret".*로 설정되어 있지 않습니다. 허용된 오리진은 하드코딩되어 있으며 프로덕션에 localhost가 포함되지 않습니다.grep -r "service_role" src/. 프런트엔드 파일에서는 결과가 0개여야 합니다.auth.uid() 또는 team_id로 필터링합니다. 모든 사용자에 걸쳐 전체 레코드를 반환하는 쿼리가 없습니다.npm audit, pnpm audit 또는 npx osv-scanner --lockfile=package-lock.json을 실행하고 KNOWN-VULNERABLE-VERSIONS.md에서 특정 버전을 확인하세요. npm audit은 게시된 CVE는 잡아내지만 악성 패키지는 잡아내지 못하기 때문입니다.이 항목들은 기존 웹 앱 플레이북에는 없던 검사입니다. OWASP Top 10 for LLM Applications에 대응합니다. 2026년 판(2026년 8월 3일 발표, 6,639건의 실제 사고 데이터로 가중치를 매긴 최초의 버전)은 Excessive Agency를 6위에서 3위로 올렸고 Agent Hijacking, Multi-Modal Injection, Memory Persistence를 새로 추가했습니다. 아래 에이전트 항목은 더 이상 이론적인 것이 아닙니다.
user 메시지로 들어가며 시스템 프롬프트에 연결되지 않습니다. 파일, RAG 또는 웹에서 가져온 콘텐츠는 명시적 구분자로 감싸고 신뢰할 수 없는 것으로 취급합니다(간접 프롬프트 인젝션).postmark-mcp v1.0.16은 통과하는 모든 이메일을 공격자에게 BCC로 보내는 한 줄을 추가했습니다 — 버전 하나만 올렸는데 약 300개 조직이 피해를 입었습니다(2025년 9월).grep -rn "service_role" src/ app/ public/ dist/ 결과가 없어야 하며, 클라이언트 측 JWT의 role 클레임은 service_role이 아닙니다.npm audit은 게시된 CVE는 표시하지만 악성 패키지는 잡아내지 못합니다. KNOWN-VULNERABLE-VERSIONS.md를 참조하세요..cursor/rules, .github/copilot-instructions.md, CLAUDE.md, .windsurfrules)은 보이지 않는 유니코드가 있는지 스캔되고 보안에 민감한 코드로 검토됩니다("Rules File Backdoor" 계열).curl -i http://yourapp.com.69개를 모두 확실하게 체크할 수 없다면 출시하지 마세요. 첫날부터 쌓인 보안 부채는 갚는 데 비용이 많이 듭니다.
이 스킬들은 이 저장소의 5-free-skills/에 있습니다. .claude/skills/에 넣고 Claude Code에서 /skill <name>으로 실행하세요.
| 스킬 | 기능 |
|---|---|
5-free-skills/audit-supabase-rls.md | 데이터베이스에 SQL을 실행하여 보호되지 않은 테이블이 정확히 어디인지 알려줍니다. CVE-2025-48757 검사 |
5-free-skills/find-exposed-env-vars.md | NEXT_PUBLIC_가 클라이언트 JS로 끌어들인 시크릿을 빌드 출력에서 grep으로 검색합니다 |
5-free-skills/audit-prompt-injection-vectors.md | 사용자 입력이 경계 없이 LLM 호출에 도달하는 모든 지점을 찾습니다 |
5-free-skills/audit-rate-limiting.md | N회 시도 후 인증 라우트가 실제로 거부하는지 확인합니다 |
5-free-skills/find-xss-react.md | dangerouslySetInnerHTML과 정화되지 않은 출력을 찾습니다. AI 생성 코드의 86%가 여기서 실패합니다(Veracode, 2025) |
KNOWN-VULNERABLE-VERSIONS.md — 2026년 8월 기준 GitHub Security Advisories / NVD에서 검증된, 기본 바이브 코딩 스택의 특정 CVE 및 버전 번호입니다. Next.js 미들웨어 우회(CVE-2025-29927, CVSS 9.1 — 헤더 하나로 전체 인증 미들웨어를 건너뜀), form-data 경계 예측(CVE-2025-7783, CVSS 9.4), Vite 개발 서버 파일 읽기, React Router, mcp-remote, MCP Inspector, Cursor.
또한 npm audit이 구조적으로 잡아낼 수 없는 공급망 사고 — chalk/debug 탈취, Shai-Hulud 웜, postmark-mcp, slopsquatting — 그리고 어떤 스캐너가 실제로 무엇을 잡아내는지에 대한 표도 포함되어 있습니다.
| 사례 연구 | 무슨 문제가 있었나 |
|---|---|
free-case-studies/cve-2025-48757-lovable-rls.md | RLS가 완전히 꺼진 채 출시된 170개 이상의 Lovable 앱 — 그리고 2026년 후속 조사에서 EdTech 플랫폼의 학생 기록 18,697건이 노출된 사건 |
free-case-studies/moltbook-supabase-leak.md | Moltbook이 단 한 번의 curl 요청으로 조회 가능한 상태로 API 토큰 150만 개를 방치한 사건 |
플랫폼 린팅은 알고 있는 패턴만 잡아냅니다. 위의 어떤 것도 1~69번 항목에서 당신을 면책시키지 않습니다.
SaaS 스캐너가 아닙니다. 지속적 모니터링이 아닙니다. 외부로 데이터를 보내는(phones home) 기능도 없습니다.
이것들은 정적 마크다운 파일입니다. 직접 읽고, SQL 쿼리와 셸 명령을 수동으로 실행하고, 발견한 것을 고치면 됩니다. 대시보드도, 알림도, 마법도 없습니다.
또한 건강 데이터, 금융 기록 또는 규제 대상 데이터를 다룬다면 이 목록은 전문 펜테스트를 대체하지 못합니다. 체크리스트는 바이브 코딩 앱에서 끊임없이 나타나는 패턴을 다룹니다. 모든 것을 다루지는 않습니다.
69개 항목 체크리스트는 무료입니다. 볼트에는 5개 공격 표면에 걸친 50개의 스킬이 있으며, 그중 12개는 AI 및 LLM 앱에 특화된 것입니다: 프롬프트 인젝션, MCP 서버 보안, 에이전트 권한 상승, 벡터 DB 격리, RAG 데이터 유출, 시스템 프롬프트 추출.
또한 포함된 것: Cursor 규칙 15개, MCP 설정 1개(Semgrep) + CLI 통합 레시피 4개(gitleaks, npm-audit, Supabase RLS 검사, 프롬프트 인젝션 퍼저), 체크리스트 4개, 적대적 리뷰 프롬프트 30개, 전체 근본 원인 분석이 포함된 사례 연구 10개(PocketOS 사례 포함 — Cursor + Claude Opus 4.6 에이전트가 범위가 제한되지 않은 Railway 토큰을 통해 9초 만에 프로덕션 데이터베이스와 모든 백업을 삭제한 사건).
SaaS 없음. 구독 없음. 당신의 저장소에 있는 마크다운 파일입니다.
일괄 $10. → rishabhvaai.gumroad.com/l/plddbd
claude-code cursor lovable v0 security mcp vibe-coding supabase next-js prompt-injection rls ai-security
---이 체크리스트 덕분에 창피한 것을 배포하는 일을 막았다면, 저장소에 star를 눌러주세요. 그런 다음 아직 이 내용에 대해 생각해보지 않고 Lovable이나 v0를 사용 중인 팀원에게 링크를 보내세요.