گزارشهای جدید امنیتی حاکی از کشف بیش از ۵۴۰ هزار کلید دسترسی، توکن و اعتبارنامه فعال در مخازن عمومی گیتهاب است؛ بحرانی خاموش در حوزه امنیت سایبری و توسعه نرمافزار که نشان میدهد نادیده گرفتن پروتکلهای مدیریت اسرار (Secrets Management)، چگونه نفوذپذیری زیرساختها را برای سالها حفظ میکند.
ابعاد فاجعه: تحلیل آماری ۵۴۳ هزار کلید فعال در بستر GitHub
بر اساس جدیدترین پژوهشهای منتشرشده توسط تیمهای تحقیقاتی امنیت شبکه، بررسی بیش از ۲۲۴ میلیون مخزن عمومی (Public Repository) در پلتفرم GitHub منجر به شناسایی ۵۴۳,۶۹۹ کلید امنیتی کاملاً فعال شده است. نقطه تاملبرانگیز این پژوهش، میانه عمر (Median Age) این کلیدها است که حدود ۷۸۴ روز (بیش از دو سال) برآورد میشود. عجیبتر آنکه قدیمیترین کلید دسترسی فعالِ کشفشده، حدود ۱۷ سال پیش (در سال ۱۳۸۶ شمسی) در کدها سختکد (Hardcoded) شده و همچنان دسترسی کامل به منابع مربوطه را فراهم میسازد.
این آمار نشاندهنده یک شکاف عمیق در فرایند توسعه امن (DevSecOps) است. وجود کلیدهای API، توکنهای دسترسی به دیتابیسها و اعتبارنامههای سرویسهای ابری در گیتهاب، به مهاجمان سایبری امکان میدهد بدون نیاز به حملات پیچیده اکسپلویت، مستقیم به زیرساختهای حیاتی سازمانها نفوذ کنند.
مقایسه رویکرد پروکتیو و رپکتیو: الگوی موفق npm در برابر گوگل کلاد
یکی از مهمترین بخشهای این مطالعه، بررسی تفاوت عملکرد پلتفرمها و اکوسیستمهای مختلف در مواجهه با نشت اطلاعات است. دادههای مقایسهای نشان میدهد که مدیریت هوشمند و خودکار، تنها راهکار موثر برای مهار این بحران است:
- مدیریت خودکار در npm: مدیریت پکیج زبان جاوااسکریپت (npm) با پیادهسازی سازوکار لغو خودکار (Automatic Revocation)، توانسته است نشت کلیدها را به صفر نزدیک کند. از میان ۱۰۱,۸۸۶ کلید افشاشده متعلق به npm، تنها یک کلید همچنان فعال بوده است.
- چالش سرویسهای ابری (Google Cloud): در سمت مقابل، از بین ۱۲۶,۹۶۳ کلید دسترسی افشاشده مرتبط با حسابهای ابری گوگل (GCP)، بیش از ۵۰ درصد آنها کماکان معتبر و فعال باقی ماندهاند که این مسئله نشاندهنده عدم ابطال خودکار کلیدها توسط مشترکان یا عدم هماهنگی سختگیرانه میان پلتفرم میزبان کد و ارائهدهنده ابر است.
پیامدهای امنیتی برای زیرساختها و کسبوکارهای دیجیتال ایران
با توجه به رشد روزافزون استفاده از معماریهای ابری و سرویسهای میکروخدمات در شرکتهای دانشبنیان و استارتاپهای ایرانی، مسئله نشت اعتبارنامهها در گیتهاب یک تهدید بالقوه و بسیار جدی برای زیرساختهای کشور محسوب میشود. بسیاری از تیمهای توسعهدهنده داخلی، به دلیل سرعت بالای توسعه یا عدم آگاهی از راهکارهای امنیتی، کلیدهای دسترسی به پایگاههای داده، درگاههای پرداخت و سرویسهای پیامرسان را مستقیماً در کدهای برنامه وارد میکنند.
در صورتی که این مخازن به صورت عمومی منتشر شوند یا دسترسی به آنها لولورود پیدا کند، اسکنرهای خودکار رباتهای مهاجم (Scrapers) در کمتر از چند ثانیه کلیدها را استخراج کرده و وارد زیرساختهای داخلی میشوند. این امر میتواند منجر به نفوذهای گسترده، باجافزارها و نشت اطلاعات حساس کاربران ایرانی گردد.
راهکارهای حیاتی برای اسکن و پاکسازی مخازن کد
برای جلوگیری از بروز بحرانهای مشابه، سازمانها و مهندسان نرمافزار باید الزامات زیر را در چرخه CI/CD خود ادغام نمایند:
- استفاده از ابزارهای اسکن خودکار مانند Secret Scanning گیتهاب یا ابزارهای متنباز نظیر Gitleaks و TruffleHog قبل از نهاییسازی کمیتها (Git Commit).
- انتقال تمام کلیدها و اسرار به سامانههای مدیریت اختصاصی مانند HashiCorp Vault یا محیطهای ذخیرهسازی امن متغیرها (Environment Variables).
- تغییر و چرخش دورهای (Key Rotation) کلیدهای دسترسی حساس بهمنظور کاهش عمر مفید توکنهای افشاشده.
📊 خلاصه مشخصات پژوهش کشف کلیدهای لورفته
- تعداد کل مخازن بررسیشده: ۲۲۴ میلیون مخزن عمومی در GitHub
- تعداد کلیدهای فعال کشفشده: ۵۴۳,۶۹۹ کلید دسترسی معتبر
- میانه طول عمر کلیدهای فعال: ۷۸۴ روز
- قدمت قدیمیترین کلید فعال: ۱۷ سال (از سال ۱۳۸۶ شمسی)
- نرخ موفقیت ابطال در npm: ۹۹.۹۹٪ (۱ کلید فعال از ۱۰۱,۸۸۶ کلید)
- نرخ کلیدهای فعال در گوگل کلاد: بیش از ۵۰٪ (از بین ۱۲۶,۹۶۳ کلید)