ابزار کدنویسی OpenCode اعلام کرده کنسولش هک شده و کلیدهای API مربوط به OpenAI و Anthropic و Google برای حدود ۱٫۴٪ کاربران ممکن است لو رفته باشد. در این مقاله میخوانید چه اتفاقی افتاده، چه کسانی در خطرند و همین امروز چه کارهایی باید انجام دهید.

لیست مطالب
بخش اول: ماجرا از چه قرار است؟
OpenCode یک عامل کدنویسی ترمینالی است؛ یعنی ابزاری که با کلیدهای خود توسعهدهنده، فایلها را میخواند، به API ها وصل میشود و دستور اجرا میکند. شرکت سازندهی آن، Anomaly Innovations، با ایمیلی به کاربران اعلام کرد که کنسول این ابزار مورد نفوذ قرار گرفته و ممکن است کلیدهای ارائهدهندگان مدل ذخیرهشده در فضای کاری کاربران لو رفته باشد.
طبق گزارشهای منتشرشده، نفوذ از طریق یک سیستم قدیمی کنسول انجام شده که شرکت در حال کنار گذاشتن آن بوده است. همین نکته مهمترین درس ماجراست: سیستمی که «دیگر استفاده نمیشود» اما هنوز روشن است، میتواند ضعیفترین حلقهی امنیت باشد.
شرکت این رویداد را «حملهی تقطیر در مقیاس بزرگ» توصیف کرده و گفته با Anthropic و OpenAI و Google برای رفع آن همکاری میکند. تقطیر یعنی آموزش یک مدل با خروجیهای مدل دیگر، و در این سناریو مهاجمها گویا از کلیدهای دزدیدهشده برای ارسال درخواست به مدلها استفاده کردهاند.
بخش دوم: چه کسانی تحت تأثیرند؟
به گفتهی گزارشها حدود ۱٫۴٪ از کاربران کنسول OpenCode تحت تأثیر قرار گرفتهاند. این عدد کوچک به نظر میرسد، اما وقتی هر حساب میتواند چند کلید با اعتبار مالی واقعی داشته باشد، پیامد آن کم نیست.
نکتهی دلگرمکننده این است که طبق گزارشها فقط کاربرانی آسیب دیدهاند که حسابهای ارائهدهنده را به کنسول وصل کرده بودند. توسعهدهندههایی که فقط از رابط خط فرمان استفاده میکردند و کلید را در محیط محلی خود نگه میداشتند، از این ماجرا در امان گزارش شدهاند.
شرکت فقط برای حسابهایی که میدانست درگیرند ایمیل فرستاده است. بنابراین اگر هرگز ایمیل نگرفتهاید ولی کلیدی را به کنسول OpenCode دادهاید، منطقیترین کار این است که آن را هم تعویض کنید.

بخش سوم: هزینهی واقعی؛ از ۱۰۰ تا ۴۰۰ دلار
چند توسعهدهنده در شبکههای اجتماعی از مصرف غیرمجاز سخن گفتهاند. یک کاربر حدود ۱۰۰ دلار هزینهی تقلبی دیده و کاربر دیگری حدود ۴۰۰ دلار هزینهی غیرمجاز روی Anthropic گزارش کرده است. این ارقام را باید مثالهایی از موارد گزارششده دید، نه سقف خسارت.
تا زمان انتشار این خبر، شرکت روشن نکرده این هزینهها چگونه جبران خواهد شد. معمولاً ارائهدهندههای مدل برای کلیدهای لو رفته سیاستهای بررسی و گاهی بخشش مبلغ دارند، اما بهتر است شخصاً از پشتیبانی هر ارائهدهنده پیگیری کنید و مدارک مصرف را نگه دارید.
اگر میخواهید بدانید چرا هزینهی مدلهای هوش مصنوعی اینقدر زود بالا میرود، مقالهی OpenAI چیست؟ نگاه کلی خوبی به اکوسیستم این شرکتها میدهد.
بخش چهارم: همین امروز چه کنیم؟ راهنمای قدمبهقدم
قدم اول: کلید را باطل کنید
وارد داشبورد خود ارائهدهنده شوید، یعنی OpenAI یا Anthropic یا Google، و کلیدهای متصل به OpenCode را حذف کنید. این کار را حتماً از خود داشبورد انجام دهید و روی لینکهای داخل ایمیل کلیک نکنید، چون در چنین رویدادهایی ایمیلهای فیشینگ هم زیاد میشود.
قدم دوم: کلید تازه بسازید
کلید جدید بسازید و فقط در جایی ذخیره کنید که واقعاً لازم است. بهتر است برای هر پروژه کلید جداگانه داشته باشید تا اگر یکی لو رفت، بقیه سالم بمانند.
قدم سوم: سقف هزینه تعیین کنید
در تنظیمات صورتحساب هر ارائهدهنده سقف روزانه یا ماهانه بگذارید. این سادهترین دفاع در برابر کلید دزدیدهشده است، چون حتی اگر کلید لو برود، مهاجم نمیتواند حساب شما را بینهایت خالی کند.
قدم چهارم: سوابق مصرف را بررسی کنید
گزارش مصرف را برای چند روز اخیر ببینید. جهش ناگهانی درخواستها، مصرف در ساعتهای غیرعادی یا مدلهایی که خودتان استفاده نمیکنید، نشانهی سوءاستفاده است.
قدم پنجم: همهی نسخههای قدیمی را پیدا کنید
مخزنهای کد، تاریخچهی ترمینال، فایلهای محیطی، پایپلاینهای CI و تنظیمات همتیمیها را بگردید. هر جا کلید قدیمی هنوز هست باید با کلید جدید عوض شود، وگرنه کار شما با باطل کردن کلید بههم میریزد.
بخش پنجم: درس بزرگ؛ سیستمهای قدیمی را رها نکنید
این نفوذ دوباره نشان داد که خطرناکترین بخش یک سرویس گاهی همان بخشی است که قرار بوده بازنشسته شود. وقتی سیستمی کنار گذاشته میشود، باید همهی اعتبارنامههای ذخیرهشده در آن هم باطل یا چرخانده شوند، نه اینکه فقط از دید کاربر پنهان شود.
همچنین ذخیرهی کلید ارائهدهندهها روی یک دروازهی مرکزی، هدفی وسوسهانگیز برای مهاجم میسازد. هرچه تعداد کلیدها در یک نقطه بیشتر باشد، ارزش حمله به آن نقطه بالاتر میرود.

بخش ششم: چرا عاملهای کدنویسی ریسک بیشتری دارند؟
طبق مستندات خود OpenCode، این ابزار عامل را در جعبهی ایزوله اجرا نمیکند و پیامهای تأیید مجوز را بیشتر یک ویژگی تجربهی کاربری میداند. سازنده برای ایزولهسازی واقعی، استفاده از داکر یا ماشین مجازی را پیشنهاد میکند.
این یعنی عامل با همان دسترسیهای شما کار میکند: فایل میخواند، دستور اجرا میکند و به API وصل میشود. هرچه عامل قدرتمندتر باشد، کلیدی که در اختیارش میگذارید باید محدودتر و کمخطرتر باشد.
برای اینکه بهتر از ابزارهای هوش مصنوعی استفاده کنید و همزمان امن بمانید، آموزشهای آموزشهای چتجیپیتی و مقالهی نوشتن پرامپت برای مبتدیها نقطهی شروع خوبی هستند.
بخش هفتم: بهترین روشهای نگهداری کلید API
اول، کلید را هرگز داخل کد یا مخزن عمومی ننویسید. دوم، از متغیرهای محیطی یا مدیر رمز استفاده کنید. سوم، برای هر ابزار و هر پروژه کلیدی جداگانه با کمترین سطح دسترسی بسازید. چهارم، سقف مصرف و هشدار هزینه فعال کنید. پنجم، کلیدها را بهصورت دورهای بچرخانید تا اثر لو رفتن احتمالی کم شود.
اگر در کسبوکار خود از هوش مصنوعی استفاده میکنید، مقالهی اهمیت هوش مصنوعی در کسبوکار کمک میکند ریسکها و فرصتها را کنار هم ببینید. همچنین برای درک محدودیتهای این فناوری، پتانسیل و محدودیتهای واقعی هوش مصنوعی را بخوانید.
بخش هشتم: چه چیزهایی هنوز مشخص نیست؟
هنوز معلوم نیست مهاجمها دقیقاً از چه زمانی به سیستم دسترسی داشتند، و روایتهای مختلف جزئیات زمانبندی را متفاوت گزارش کردهاند. همچنین شرکت گفته نمیتواند تأیید کند کلیدهای لو رفته در عمل سوءاستفاده شدهاند، اما گزارشهای کاربران خلاف این را نشان میدهد.
نکتهی دیگر انتقاد از شیوهی اطلاعرسانی است: طبق گزارشها هشدار فقط با ایمیل ارسال شد و در صفحهی وضعیت یا سایت عمومی شرکت، اطلاعیهای دیده نشد. تا روشنتر شدن ماجرا، فرض را بر بدترین حالت بگذارید و کلیدها را تعویض کنید.
برای پیگیری اخبار مشابه میتوانید به بخش اخبار هوش مصنوعی سر بزنید، و اگر دوست دارید ببینید رقابت مدلها چطور پیش میرود، مقالهی مقایسهی ChatGPT و DeepSeek جالب است. نگاه کلیتر دربارهی ریسک تکیه بر ابزارها را هم در توهم توسعهدهندهی تنها در برابر مهندس واقعی میبینید.
بخش نهم: اگر مسئول یک تیم هستید، این چکلیست را اجرا کنید
در تیمها معمولاً کلید یک نفر در چند ابزار و چند سرور پخش شده است. بنابراین پیش از هر چیز فهرستی از همهی ابزارهایی بسازید که به OpenAI و Anthropic و Google وصل هستند و مشخص کنید هر کلید دست چه کسی است.
سپس از همهی اعضا بخواهید اگر حساب ارائهدهنده را به کنسول OpenCode وصل کردهاند، فوراً خبر بدهند. بعد از آن، کلیدها را بهصورت هماهنگ عوض کنید تا سرویسهای در حال اجرا یکباره از کار نیفتند و بتوانید پس از تعویض، لاگها را با هم مقایسه کنید.
در گام آخر، یک قاعدهی ثابت بگذارید: هیچ کلید بدون سقف هزینه، بدون مالک مشخص و بدون تاریخ چرخش در تیم وجود نداشته باشد. این قاعدهی ساده در رویدادهای بعدی از خسارت جلوگیری میکند.
بخش دهم: حملهی تقطیر یعنی چه و چرا کلید دزدیده میشود؟
تقطیر روشی است که در آن یک مدل کوچکتر با پرسشهای فراوان از یک مدل قدرتمند آموزش میبیند. اجرای این کار در مقیاس بزرگ هزینهی زیادی دارد، پس مهاجمها وسوسه میشوند کلیدهای دیگران را بدزدند تا هزینه را به حساب قربانی بنویسند.
به همین دلیل کلید API فقط یک رمز عبور ساده نیست؛ در عمل یک کارت اعتباری دیجیتال است که هر کس آن را داشته باشد میتواند از اعتبار شما مدل اجرا کند. هرچه این کارت محدودتر، کمدسترسیتر و قابلنظارتتر باشد، خطر آن کمتر است.
پرسشهای متداول
آیا همهی کاربران OpenCode تحت تأثیرند؟
خیر. طبق گزارشها حدود ۱٫۴٪ از کاربران کنسول تحت تأثیرند، آن هم کسانی که حساب ارائهدهنده را به کنسول وصل کرده بودند.
اگر فقط از خط فرمان استفاده میکنم و کلیدم محلی است، خطر دارم؟
طبق گزارشها کاربران محلی در امان بودهاند، اما چرخاندن کلید و تعیین سقف هزینه برای احتیاط کار بدی نیست.
اگر ایمیلی از OpenCode نگرفتهام، میتوانم خیالم راحت باشد؟
نه لزوماً. شرکت فقط به حسابهایی ایمیل زده که شناسایی کرده بود. اگر کلیدی را به کنسول وصل کردهاید، آن را تعویض کنید.
چطور بفهمم کلیدم سوءاستفاده شده است؟
گزارش مصرف داشبورد ارائهدهنده را ببینید. جهش ناگهانی درخواست یا هزینهی غیرعادی نشانهی خطر است.
آیا هزینهی غیرمجاز جبران میشود؟
هنوز اعلام رسمی روشنی نیست. با پشتیبانی ارائهدهندهی مدل تماس بگیرید و مدارک مصرف را نگه دارید.
نسخهٔ فوری این مطلب در تلگرام: اینجا بخوانید
