Google Cloud מספקת קבוצה מקיפה ומודולרית של יכולות וכלים במוצרי Google Cloud Google, שצוותי הפיתוח, ה-DevOps והאבטחה יכולים להשתמש בהם כדי לשפר את מצב האבטחה של שרשרת אספקת התוכנה.
שרשרת אספקת תוכנה
שרשרת אספקת תוכנה כוללת את כל הקוד, האנשים, המערכות והתהליכים שתורמים לפיתוח ולמסירה של התוכנה שלכם, גם בתוך הארגון וגם מחוצה לו. היא כוללת:
- קוד שאתם יוצרים, התלויות שלו והתוכנה הפנימית והחיצונית שבה אתם משתמשים כדי לפתח, לבנות, לארוז, להתקין ולהפעיל את התוכנה.
- תהליכים ומדיניות לגישה למערכת, לבדיקה, לבדיקה, למעקב ולמשוב, לתקשורת ולאישור.
- מערכות שאתם סומכים עליהן בפיתוח, בבנייה, באחסון ובהרצה של התוכנה והתלויות שלה.
בגלל ההיקף הרחב והמורכבות של שרשרות אספקת תוכנה, יש הרבה דרכים להכניס שינויים לא מורשים לתוכנה שאתם מספקים למשתמשים. וקטורי התקיפה האלה משפיעים על מחזור החיים של התוכנה. חלק מההתקפות הן ממוקדות, כמו ההתקפה על מערכת build של SolarWinds, אבל איומים אחרים הם עקיפים או חודרים לשרשרת האספקה דרך חולשות בתהליך או עקב הזנחה.
לדוגמה, בדצמבר 2021, צוות Google Open Source Insights ערך הערכה של נקודת החולשה ב-Apache Log4j ומצא שיש יותר מ-17,000 חבילות מושפעות ב-Maven Central. רוב החבילות האלה לא היו תלויות ישירות בחבילה הפגיעה log4j-core, אבל היו להן תלויות שדרשו את החבילה.
שיטות ותהליכים לפיתוח משפיעים גם על שרשרות אספקת תוכנה. פערים בתהליך, כמו היעדר סקר קוד או קריטריוני אבטחה לפריסה בסביבת ייצור, עלולים לאפשר לקוד בעייתי להיכנס לשרשרת האספקה שלא במכוון. באופן דומה, היעדר ניהול תלות מגביר את הסיכון לנקודות חולשה ממקורות חיצוניים או מחבילות תוכנה שבהן אתם משתמשים לפיתוח, לבנייה או לפריסה.
הגנה על שרשראות אספקת תוכנה ב- Google Cloud
Google Cloud מספקת:
- מוצרים ותכונות שמשלבים שיטות מומלצות לאבטחה בפיתוח, בבנייה, בבדיקה, בפריסה ובאכיפת מדיניות.
- לוחות בקרה במסוף Google Cloud שמספקים מידע על אבטחה לגבי מקורות, גרסאות build, ארטיפקטים, פריסות וזמני ריצה. המידע הזה כולל פגיעויות בארטיפקטים של בנייה, במוצא של בנייה וברשימות תלות (Software Bill of Materials, SBOM).
- מידע שמזהה את רמת הבשלות של אבטחת שרשרת אספקת התוכנה שלכם באמצעות מסגרת Supply-chain Levels for Software Artifacts (SLSA).
בתרשים הבא מוצגים Google Cloud שירותים שפועלים יחד כדי להגן על שרשרת האספקה של התוכנה. אתם יכולים לשלב חלק מהרכיבים האלה או את כולם בשרשרת האספקה של התוכנה כדי לשפר את רמת האבטחה.

הגנה על סביבת הפיתוח
Cloud Workstations מספקת סביבות פיתוח בניהול מלא ב- Google Cloud. אדמינים בתחומי ה-IT והאבטחה יכולים להקצות, להרחיב, לנהל ולאבטח את סביבות הפיתוח שלהם. מפתחים יכולים לגשת לסביבות פיתוח עם הגדרות עקביות וכלים שניתנים להתאמה אישית.
Cloud Workstations משפר את מצב האבטחה של סביבות פיתוח האפליקציות שלכם, וכך מאפשר לכם להקדים את האבטחה. תכונות האבטחה כוללות VPC Service Controls, תעבורת נתונים נכנסת או יוצאת פרטית, עדכון תמונות מאולץ ומדיניות גישה של ניהול הזהויות והרשאות הגישה. Cloud Workstations מספקת יכולות נוספות למניעת אובדן נתונים בשילוב עם Chrome Enterprise Premium.
הגנה על אספקת התוכנה
אבטחת אספקת התוכנה – פריטי בנייה ותלות באפליקציות – היא שלב קריטי בשיפור האבטחה של שרשרת אספקת התוכנה. השימוש הנרחב בתוכנות קוד פתוח הופך את הבעיה הזו למאתגרת במיוחד.
תוכנת Assured בקוד פתוח מספקת חבילות קוד פתוח ש-Google אימתה ובדקה. החבילות האלה נוצרות באמצעות צינורות מאובטחים של Google, והן נסרקות, מנותחות ונבדקות באופן קבוע כדי לאתר נקודות חולשה.
Artifact Registry הוא מנהל חבילות אוניברסלי לכל פריטי המידע שנוצרו בתהליך פיתוח (artifacts) בגרסת build ויחסי התלות. ריכוז כל הארטיפקטים והתלותיות במקום אחד מאפשר לכם לקבל תמונה ברורה יותר של הקוד בשרשרת אספקת התוכנה ולשלוט בו.
- מאגרים מרוחקים מאחסנים ארטיפקטים ממקורות חיצוניים מוגדרים מראש, כמו Docker Hub, Maven Central, Python Package Index (PyPI), Debian או CentOS, וגם ממקורות שהוגדרו על ידי המשתמש בפורמטים נתמכים. שמירת ארטיפקטים במטמון במאגרים מרוחקים מקצרת את זמן ההורדה, משפרת את הזמינות של החבילה וכוללת סריקת פגיעויות אם הסריקה מופעלת.
- מאגרי מידע וירטואליים מאחדים מאגרי מידע באותו פורמט מאחורי נקודת קצה אחת, ומאפשרים לכם לשלוט בסדר החיפוש במאגרי מידע במעלה הזרם. אתם יכולים לתת עדיפות לחבילות הפרטיות שלכם, וכך להקטין את הסיכון למתקפות של בלבול תלות
- אפשר גם להגן על הארטיפקטים באמצעות הגדרת תכונות אבטחה כמו בקרת גישה, גבולות גזרה לשירות של VPC Service Controls, מדיניות ארגונית ותכונות אבטחה אחרות. פרטים נוספים מופיעים במאמר בנושא Artifact Registry.
Artifact Analysis מזהה באופן יזום נקודות חולשה בארטיפקטים ב-Artifact Registry.
- סריקה אוטומטית או סריקה לפי דרישה משולבת של קובצי אימג' של קונטיינרים בסיסיים וחבילות שפה בקונטיינרים.
- היכולת ליצור רשימת חומרים (SBOM) של תוכנה ולהעלות הצהרות VEX (Vulnerability Exploitability eXchange) עבור התמונות ב-Artifact Registry.
הגנה על צינור עיבוד הנתונים של CI/CD
גורמים זדוניים יכולים לתקוף שרשרות אספקה של תוכנות על ידי פריצה לצינורות CI/CD. המוצרים הבאים עוזרים לכם לאבטח את צינור עיבוד הנתונים של CI/CD:
Cloud Build מריץ את גרסאות ה-build בתשתית של Google Cloud. תכונות האבטחה כוללות הרשאות IAM מפורטות, VPC Service Controls וסביבות בנייה מבודדות וזמניות. תכונות שספציפיות לאבטחת שרשרת האספקה של תוכנות כוללות:
- תמיכה בגרסאות build ברמה 3 של SLSA לקובצי אימג' של קונטיינרים.
- אפשרות ליצור תיעוד של מקורות הבנייה מאומת ובלתי ניתן לזיוף עבור אפליקציות בקונטיינרים.
תובנות אבטחה לגבי אפליקציות מובנות. למשל:
- רמת ה-build של SLSA, שמזהה את רמת הבשלות של תהליך build התוכנה בהתאם למפרט של SLSA.
- נקודות חולשה בפריטי מידע שנוצרו בתהליך הפיתוח (Artifact).
- ליצור אישור המקור של Build, שהוא אוסף של מטא-נתונים שניתנים לאימות לגבי גרסת build. הוא כולל פרטים כמו תקצירי התמונות שנבנו, מיקומי מקור הקלט, שרשרת הכלים של ה-build, שלבי ה-build ומשך ה-build.
הוראות לצפייה בתובנות אבטחה לגבי אפליקציות מובנות זמינות במאמר יצירת אפליקציה וצפייה בתובנות אבטחה.
Cloud Deploy הוא שירות ששולח אפליקציות באופן אוטומטי לפי רצף מוגדר לסדרה של סביבות יעד. הוא תומך בפיתוח רציף (continuous delivery) ישירות אל Google Kubernetes Engine, GKE Enterprise ו-Cloud Run, עם אישורים והחזרות בלחיצה אחת, אבטחה וביקורת ברמת הארגון, וגם מדדי פיתוח מובנים. בנוסף, הכלי מציג תובנות בנושאי אבטחה לגבי אפליקציות שנפרסו.
הגנה על אפליקציות בסביבת הייצור
Google Kubernetes Engine (GKE) ו-Cloud Run עוזרים לשפר את מצב האבטחה של סביבות זמן הריצה. שתי האפשרויות כוללות תכונות אבטחה להגנה על האפליקציות בזמן הריצה.
GKE יכול להעריך את מצב האבטחה של הקונטיינרים ולספק הנחיות פעילות לגבי הגדרות האשכול, הגדרות עומס העבודה ונקודות החולשה. GKE כולל לוח בקרה של מצב האבטחה, שמספק המלצות מבוססות-דעות ופרקטיות לשיפור מצב האבטחה. הוראות לצפייה בתובנות אבטחה בלוח הבקרה של מצב האבטחה ב-GKE מופיעות במאמר פריסה ב-GKE וצפייה בתובנות אבטחה.
Cloud Run כולל חלונית אבטחה שבה מוצגים תובנות לגבי אבטחת שרשרת אספקת התוכנה, כמו מידע על התאימות לרמת ה-build של SLSA, אישור המקור של Build ונקודות חולשה שנמצאו בשירותים פעילים. הוראות להצגת תובנות אבטחה בחלונית 'תובנות אבטחה' ב-Cloud Run זמינות במאמר פריסה ב-Cloud Run והצגת תובנות אבטחה.
איך בונים שרשרת אמון באמצעות מדיניות
Binary Authorization עוזרת ליצור, לשמור ולאמת שרשרת אמון לאורך שרשרת האספקה של התוכנה על ידי איסוף אישורים, שהם מסמכים דיגיטליים שמאשרים תמונות.
אישור מעיד על כך שהתמונה המשויכת נוצרה על ידי ביצוע מוצלח של תהליך ספציפי שנדרש. על סמך האישורים האלה, Binary Authorization עוזר להגדיר, לאמת ולאכוף מדיניות מבוססת-אמון. כך אפשר לוודא שהתמונה תופעל רק אם האישורים עומדים במדיניות של הארגון. אתם יכולים להגדיר את Binary Authorization כך שישלח לכם התראה אם הוא יזהה הפרות מדיניות.
לדוגמה, אישורים יכולים לציין שתמונה היא:
- נוצר על ידי Cloud Build.
- לא מכיל נקודות חולשה ברמת חומרה גבוהה יותר מהרמה שצוינה. אם יש נקודות חולשה ספציפיות שלא רלוונטיות לאפליקציות שלכם, אתם יכולים להוסיף אותן לרשימת ההיתרים.
אפשר להשתמש ב-Binary Authorization עם GKE ו-Cloud Run.
תמחור
לכל Google Cloud שירות יש תמחור משלו. לפרטים נוספים, אפשר לעיין במסמכי התמחור של השירותים שמעניינים אתכם.
- Cloud Workstations
- Cloud Code: זמין לכל Google Cloud הלקוחות ללא תשלום.
- Assured OSS: כדי לקבל מידע על התמחור, אפשר לפנות לצוות המכירות.
- Artifact Registry
- Artifact Analysis
- Cloud Build
- Cloud Deploy
- Cloud Run
- GKE
- Binary Authorization
המאמרים הבאים
- מידע על איומים על שרשרות אספקה של תוכנות
- הערכה של מצב האבטחה הקיים כדי לזהות דרכים לשיפור שלו.
- מידע על שיטות להגנה על שרשרת אספקת התוכנה ועל האופן שבו מוצרי Google Cloud תומכים בשיטות האלה.