من ۵ اپلیکیشن واقعی را با یک اسکنر امنیتی اسکن کردم
من 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 آسیبپذیر هستند.
