۹۹ درصد توکن‌های دسترسی مخازن کد هرگز منقضی نمی‌شوند

گزارش «وضعیت ریسک توسعه‌دهنده ۲۰۲۶» نشان می‌دهد اکثر توکن‌های دسترسی به مخازن کد تاریخ انقضا ندارند و هویت‌های غیرانسانی و عامل‌های هوش مصنوعی با مجوزهای گسترده و بدون نظارت، کد سازمان را در معرض خطر می‌گذارند.

تحریریه شاپ لینک ۱۵ آبان ۱۴۰۵ 6 دقیقه مطالعه 1 بازدیدهک و امنیت
امنیت سایبریمدیریت دسترسیتوکن دسترسیهویت‌های غیرانسانیعامل‌های هوش مصنوعیتوسعه نرم‌افزارنشت اعتبارنامه
۹۹ درصد توکن‌های دسترسی مخازن کد هرگز منقضی نمی‌شوند

هر ابزار خودکار، ربات ساخت و عامل هوش مصنوعی که به مخزن کد یک سازمان وصل می‌شود، کلیدی دیجیتال در دست می‌گیرد؛ کلیدی که در بسیاری از سازمان‌ها هیچ تاریخ انقضایی ندارد. گزارش تازهٔ شرکت BlueFlag Security با عنوان «وضعیت ریسک توسعه‌دهنده ۲۰۲۶» نشان می‌دهد این کلیدها می‌توانند مدت‌ها پس از پایان کاری که برایش صادر شده‌اند، همچنان معتبر بمانند. 🔑

🔑 ۹۹ درصد توکن‌ها هیچ تاریخ انقضایی ندارند

بر اساس داده‌هایی که این گزارش گردآوری کرده، از میان توکن‌های دسترسی به مخازن کد، ۹۹ درصد فاقد تاریخ انقضا بودند، ۸۴ درصد اجازهٔ تغییر کد می‌دادند و ۴۷ درصد بیش از ۹۰ روز بی‌استفاده مانده بودند، بدون آنکه باطل شوند. یعنی اعتبارنامه‌هایی که ممکن است برای یک پروژه یا یک یکپارچه‌سازی موقت ساخته شده باشند، پس از پایان آن کار هم قابل استفاده باقی می‌مانند.

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

👥 مجوزهایی که روی هم انبار می‌شوند

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

  • 📉 به‌طور میانگین، هر توسعه‌دهنده از ۶۱ درصد مجوزهایی که داشت استفاده نکرده بود.
  • 🏦 میان توسعه‌دهندگانی که بیشترین مجوز بی‌استفاده را داشتند، ۸۸ درصد می‌توانستند به مخازن حیاتی سازمان دسترسی داشته باشند.
  • 😴 چهار سازمان از هر پنج سازمان، هویت توسعه‌دهنده‌ای داشتند که بیش از ۹۰ روز غیرفعال بود اما همچنان مجوز مدیر را در دست داشت.

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

🤖 هویت‌های غیرانسانی؛ هشت برابر انسان‌ها

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

🧠 عامل‌های هوش مصنوعی؛ دسترسی بدون نظارت

یک سازمان معمولی حدود هفت ابزار کدنویسی هوش مصنوعی به کار می‌برد و برخی سازمان‌ها بیش از ۳۰ ابزار. اما در ۸۳ درصد از سازمان‌های بررسی‌شده، عامل‌هایی حضور داشتند که هرگز تأیید نشده بودند و بیشتر سازمان‌ها فهرست رسمی ابزارهای مجاز نداشتند.

دستیارهای کدنویسی زیر هویت توسعه‌دهنده کار می‌کنند و مجوزهای او را به ارث می‌برند؛ در مقابل، عامل‌های خودگردان هویت مستقل دارند و می‌توانند بدون تأیید انسانی برای هر اقدام، کد بنویسند، بازبینی کنند و ادغام کنند. ۶۸ درصد از هویت‌های توسعه‌دهنده و حساب‌های سرویسی که این عامل‌ها زیر آن‌ها فعالیت می‌کردند، مجوز مدیر داشتند و ۸۱ درصد هیچ پایش رفتاری نداشتند. در شش سازمان از هر ده سازمانی که فعالیت هوش مصنوعی داشتند، عامل‌ها از توکن‌هایی استفاده می‌کردند که توانایی کلون‌کردن تمام مخازن را داشتند.

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

یک پیامد کمتر دیده‌شدهٔ همین وضعیت، دشواری تشخیص است: اقدامی که از حساب یک توسعه‌دهنده انجام شده، به نام همان شخص ثبت می‌شود و بدون برچسب‌های کامیت یا فراداده‌های دیگر، جدا کردن کار انسان از کار ماشین تقریباً ناممکن است.

🚨 نشانه‌های فعالیت غیرعادی و بازبینی‌های دور زده‌شده

  • 🔍 نیمی از سازمان‌ها دست‌کم یک هویت داشتند که جهش ناگهانی در کلون‌کردن کد نشان می‌داد.
  • 📦 در ۲۸ درصد موارد، یک هویت دست‌کم ۱۰۰ مخزن را کلون کرده بود که پیش‌تر هرگز به آن‌ها دسترسی نداشت.
  • 🚪 در چهار مخزن از هر ده مخزن، شاخهٔ اصلی محافظت‌نشده بود.
  • ⏭️ در چهار سازمان از هر پنج سازمان، مدیران بازبینی کد را دور زده بودند.
  • ⚠️ در ۵۶ درصد سازمان‌ها کد با وجود شکست در بررسی‌های خودکار ادغام شده بود و در دو سوم موارد، دیدگاه‌های حل‌نشدهٔ بازبینان باقی مانده بود.
  • 👁️ در ۲۸ درصد سازمان‌ها مخازن خصوصی به عمومی تبدیل شده بودند؛ اتفاقی که می‌تواند کد، مستندات و اعتبارنامه‌های ذخیره‌شده را آشکار کند.

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

✅ جمع‌بندی: دسترسی‌ای که پایان ندارد

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

منبع: Help Net Security — 99% of repository access tokens never expire