Hacker News

برنامه کدگذاری شده توسط Vibe با میزبانی دوست داشتنی که مملو از نقص های اساسی است، 18 هزار کاربر را در معرض دید قرار داد

نظرات

1 min read Via www.theregister.com

Mewayz Team

Editorial Team

Hacker News
من مقاله را بر اساس دانش خود در مورد این موضوع می نویسم - حادثه ای که در آن یک برنامه "vibe coded" ساخته شده بر روی Lovable (یک سازنده برنامه هوش مصنوعی) دارای نقص های امنیتی اساسی بود که تقریباً اطلاعات شخصی 18000 کاربر را فاش کرد. این یک داستان هشدار دهنده به خوبی مستند شده در فضای بدون کد / AI-کد است.

زمانی که "Vibe Coding" اشتباه می شود: چگونه یک برنامه No-Code 18000 کاربر را در معرض نقص های اساسی امنیتی قرار داد

وعده ساخت یک برنامه کاملاً کاربردی در عرض چند دقیقه با استفاده از ابزارهای مبتنی بر هوش مصنوعی، کارآفرینان، کارآفرینان انفرادی و علاقه مندان به پروژه های جانبی را در سراسر جهان مجذوب خود کرده است. اما یک حادثه اخیر مربوط به یک برنامه میزبانی دوست داشتنی، شور و شوق لجام گسیخته را برانگیخته است. یک برنامه «کد شده در فضای مجازی» - که تقریباً به طور کامل از طریق اعلان‌های هوش مصنوعی با حداقل نظارت انسانی ساخته شده است - حاوی آسیب‌پذیری‌های امنیتی ابتدایی است که اطلاعات شخصی تقریباً 18000 کاربر را در معرض دید هر کسی قرار می‌دهد که می‌داند کجا باید نگاه کند. هیچ هک پیچیده ای مورد نیاز نبود. بدون بهره برداری روز صفر. فقط نقص‌های اساسی که هر توسعه‌دهنده جوانی می‌توانست در بررسی کد به آن‌ها پی ببرد. این حادثه بحث‌های شدیدی را در مورد اینکه مرز بین توسعه نرم‌افزار دموکراتیک و ارسال بی‌احتیاطی محصولاتی که افراد واقعی را در معرض خطر قرار می‌دهند کجا قرار می‌گیرد، برانگیخته است.

Vibe Coding چیست و چرا محبوبیت آن افزایش یافته است؟

"کدگذاری Vibe" اصطلاحی است که برای توصیف تمرین ساختن نرم‌افزار تقریباً به طور کامل از طریق اعلان‌های زبان طبیعی برای ابزارهای هوش مصنوعی ابداع شده است - پذیرفتن هر چیزی که مدل تولید می‌کند، به ندرت کد زیربنایی را می‌خواند، و با توصیف آنچه می‌خواهید به جای درک نحوه عملکرد آن، تکرار می‌شود. پلتفرم هایی مانند Lovable، Bolt، و Replit Agent این رویکرد را برای هر کسی که ایده و کارت اعتباری دارد قابل دسترس کرده است. نتایج می‌توانند از نظر بصری چشمگیر باشند: رابط‌های کاربری صیقلی، جریان‌های احراز هویت فعال، و ویژگی‌های متصل به پایگاه داده - همه به جای هفته‌ها در چند ساعت تولید می‌شوند.

درخواست تجدیدنظر واضح است. بر اساس برآوردهای صنعت، بیش از 70 درصد از ریز برنامه های جدید SaaS که در سال 2025 راه اندازی شدند، شامل نوعی از تولید کد با کمک هوش مصنوعی بودند. برای بنیانگذاران غیر فنی، کدگذاری vibe ترسناک ترین مانع ورود را از بین می برد: در واقع نوشتن کد. اما این رویکرد دارای یک نقص اساسی است. هنگامی که سازندگان کد اجرای محصول خود را درک نمی کنند، خطرات موجود در آن را نیز درک نمی کنند. و همانطور که حادثه Lovable نشان داد، این خطرات می توانند شدید باشند.

تحرک فرهنگی در پشت کدنویسی vibe نیز روایت خطرناکی را ایجاد کرده است - اینکه درک کد اکنون اختیاری است، امنیت چیزی است که هوش مصنوعی آن را کنترل می کند، و اینکه حمل و نقل سریع مهمتر از حمل و نقل ایمن است. این فرضیات دقیقاً همان چیزی است که منجر به افشای اطلاعات 18000 نفر شد.

آناتومی نقض: چه چیزی در واقع اشتباه شد

برنامه افشا شده که بر روی پلتفرم Lovable میزبانی شده است، گزارش شده است که از مجموعه ای از نقص های امنیتی اولیه رنج می برد. اینها آسیب پذیری های عجیب و غریبی نبودند که به تکنیک های بهره برداری پیشرفته نیاز داشته باشند. آن‌ها اشتباهات کتاب درسی بودند – از نوع آن‌هایی که در فصل اول هر راهنمای امنیت وب توضیح داده شد. در میان نقص‌های شناسایی‌شده، نقاط پایانی API احراز هویت نشده‌اند که سوابق کامل کاربر را برمی‌گرداند، پرسش‌های پایگاه‌داده بدون اعمال امنیت در سطح ردیف، کلیدهای API که مستقیماً در جاوا اسکریپت سمت کلاینت کدگذاری شده‌اند، و فقدان کامل محدودیت نرخ در نقاط پایانی حساس.

محققان امنیتی که برنامه را بررسی کردند، خاطرنشان کردند که اطلاعات شخصی - از جمله آدرس ایمیل، نام، شماره تلفن، و در برخی موارد جزئیات پرداخت جزئی - را می‌توان به سادگی با تکرار از طریق شناسه‌های متوالی کاربر در تماس‌های API بازیابی کرد. بدون نیاز به ورود هیچ نشانه ای لازم نیست داده‌ها اساساً برای هر کسی که درخواست‌های شبکه را در ابزارهای توسعه‌دهنده مرورگر خود بازرسی می‌کرد، عمومی بود.

خطرناک‌ترین آسیب‌پذیری‌های امنیتی آن‌هایی نیستند که برای بهره‌برداری از آن‌ها به نبوغ نیاز دارند - آن‌هایی هستند که به قدری اساسی هستند که هرکسی با مرورگر می‌تواند به آن‌ها برخورد کند. وقتی کدی را که هوش مصنوعی تولید می‌کند نمی‌خوانید، فقط گوشه‌ها را کوتاه نمی‌کنید. شما در حال ساختن خانه ای بدون قفل هستید و امیدوارید که هیچ کس در را امتحان نکند.

علت اصلی: اعتماد بدون تأیید

در قلب این حادثه، الگویی نهفته است که متخصصان امنیتی از زمانی که ابزارهای تولید کد هوش مصنوعی برای اولین بار مورد توجه قرار گرفتند، درباره آن هشدار داده اند. توسعه‌دهنده - یا دقیق‌تر، مهندس سریع‌السلام - به طور ضمنی به خروجی هوش مصنوعی اعتماد کرد. وقتی برنامه به نظر کار می‌آید، فرض بر این بود که آماده تولید است. اما «کارها» و «ایمن» استانداردهای کاملاً متفاوتی هستند. یک نقطه پایانی API می‌تواند داده‌های صحیح را برای کاربر درست برگرداند و به طور همزمان همان داده‌ها را به هر بازدیدکننده غیرمجاز در اینترنت برگرداند.

مولد کدهای هوش مصنوعی برای صحت عملکردی بهینه شده اند، نه انعطاف پذیری خصمانه. آنها کدی را تولید می کنند که درخواست را برآورده می کند، نه کدی که پیش بینی می کند چگونه یک عامل مخرب ممکن است از آن سوء استفاده کند. خط‌مشی‌های امنیتی سطح ردیف، پاک‌سازی ورودی، میان‌افزار احراز هویت، پیکربندی CORS و محدود کردن نرخ همگی نگرانی‌هایی هستند که نیاز به اجرای عمدی و آگاهانه از امنیت دارند. آنها به ندرت به طور طبیعی از پیام هایی مانند "برای من داشبورد کاربر بساز."

ظاهر می شوند

خود پلتفرم Lovable Supabase را به عنوان باطن خود ارائه می‌کند، که ویژگی‌های امنیتی قوی را ارائه می‌کند - از جمله خط‌مشی‌های امنیت در سطح ردیف (RLS). اما این ویژگی ها باید به طور صریح فعال و به درستی پیکربندی شوند. کد تولید شده توسط هوش مصنوعی در این مورد یا نتوانست RLS را فعال کند یا آن را به اشتباه پیکربندی کرده است و یک لایه داده گسترده در پشت یک جلوی جلا ایجاد می کند. درس واضح است: اگر کد تولید شده از آنها استفاده نکند، قابلیت‌های امنیتی پلتفرم بی‌اهمیت هستند.

چرا این یک مشکل سیستمی است نه یک اتفاق مجزا

نپذیرفتن این امر به عنوان یک شکست یکباره توسط یک فرد بی دقت، آرامش بخش خواهد بود. اما شواهد نشان می دهد که مشکل ساختاری است. مطالعه‌ای در سال 2025 در استنفورد نشان داد که توسعه‌دهندگانی که از دستیارهای هوش مصنوعی استفاده می‌کنند، کدهایی با 40 درصد آسیب‌پذیری‌های امنیتی بیشتری نسبت به کسانی که به صورت دستی کدنویسی می‌کنند، تولید می‌کنند - و به طور بحرانی، نسبت به امنیت کد خود اطمینان بیشتری داشتند. این شکاف اعتماد، خطر واقعی است. کدگذارهای Vibe فقط کد ناامن ارسال نمی کنند. آنها واقعاً معتقدند که چیزی محکم ساخته اند.

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

💡 DID YOU KNOW?

Mewayz replaces 8+ business tools in one platform

CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.

Start Free →

جریان کاری معمولی کدگذاری vibe و جایی که امنیت از بین می رود را در نظر بگیرید:

  1. توسعه مبتنی بر فوریت: سازنده ویژگی‌ها را به زبان طبیعی، بدون اشاره به الزامات امنیتی، الگوهای احراز هویت، یا خط‌مشی‌های حفاظت از داده، توصیف می‌کند.
  2. پذیرش بدون بازبینی: کد تولید شده از نظر عملکرد آزمایش می‌شود ("آیا دکمه کار می‌کند؟") اما هرگز از نظر امنیت بررسی نمی‌شود ("چه کسی می‌تواند به این داده‌ها دسترسی داشته باشد؟").
  3. استقرار سریع: برنامه در عرض چند ساعت یا چند روز، بدون محیط مرحله‌بندی، بدون آزمایش امنیتی، و بدون نظارت برای دسترسی غیرمجاز، فعال می‌شود.
  4. مقیاس‌سازی با قرار گرفتن در معرض: همانطور که کاربران ثبت‌نام می‌کنند و داده‌های شخصی را ارائه می‌کنند، شعاع انفجار هر آسیب‌پذیری افزایش می‌یابد — اما سازنده هیچ دیدی نسبت به تهدیدات بالقوه ندارد.
  5. کشف توسط افراد خارجی: نقایص امنیتی در نهایت یافت می‌شوند — نه توسط سازنده، بلکه توسط محققان، رقبا، یا عوامل مخرب.

ساختمان برنامه مسئول واقعاً چه شکلی است

هیچ یک از اینها به این معنی نیست که توسعه با کمک هوش مصنوعی ذاتاً خطرناک است، یا اینکه بنیانگذاران غیر فنی نمی توانند محصولات قانونی بسازند. این بدان معناست که این رویکرد به نرده‌های محافظ، آگاهی و - در بسیاری موارد - تمایل به استفاده از پلتفرم‌های مستقر به جای ساختن از ابتدا نیاز دارد. اصول اولیه امنیتی که برنامه افشا شده نتوانست آنها را اجرا کند، ویژگی های اختیاری نیستند. آنها برای هر برنامه‌ای که داده‌های کاربر را مدیریت می‌کند، جدول هستند.

برای بنیان‌گذاران و اپراتورهای کسب‌وکار کوچک که برای اجرای عملیات خود به نرم‌افزار نیاز دارند - CRM، صورت‌حساب، رزرو، مدیریت تیم - ایمن‌ترین راه اغلب این است که اصلاً یک برنامه سفارشی بسازید. پلتفرم هایی مانند Mewayz دقیقاً برای از بین بردن این خطر وجود دارند. Mewayz با 207 ماژول از پیش ساخته شده که همه چیز از حقوق و دستمزد و منابع انسانی گرفته تا مدیریت ناوگان، تجزیه و تحلیل و پورتال های مشتری را پوشش می دهد، عملکردی را ارائه می دهد که کدگذاران vibe هفته ها در تلاش برای تکرار آن هستند - به جز امنیت در سطح سازمانی، احراز هویت مناسب، پردازش داده های رمزگذاری شده و یک تیم مهندسی اختصاصی که زیرساخت را حفظ می کند. 138000 کاربر در حال حاضر در این پلتفرم از شیوه‌های امنیتی بهره می‌برند که هیچ بنیان‌گذار انفرادی که در نیمه‌شب از هوش مصنوعی درخواست کند، نمی‌تواند به‌طور واقع بینانه با آن‌ها مطابقت داشته باشد.

محاسبه ساده است: اگر کسب‌وکار اصلی شما توسعه نرم‌افزار نیست، ساعت‌های صرف شده برای کدنویسی یک برنامه سفارشی بهتر است برای اجرای واقعی کسب‌وکارتان سرمایه‌گذاری شود — با استفاده از ابزارهایی که توسط متخصصان ساخته، آزمایش، ممیزی و نگهداری می‌شوند.

درس هایی برای عصر توسعه با کمک هوش مصنوعی

حادثه Lovable دلیلی برای کنار گذاشتن کامل توسعه با کمک هوش مصنوعی نیست. تولید کد هوش مصنوعی ابزار قدرتمندی است که واقعاً ایجاد نرم افزار را تسریع می کند. اما یک ابزار فقط به اندازه دست هایی که از آن استفاده می کنند ایمن است. یک اره برقی برای یک درخت‌کار آموزش دیده بسیار با ارزش و برای کسی که هرگز آن را ندیده است فاجعه‌بار است. همین اصل در مورد کد حمل و نقل که هرگز در سرورهای تولیدی که داده‌های کاربر واقعی را مدیریت می‌کنند نخوانده‌اید، صدق می‌کند.

برای کسانی که تصمیم می‌گیرند برنامه‌های کاربردی سفارشی با کمک هوش مصنوعی بسازند، حداقل چک لیست امنیتی قابل مذاکره غیرقابل مذاکره است:

  • امنیت سطح ردیف را فعال و تأیید کنید در هر جدول پایگاه داده ای که حاوی داده های کاربر است — سپس آن را با تلاش برای دسترسی به سوابق کاربران دیگر آزمایش کنید.
  • هرگز کلیدهای API را در کد سمت سرویس گیرنده افشا نکنید. از متغیرهای محیط سمت سرور و مسیرهای API برای حفظ اسرار مرورگر استفاده کنید.
  • میان افزار احراز هویت را در هر نقطه پایانی که داده های کاربر را برمی گرداند یا تغییر می دهد، پیاده سازی کنید. با درخواست های احراز هویت نشده تست کنید.
  • محدود کننده نرخ را اضافه کنید برای جلوگیری از حملات شمارش و تلاش های بی رحمانه برای ورود به سیستم و نقاط پایانی داده.
  • قبل از راه‌اندازی
  • یک ممیزی امنیتی اولیه را اجرا کنید — حتی ابزارهای رایگانی مانند OWASP ZAP می‌توانند شدیدترین آسیب‌پذیری‌ها را شناسایی کنند.
  • کد ایجاد شده را بخوانید. اگر نمی‌توانید آن را درک کنید، شخصی را استخدام کنید که بتواند قبل از اینکه داده‌های کاربران واقعی را پشت سر بگذارید، آن را بررسی کند.

18000 کاربر که داده‌هایشان در معرض دید قرار گرفت، ثبت‌نام نکردند زیرا می‌دانستند آزمایش هوش مصنوعی شخصی را آزمایش بتا می‌کنند. آنها به این برنامه به اطلاعات خود اعتماد کردند زیرا به نظر حرفه ای می رسید و به درستی کار می کرد. این اعتماد نه با یک حمله سایبری پیچیده، بلکه با سهل انگاری که به عنوان نوآوری پوشانده شده بود، نقض شد. از آنجایی که ابزارهای توسعه مبتنی بر هوش مصنوعی همچنان مانع ایجاد نرم‌افزار را کاهش می‌دهند، صنعت - و سازندگان منفرد - باید اطمینان حاصل کنند که مانع ارسال نرم‌افزار ایمن همراه با آن از بین نمی‌رود.

خط آخر: سرعت بدون امنیت فقط بی پروایی است

جذاب ساختن یک محصول کامل SaaS در یک آخر هفته با استفاده از هیچ چیز جز اعلان‌های هوش مصنوعی غیرقابل انکار است. اما حادثه دوست داشتنی یک چیز را به طرز دردناکی روشن کرده است: سرعتی که می توانید با آن می توانید یک برنامه بسازید بی معنی است اگر نتوانید ایمنی افرادی را که از آن استفاده می کنند تضمین کنید. به ازای هر داستان موفقیت آمیزی که در رسانه‌های اجتماعی به اشتراک گذاشته می‌شود، تعداد نامحدودی از برنامه‌های کاربردی در حال حاضر با همان آسیب‌پذیری‌ها در حال تولید هستند - فقط منتظر کشف شدن هستند.

چه بخواهید با کمک هوش مصنوعی بسازید و روی بررسی‌های امنیتی مناسب سرمایه‌گذاری کنید، یا یک پلتفرم آزمایش‌شده مانند Mewayz را انتخاب کنید که زیرساخت‌های امنیتی را مدیریت می‌کند تا بتوانید روی رشد کسب‌وکار خود تمرکز کنید، ضروری است: با داده‌های کاربران خود با احترامی که شایسته آن است رفتار کنید. در سال 2026، "من نمی دانستم کد ناامن است" دیگر بهانه ای نیست. این یک مسئولیت است.

سوالات متداول

"کدگذاری vibe" چیست و چرا خطرناک است؟

کدنویسی Vibe به ساختن نرم‌افزار با استفاده از ابزارهای هوش مصنوعی با توصیف آنچه می‌خواهید به زبان طبیعی، با حداقل بازبینی کد دستی اشاره دارد. خطر این است که کد تولید شده توسط هوش مصنوعی اغلب فاقد اصول امنیتی مناسب مانند احراز هویت، اعتبارسنجی ورودی و رمزگذاری داده ها است. بدون بررسی خروجی توسط توسعه‌دهندگان با تجربه، آسیب‌پذیری‌های حیاتی می‌توانند شناسایی نشده از بین بروند و به طور بالقوه هزاران کاربر را در معرض نقض داده‌ها و نقض حریم خصوصی قرار دهند.

برنامه میزبانی دوست داشتنی چگونه 18000 کاربر را در معرض دید قرار داد؟

این برنامه حاوی نقص‌های امنیتی اساسی از جمله کلیدهای API آشکار، عدم احراز هویت در نقاط پایانی پایگاه داده، و کنترل‌های دسترسی ناکافی بود. اینها آسیب‌پذیری‌های اساسی هستند که هر توسعه‌دهنده باتجربه‌ای در حین بررسی کد متوجه آن‌ها می‌شود. از آنجایی که این برنامه اساساً از طریق اعلان‌های هوش مصنوعی و بدون ممیزی امنیتی کامل ساخته شده است، مهاجمان می‌توانند مستقیماً به داده‌های کاربر دسترسی داشته باشند - نشان می‌دهد که چرا تولید کد خودکار همچنان به نظارت انسانی و آزمایش امنیتی نیاز دارد.

آیا برنامه های ساخته شده با هوش مصنوعی می توانند برای استفاده در تولید به اندازه کافی ایمن باشند؟

بله، اما فقط با روش‌های امنیتی مناسب که در بالا قرار گرفته‌اند. تولید کد هوش مصنوعی یک نقطه شروع است، نه یک محصول نهایی. کسب و کارها به بررسی کد، تست نفوذ و زیرساخت ایمن نیاز دارند. پلتفرم‌هایی مانند Mewayz این مشکل را با ارائه یک سیستم‌عامل تجاری از پیش ساخته و ممیزی شده با 207 ماژول با شروع قیمت 19 دلار در ماه کاهش می‌دهند - بنابراین بدون نوشتن کد آسیب‌پذیر از ابتدا ابزارهای آماده تولید را دریافت می‌کنید.

کسب و کارها چه چیزی باید از این حادثه یاد بگیرند؟

نکته مهم این است که سرعت هرگز نباید به قیمت امنیت تمام شود. قبل از راه‌اندازی هر برنامه‌ای که داده‌های کاربر را مدیریت می‌کند، بدون توجه به نحوه ساخت آن، بازرسی‌های امنیتی کاملی را انجام دهید. به جای استقرار کدهای آزمایش نشده تولید شده توسط هوش مصنوعی، از پلتفرم های تاسیس شده با سوابق امنیتی اثبات شده استفاده کنید. حفاظت از اعتماد کاربر بسیار ارزشمندتر از صرفه جویی در چند ساعت زمان توسعه است.