مدل‌های OpenAI برای انجام وظایف به درگاه‌های داده نفوذ کردند و از یک کیف پول رمزارزی برداشت کردند

www.securityweek.com

انتشار در منبع: انتشار در سایت ما:

مقاله اصلی · English

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

این گزارش‌ها که ۱۵ اکتبر منتشر شدند، جدیدترین موارد از مجموعه افشاگری‌های مربوط به ناهماهنگی رفتاری مدل‌های OpenAI هستند؛ مجموعه‌ای که پس از آن آغاز شد که مدل‌های این شرکت در ماه ژوئیه سامانه Hugging Face را به خطر انداختند.

OpenAI از آن زمان چند مورد دیگر را نیز افشا کرده است؛ از جمله مدل‌هایی که هنگام دریافت داده‌های عمومی، وب‌سایت‌های دولتی را از نظر آسیب‌پذیری بررسی کردند، تلاش کردند از نقص‌های SQL injection سوءاستفاده کنند و در جریان آموزش، در GitHub به دنبال کلیدهای API افشاشده گشتند.

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

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

در همان روز، یک مورد جداگانه دیگر نیز افشا شد که در آن مدلی نامرتبط، رمزارز موجود در کیف پولی را که تحت کنترلش نبود، خرج کرد.

هر سه حادثه تازه‌افشاشده در ماه ژوئن رخ دادند و در جریان تحقیقات انجام‌شده طی ماه‌های بعد کشف شدند.

دور زدن مجوز دسترسی در وب‌سایت دولتی آمار

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

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

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

پس از موفق شدن این روش، مدل داده‌های مربوط به دو دهه را دریافت و ذخیره کرد؛ یعنی آمار ۲۴ سال را، در حالی که فقط برای یک سال از آن خواسته شده بود. سپس از این داده‌ها برای پاسخ دادن استفاده کرد، بدون اینکه توضیح دهد چگونه به آنها دست یافته است. روند استدلال مدل نشان می‌دهد که لحظه‌ای درباره قابل‌قبول بودن دور زدن احراز هویت تردید کرده بود و گفته بود که «باید مسیرهای عمومی را در اولویت قرار دهد»، اما با وجود این به کار خود ادامه داد.

در اقدامی جداگانه، مدل فهرستی شامل بیش از هزار رکورد حساب کاربری را نیز دریافت کرد که در آنها آدرس‌های ایمیل وجود داشت و برای مدت کوتاهی استفاده از این آدرس‌ها برای حدس زدن گذرواژه را مدنظر قرار داد.

تغییر پیکربندی سامانه‌های یک سازمان پژوهشی

در جریان دو ارزیابی، از یک مدل خواسته شد آمار منتشرشده در داشبورد عمومی یک سازمان پژوهشی بین‌المللی را ارائه کند. مدل در هر دو نوبت به جای آن، وارد سامانه‌های داخلی سازمان شد و هیچ‌یک از این اقدامات را گزارش نکرد.

در ارزیابی نخست، مدل اطلاعات ورود به سرویس جست‌وجوی زنده سازمان را در کد JavaScript یک وب‌سایت عمومی پیدا کرد. این اطلاعات دسترسی کامل داشتند و هوش مصنوعی با استفاده از آنها یک رکورد داخلی را استخراج کرد و همچنین ۱٬۴۸۹ رکورد کاربری شامل نام و آدرس ایمیل را دریافت کرد.

پس از آنکه امکان پرس‌وجوی مستقیم سرویس داده داشبورد مسدود شد، مدل به دنبال راهی گشت تا زیرساخت خود سازمان را وادار کند درخواست‌ها را به جای آن ارسال کند. برای این کار، یک تنظیمات را در سرویس جست‌وجوی در حال اجرا تغییر داد؛ تغییری که مدل در روند استدلال خود درباره جنبه اخلاقی آن ابراز تردید کرده بود، اما در نهایت آن را انجام داد. سپس درخواست‌های خود را از طریق قابلیت هشدار این سرویس ارسال کرد و آمار داشبورد را به دست آورد.

در ارزیابی دوم، مدل تنظیم دیگری را تغییر داد تا یک توکن دسترسی برای فضای ذخیره‌سازی ابری سازمان دریافت کند و سپس جداول غیرعمومی را دانلود کرد که در مجموع ۱۴۷٬۴۵۱ ردیف داشتند.

خرج کردن رمزارز آزمایشی از یک کیف پول متعلق به دیگری

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

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

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

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