محققان نشان داده‌اند که ردپاهای استدلالی رمزگذاری‌شده (encrypted reasoning traces) — بسته‌های کوچکی که یک ارائه‌دهنده به دستگاه کاربر می‌فرستد تا گفتگو بتواند بین مدل‌های مختلف جابه‌جا شود — می‌توانند توسط یک مدل ضعیف‌تر از همان سرویس رمزگشایی شوند و منجر به افشای صدها اعتبارنامه و جزئیات خصوصی شوند. این یافته که در مقاله Stealing Reasoning Traces from Proprietary LLM APIs به تفصیل آمده است، قابلیت راحتی‌ای را که Anthropic، OpenAI و Google برای روان نگه داشتن چت‌های هوش مصنوعی به آن متکی هستند، تهدید می‌کند.

چرا بلوک‌های رمزگذاری‌شده وجود دارند

وقتی با یک مدل زبانی بزرگ (LLM) صحبت می‌کنید، سرویس یک «ردپای استدلالی» (reasoning trace) می‌سازد: زنجیره‌ای از پرامپت‌های داخلی، فراخوانی ابزارها (tool calls) و مراحل زنجیره تفکر (chain-of-thought) که منجر به پاسخ شده است. برای اینکه به شما اجازه دهد بدون از دست دادن آن زنجیره، از یک مدل بزرگ‌تر به یک مدل ارزان‌تر تغییر وضعیت دهید، ارائه‌دهندگان این ردپا را رمزگذاری کرده، آن را به دستگاه شما می‌فرستند و انتظار دارند که شما آن را همراه با درخواست بعدی دوباره ارسال کنید. هدف از این رمزگذاری، خصوصی نگه داشتن ردپا و در عین حال امکان تداوم میان‌جلسه‌ای و میان-مدلی است.

حمله چگونه کار می‌کند

محققان یک اکسپلویت سه مرحله‌ای را نشان دادند که نیازی به نفوذ به خودِ مدل قدرتمند ندارد:

  1. دریافت (Capture) یک بلوک استدلالی رمزگذاری‌شده که توسط یک مدل قدرتمند در طول یک گفتگوی عادی تولید شده است.
  2. تغذیه (Feed) آن بلوک به یک مدل ضعیف‌تر از همان ارائه‌دهنده، با درخواست از آن برای «خواندن» بلوک.
  3. از آنجایی که مدل ضعیف‌تر از کلیدهای رمزگشایی یکسانی استفاده می‌کند، محتوای رمزگشایی‌شده را به صورت متن ساده خروجی (outputs) می‌دهد.

مدل ضعیف‌تر مانند یک اوراکل رمزگشایی (decryption oracle) عمل می‌کند. مهاجمان هرگز به بخش‌های داخلی مدل قدرتمند دست نزدند؛ آن‌ها صرفاً از خودِ API ارائه‌دهنده علیه خودش استفاده کردند.

آنچه محققان بازیابی کردند

  • ۱۸۲ اعتبارنامه (credentials) – کلیدهای API، توکن‌ها و سایر اسراری که در ردپا جاسازی شده بودند.
  • ۳۶۷ مورد اطلاعات خصوصی – نام‌ها، ایمیل‌ها و آدرس‌هایی که کاربران در طول چت ارائه داده بودند.
  • محموله‌های تزریق پرامپت (Prompt-injection payloads) – دستورالعمل‌های مخربی که در بلوک رمزگذاری‌شده پنهان شده بودند و می‌توانستند بعداً هنگام بازپخش (replay) ردپا اجرا شوند.
  • دور زدن فیلترهای ایمنی (Safety-filter bypasses) – ردپای رمزگشایی‌شده مراحلی را فاش کرد که اگر در حالت متن ساده بررسی می‌شدند، مسدود می‌گشتند و اجازه می‌دادند محتوای خطرناک عبور کند.

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

موازنه در قلب این مسئله

ارائه‌دهندگان این قابلیت «تعویض مدل» را در APIهای خود گنجاندند زیرا توسعه‌دهندگان و کاربران نهایی برای تداوم اهمیت قائل هستند. اگر رمزنگاری به یک نمونه مدل یا جلسه (session) خاص محدود می‌شد، انتقال روان بین مدل‌ها مختل می‌شد و توسعه‌دهندگان مجبور می‌شدند مدیریت وضعیت (state management) را خودشان بازسازی کنند. این مقاله استدلال می‌کند که امنیت به عمد فدای انعطاف‌پذیری شده است.

توسعه‌دهندگان اکنون باید چه کنند

  • با ردپاهای رمزگذاری‌شده مانند متن ساده (clear-text) برخورد کنید. فرض کنید هر لاگ، کش یا سیستم مانیتورینگ که آن‌ها را ذخیره می‌کند، می‌تواند توسط یک مهاجم خوانده شود.
  • از ثبت (commit) ردپاها در مخازن عمومی خودداری کنید. حتی یک بلوک سرگردان می‌تواند ده‌ها راز را فاش کند.
  • برای کنترل‌های سخت‌گیرانه‌تر برنامه‌ریزی کنید. ارائه‌دهندگان ممکن است امنیت را تشدید کنند، که این امر می‌تواند روش ساخت عامل‌های چند-مدلی (multi-model agents) را تغییر دهد.
  • به سمت انتقال صریح وضعیت (explicit state hand-offs) حرکت کنید. به جای تکیه بر استدلال‌های پنهان، عامل‌ها را طوری طراحی کنید که داده‌های ساختاریافته (مانند JSON، XML و غیره) را خروجی دهند که بتوان آن‌ها را بدون رمزنگاری به‌طور ایمن بین مدل‌ها منتقل کرد.
  • پرامپت‌های خود را بازرسی (Audit) کنید. به دنبال هرگونه داده حساس که در زنجیره استدلال قرار می‌گیرد بگردید و قبل از ارسال درخواست، آن را حذف کنید.

آنچه باید از ارائه‌دهندگان بزرگ انتظار داشت

انتشار این مقاله، Anthropic، OpenAI و Google را وادار می‌کند تا سیاست رمزگشایی تعبیه شده در APIهای خود را بازنگری کنند.

پیامد گسترده‌تر

این کشف بر یک معمای امنیتی کلاسیک تأکید می‌کند: راحتی اغلب یک درِ پشتی باز می‌کند. با اجازه دادن به هر مدلی برای رمزگشایی یک بلوک متعلق به کاربر، ارائه‌دهندگان مسیری کم‌هزینه را برای دسترسی مهاجمان به داده‌های حساس فراهم کرده‌اند. اصلاح این مشکل احتمالاً ادغام‌های هوش مصنوعی را کمی دشوارتر خواهد کرد، اما انتظار این را نیز بازیابی می‌کند که داده‌های رمزگذاری‌شده، رمزگذاری‌شده باقی بمانند.

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