تهدید سورسکد ها در مخازن Git: روش نوین رمزنگاری سطح کاراکتر راهی تازه برای حفاظت از نرمافزارهای حساس
راهکاری جدید برای مقابله با حملات زنجیره تامین نرمافزاری
در عصری که افشای دادهها به امری هفتگی بدل شده است، یکی از بزرگترین تهدیدها نه فقط لو رفتن اطلاعات مشتریان، بلکه سرقت یا دستکاری کدهای نرمافزاری است که در سرویسهای گیت نگهداری میشوند. سرویسهای میزبانی Git میزبان عمده کد منبع نرمافزارهای جهانی هستند، اما همین نقش، آنها را در معرض تهدید جدی امنیتی قرار داده است. اخیراً هکرها موفق شدهاند حدود ۵۷۰ گیگابایت داده از یکی از سرویسهای گیت به نام GitLab سرقت کنند؛ دادههایی که متعلق به شرکتهایی چون IBM، Siemens و حتی نهادهای دولتی ایالات متحده بودهاند.
به گزارش روز صفر کد منبع، قلب حیاتی پروژههای نرمافزاری است و در حملات زنجیره تأمین نرمافزاری (software supply-chain attacks) مهاجمان میتوانند بدون آگاه کردن توسعهدهندگان، کدهای مخربی را به پروژههای معتبر تزریق کنند. با توجه به اهمیت این آسیبها، تیمی از پژوهشگران در سومین مقاله کنفرانسی خود روشی نوین رمزنگاری ارائه کردهاند که میتواند سطح حفاظت سرویسهای Git را بهبود دهد — اما به شکلی که عملکرد را تا حد ممکن حفظ کند.
در حال حاضر، سرویسهای Git از رمزنگاری نقطهبهنقطه (end-to-end encryption) پشتیبانی نمیکنند؛ زیرا حجم تغییرات مکرر در پروژههای مشترک، ارسال داده کل کد به هر تغییر کوچک را غیرعملی میکند. اگر قرار بود بهروزرسانی حتی یک حرف در کد بهصورت کامل رمزنگاری شود، پهنای باند زیادی مصرف و عملکرد سیستم تحت تأثیر جدی قرار میگرفت.
روش جدید رمزنگاری از چیزی به نام «رمزنگاری در سطح کاراکتر» (character-level encryption) بهره میبرد. در این روش، به جای رمزنگاری کامل کل کد منبع، تنها تغییراتی که در خطوط کد اعمال شدهاند بهعنوان داده جدید رمز میشوند. این رویکرد مشابه رمزنگاری “تغییرات دنبالشده” در اسناد متنی است به جای ذخیرهسازی مجدد کل سند. بدین ترتیب رمزنگاری دقیقتری انجام میشود، حجم ترافیک کاهش مییابد و ذخیرهسازی نیز بهینهتر خواهد بود.
نقطه قوت اصلی این روش آن است که سازگار با سرویسهای Git موجود است. یعنی کاربران میتوانند دقیقا همان ابزارها و محیطهای کاری سابق خود را حفظ کنند، اما با لایهای افزوده از امنیت. عملکردهایی مانند ذخیرهسازی (hosting)، فهرستگذاری (indexing) یا همکاری جمعی تحت تأثیر قرار نمیگیرند و کاربران میتوانند به همان شیوه پیشین کار کنند. همچنین این ابزار به صورت متنباز در دسترس کاربران است و به شکل یک پچ قابل نصب در پشت پرده فعالیت میکند.
اما چالشهایی نیز باقی است. مدیریت کلیدهای رمزنگاری — یعنی نحوه نگهداری و دسترسی کاربران به اطلاعات لازم برای رمزگشایی — یکی از مسائل پیچیده است. در زمینههایی مانند دانشگاهها، بیمارستانها و نهادهای دولتی، الزاماتی قانونی برای نگهداری داده وجود دارد که گاهی امکان تفکیک کامل داده رمز شده و دسترسی قانونی را دشوار میسازد. بنابراین باید راهکارهایی ارائه شود که ضمن حفظ امنیت، امکان شفافیت و دسترسی مشروع نیز فراهم باشد.
در نهایت، این پژوهش نه به دنبال پوشاندن کامل تهدیدها، بلکه به دنبال ترسیم راهکارهای عملی و قابلاعتماد است. هدف اینکه در آیندهای نزدیک بتوان تمامی ابزارهای همکاری دیجیتال — از کد مشترک تا اسناد و فایلهای طراحی — را با امنیتی همپای پیامرسانهای رمزنگاریشده به اشتراک گذاشت.



