من ۵ اپلیکیشن واقعی را با یک اسکنر امنیتی اسکن کردم

من VibeSafe را برای اسکن کدهای تولید شده توسط هوش مصنوعی ساختم. آن را روی ۵ اپلیکیشن واقعی از Vibe Coding Showcase تست کردم.

نتایج بد هستند.

هر ۵ اپلیکیشن دارای مشکلات امنیتی بودند. هیچ‌کدام از اپلیکیشن‌ها فاقد Content Security Policy بودند. در مجموع ۳۳ مشکل پیدا کردم.

جزئیات:

  • ۶ مشکل بحرانی (Critical)
  • ۹ مشکل سطح بالا (High)
  • ۱۸ مشکل متوسط (Medium)

آنچه در اپلیکیشن‌ها پیدا کردم:

اپلیکیشن ۱: پلتفرم سلامت مادران این اپلیکیشن باعث نشت داده‌ها می‌شود.

  • فایل‌های .env عمومی هستند. هر کسی می‌تواند اطلاعات کاربری (credentials) شما را بردارد.
  • پوشه .git در دسترس است. هر کسی می‌تواند تمام تاریخچه کد شما را دانلود کند.
  • فاقد محافظت در برابر XSS است.
  • فاقد محدودیت نرخ درخواست (rate limiting) در ورود است.

اپلیکیشن ۲: پلتفرم وفاداری پیامکی (SMS) این اپلیکیشن هم از همان الگوی اپلیکیشن ۱ پیروی می‌کند.

  • فایل‌های .env عمومی هستند.
  • پوشه .git عمومی است.
  • فاقد هدرهای امنیتی (security headers) است.
  • فاقد محافظت احراز هویت (auth protection) است.

اپلیکیشن ۳: پلتفرم SaaS توسط یک مدیر فنی (CTO) با تجربه ساخته شده، اما همچنان دارای حفره‌های امنیتی بود.

  • پوشه .git نشت شده بود.
  • دایرکتوری‌های کش پایتون (Python cache) عمومی بودند.
  • فاقد محافظت در برابر XSS است.

اپلیکیشن ۴: اپلیکیشن فرزندپروری این بهترین مورد در این گروه بود، اما همچنان پرخطر است.

  • فایل‌های SSL و .env ایمن بودند.
  • فاقد محافظت در برابر XSS است.
  • فاقد محدودیت نرخ درخواست در ورود است. این موضوع اجازه حملات brute-force را می‌دهد.

اپلیکیشن ۵: محصول Netlify

  • گواهی SSL نامعتبر است.
  • مرورگرها این سایت را به دلیل ناامن بودن مسدود می‌کنند.

خلاصه ریسک‌های رایج:

  • عدم وجود Content Security Policy: ۱۰۰٪ اپلیکیشن‌ها
  • عدم وجود X-Frame-Options: ۱۰۰٪ اپلیکیشن‌ها
  • عدم وجود محدودیت نرخ درخواست (rate limiting): ۸۰٪ اپلیکیشن‌ها
  • در دسترس بودن فایل‌های .env یا .git: ۶۰٪ اپلیکیشن‌ها

شما می‌توانید ۹۰٪ این مشکلات را در ۱۵ دقیقه برطرف کنید.

نحوه رفع آن‌ها:

  • افزودن Content-Security-Policy: ۱ دقیقه
  • افزودن X-Frame-Options: ۱ دقیقه
  • افزودن HSTS: ۱ دقیقه
  • مسدود کردن فایل‌های .env و .git: ۱ دقیقه
  • افزودن میان‌افزار (middleware) محدودیت نرخ درخواست: ۱۰ دقیقه

این‌ها آزمایش‌های کوچک نیستند. این‌ها محصولات زنده با کاربران واقعی هستند. آن‌ها داده‌های سلامت، داده‌های پیامکی و حساب‌های کاربری را مدیریت می‌کنند. اکثر آن‌ها در حال حاضر در برابر سرقت داده‌ها و حملات clickjacking آسیب‌پذیر هستند.

منبع: https://dev.to/amrakg93/i-scanned-5-real-vibe-coded-apps-with-a-security-scanner-heres-what-i-found-4a04