۳۰ آذر ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

Sigstore: ریشه های اعتماد برای مصنوعات نرم افزاری

Sigstore به روش پیش‌فرض امضای نرم‌افزار برای همه چیز، از Kubernetes گرفته تا NPM، Maven، و PyPi تبدیل شده است و یکپارچگی بیش از یک میلیون بسته منبع باز را تأیید می‌کند.

Sigstore به روش پیش‌فرض امضای نرم‌افزار برای همه چیز، از Kubernetes گرفته تا NPM، Maven، و PyPi تبدیل شده است و یکپارچگی بیش از یک میلیون بسته منبع باز را تأیید می‌کند.

تقریباً برای پنج میلیارد نفر که از اینترنت استفاده می کنند، تنها بخش کوچکی از نحوه عملکرد امنیت لایه حمل و نقل (TLS)، گواهی های دیجیتال یا کلیدهای عمومی اطلاعات دارند. در مورد خطرات امنیتی که امروزه کاربران هنوز در اینترنت با آن مواجه هستند، چه می خواهید بگویید، اما بسیار قابل توجه است که این پروتکل های بلوک ساختمانی برای اعتماد بین وب سایت ها و بازدیدکنندگان سایت چقدر خوب در مقیاس عظیم اینترنت در ۲۰ سال گذشته مدیریت کرده اند. p>

در مقابل، مفهوم امنیت زنجیره تامین نرم افزار هنوز نسبتا جدید است. سرفصل های مربوط به SolarWinds و < a href="https://www.csoonline.com/article/3645431/the-apache-log4j-vulnerabilities-a-timeline.html">Log4j آگاهی اولیه ای از درهای پشتی ایجاد می کند که در هنگام توسعه دهندگان ایجاد می شوند. از مصنوعات نرم افزاری با منشأ ناشناخته استفاده کنید. اما چگونه می‌توانیم همین اصول اولیه را در مورد نحوه عملکرد اعتماد در اینترنت در نظر بگیریم و آنها را برای ایجاد اعتماد بین مصنوعات نرم‌افزاری و میلیون‌ها توسعه‌دهنده استفاده‌کننده از آن‌ها به کار ببریم؟ اکثر توسعه دهندگان نرم افزار هنوز در مراحل اولیه تلاش برای درک این موضوع هستند.

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

اگر می‌خواهید تأثیرات خود را در مورد تکامل این دامنه امنیتی نوظهور دریافت کنید، هیچ پروژه منبع باز با شتاب یا ادغام صنعتی بیشتر از Sigstore—پروژه امضای مصنوع متعارف زنجیره تامین نرم افزار. بیایید نگاهی به برخی از اصول و اصول اولیه Sigstore بیندازیم تا دفعه بعد که مشاهده کردید که مدیر بسته یا سیستم ساخت شما از مهر تایید مومی Sigstore استفاده می‌کند، متوجه شوید که چه چیزی در زیر سرپوش وجود دارد.

Deno در مقابل Node.js: کدام بهتر است؟

مانند شفافیت گواهی برای مصنوعات نرم افزار

زیرساخت PKI وب به گونه ای طراحی شده است که هر مرجع گواهی وب (CA) برای صدور گواهی برای هر دامنه در اینترنت قابل اعتماد باشد. نظارت بر این گواهی‌ها از سوءاستفاده – مثلاً، یک CA گواهی صادر می‌کند برای دامنه‌ای که تحت کنترلش نیست، مانند وب‌سایت بانک شما – چیزی است که شفافیت گواهی. این یک چارچوب بلاک چین باز است که یک دفتر کل عمومی «فقط ضمیمه» را ارائه می دهد.

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

Sigstore یک چارچوب متن باز است که چارچوب شفافیت گواهی (و همچنین چارچوب محبوب TLS، Let’s Encrypt را گرفته است. ) به عنوان الهام بخش برای چگونگی حل موثر چالش های بسیار مشابهی که برای یکپارچگی مصنوع نرم افزار در امنیت زنجیره تامین وجود دارد. وقتی یک مصنوع نرم افزاری را دانلود می کنیم، چگونه می دانیم که توسط چه کسی ساخته شده است، و اینکه همان مصنوع (و نه یک تقلب کننده مخرب) است که ما دانلود می کنیم؟ Sigstore این مشکل را با اجازه دادن به توسعه دهندگان برای امضای ایمن مصنوعات نرم افزاری مانند فایل های انتشار، تصاویر کانتینر، فایل های باینری، SBOM (صورتحساب های نرم افزاری مواد) و موارد دیگر حل می کند. سپس مواد امضا شده در یک گزارش شفافیت عمومی مقاوم در برابر دستکاری ذخیره می شوند.

اوبونتو 22.10 بر روی میکروکنترلرهای MicroPython می درخشد

کلیدهای ابتدایی عمومی برای منشأ OSS

سه اصل کلیدی وجود دارد که Sigstore را هدایت می کند. برای ساختن کل پازل Sigstore به هر سه آنها نیاز دارید، اما آنها اهداف متفاوت و مستقلی دارند:

  • Rekor گزارش شفافیت است. این همان ساختار داده است – شبیه به شفافیت گواهی وب – که در آن فقط می توانید چیزهایی اضافه کنید و نمی توانید چیزهایی را حذف کنید. رکوردی از هر امضای نرم‌افزاری که صادر می‌شود را حفظ می‌کند و به همه در جهان دیدگاه مشترکی درباره منشأ ایجادکننده نرم‌افزار، چه کسی نرم‌افزار را تغییر داده و چه زمانی ارائه می‌دهد.
  • Fulcio اولیه Sigstore است که به توسعه‌دهندگان اجازه می‌دهد گواهی‌هایی را برای مصنوعات نرم‌افزاری دریافت کنند – دقیقاً مانند نحوه صدور گواهی‌های مقامات گواهی برای HTTPS یا TLS برای اینترنت، اما ویژه برای امضای کد. این یک مرجع گواهی ریشه است که گواهینامه های موقت را برای هویت های مجاز صادر می کند و در گزارش Rekor منتشر می کند.
  • Cosign یکی از مشتریان شاخص است که تمام پیچیدگی های زیرساختی را در بر می گیرد تا توسعه دهندگان بتوانند هویت خود را با استفاده از پروتکل OpenID Connect احراز هویت کنند، دستورات را اجرا کنند، نرم افزار امضا کنند، و همه اینها را پشت سر بگذارند. صحنه. Cosign برای امضا و تأیید ظروف طراحی شده است، اما می تواند برای سایر مصنوعات نرم افزار عمومی نیز استفاده شود.

انتزاع مناسب برای امضای نرم افزار

یکی از ویژگی‌هایی که امنیت زنجیره تامین نرم‌افزار در نهایت ممکن است با TLS در وب مشترک باشد این است که اکثر افرادی که از آن استفاده می‌کنند ممکن است حتی ندانند چه چیزی در زیر قاب وجود دارد و همه آن را ممکن می‌سازد. و این اشکالی ندارد!

Sigstore یک تکامل تقریباً ۱۰ ساله از مفاهیم است که به مقاله ACM Queue در سال ۲۰۱۴ باز می گردد، شفافیت گواهی: گزارش‌های عمومی، قابل تأیید، فقط پیوست. منبع باز Google از Trillian (پایگاه داده ای که از گزارش های شفافیت به عنوان یک هسته اولیه استفاده می کند) گام بزرگ تکاملی دیگری در سال ۲۰۱۶ بود. کار موزیلا در مورد شفافیت باینری مدت کوتاهی بعد به اهمیت “دانستن آنچه در نرم افزار شما وجود دارد” عمیقاً پرداخت و الهام بخش بزرگ دیگری برای پروژه بود. و البته، معرفی Fulcio توسط براندون فیلیپس، نقطه عطف دیگری برای این پروژه بود.

از پردازنده‌های گرافیکی برای برنامه‌های یادگیری ماشین حداکثر استفاده را ببرید

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

چیزی که باید به آن اهمیت دهید این است که Sigstore به روش پیش‌فرض امضای نرم‌افزار برای همه چیز از Kubernetes گرفته تا ثبت زبان‌هایی مانند NPM (جاوا اسکریپت)، Maven (جاوا) و PyPi (Python) تبدیل شده است. بیش از یک میلیون مصنوع نرم افزاری در گزارش شفافیت Sigstore (Rekor) زندگی می کنند.

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

دان لورنک مدیرعامل و یکی از بنیانگذاران Chainguard است. او قبلا مهندس نرم افزار کارکنان و سرپرست تیم امنیتی منبع باز گوگل (GOSST) بود. او پروژه هایی مانند Minikube، Skaffold، TektonCD و Sigstore را پایه گذاری کرده است.

New Tech Forum مکانی برای کاوش و بحث در مورد فناوری سازمانی نوظهور در عمق و وسعت بی سابقه ای فراهم می کند. انتخاب ذهنی است، بر اساس انتخاب ما از فناوری هایی که معتقدیم مهم هستند و برای خوانندگان InfoWorld بیشترین علاقه را دارند. InfoWorld وثیقه بازاریابی را برای انتشار نمی پذیرد و حق ویرایش تمام محتوای ارائه شده را برای خود محفوظ می دارد. همه سوالات را به newtechforum@infoworld.com ارسال کنید.