惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Jina AI
Jina AI
大猫的无限游戏
大猫的无限游戏
T
Tailwind CSS Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
Last Week in AI
Last Week in AI
Hugging Face - Blog
Hugging Face - Blog
阮一峰的网络日志
阮一峰的网络日志
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
人人都是产品经理
人人都是产品经理
V
V2EX
博客园 - 叶小钗
雷峰网
雷峰网
小众软件
小众软件
量子位
V
Visual Studio Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
The GitHub Blog
The GitHub Blog
Martin Fowler
Martin Fowler
G
Google Developers Blog
博客园_首页
博客园 - Franky
有赞技术团队
有赞技术团队
宝玉的分享
宝玉的分享

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
I Scanned 5 Real Vibe-Coded Apps With a Security Scanner ...
kg8888 · 2026-06-23 · via DEV Community

I've been building VibeSafe — a security scanner specifically for AI-generated code. So I decided to put it to work on real apps.

I grabbed 5 vibe-coded products from the Vibe Coding Showcase and ran them through the full audit.

The results are worse than I expected.


Executive Summary

5 out of 5 apps had security issues. Zero had a Content Security Policy. 33 total findings.

Severity Count
🔴 CRITICAL 6
🟠 HIGH 9
🟡 MEDIUM 18
TOTAL 33

1. NewMom.help — Bolt + Supabase

Built by a non-technical founder. Maternal health platform. 1M+ impressions at launch.

🔴 CRITICAL — VibeSafe verdict: "Your app is leaking data"

Category Status Detail
🔴 Exposed Files FAIL .env and .env.local publicly accessible — anyone can grab credentials
🔴 Source Control FAIL /.git/ exposed — full repo history downloadable
🟠 CSP Header FAIL Content-Security-Policy missing — zero XSS protection
🟠 HSTS Header FAIL Strict-Transport-Security missing — SSL downgrade possible
🟡 X-Frame-Options FAIL Missing — clickjacking vulnerability
🟡 X-Content-Type-Options FAIL Missing — MIME-sniffing attacks possible
🟡 Referrer-Policy FAIL Missing — referrer leakage
🟡 Auth Rate Limiting WARN /api/auth/login detected — no rate limiting

11 issues found (4 critical, 2 high, 3 medium, 2 low)


2. Disko.is — Replit + React

SMS loyalty platform with member data. Built by a solo founder in Iceland.

🔴 CRITICAL — Same pattern as NewMom

Category Status Detail
🔴 Exposed Files FAIL .env and .env.local publicly accessible
🔴 Source Control FAIL /.git/ exposed — full repo downloadable
🟠 CSP Header FAIL Content-Security-Policy missing
🟠 HSTS Header FAIL Strict-Transport-Security missing
🟡 X-Frame-Options FAIL Missing — clickjackable
🟡 X-Content-Type-Options FAIL Missing
🟡 Referrer-Policy FAIL Missing
🟡 Auth Rate Limiting WARN Auth endpoint without protection

11 issues found (4 critical, 2 high, 3 medium, 2 low)


3. AltCloud.dev — Lovable + Bolt + Supabase

Built by an experienced CTO. SaaS platform.

🔴 CRITICAL — Git history and server internals exposed

Category Status Detail
🔴 Source Control FAIL /.git/ exposed — full repo leaked
🟠 CSP Header FAIL Content-Security-Policy missing
🟠 Server Internals FAIL __pycache__/ directory exposed publicly
🟡 X-Frame-Options FAIL Missing — clickjackable
🟡 Auth Rate Limiting WARN Auth endpoint without rate limiting

Notable: This was the only app that handled environment variables properly in source code — no committed .env files. But the live site was leaking git history and Python cache directories.

7 issues found (2 critical, 2 high, 2 medium, 1 low)


4. SleepingBaby.info — Cursor + Next.js + MongoDB

Parenting app by a solo developer. Entire app built in 450 tokens.

🟠 HIGH RISK — Best of the bunch, but still gaps

Category Status Detail
✅ SSL/TLS PASS Valid certificate
✅ .env Files PASS No exposed environment files
✅ .git Directory PASS Not exposed
🟠 CSP Header FAIL Content-Security-Policy missing — zero XSS protection
🟡 X-Frame-Options FAIL Missing — clickjackable
🟡 X-Content-Type-Options FAIL Missing — MIME-sniffing risk
🟡 Auth Rate Limiting FAIL /api/auth/signin — no rate limiting, brute-force possible

6 issues found (0 critical, 1 high, 3 medium, 2 low)


5. RemedyHunt.com — Bolt + Supabase + Netlify

Live product on Netlify. Built by a non-technical founder.

🔴 CRITICAL — SSL certificate invalid, browser blocks the site

Category Status Detail
🔴 SSL/TLS FAIL Certificate is INVALID — certificate verify failed. Browsers show a security warning
🟡 Accessibility FAIL Could not check headers — no valid HTTPS connection

2 issues found (1 critical, 0 high, 1 medium)


The Common Thread

Issue Apps Affected
❌ No Content Security Policy (XSS protection) 5/5 — 100%
❌ No X-Frame-Options (clickjacking) 5/5 — 100%
❌ No X-Content-Type-Options (MIME sniffing) 4/5 — 80%
❌ No Referrer-Policy (referrer leakage) 4/5 — 80%
❌ Auth endpoint without rate limiting 4/5 — 80%
❌ No or weak HSTS (SSL downgrade) 3/5 — 60%
.env or .git/ exposed publicly 3/5 — 60%
❌ No valid SSL certificate 1/5 — 20%

The Good News

Not all vibe-coded apps are insecure. The source code scan found some bright spots:

Project Stack Issues Notes
Obertura Vite + TypeScript (chess app) 0 ✅ Clean scan. Earned the trust badge
Autobot Node.js CLI + Playwright 0 ✅ Clean scan
Interior Planner Next.js + Drizzle + Vercel Blob 10 Had proper auth system, env vars, .env.example. Issues were missing route auth — fixable in an afternoon

Some builders do think about security. But the majority ship fast and find out later.


The Fix

Problem Fix Time
No CSP Content-Security-Policy: default-src 'self' 1 minute
No X-Frame-Options X-Frame-Options: DENY 1 minute
No HSTS Strict-Transport-Security: max-age=31536000 1 minute
Exposed .env Add .env to .gitignore, block at host level 1 minute
Exposed .git Block /.git/ in hosting config 1 minute
No rate limiting Add middleware (express-rate-limit, @upstash/ratelimit) 10 minutes

That's 15 minutes of work to fix 90% of what we found.


Why This Matters

These aren't weekend experiments. They're live products with real users:

  • A maternal health platform with actual mothers depending on it
  • An SMS loyalty club with member data
  • A parenting app with user accounts
  • A SaaS platform
  • A production app on Netlify

They're all clickjackable. All have zero XSS protection. Three are leaking credentials to the public internet right now.


Scanned with VibeSafe v1.0. 16 checks: SSL/TLS, security headers (CSP, HSTS, XFO, XCTO, Referrer-Policy), exposed files (.env, .git), CORS, JS bundle secrets, rate limiting. Source code: Trufflehog secrets, Semgrep static analysis, Supabase RLS, Firebase rules, hardcoded credentials, missing auth, Stripe webhook verification, SQL injection.