תיקון ממצאים של Security Health Analytics

בדף הזה מופיעה רשימה של מדריכים וטכניקות לתיקון ממצאים של Security Health Analytics באמצעות Security Command Center.

כדי לצפות בממצאים או לערוך אותם, וכדי לגשת למשאבים או לשנות אותם, אתם צריכים תפקידים מתאימים בניהול זהויות והרשאות גישה (IAM). Google Cloud אם נתקלתם בשגיאות הרשאות כשניסיתם לגשת ל-Security Command Center בGoogle Cloud מסוף, בקשו עזרה מהאדמין. כדי לקבל מידע על תפקידים, אפשר לעיין במאמר בנושא בקרת גישה. כדי לפתור שגיאות שקשורות למשאבים, כדאי לקרוא את מאמרי העזרה של המוצרים המושפעים.

תיקון בעיות ב-Security Health Analytics

בקטע הזה מפורטות הוראות לתיקון כל הממצאים של Security Health Analytics.

כדי למצוא סוגים שממופים לאמות המידה של CIS, ההנחיות לתיקון מגיעות מ-Center for Internet Security ‏ (CIS), אלא אם צוין אחרת. מידע נוסף זמין במאמר גלאים ותאימות.

השבתה אוטומטית של ממצאים

אחרי שמתקנים פגיעות או הגדרה שגויה, מערכת Security Health Analytics מגדירה באופן אוטומטי את מצב הממצא לINACTIVE בפעם הבאה שהיא סורקת את הממצא. השבתה של גלאי ב-Security Health Analytics מגדירה גם את המצב של כל הממצאים שנוצרו על ידי הגלאי הזה כINACTIVE. משך הזמן שנדרש ל-Security Health Analytics כדי להגדיר ממצא שתוקן כ-INACTIVE תלוי במועד התיקון של הממצא ובמועד של הסריקה שזיהתה את הממצא.

בנוסף, כשהסריקה מזהה שהמשאב שמושפע מהממצא נמחק, הכלי Security Health Analytics מגדיר את מצב הממצא כ-INACTIVE. אם רוצים להסיר מהתצוגה ממצא שקשור למשאב שנמחק בזמן שמחכים שמערכת Security Health Analytics תזהה שהמשאב נמחק, אפשר להשתיק את הממצא. כדי להשתיק ממצא, אפשר לעיין במאמר בנושא השתקת ממצאים ב-Security Command Center.

אל תשתמשו בהשתקה כדי להסתיר ממצאים שתוקנו במשאבים קיימים. אם הבעיה חוזרת ו-Security Health Analytics משחזר את מצב הממצא, יכול להיות שלא תראו את הממצא שהופעל מחדש, כי ממצאים שהושתקו לא נכללים בשאילתות ממצאים שמציינות NOT mute="MUTED", כמו שאילתת הממצאים שמוגדרת כברירת מחדל.ACTIVE

מידע על מרווחי הסריקה זמין במאמר בנושא סוגי סריקות ב-Security Health Analytics.

Access Transparency disabled

שם הקטגוריה ב-API: ACCESS_TRANSPARENCY_DISABLED

יומני Access Transparency מתעדים מקרים שבהם Google Cloud עובדים ניגשים לפרויקטים בארגון כדי לספק תמיכה. הפעלת Access Transparency כדי לתעד מי ניגש למידע שלכם, מתי ולמה. Google Cloud מידע נוסף זמין במאמר בנושא שקיפות גישה.

כדי להפעיל את Access Transparency בפרויקט, הפרויקט צריך להיות משויך לחשבון לחיוב.

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות לביצוע המשימה הזו, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM אדמין של Access Transparency (roles/axt.admin) ברמת הארגון. מידע נוסף על הקצאת תפקידים מופיע במאמר ניהול הגישה.

התפקיד המוגדר מראש הזה כולל את ההרשאות axt.labels.get ו-axt.labels.set, שנדרשות לביצוע המשימה הזו. יכול להיות שתוכלו לקבל את ההרשאות האלה גם באמצעות תפקיד בהתאמה אישית או תפקידים מוגדרים מראש אחרים.

שלבים לפתרון

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. בדיקת ההרשאות ברמת הארגון:

    1. נכנסים לדף Identity and Access Management במסוףGoogle Cloud .

      כניסה לדף 'ניהול הזהויות והרשאות הגישה'

    2. אם מוצגת בקשה לעשות זאת, בוחרים את הארגון בתפריט הבחירה Google Cloud .

  2. בוחרים פרויקט כלשהו בארגון באמצעות התפריט. Google Cloud

    התכונה Access Transparency מוגדרת בדף Google Cloud הפרויקט, אבל היא מופעלת לכל הארגון.

  3. עוברים לדף IAM & Admin > Settings.

  4. לוחצים על הפעלת Access Transparency.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

AlloyDB auto backup disabled

שם הקטגוריה ב-API: ALLOYDB_AUTO_BACKUP_DISABLED

באשכול AlloyDB ל-PostgreSQL לא מופעלים גיבויים אוטומטיים.

כדי למנוע אובדן נתונים, מומלץ להפעיל גיבויים אוטומטיים לאשכול. מידע נוסף זמין במאמר בנושא הגדרה של גיבויים אוטומטיים נוספים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. עוברים לדף האשכולות של AlloyDB ל-PostgreSQL במסוףGoogle Cloud .

    מעבר לאשכולות של AlloyDB ל-PostgreSQL

  2. לוחצים על אשכול בעמודה שם המשאב.

  3. לוחצים על הגנה על נתונים.

  4. בקטע Automated backup policy (מדיניות גיבוי אוטומטי), לוחצים על Edit (עריכה) בשורה Automated backups (גיבויים אוטומטיים).

  5. מסמנים את התיבה גיבוי אוטומטי.

  6. לוחצים על עדכון.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

AlloyDB backups disabled

שם הקטגוריה ב-API: ALLOYDB_BACKUPS_DISABLED

באשכול AlloyDB ל-PostgreSQL לא מופעלים גיבויים אוטומטיים או רציפים.

כדי למנוע אובדן נתונים, מומלץ להפעיל גיבוי אוטומטי או גיבוי רציף של האשכול. מידע נוסף זמין במאמר הגדרת גיבויים נוספים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. עוברים לדף האשכולות של AlloyDB ל-PostgreSQL במסוףGoogle Cloud .

    מעבר לאשכולות של AlloyDB ל-PostgreSQL

  2. בעמודה Resource Name (שם המשאב), לוחצים על שם האשכול שזוהה בממצא.

  3. לוחצים על הגנה על נתונים.

  4. מגדירים מדיניות גיבוי.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

AlloyDB CMEK disabled

שם הקטגוריה ב-API: ALLOYDB_CMEK_DISABLED

ב-AlloyDB cluster לא נעשה שימוש במפתחות הצפנה בניהול הלקוח (CMEK).

בעזרת CMEK, המפתחות שאתם יוצרים ומנהלים ב-Cloud KMS עוטפים את המפתחות שבהם Google משתמשת כדי להצפין את הנתונים שלכם, וכך אתם מקבלים יותר שליטה על הגישה לנתונים. מידע נוסף זמין במאמר מידע על CMEK. השימוש ב-CMEK כרוך בעלויות נוספות שקשורות ל-Cloud KMS.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. עוברים לדף האשכולות של AlloyDB ל-PostgreSQL במסוףGoogle Cloud .

    מעבר לאשכולות של AlloyDB ל-PostgreSQL

  2. בעמודה Resource Name (שם המשאב), לוחצים על שם האשכול שזוהה בממצא.

  3. לוחצים על יצירת גיבוי. מגדירים מזהה לגיבוי.

  4. לוחצים על יצירה.

  5. בקטע גיבוי/שחזור, לוחצים על שחזור לצד הערך של מזהה הגיבוי שבחרתם.

  6. מגדירים מזהה אשכול ורשת חדשים.

  7. לוחצים על אפשרויות מתקדמות להצפנה. בוחרים את ה-CMEK שרוצים להצפין איתו את האשכול החדש.

  8. לוחצים על שחזור.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

AlloyDB log min error statement severity

שם הקטגוריה ב-API: ALLOYDB_LOG_MIN_ERROR_STATEMENT_SEVERITY

במכונת AlloyDB ל-PostgreSQL לא מוגדרת האפשרות log_min_error_statementdatabase flag עם הערך error או ערך מומלץ אחר.

הדגל log_min_error_statement קובע אם משפטי SQL שגורמים לתנאי שגיאה יתועדו ביומני השרת. הצהרות SQL ברמת חומרה שצוינה או ברמה גבוהה יותר נרשמות ביומן. ככל שרמת החומרה גבוהה יותר, כך פחות הודעות יתועדו. אם מגדירים רמת חומרה גבוהה מדי, יכול להיות שהודעות השגיאה לא יתועדו.

מידע נוסף זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. עוברים לדף האשכולות של AlloyDB ל-PostgreSQL במסוףGoogle Cloud .

    מעבר לאשכולות של AlloyDB ל-PostgreSQL

  2. לוחצים על האשכול בעמודה שם המשאב.

  3. בקטע Instances in your cluster (מופעים באשכול), לוחצים על Edit (עריכה) ליד המופע.

  4. לוחצים על אפשרויות הגדרה מתקדמות.

  5. בקטע Flags, מגדירים את דגל מסד הנתונים log_min_error_statement עם אחד מהערכים המומלצים הבאים, בהתאם למדיניות הרישום ביומן של הארגון.

    • debug5
    • debug4
    • debug3
    • debug2
    • debug1
    • info
    • notice
    • warning
    • error
  6. לוחצים על עדכון המופע.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

AlloyDB log min messages

שם הקטגוריה ב-API: ALLOYDB_LOG_MIN_MESSAGES

במכונת AlloyDB ל-PostgreSQL לא מוגדרת לפחות warning האפשרות log_min_messagesdatabase.

הדגל log_min_messages קובע אילו רמות של הודעות נרשמות ביומני השרת. ככל שרמת החומרה גבוהה יותר, כך פחות הודעות נרשמות. הגדרת סף נמוך מדי עלולה להגדיל את הגודל והאורך של יומן הרישום, ולכן יהיה קשה למצוא שגיאות אמיתיות.

מידע נוסף זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. עוברים לדף האשכולות של AlloyDB ל-PostgreSQL במסוףGoogle Cloud .

    מעבר לאשכולות של AlloyDB ל-PostgreSQL

  2. לוחצים על האשכול בעמודה שם המשאב.

  3. בקטע Instances in your cluster (מופעים באשכול), לוחצים על Edit (עריכה) ליד המופע.

  4. לוחצים על אפשרויות הגדרה מתקדמות.

  5. בקטע Flags, מגדירים את דגל מסד הנתונים log_min_messages עם אחד מהערכים המומלצים הבאים, בהתאם למדיניות הרישום ביומן של הארגון.

    • debug5
    • debug4
    • debug3
    • debug2
    • debug1
    • info
    • notice
    • warning
  6. לוחצים על עדכון המופע.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

AlloyDB log error verbosity

שם הקטגוריה ב-API: ALLOYDB_LOG_ERROR_VERBOSITY

במכונת AlloyDB ל-PostgreSQL, האפשרות log_error_verbosity database לא מוגדרת לערך default או לערך אחר פחות מגביל.

הדגל log_error_verbosity קובע את רמת הפירוט בהודעות שנרשמות ביומן. ככל שהפירוט גבוה יותר, כך יותר פרטים נרשמים בהודעות. מומלץ להגדיר את הדגל הזה לערך default או לערך אחר פחות מגביל.

מידע נוסף זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. עוברים לדף האשכולות של AlloyDB ל-PostgreSQL במסוףGoogle Cloud .

    מעבר לאשכולות של AlloyDB ל-PostgreSQL

  2. לוחצים על האשכול בעמודה שם המשאב.

  3. בקטע Instances in your cluster (מופעים באשכול), לוחצים על Edit (עריכה) ליד המופע.

  4. לוחצים על אפשרויות הגדרה מתקדמות.

  5. בקטע Flags, מגדירים את דגל מסד הנתונים log_error_verbosity עם אחד מהערכים המומלצים הבאים, בהתאם למדיניות הרישום ביומן של הארגון.

    • default
    • verbose
  6. לוחצים על עדכון המופע.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

AlloyDB Public IP

שם הקטגוריה ב-API: ALLOYDB_PUBLIC_IP

למכונת מסד נתונים של AlloyDB ל-PostgreSQL יש כתובת IP ציבורית.

כדי לצמצם את שטח הפנים של הארגון להתקפות, כדאי להשתמש בכתובות IP פרטיות במקום בכתובות IP ציבוריות. כתובות IP פרטיות מספקות אבטחת רשת משופרת וחביון נמוך יותר לאפליקציה.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. עוברים לדף האשכולות של AlloyDB ל-PostgreSQL במסוףGoogle Cloud .

    מעבר לאשכולות של AlloyDB ל-PostgreSQL

  2. בעמודה Resource Name (שם המשאב), לוחצים על שם האשכול שזוהה בממצא.

  3. בקטע Instances in your cluster (מופעים באשכול), לוחצים על Edit (עריכה) ליד המופע.

  4. בקטע קישוריות, מבטלים את הסימון בתיבה הפעלת IP ציבורי.

  5. לוחצים על עדכון המופע.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

AlloyDB SSL not enforced

שם הקטגוריה ב-API: ALLOYDB_SSL_NOT_ENFORCED

במכונת מסד נתונים של AlloyDB ל-PostgreSQL לא נדרש שכל החיבורים הנכנסים ישתמשו ב-SSL.

כדי למנוע דליפה של מידע אישי רגיש בזמן העברה דרך תקשורת לא מוצפנת, כל החיבורים הנכנסים למופע מסד הנתונים של AlloyDB צריכים להשתמש ב-SSL. מידע נוסף על הגדרת SSL/TLS

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. עוברים לדף האשכולות של AlloyDB ל-PostgreSQL במסוףGoogle Cloud .

    מעבר לאשכולות של AlloyDB ל-PostgreSQL

  2. בעמודה Resource Name (שם המשאב), לוחצים על שם האשכול שזוהה בממצא.

  3. בקטע Instances in your cluster (מופעים באשכול), לוחצים על Edit (עריכה) ליד המופע.

  4. בקטע Network Security (אבטחת רשת), לוחצים על התיבה Require SSL Encryption (דרישה להצפנת SSL).

  5. לוחצים על עדכון המופע.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Admin service account

שם הקטגוריה ב-API: ADMIN_SERVICE_ACCOUNT

לחשבון שירות בארגון או בפרויקט שלכם הוקצו הרשאות אדמין, בעלים או עריכה. לתפקידים האלה יש הרשאות רחבות, ולכן לא מומלץ להקצות אותם לחשבונות שירות. מידע על חשבונות שירות ועל התפקידים שזמינים להם מופיע במאמר חשבונות שירות.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף מדיניות IAM במסוף Google Cloud .

    כניסה למדיניות IAM

  2. לכל חשבון משתמש שזוהה בממצא:

    1. לצד חשבון המשתמש לוחצים על Edit principal.
    2. כדי להסיר הרשאות, לוחצים על מחיקת התפקיד לצד התפקיד.
    3. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Alpha cluster enabled

שם הקטגוריה ב-API: ALPHA_CLUSTER_ENABLED

תכונות של אשכול אלפא מופעלות באשכול Google Kubernetes Engine ‏ (GKE).

אשכולות אלפא מאפשרים למשתמשים מוקדמים להתנסות בעומסי עבודה שמשתמשים בתכונות חדשות לפני שהן מושקות לקהל הרחב. באשכולות אלפא כל התכונות של GKE API מופעלות, אבל הם לא מכוסים על ידי הסכם רמת השירות (SLA) של GKE, הם לא מקבלים עדכוני אבטחה, השדרוג האוטומטי של הצמתים והתיקון האוטומטי של הצמתים מושבתים בהם, ואי אפשר לשדרג אותם. בכל מקרה הם יימחקו באופן אוטומטי לאחר 30 ימים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

אי אפשר להשבית אשכולות אלפא. צריך ליצור אשכול חדש עם תכונות אלפא מושבתות.

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. לוחצים על יצירה.

  3. לצד סוג האשכול שרוצים ליצור, לוחצים על הגדרה.

  4. בכרטיסייה Features (תכונות), מוודאים שהאפשרות Enable Kubernetes alpha features in this cluster (הפעלת תכונות אלפא של Kubernetes באשכול הזה) מושבתת.

  5. לוחצים על יצירה.

  6. כדי להעביר עומסי עבודה לאשכול החדש, אפשר לעיין במאמר בנושא העברת עומסי עבודה לסוגים שונים של מכונות.

  7. כדי למחוק את האשכול המקורי, אפשר לעיין במאמר בנושא מחיקת אשכול.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

API key APIs unrestricted

שם הקטגוריה ב-API: API_KEY_APIS_UNRESTRICTED

יש מפתחות API שנעשה בהם שימוש רחב מדי.

מפתחות API לא מוגבלים הם לא מאובטחים כי אפשר לאחזר אותם ממכשירים שבהם המפתח מאוחסן או לראות אותם באופן ציבורי, למשל מתוך דפדפן. בהתאם לעקרון ההרשאות המינימליות, מגדירים את מפתחות ה-API כך שיוכלו לשלוח קריאות רק לממשקי ה-API שהאפליקציה צריכה. מידע נוסף זמין במאמר בנושא החלת הגבלות על מפתחות API.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף API keys במסוף Google Cloud .

    מעבר אל מפתחות API

  2. לכל מפתח API:

    1. בקטע API keys, בשורה של כל מפתח API שרוצים להגביל את השימוש בו, לוחצים על Actions.
    2. בתפריט פעולות, לוחצים על עריכת מפתח API. ייפתח הדף עריכת מפתח API.
    3. בקטע API restrictions, בוחרים באפשרות Restrict APIs. מופיע התפריט הנפתח בחירת ממשקי API.
    4. ברשימה הנפתחת Select APIs (בחירת ממשקי API), בוחרים את ממשקי ה-API שרוצים לאפשר.
    5. לוחצים על Save. יכול להיות שיחלפו עד 5 דקות עד שההגדרות ייכנסו לתוקף.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

API key apps unrestricted

שם הקטגוריה ב-API: API_KEY_APPS_UNRESTRICTED

יש מפתחות API שנעשה בהם שימוש ללא הגבלות, ולכן כל אפליקציה לא מהימנה יכולה להשתמש בהם.

מפתחות API לא מוגבלים הם לא מאובטחים כי אפשר לאחזר אותם במכשירים שבהם המפתח מאוחסן או לראות אותם באופן ציבורי, למשל מתוך דפדפן. בהתאם לעיקרון של הרשאות מינימליות, מגבילים את השימוש במפתח API למארחים, לגורמים מפנים מסוג HTTP ולאפליקציות אמינים. מידע נוסף זמין במאמר בנושא החלת הגבלות על מפתחות API.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף API keys במסוף Google Cloud .

    מעבר אל מפתחות API

  2. לכל מפתח API:

    1. בקטע API keys, בשורה של כל מפתח API שרוצים להגביל את האפליקציות שמשתמשות בו, לוחצים על Actions.
    2. בתפריט פעולות, לוחצים על עריכת מפתח API. ייפתח הדף עריכת מפתח API.
    3. בדף Edit API key, בקטע Application restrictions, בוחרים קטגוריית הגבלה. אפשר להגדיר הגבלה אחת על אפליקציה לכל מפתח.
    4. בשדה Add an item שמופיע כשבוחרים הגבלה, לוחצים על Add an item כדי להוסיף הגבלות בהתאם לצרכים של האפליקציה.
    5. כשמסיימים להוסיף פריטים, לוחצים על סיום.
    6. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

API key exists

שם הקטגוריה ב-API: API_KEY_EXISTS

בפרויקט נעשה שימוש במפתחות API במקום באימות רגיל.

מפתחות API פחות מאובטחים משיטות אימות אחרות כי הם מחרוזות מוצפנות פשוטות, וקל לאחרים לגלות אותם ולהשתמש בהם. אפשר לאחזר אותם במכשירים שבהם המפתח מאוחסן או לראות אותם באופן ציבורי, למשל מתוך דפדפן. בנוסף, מפתחות API לא מזהים באופן ייחודי משתמשים או אפליקציות ששולחים בקשות. לחלופין, אפשר להשתמש בתהליך אימות רגיל באמצעות חשבונות שירות או חשבונות משתמשים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. מוודאים שהאפליקציות מוגדרות עם שיטת אימות חלופית.
  2. נכנסים לדף API credentials במסוף Google Cloud .

    לדף API credentials

  3. בקטע API keys, בשורה של כל מפתח API שרוצים למחוק, לוחצים על Actions.

  4. בתפריט Actions (פעולות), לוחצים על Delete API key (מחיקת מפתח API).

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

API key not rotated

שם הקטגוריה ב-API: API_KEY_NOT_ROTATED

לא בוצע סבב מפתחות של מפתח API במשך יותר מ-90 יום.

תוקף מפתחות ה-API לא פג, ולכן אם מפתח נגנב, יכול להיות שישתמשו בו ללא הגבלה, אלא אם בעל הפרויקט יבטל או יחליף את המפתח. החלפה תכופה של מפתחות API מצמצמת את משך הזמן שבו אפשר להשתמש במפתח API גנוב כדי לגשת לנתונים בחשבון שנפרץ או נסגר. מומלץ להחליף את מפתחות ה-API לפחות כל 90 יום. מידע נוסף זמין במאמר שיטות מומלצות לניהול מפתחות API.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף API keys במסוף Google Cloud .

    מעבר אל מפתחות API

  2. לכל מפתח API:

    1. בקטע API keys, בשורה של כל מפתח API שרוצים לסובב, לוחצים על Actions.
    2. בתפריט פעולות, לוחצים על עריכת מפתח API. ייפתח הדף עריכת מפתח API.
    3. בדף Edit API key, אם התאריך בשדה Creation date הוא מלפני יותר מ-90 יום, לוחצים על Rotate key. המערכת יוצרת מפתח חדש.
    4. אפשר לשנות את השם של מפתח ה-API.
    5. לוחצים על יצירה.
    6. מעדכנים את האפליקציות כדי שישתמשו במפתח החדש.
    7. אחרי שמעדכנים את האפליקציות, חוזרים לדף עריכת מפתח API ולוחצים על מחיקת המפתח הקודם כדי למחוק את המפתח הישן. המפתח הישן לא יימחק באופן אוטומטי.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Audit config not monitored

שם הקטגוריה ב-API: AUDIT_CONFIG_NOT_MONITORED

המדדים וההתראות ביומן לא מוגדרים למעקב אחרי שינויים בהגדרות הביקורת.

‫Cloud Logging יוצר יומנים של פעילות אדמין וגישה לנתונים, שמאפשרים ניתוח אבטחה, מעקב אחר שינויים במשאבים וביקורת תאימות. מעקב אחרי שינויים בהגדרות של ביקורת מאפשר לוודא שאפשר לבצע ביקורת על כל הפעילויות בפרויקט בכל שלב. מידע נוסף מופיע במאמר סקירה כללית של מדדים שמבוססים על יומנים.

העלויות של Cloud Monitoring יכולות להיות משמעותיות, בהתאם לכמות המידע. כדי להבין את השימוש בשירות ואת העלויות שלו, אפשר לעיין במחירון של Google Cloud Observability.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לתקן שגיאות בממצא הזה, צריך ליצור מדדים, אם יש צורך, ומדיניות התראות:

יצירת מדד

  1. נכנסים לדף Logs-based Metrics במסוף Google Cloud .

    מעבר אל 'מדדים מבוססי-יומנים'

  2. לוחצים על יצירת מדד.

  3. בקטע סוג המדד, בוחרים באפשרות מונה.

  4. בקטע פרטים:

    1. מגדירים שם של מדד יומן.
    2. מוסיפים תיאור.
    3. מגדירים את Units (יחידות) לערך 1.
  5. בקטע בחירת מסנן, מעתיקים את הטקסט הבא ומדביקים אותו בתיבה יצירת מסנן, ומחליפים את הטקסט הקיים אם צריך:

      protoPayload.methodName="SetIamPolicy"
      AND protoPayload.serviceData.policyDelta.auditConfigDeltas:*

  6. לוחצים על יצירת מדד. יוצג אישור.

יצירת מדיניות התראות

  1. נכנסים לדף Log-based Metrics במסוף Google Cloud :

    כניסה אל מדדים מבוססי-יומנים

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Logging.

  2. בקטע מדדים שהוגדרו על ידי המשתמש, בוחרים את המדד שיצרתם בקטע הקודם.
  3. לוחצים על סמל האפשרויות הנוספות ואז על יצירת התראה ממדד.

    תיבת הדו-שיח תנאי חדש תיפתח עם אפשרויות המדד והמרת הנתונים שאוכלסו מראש.

  4. לוחצים על הבא.
    1. בודקים את ההגדרות שמולאו מראש. אולי תרצו לשנות את ערך הסף.
    2. לוחצים על שם התנאי ומזינים שם לתנאי.
  5. לוחצים על הבא.
  6. כדי להוסיף התראות למדיניות ההתראות, לוחצים על ערוצי התראות. בתיבת הדו-שיח, בוחרים ערוץ התראות אחד או יותר מהתפריט ולוחצים על אישור.

    כדי לקבל התראה כשאירועים נפתחים ונסגרים, מסמנים את התיבה Notify on incident closure. כברירת מחדל, ההתראות נשלחות רק כשנפתחים אירועים.

  7. אופציונלי: מעדכנים את משך הזמן עד לסגירה אוטומטית של אירוע. השדה הזה קובע מתי מערכת Monitoring סוגרת אירועים בהיעדר נתונים של מדדים.
  8. אופציונלי: לוחצים על תיעוד, ואז מוסיפים את המידע שרוצים לכלול בהודעת ההתראה.
  9. לוחצים על שם ההתראה ומזינים שם למדיניות ההתראה.
  10. לוחצים על יצירת מדיניות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Audit logging disabled

שם הקטגוריה ב-API: AUDIT_LOGGING_DISABLED

הממצא הזה לא זמין להפעלות ברמת הפרויקט.

יומן הביקורת מושבת עבור שירות אחד או יותר Google Cloud , או שחשבון משתמש אחד או יותר פטורים מרישום ביומן הביקורת של הגישה לנתונים.

כדאי להפעיל את Cloud Logging לכל השירותים כדי לעקוב אחרי כל פעילות האדמין, גישת קריאה וגישת כתיבה לנתוני המשתמשים. בהתאם לכמות המידע, העלויות של Cloud Logging יכולות להיות משמעותיות. כדי להבין את השימוש שלכם בשירות ואת העלות שלו, אפשר לעיין במחירון של Google Cloud Observability.

אם יש חשבונות משתמשים שמוחרגים מרישום ביומן הביקורת של גישה לנתונים בהגדרת ברירת המחדל של רישום ביומן הביקורת של גישה לנתונים או בהגדרות הרישום ביומן של שירותים ספציפיים, צריך להסיר את ההחרגה.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Data Access audit logs default configuration במסוףGoogle Cloud .

    מעבר להגדרת ברירת המחדל

  2. בכרטיסייה Log types (סוגי יומנים), מפעילים את רישום יומני הביקורת של גישה לנתונים בהגדרת ברירת המחדל:

    1. בוחרים באפשרויות קריאת נתוני אדמין, קריאת נתונים וכתיבת נתונים.
    2. לוחצים על Save.
  3. בכרטיסייה Exempted principals (גורמים מוחרגים), מסירים את כל המשתמשים המוחרגים מהגדרת ברירת המחדל:

    1. כדי להסיר כל אחד מהגורמים ברשימה, לוחצים על מחיקה לצד כל שם.
    2. לוחצים על Save.
  4. עוברים לדף יומני ביקורת.

    כניסה ליומני ביקורת

  5. מסירים את כל הגורמים המורשים שפטורים מביקורת מההגדרות של יומן הביקורת של גישה לנתונים בשירותים השונים.

    1. בקטע Data access audit logs configuration (הגדרת יומני ביקורת לגבי גישה לנתונים), לוחצים על כל שירות שמוצג בו חשבון משתמש שמוחרג. נפתחת חלונית הגדרות של יומן הביקורת של השירות.
    2. בכרטיסייה Exempted principals (חשבונות ראשיים שמוחרגים), מסירים את כל החשבונות הראשיים שמוחרגים על ידי לחיצה על Delete (מחיקה) לצד כל שם.
    3. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Auto backup disabled

שם הקטגוריה ב-API: AUTO_BACKUP_DISABLED

גיבויים אוטומטיים לא מופעלים במסד נתונים של Cloud SQL.

כדי למנוע אובדן נתונים, מומלץ להפעיל גיבויים אוטומטיים של מכונות SQL. מידע נוסף זמין במאמר בנושא יצירה וניהול של גיבויים לפי דרישה וגיבויים אוטומטיים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Instances של Cloud SQL במסוף Google Cloud .

    כניסה לדף Instances

  2. לוחצים על שם המכונה.

  3. לוחצים על גיבויים.

  4. לצד הגדרות, לוחצים על עריכה.

  5. מסמנים את התיבה גיבויים אוטומטיים יומיים.

  6. אופציונלי: בתיבה מספר הימים מזינים את מספר הימים שבהם רוצים לשמור את הגיבויים.

  7. אופציונלי: ברשימה חלון גיבוי, בוחרים את חלון הזמן שבו יתבצעו הגיבויים.

  8. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Auto repair disabled

שם הקטגוריה ב-API: AUTO_REPAIR_DISABLED

התכונה לתיקון אוטומטי של אשכולות Google Kubernetes Engine ‏ (GKE), ששומרת על מצב תקין של הצמתים, מושבתת.

כשההגדרה הזו מופעלת, ‏ GKE מבצע בדיקות תקופתיות של מצב התקינות של כל צומת באשכול. אם צומת נכשל בבדיקות תקינות רצופות במשך תקופה ממושכת, GKE יתחיל תהליך תיקון לצומת הזה. מידע נוסף זמין במאמר בנושא תיקון אוטומטי של צמתים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. לוחצים על הכרטיסייה Nodes.

  3. לכל מאגר צמתים:

    1. לוחצים על שם מאגר הצמתים כדי לעבור לדף הפרטים שלו.
    2. לוחצים על עריכה.
    3. בקטע ניהול, בוחרים באפשרות הפעלת תיקון אוטומטי.
    4. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Auto upgrade disabled

שם הקטגוריה ב-API: AUTO_UPGRADE_DISABLED

התכונה של שדרוג אוטומטי באשכול GKE מושבתת. התכונה הזו שומרת על כך שאשכולות ומאגרי צמתים יפעלו בגרסה היציבה האחרונה של Kubernetes.

מידע נוסף זמין במאמר בנושא שדרוג אוטומטי של צמתים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. ברשימת האשכולות, לוחצים על שם האשכול.

  3. לוחצים על הכרטיסייה Nodes.

  4. לכל מאגר צמתים:

    1. לוחצים על שם מאגר הצמתים כדי לעבור לדף הפרטים שלו.
    2. לוחצים על עריכה.
    3. בקטע ניהול, בוחרים באפשרות הפעלת שדרוג אוטומטי.
    4. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

BigQuery table CMEK disabled

שם הקטגוריה ב-API: BIGQUERY_TABLE_CMEK_DISABLED

טבלה ב-BigQuery לא מוגדרת לשימוש במפתח הצפנה בניהול הלקוח (CMEK).

ב-CMEK, המפתחות שאתם יוצרים ומנהלים ב-Cloud KMS עוטפים את המפתחות שבהם Google Cloud משתמש כדי להצפין את הנתונים שלכם, וכך אתם מקבלים יותר שליטה על הגישה לנתונים. מידע נוסף זמין במאמר הגנה על נתונים באמצעות מפתחות Cloud KMS.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. יצירת טבלה שמוגנת על ידי Cloud Key Management Service
  2. מעתיקים את הטבלה לטבלה החדשה עם ההצפנה באמצעות מפתח משל לקוח.
  3. מוחקים את הטבלה המקורית.

כדי להגדיר מפתח CMEK שמשמש כברירת מחדל להצפנה של כל הטבלאות החדשות במערך נתונים, אפשר לעיין במאמר בנושא הגדרת מפתח ברירת מחדל למערך נתונים.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Binary authorization disabled

שם הקטגוריה ב-API: BINARY_AUTHORIZATION_DISABLED

‫Binary Authorization מושבת באשכול GKE.

Binary Authorization כולל תכונה אופציונלית שמגנה על אבטחת שרשרת האספקה בכך שהיא מאפשרת פריסה באשכול רק של תמונות קונטיינר שנחתמו על ידי רשויות מהימנות במהלך תהליך הפיתוח. אכיפה של פריסה מבוססת-חתימה מאפשרת לכם לשלוט יותר בסביבת הקונטיינרים, ולוודא שרק תמונות מאומתות יכולות להיפרס.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. בקטע Security, לוחצים על Edit בשורה Binary Authorization.

    אם חלו שינויים בהגדרות של האשכול לאחרונה, יכול להיות שהלחצן 'עריכה' יהיה מושבת. אם אתם לא מצליחים לערוך את הגדרות האשכול, כדאי להמתין כמה דקות ולנסות שוב.

  3. בתיבת הדו-שיח, בוחרים באפשרות Binary Authorization.

  4. לוחצים על שמירת השינויים.

  5. עוברים לדף ההגדרה של Binary Authorization.

    מעבר אל Binary Authorization

  6. מוודאים שהוגדרה מדיניות שמחייבת שימוש בבודקים, ושהכלל שמוגדר כברירת מחדל בפרויקט לא מוגדר להתרת כל התמונות. מידע נוסף מופיע במאמר בנושא הגדרה ל-GKE.

    כדי לוודא שתמונות שמפירות את המדיניות יוכלו להיפרס וההפרות יתועדו ביומני הביקורת של Cloud, אפשר להפעיל את מצב הרצה יבשה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Bucket CMEK disabled

שם הקטגוריה ב-API: BUCKET_CMEK_DISABLED

קטגוריה לא מוצפנת באמצעות מפתחות הצפנה בניהול הלקוח (CMEK).

הגדרת CMEK שמשמש כברירת מחדל לקטגוריה מאפשרת לכם לשלוט יותר בגישה לנתונים. מידע נוסף מופיע במאמר בנושא מפתחות הצפנה בניהול הלקוח.

כדי לפתור את הבעיה הזו, צריך להשתמש ב-CMEK עם bucket. אפשר לעשות את זה לפי ההוראות במאמר שימוש במפתחות הצפנה בניהול הלקוח. שימוש ב-CMEK כרוך בעלויות נוספות שקשורות ל-Cloud KMS.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Bucket IAM not monitored

שם הקטגוריה ב-API: BUCKET_IAM_NOT_MONITORED

מדדי היומנים וההתראות לא מוגדרים למעקב אחרי שינויים בהרשאות IAM ב-Cloud Storage.

מעקב אחרי שינויים בהרשאות של קטגוריות ב-Cloud Storage עוזר לזהות משתמשים עם הרשאות מוגזמות או פעילות חשודה. מידע נוסף מופיע במאמר סקירה כללית של מדדים שמבוססים על יומנים.

העלויות של Cloud Monitoring יכולות להיות משמעותיות, בהתאם לכמות המידע. כדי להבין את השימוש בשירות ואת העלויות שלו, אפשר לעיין במחירון של Google Cloud Observability.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

יצירת מדד

  1. נכנסים לדף Logs-based Metrics במסוף Google Cloud .

    מעבר אל 'מדדים מבוססי-יומנים'

  2. לוחצים על יצירת מדד.

  3. בקטע סוג המדד, בוחרים באפשרות מונה.

  4. בקטע פרטים:

    1. מגדירים שם של מדד יומן.
    2. מוסיפים תיאור.
    3. מגדירים את Units (יחידות) לערך 1.
  5. בקטע בחירת מסנן, מעתיקים את הטקסט הבא ומדביקים אותו בתיבה יצירת מסנן, ומחליפים את הטקסט הקיים אם צריך:

      resource.type=gcs_bucket
      AND protoPayload.methodName="storage.setIamPermissions"

  6. לוחצים על יצירת מדד. יוצג אישור.

יצירת מדיניות התראות

  1. נכנסים לדף Log-based Metrics במסוף Google Cloud :

    כניסה אל מדדים מבוססי-יומנים

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Logging.

  2. בקטע מדדים שהוגדרו על ידי המשתמש, בוחרים את המדד שיצרתם בקטע הקודם.
  3. לוחצים על סמל האפשרויות הנוספות ואז על יצירת התראה ממדד.

    תיבת הדו-שיח תנאי חדש תיפתח עם אפשרויות המדד והמרת הנתונים שאוכלסו מראש.

  4. לוחצים על הבא.
    1. בודקים את ההגדרות שמולאו מראש. אולי תרצו לשנות את ערך הסף.
    2. לוחצים על שם התנאי ומזינים שם לתנאי.
  5. לוחצים על הבא.
  6. כדי להוסיף התראות למדיניות ההתראות, לוחצים על ערוצי התראות. בתיבת הדו-שיח, בוחרים ערוץ התראות אחד או יותר מהתפריט ולוחצים על אישור.

    כדי לקבל התראה כשאירועים נפתחים ונסגרים, מסמנים את התיבה Notify on incident closure. כברירת מחדל, ההתראות נשלחות רק כשנפתחים אירועים.

  7. אופציונלי: מעדכנים את משך הזמן עד לסגירה אוטומטית של אירוע. השדה הזה קובע מתי מערכת Monitoring סוגרת אירועים בהיעדר נתונים של מדדים.
  8. אופציונלי: לוחצים על תיעוד, ואז מוסיפים את המידע שרוצים לכלול בהודעת ההתראה.
  9. לוחצים על שם ההתראה ומזינים שם למדיניות ההתראה.
  10. לוחצים על יצירת מדיניות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Bucket logging disabled

שם הקטגוריה ב-API: BUCKET_LOGGING_DISABLED

יש קטגוריית אחסון ללא הפעלת רישום ביומן.

כדי לעזור בחקירת בעיות אבטחה ובמעקב אחר צריכת האחסון, מומלץ להפעיל יומני גישה ומידע על האחסון בקטגוריות של Cloud Storage. יומני גישה מספקים מידע על כל הבקשות בקטגוריה מסוימת, ויומני אחסון מספקים מידע על צריכת נפח האחסון של הקטגוריה.

כדי לטפל בבעיה הזו, צריך להגדיר רישום ביומן עבור הדלי שמצוין בתוצאת הבדיקה של Security Health Analytics. לשם כך, פועלים לפי ההוראות במדריך בנושא יומני שימוש ויומני אחסון.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Bucket policy only disabled

שם הקטגוריה ב-API: BUCKET_POLICY_ONLY_DISABLED

הגישה האחידה ברמת הקטגוריה, שנקראה בעבר 'מדיניות הקטגוריה בלבד', לא מוגדרת.

גישה אחידה ברמת הקטגוריה מפשטת את בקרת הגישה לקטגוריה על ידי השבתת הרשאות ברמת האובייקט (ACL). כשהאפשרות הזו מופעלת, רק הרשאות IAM ברמת הקטגוריה מעניקות גישה לקטגוריה ולאובייקטים שהיא מכילה. מידע נוסף זמין במאמר בנושא גישה אחידה ברמת הקטגוריה.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud Storage browser במסוףGoogle Cloud .

    כניסה אל Cloud Storage browser

  2. ברשימת הקטגוריות, לוחצים על השם של הקטגוריה הרצויה.

  3. לוחצים על הכרטיסייה Configuration.

  4. בקטע Permissions, בשורה של בקרת גישה, לוחצים על Edit access control model.

  5. בתיבת הדו-שיח, בוחרים באפשרות Uniform.

  6. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Cloud Asset API disabled

שם הקטגוריה ב-API: CLOUD_ASSET_API_DISABLED

שירות מאגר משאבי ענן לא מופעל בפרויקט.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף API Library במסוף Google Cloud .

    לדף API Library

  2. חיפוש של Cloud Asset Inventory.

  3. בוחרים את התוצאה של שירות Cloud Asset API.

  4. מוודאים שההגדרה API Enabled מוצגת.

Cluster logging disabled

שם הקטגוריה ב-API: CLUSTER_LOGGING_DISABLED

הרישום ביומן לא מופעל באשכול GKE.

כדי לחקור בעיות אבטחה ולעקוב אחרי השימוש, צריך להפעיל את Cloud Logging באשכולות.

בהתאם לכמות המידע, העלויות של Cloud Logging יכולות להיות משמעותיות. כדי להבין את השימוש שלכם בשירות ואת העלות שלו, אפשר לעיין במחירון של Google Cloud Observability.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. בוחרים את האשכול שמופיע בתוצאת החיפוש של Security Health Analytics.

  3. לוחצים על עריכה.

    אם חלו שינויים בהגדרת האשכול לאחרונה, יכול להיות שהלחצן 'עריכה' יהיה מושבת. אם אתם לא מצליחים לערוך את הגדרות האשכול, כדאי להמתין כמה דקות ולנסות שוב.

  4. ברשימה הנפתחת Legacy Stackdriver Logging (רישום ביומן בגרסה הקודמת של Stackdriver) או Stackdriver Kubernetes Engine Monitoring (מעקב ב-Stackdriver אחרי Kubernetes Engine), בוחרים באפשרות Enabled (מופעל).

    האפשרויות האלה לא תואמות. חשוב להשתמש רק ב-Stackdriver Kubernetes Engine Monitoring, או ב-Legacy Stackdriver Logging עם Legacy Stackdriver Monitoring.

  5. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Cluster monitoring disabled

שם הקטגוריה ב-API: CLUSTER_MONITORING_DISABLED

המעקב מושבת באשכולות GKE.

כדי לחקור בעיות אבטחה ולעקוב אחרי השימוש, מומלץ להפעיל את Cloud Monitoring באשכולות.

העלויות של Cloud Monitoring יכולות להיות משמעותיות, בהתאם לכמות המידע. כדי להבין את השימוש בשירות ואת העלויות שלו, אפשר לעיין במחירון של Google Cloud Observability.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. בוחרים את האשכול שמופיע בתוצאת החיפוש של Security Health Analytics.

  3. לוחצים על עריכה.

    אם חלו שינויים בהגדרת האשכול לאחרונה, יכול להיות שהלחצן 'עריכה' יהיה מושבת. אם אתם לא מצליחים לערוך את הגדרות האשכול, כדאי להמתין כמה דקות ולנסות שוב.

  4. ברשימה הנפתחת Legacy Stackdriver Monitoring או Stackdriver Kubernetes Engine Monitoring, בוחרים באפשרות Enabled.

    האפשרויות האלה לא תואמות. חשוב לוודא שאתם משתמשים רק ב-Stackdriver Kubernetes Engine Monitoring, או ב-Legacy Stackdriver Monitoring עם Legacy Stackdriver Logging.

  5. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Cluster private Google access disabled

שם הקטגוריה ב-API: CLUSTER_PRIVATE_GOOGLE_ACCESS_DISABLED

מארחי האשכול לא מוגדרים לשימוש רק בכתובות IP פנימיות פרטיות כדי לגשת לממשקי Google API.

הגישה הפרטית ל-Google מאפשרת למכונות וירטואליות (VM) עם כתובות IP פנימיות פרטיות בלבד להגיע לכתובות ה-IP הציבוריות של שירותים וממשקי API של Google. מידע נוסף זמין במאמר בנושא הגדרת גישה פרטית של Google.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Virtual Private Cloud networks במסוף Google Cloud .

    עוברים אל רשתות VPC

  2. ברשימת הרשתות, לוחצים על שם הרשת הרצויה.

  3. בדף פרטי רשת VPC, לוחצים על הכרטיסייה Subnets.

  4. ברשימת רשתות המשנה, לוחצים על שם רשת המשנה שמשויכת לאשכול Kubernetes בממצא.

  5. בדף פרטי רשת המשנה, לוחצים על עריכה.

  6. בקטע גישה פרטית ל-Google, בוחרים באפשרות מופעל.

  7. לוחצים על Save.

  8. כדי להסיר כתובות IP ציבוריות (חיצוניות) ממכונות וירטואליות שתעבורת הנתונים החיצונית היחידה שלהן היא ל-Google APIs, אפשר לעיין במאמר בנושא ביטול ההקצאה של כתובת IP חיצונית סטטית.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Cluster secrets encryption disabled

שם הקטגוריה ב-API: CLUSTER_SECRETS_ENCRYPTION_DISABLED

ההצפנה של סודות בשכבת האפליקציה מושבתת באשכול GKE.

הצפנת סודות בשכבת האפליקציה מבטיחה שהסודות של GKE יוצפנו באמצעות מפתחות Cloud KMS. התכונה מספקת שכבת אבטחה נוספת לנתונים רגישים, כמו סודות שהוגדרו על ידי המשתמש וסודות שנדרשים להפעלת האשכול, כמו מפתחות של חשבונות שירות, שכולם מאוחסנים ב-etcd.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud KMS keys במסוף Google Cloud .

    מעבר למפתחות Cloud KMS

  2. בודקים את מפתחות האפליקציה או יוצרים מפתח להצפנת מסד נתונים (DEK). מידע נוסף זמין במאמר יצירת מפתח Cloud KMS.

  3. עוברים לדף Kubernetes clusters.

    מעבר אל Kubernetes clusters

  4. בוחרים את האשכול בממצא.

  5. בקטע אבטחה, בשדה הצפנת סודות בשכבת האפליקציה, לוחצים על עריכת הצפנת סודות בשכבת האפליקציה.

  6. מסמנים את תיבת הסימון הפעלת הצפנה של סודות בשכבת האפליקציה ואז בוחרים את מפתח ה-DEK שיצרתם.

  7. לוחצים על שמירת השינויים.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Cluster shielded nodes disabled

שם הקטגוריה ב-API: CLUSTER_SHIELDED_NODES_DISABLED

לא מופעלים צמתים מוגנים של GKE באשכול.

בלי צמתים מוגנים של GKE, תוקפים יכולים לנצל נקודת חולשה ב-Pod כדי להשיג פרטי כניסה של bootstrap ולהתחזות לצמתים באשכול. נקודת החולשה הזו יכולה לאפשר לתוקפים לגשת לסודות של האשכול.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. בוחרים את האשכול בממצא.

  3. בקטע Security, בשדה Shielded GKE nodes, לוחצים על Edit Shielded GKE nodes.

  4. מסמנים את תיבת הסימון הפעלת צומתי GKE מוגנים.

  5. לוחצים על שמירת השינויים.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Compute project wide SSH keys allowed

שם הקטגוריה ב-API: COMPUTE_PROJECT_WIDE_SSH_KEYS_ALLOWED

נעשה שימוש במפתחות SSH ברמת הפרויקט, שמאפשרים כניסה לכל המופעים בפרויקט.

השימוש במפתחות SSH ברמת הפרויקט מקל על ניהול מפתחות SSH, אבל אם המפתחות נפרצים, הם מהווים סיכון אבטחה שיכול להשפיע על כל המופעים בפרויקט. מומלץ להשתמש במפתחות SSH ספציפיים למופע, שמגבילים את שטח הפנים של המתקפה אם מפתחות ה-SSH נפרצו. מידע נוסף זמין במאמר בנושא ניהול מפתחות SSH במטא-נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. ברשימת המקרים, לוחצים על שם המקרה בתוצאת החיפוש.

  3. בדף פרטי מופע ה-VM, לוחצים על עריכה.

  4. בקטע SSH Keys (מפתחות SSH), בוחרים באפשרות Block project-wide SSH keys (חסימת מפתחות SSH ברמת הפרויקט).

  5. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Compute Secure Boot disabled

שם הקטגוריה ב-API: COMPUTE_SECURE_BOOT_DISABLED

במכונה וירטואלית מוגנת לא מופעל אתחול מאובטח.

שימוש באתחול מאובטח עוזר להגן על המכונות הווירטואליות מפני ערכות כלים לגישה לרמת הבסיס (rootkit) ומפני ערכות כלים לאתחול (bootkit). ב-Compute Engine, האפשרות Secure Boot לא מופעלת כברירת מחדל כי יש מנהלי התקנים לא חתומים ותוכנות ברמה נמוכה שלא תואמים לה. אם המכונה הווירטואלית לא משתמשת בתוכנה לא תואמת והיא מופעלת עם הפעלה מאובטחת, Google ממליצה להשתמש בהפעלה מאובטחת. אם אתם משתמשים במודולים של צד שלישי עם מנהלי התקנים של Nvidia, ודאו שהם תואמים לאתחול מאובטח לפני שתפעילו אותו.

מידע נוסף זמין במאמר בנושא אתחול מאובטח.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. ברשימת המקרים, לוחצים על שם המקרה בתוצאת החיפוש.

  3. בדף פרטי המכונה הווירטואלית, לוחצים על הפסקה.

  4. אחרי שהמופע מפסיק, לוחצים על עריכה.

  5. בקטע מכונה וירטואלית מוגנת, בוחרים באפשרות Turn on Secure Boot (הפעלה מאובטחת).

  6. לוחצים על Save.

  7. לוחצים על התחלה כדי להפעיל את המופע.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Compute serial ports enabled

שם הקטגוריה ב-API: COMPUTE_SERIAL_PORTS_ENABLED

היציאות הטוריות מופעלות עבור מופע, ומאפשרות חיבורים למסוף הטורי של המופע.

אם מפעילים את המסוף הטורי האינטראקטיבי במופע, לקוחות יכולים לנסות להתחבר למופע הזה מכל כתובת IP. לכן, צריך להשבית את התמיכה האינטראקטיבית במסוף הטורי. מידע נוסף זמין במאמר הפעלת גישה לפרויקט.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. ברשימת המקרים, לוחצים על שם המקרה בתוצאת החיפוש.

  3. בדף פרטי מופע ה-VM, לוחצים על עריכה.

  4. בקטע גישה מרחוק, מסירים את הסימון מהתיבה הפעלת חיבור ליציאות טוריות.

  5. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Confidential Computing disabled

שם הקטגוריה ב-API: CONFIDENTIAL_COMPUTING_DISABLED

לא מופעלת במכונה של Compute Engine טכנולוגיית Confidential Computing.

‫Confidential Computing מוסיף עמוד תווך שלישי לסיפור ההצפנה מקצה לקצה, על ידי הצפנת הנתונים בזמן השימוש. עם סביבות הביצוע החסויות שמוצעות על ידי Confidential Computing ו-AMD Secure Encrypted Virtualization ‏(SEV),‏ Google Cloud שומר על קוד רגיש ונתונים אחרים מוצפנים בזיכרון במהלך העיבוד.

אפשר להפעיל את Confidential Computing רק כשיוצרים מופע. לכן, צריך למחוק את המופע הנוכחי וליצור מופע חדש.

מידע נוסף זמין במאמר מכונות וירטואליות ו-Compute Engine חסויים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. ברשימת המקרים, לוחצים על שם המקרה בתוצאת החיפוש.

  3. בדף פרטי מכונה וירטואלית, לוחצים על מחיקה.

  4. יצירת מכונה וירטואלית חסויה באמצעות מסוף Google Cloud

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

COS not used

שם הקטגוריה ב-API: COS_NOT_USED

המכונות הווירטואליות ב-Compute Engine לא משתמשות ב-Container-Optimized OS, שנועדה להריץ קונטיינרים ב-Docker באופן מאובטח. Google Cloud

מערכת הפעלה שמותאמת לקונטיינרים היא מערכת ההפעלה המומלצת של Google לאירוח ולהרצת קונטיינרים ב- Google Cloud. ה-OS הקטן מצמצם את החשיפה לסיכוני אבטחה, והעדכונים האוטומטיים מתקנים את נקודות החולשה באבטחה בזמן. מידע נוסף זמין במאמר סקירה כללית על מערכת הפעלה שמותאמת לקונטיינרים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. ברשימת האשכולות, לוחצים על שם האשכול בממצא.

  3. לוחצים על הכרטיסייה Nodes.

  4. לכל מאגר צמתים:

    1. לוחצים על שם מאגר הצמתים כדי לעבור לדף הפרטים שלו.
    2. לוחצים על עריכה .
    3. בקטע Nodes -> Image type (צמתים -> סוג תמונה), לוחצים על Change (שינוי).
    4. בוחרים באפשרות מערכת הפעלה שמותאמת לקונטיינרים ולוחצים על שינוי.
    5. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Custom role not monitored

שם הקטגוריה ב-API: CUSTOM_ROLE_NOT_MONITORED

מדדים והתראות ביומן לא מוגדרים למעקב אחרי שינויים בתפקידים בהתאמה אישית.

מערכת IAM מספקת תפקידים מוגדרים מראש ותפקידים בהתאמה אישית שמעניקים גישה למשאבים ספציפיים של Google Cloud . מעקב אחרי פעילויות שקשורות ליצירה, למחיקה ולעדכון של תפקידים מאפשר לזהות תפקידים עם הרשאות עודפות בשלבים מוקדמים. מידע נוסף מופיע במאמר סקירה כללית של מדדים שמבוססים על יומנים.

העלויות של Cloud Monitoring יכולות להיות משמעותיות, בהתאם לכמות המידע. כדי להבין את השימוש בשירות ואת העלויות שלו, אפשר לעיין במחירון של Google Cloud Observability.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

יצירת מדד

  1. נכנסים לדף Logs-based Metrics במסוף Google Cloud .

    מעבר אל 'מדדים מבוססי-יומנים'

  2. לוחצים על יצירת מדד.

  3. בקטע סוג המדד, בוחרים באפשרות מונה.

  4. בקטע פרטים:

    1. מגדירים שם של מדד יומן.
    2. מוסיפים תיאור.
    3. מגדירים את Units (יחידות) לערך 1.
  5. בקטע בחירת מסנן, מעתיקים את הטקסט הבא ומדביקים אותו בתיבה יצירת מסנן, ומחליפים את הטקסט הקיים אם צריך:

      resource.type="iam_role"
      AND (protoPayload.methodName="google.iam.admin.v1.CreateRole"
      OR protoPayload.methodName="google.iam.admin.v1.DeleteRole"
      OR protoPayload.methodName="google.iam.admin.v1.UpdateRole")

  6. לוחצים על יצירת מדד. יוצג אישור.

יצירת מדיניות התראות

  1. נכנסים לדף Log-based Metrics במסוף Google Cloud :

    כניסה אל מדדים מבוססי-יומנים

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Logging.

  2. בקטע מדדים שהוגדרו על ידי המשתמש, בוחרים את המדד שיצרתם בקטע הקודם.
  3. לוחצים על סמל האפשרויות הנוספות ואז על יצירת התראה ממדד.

    תיבת הדו-שיח תנאי חדש תיפתח עם אפשרויות המדד והמרת הנתונים שאוכלסו מראש.

  4. לוחצים על הבא.
    1. בודקים את ההגדרות שמולאו מראש. אולי תרצו לשנות את ערך הסף.
    2. לוחצים על שם התנאי ומזינים שם לתנאי.
  5. לוחצים על הבא.
  6. כדי להוסיף התראות למדיניות ההתראות, לוחצים על ערוצי התראות. בתיבת הדו-שיח, בוחרים ערוץ התראות אחד או יותר מהתפריט ולוחצים על אישור.

    כדי לקבל התראה כשאירועים נפתחים ונסגרים, מסמנים את התיבה Notify on incident closure. כברירת מחדל, ההתראות נשלחות רק כשנפתחים אירועים.

  7. אופציונלי: מעדכנים את משך הזמן עד לסגירה אוטומטית של אירוע. השדה הזה קובע מתי מערכת Monitoring סוגרת אירועים בהיעדר נתונים של מדדים.
  8. אופציונלי: לוחצים על תיעוד, ואז מוסיפים את המידע שרוצים לכלול בהודעת ההתראה.
  9. לוחצים על שם ההתראה ומזינים שם למדיניות ההתראה.
  10. לוחצים על יצירת מדיניות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Dataproc CMEK disabled

שם הקטגוריה ב-API: DATAPROC_CMEK_DISABLED

נוצר אשכול Dataproc ללא הגדרת הצפנה של CMEK. ב-CMEK, המפתחות שאתם יוצרים ומנהלים ב-Cloud Key Management Service עוטפים את המפתחות שבהם Google Cloud משתמש כדי להצפין את הנתונים שלכם, וכך אתם מקבלים יותר שליטה על הגישה לנתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Dataproc cluster במסוף Google Cloud .

    מעבר אל 'אשכולות Dataproc'

  2. בוחרים את הפרויקט ולוחצים על Create Cluster (יצירת אשכול).

  3. בקטע Manage security (ניהול אבטחה), לוחצים על Encryption (הצפנה) ובוחרים באפשרות Customer-managed key (מפתח בניהול הלקוח).

  4. בוחרים מפתח בניהול הלקוח מהרשימה.

    אם אין לכם מפתח בניהול הלקוח, תצטרכו ליצור אחד כדי להשתמש בו. מידע נוסף זמין במאמר בנושא מפתחות הצפנה בניהול הלקוח.

  5. מוודאים שלמפתח ה-KMS שנבחר הוקצה התפקיד Cloud KMS CryptoKey Encrypter/Decrypter לחשבון השירות של אשכול Dataproc ("serviceAccount:service-project_number@compute-system.iam.gserviceaccount.com").

  6. אחרי שיוצרים את האשכול, מעבירים את כל עומסי העבודה מהאשכול הישן לאשכול החדש.

  7. עוברים אל Dataproc clusters ובוחרים את הפרויקט.

  8. בוחרים את האשכול הישן ולוחצים על מחיקת האשכול.

  9. חוזרים על כל השלבים שלמעלה בשביל אשכולות Dataproc אחרים שזמינים בפרויקט שנבחר.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Dataproc image outdated

שם הקטגוריה ב-API: DATAPROC_IMAGE_OUTDATED

נוצר אשכול Dataproc באמצעות גרסת תמונה של Dataproc שהושפעה מפרצות אבטחה בכלי Apache Log4j 2‏ (CVE-2021-44228 ו-CVE-2021-45046).

הכלי הזה לאיתור פגיעויות בודק אם השדה softwareConfig.imageVersion במאפיין config של Cluster מכיל אחת מהגרסאות המושפעות הבאות:

  • גרסאות תמונה מוקדמות יותר מ-1.3.95.
  • גרסאות משנה של אימג'ים שקודמות לגרסאות 1.4.77,‏ 1.5.53 ו-2.0.27.

אפשר לשנות ידנית את מספר הגרסה של תמונת Dataproc מותאמת אישית. כדאי להביא בחשבון את התרחישים הבאים:

  • אפשר לשנות את הגרסה של תמונה מותאמת אישית מושפעת כדי שהיא לא תושפע. במקרה כזה, המזהה הזה לא יפיק ממצא.
  • אפשר להחליף את הגרסה של תמונה מותאמת אישית שלא הושפעה בגרסה שמוכרת ככזו שכוללת את נקודת החולשה. במקרה כזה, המזהה הזה יפיק תוצאה חיובית שגויה. כדי להסתיר את הממצאים האלה של תוצאות חיוביות כוזבות, אפשר להשתיק אותם.

כדי לתקן את הממצא הזה, צריך ליצור מחדש את האשכול המושפע ולעדכן אותו.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Dataset CMEK disabled

שם הקטגוריה ב-API: DATASET_CMEK_DISABLED

מערך נתונים ב-BigQuery לא מוגדר לשימוש במפתח הצפנה בניהול הלקוח (CMEK) כברירת מחדל.

ב-CMEK, המפתחות שאתם יוצרים ומנהלים ב-Cloud KMS עוטפים את המפתחות שבהם Google Cloud משתמש כדי להצפין את הנתונים שלכם, וכך אתם מקבלים יותר שליטה על הגישה לנתונים. מידע נוסף זמין במאמר הגנה על נתונים באמצעות מפתחות Cloud KMS.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

אי אפשר להחליף טבלה במקום בין הצפנות ברירת מחדל לבין הצפנת CMEK. כדי להגדיר מפתח CMEK כברירת מחדל להצפנה של כל הטבלאות החדשות במערך הנתונים, פועלים לפי ההוראות להגדרת מפתח ברירת מחדל למערך נתונים.

הגדרת מפתח ברירת מחדל לא תגרום להצפנה מחדש של טבלאות שנמצאות כרגע במערך הנתונים באמצעות מפתח חדש. כדי להשתמש ב-CMEK לנתונים קיימים:

  1. יוצרים מערך נתונים חדש.
  2. מגדירים מפתח CMEK שמשמש כברירת מחדל במערך הנתונים שיצרתם.
  3. כדי להעתיק טבלאות למערך הנתונים שמופעל בו CMEK, פועלים לפי ההוראות להעתקת טבלה.
  4. אחרי שמעתיקים את הנתונים בהצלחה, מוחקים את מערכי הנתונים המקוריים.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Default network

שם הקטגוריה ב-API: DEFAULT_NETWORK

רשת ברירת המחדל קיימת בפרויקט.

ברשתות ברירת המחדל נוצרים באופן אוטומטי כללי חומת אש והגדרות רשת, שיכול להיות שהן לא מאובטחות. מידע נוסף מופיע במאמר בנושא רשת ברירת מחדל.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VPC networks במסוף Google Cloud .

    מעבר לרשתות VPC

  2. ברשימת הרשתות, לוחצים על שם רשת ברירת המחדל.

  3. בדף VPC network details (פרטי רשת VPC), לוחצים על Delete VPC Network (מחיקת רשת VPC).

  4. כדי ליצור רשת חדשה עם כללים מותאמים אישית של חומת אש, אפשר לעיין במאמר בנושא יצירת רשתות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Default service account used

שם הקטגוריה ב-API: DEFAULT_SERVICE_ACCOUNT_USED

מכונה של Compute Engine מוגדרת לשימוש בחשבון השירות שמוגדר כברירת מחדל.

לחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine יש את התפקיד עריכה בפרויקט, שמאפשר גישת קריאה וכתיבה לרוב השירותים של Google Cloud . כדי להגן מפני הסלמת הרשאות וגישה לא מורשית, אל תשתמשו בחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine. במקום זאת, יוצרים חשבון שירות חדש ומקצים לו רק את ההרשאות שנדרשות למופע. במאמר בקרת גישה מוסבר על תפקידים והרשאות.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. בוחרים את המופע שקשור לממצא של Security Health Analytics.

  3. בדף Instance details שנטען, לוחצים על ‎ Stop.

  4. אחרי שהמופע מפסיק, לוחצים על עריכה.

  5. בקטע Service Account, בוחרים חשבון שירות שאינו חשבון השירות שמוגדר כברירת מחדל ב-Compute Engine. יכול להיות שתצטרכו קודם ליצור חשבון שירות חדש. במאמר בקרת גישה מוסבר בהרחבה על תפקידים והרשאות ב-IAM.

  6. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance details.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Disk CMEK disabled

שם הקטגוריה ב-API: DISK_CMEK_DISABLED

הדיסקים במכונה הווירטואלית הזו לא מוצפנים באמצעות מפתחות הצפנה בניהול הלקוח (CMEK).

בעזרת CMEK, מפתחות שאתם יוצרים ומנהלים ב-Cloud KMS עוטפים את המפתחות ש- Google Cloud משתמש בהם כדי להצפין את הנתונים שלכם, וכך אתם מקבלים יותר שליטה על הגישה לנתונים. מידע נוסף זמין במאמר הגנה על משאבים באמצעות מפתחות Cloud KMS.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Compute Engine disks במסוףGoogle Cloud .

    לפתיחת הדף Disks ב-Compute Engine

  2. ברשימת הדיסקים, לוחצים על שם הדיסק שמצוין בממצא.

  3. בדף Manage disk (ניהול הדיסק), לוחצים על Delete (מחיקה) .

  4. כדי ליצור דיסק אחסון מתמיד (persistent disk) חדש עם CMEK מופעל, אפשר לעיין במאמר בנושא הצפנה של דיסק אחסון מתמיד (persistent disk) חדש עם מפתחות משלכם. השימוש ב-CMEK כרוך בעלויות נוספות שקשורות ל-Cloud KMS.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Disk CSEK disabled

שם הקטגוריה ב-API: DISK_CSEK_DISABLED

הדיסקים במכונה הווירטואלית הזו לא מוצפנים באמצעות מפתחות הצפנה באספקת הלקוח (CSEK). דיסקים של מכונות וירטואליות קריטיות צריכים להיות מוצפנים באמצעות CSEK.

אם אתם מספקים מפתחות הצפנה משלכם, Compute Engine משתמש במפתח שלכם כדי להגן על המפתחות שנוצרו על ידי Google ומשמשים להצפנה ולפענוח של הנתונים. מידע נוסף זמין במאמר בנושא מפתחות הצפנה באספקת הלקוח (CSEK). שימוש ב-CSEK כרוך בעלויות נוספות שקשורות ל-Cloud KMS.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מחיקה ויצירה של דיסק

אפשר להצפין דיסקים קשיחים חדשים רק באמצעות מפתח משלכם. אי אפשר להצפין דיסקים קשיחים קיימים באמצעות מפתח משלכם.

  1. נכנסים לדף Compute Engine disks במסוףGoogle Cloud .

    לפתיחת הדף Disks ב-Compute Engine

  2. ברשימת הדיסקים, לוחצים על שם הדיסק שמצוין בממצא.

  3. בדף Manage disk (ניהול הדיסק), לוחצים על Delete (מחיקה) .

  4. כדי ליצור דיסק חדש עם CSEK מופעל, אפשר לעיין במאמר בנושא הצפנת דיסקים באמצעות מפתחות הצפנה באספקת הלקוח.

  5. כדי להפעיל את הכלי לזיהוי, צריך לבצע את השלבים הנותרים.

הפעלת הגלאי

  1. נכנסים לדף Assets ב-Security Command Center במסוףGoogle Cloud .

    כניסה לדף 'נכסים'

  2. בקטע Resource type בחלונית Quick filters, בוחרים באפשרות compute.Disk.

    אם לא רואים את compute.Disk, לוחצים על הצגת עוד, מזינים Disk בשדה החיפוש ואז לוחצים על החלה.

    החלונית Results מתעדכנת ומוצגים בה רק מקרים של סוג המשאב compute.Disk.

  3. בעמודה שם לתצוגה, מסמנים את התיבה שליד שם הדיסק שרוצים להשתמש בו עם CSEK, ואז לוחצים על הגדרת תגי אבטחה.

  4. בתיבת הדו-שיח, לוחצים על הוספת סימון.

  5. בשדה key, מזינים enforce_customer_supplied_disk_encryption_keys, ובשדה value, מזינים true.

  6. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

DNS logging disabled

שם הקטגוריה ב-API: DNS_LOGGING_DISABLED

ניטור של יומני Cloud DNS מספק נראות של שמות DNS שהלקוחות מבקשים ברשת ה-VPC. אפשר לעקוב אחרי היומנים האלה כדי לזהות שמות דומיין חריגים, ולבדוק אותם מול נתוני מודיעין איומי סייבר. מומלץ להפעיל רישום ביומן של רשתות VPC.

בהתאם לכמות המידע, עלויות הרישום ביומן של Cloud DNS יכולות להיות משמעותיות. כדי להבין את השימוש בשירות ואת העלות שלו, אפשר לעיין במאמר תמחור של Google Cloud Observability: ‏Cloud Logging.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VPC networks במסוף Google Cloud .

    מעבר לרשתות VPC

  2. ברשימת הרשתות, לוחצים על השם של רשת ה-VPC.

  3. יוצרים מדיניות חדשה לשרת (אם היא לא קיימת) או עורכים מדיניות קיימת:

    • אם ברשת אין מדיניות של שרת DNS, צריך לבצע את השלבים הבאים:

      1. לוחצים על עריכה.
      2. בשדה מדיניות שרת DNS, לוחצים על יצירת מדיניות שרת חדשה.
      3. מזינים שם למדיניות השרת החדשה.
      4. מגדירים את Logs (יומנים) למצב On (מופעל).
      5. לוחצים על Save.
    • אם ברשת יש מדיניות של שרת DNS, מבצעים את השלבים הבאים:

      1. בשדה DNS server policy (מדיניות שרת DNS), לוחצים על שם מדיניות ה-DNS.
      2. לוחצים על עריכת המדיניות.
      3. מגדירים את Logs (יומנים) למצב On (מופעל).
      4. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

DNSSEC disabled

שם הקטגוריה ב-API: DNSSEC_DISABLED

תוספי אבטחה של DNS‏ (DNSSEC) מושבתים באזורי Cloud DNS.

‫DNSSEC מאמת תגובות DNS ומצמצם סיכונים, כמו חטיפת DNS והתקפות מסוג 'אדם באמצע', על ידי חתימה קריפטוגרפית של רשומות DNS. מומלץ להפעיל DNSSEC. מידע נוסף זמין במאמר סקירה כללית על תוספי אבטחה של DNS‏ (DNSSEC).

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. עוברים לדף Cloud DNS במסוף Google Cloud .

    מעבר לרשתות Cloud DNS

  2. מאתרים את השורה עם תחום ה-DNS שמצוין בממצא.

  3. לוחצים על הגדרת ה-DNSSEC בשורה, ואז בקטע DNSSEC בוחרים באפשרות מופעל.

  4. קוראים את תיבת הדו-שיח שמופיעה. אם מרוצים מהתוצאה, לוחצים על הפעלה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Effectively Anonymous Users Granted GKE Cluster Access

שם הקטגוריה ב-API: GKE_PRIVILEGE_ESCALATION_DEFAULT_USERS_GROUPS

מישהו יצר קשירת RBAC שמפנה לאחד מהמשתמשים או הקבוצות הבאים:

  • system:anonymous
  • system:authenticated
  • system:unauthenticated

המשתמשים והקבוצות האלה הם למעשה אנונימיים, ולכן לא מומלץ להשתמש בהם ב-RoleBindings או ב-ClusterRoleBindings. פרטים נוספים זמינים במאמר בנושא הימנעות משימוש בתפקידים ובקבוצות שמוגדרים כברירת מחדל.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים במשאבים המושפעים:

  1. פותחים את המניפסט של כל ClusterRoleBinding או RoleBinding שמושפע.
  2. מגדירים את השדות המוגבלים הבאים לאחד מהערכים המותרים.

שדות מוגבלים

  • subjects[*].name

ערכים מותרים

  • כל הקבוצות, המשתמשים או חשבונות השירות שלא כוללים את system:anonymous, ‏system:authenticated או system:unauthenticated.

Egress deny rule not set

שם הקטגוריה ב-API: EGRESS_DENY_RULE_NOT_SET

לא מוגדר כלל לחסימת תעבורה יוצאת בחומת אש.

חומת אש שחוסמת את כל תעבורת הנתונים היוצאת ברשת מונעת חיבורים לא רצויים ברשת, למעט חיבורים שחומות אש אחרות מאשרות באופן מפורש. מידע נוסף זמין במאמר בנושא תרחישי יציאה.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    עוברים אל Firewall

  2. לוחצים על יצירת כלל לחומת האש.

  3. נותנים לחומת האש שם, ואפשר גם להוסיף תיאור.

  4. בקטע כיוון התנועה, בוחרים באפשרות יציאה.

  5. בקטע פעולה בהתאמה, בוחרים באפשרות דחייה.

  6. בתפריט הנפתח יעדים, בוחרים באפשרות כל המופעים ברשת.

  7. בתפריט הנפתח Destination filter (מסנן יעד), בוחרים באפשרות IP ranges (טווח כתובות IP) ואז מקלידים 0.0.0.0/0 בתיבה Destination IP ranges (טווח כתובות IP של היעד).

  8. בקטע Protocols and ports (פרוטוקולים ויציאות), בוחרים באפשרות Deny all (דחיית הכול).

  9. לוחצים על השבתת הכלל ואז, בקטע אכיפה, בוחרים באפשרות מופעל.

  10. לוחצים על יצירה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Essential contacts not configured

שם הקטגוריה ב-API: ESSENTIAL_CONTACTS_NOT_CONFIGURED

הארגון שלכם לא הגדיר אדם או קבוצה לקבלת התראות מ- Google Cloud על אירועים חשובים כמו מתקפות, נקודות חולשה ואירועים שקשורים לנתונים בארגון שלכם ב- Google Cloud . מומלץ להגדיר איש קשר עיקרי אחד או יותר או קבוצות בארגון העסקי.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Essential Contacts במסוף Google Cloud .

    כניסה לדף Essential Contacts

  2. מוודאים שהארגון מופיע בבורר המשאבים שבראש הדף. בכלי לבחירת משאבים אפשר לראות באיזה פרויקט, תיקייה או ארגון אתם מנהלים את אנשי הקשר כרגע.

  3. לוחצים על +הוספת איש קשר. נפתחת החלונית הוספת איש קשר.

  4. מקלידים את כתובת האימייל של איש הקשר בשדות Email ו-Confirm Email.

  5. בקטע Notification categories בוחרים את הקטגוריות של ההתראות שרוצים שאיש הקשר יקבל. מוודאים שכתובות האימייל המתאימות מוגדרות לכל אחת מקטגוריות ההתראות הבאות:

    1. משפטי
    2. אבטחה
    3. השעיה
    4. טכני
  6. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Firewall not monitored

שם הקטגוריה ב-API: FIREWALL_NOT_MONITORED

מדדים ונתוני התראות ביומן לא מוגדרים למעקב אחרי שינויים בכללי חומת האש של רשת VPC.

מעקב אחרי אירועים של יצירה ועדכון של כללי חומת אש מספק תובנות לגבי שינויים בגישה לרשת, ויכול לעזור לכם לזהות במהירות פעילות חשודה. למידע נוסף, ראו סקירה כללית על מדדים שמבוססים על יומנים.

העלויות של Cloud Monitoring יכולות להיות משמעותיות, בהתאם לכמות המידע. כדי להבין את השימוש בשירות ואת העלויות שלו, אפשר לעיין במחירון של Google Cloud Observability.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

יצירת מדד

  1. נכנסים לדף Logs-based Metrics במסוף Google Cloud .

    מעבר אל 'מדדים מבוססי-יומנים'

  2. לוחצים על יצירת מדד.

  3. בקטע סוג המדד, בוחרים באפשרות מונה.

  4. בקטע פרטים:

    1. מגדירים שם של מדד יומן.
    2. מוסיפים תיאור.
    3. מגדירים את Units (יחידות) לערך 1.
  5. בקטע בחירת מסנן, מעתיקים את הטקסט הבא ומדביקים אותו בתיבה יצירת מסנן, ומחליפים את הטקסט הקיים אם צריך:

      resource.type="gce_firewall_rule"
      AND (protoPayload.methodName:"compute.firewalls.insert"
      OR protoPayload.methodName:"compute.firewalls.patch"
      OR protoPayload.methodName:"compute.firewalls.delete")

  6. לוחצים על יצירת מדד. יוצג אישור.

יצירת מדיניות התראות

  1. נכנסים לדף Log-based Metrics במסוף Google Cloud :

    כניסה אל מדדים מבוססי-יומנים

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Logging.

  2. בקטע מדדים שהוגדרו על ידי המשתמש, בוחרים את המדד שיצרתם בקטע הקודם.
  3. לוחצים על סמל האפשרויות הנוספות ואז על יצירת התראה ממדד.

    תיבת הדו-שיח תנאי חדש תיפתח עם אפשרויות המדד והמרת הנתונים שאוכלסו מראש.

  4. לוחצים על הבא.
    1. בודקים את ההגדרות שמולאו מראש. אולי תרצו לשנות את ערך הסף.
    2. לוחצים על שם התנאי ומזינים שם לתנאי.
  5. לוחצים על הבא.
  6. כדי להוסיף התראות למדיניות ההתראות, לוחצים על ערוצי התראות. בתיבת הדו-שיח, בוחרים ערוץ התראות אחד או יותר מהתפריט ולוחצים על אישור.

    כדי לקבל התראה כשאירועים נפתחים ונסגרים, מסמנים את התיבה Notify on incident closure. כברירת מחדל, ההתראות נשלחות רק כשנפתחים אירועים.

  7. אופציונלי: מעדכנים את משך הזמן עד לסגירה אוטומטית של אירוע. השדה הזה קובע מתי מערכת Monitoring סוגרת אירועים בהיעדר נתונים של מדדים.
  8. אופציונלי: לוחצים על תיעוד, ואז מוסיפים את המידע שרוצים לכלול בהודעת ההתראה.
  9. לוחצים על שם ההתראה ומזינים שם למדיניות ההתראה.
  10. לוחצים על יצירת מדיניות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Firewall rule logging disabled

שם הקטגוריה ב-API: FIREWALL_RULE_LOGGING_DISABLED

רישום ביומן של כללי חומת האש מושבת.

רישום ביומן של כללי חומת אש מאפשר לכם לבצע ביקורת, לאמת ולנתח את ההשפעות של כללי חומת האש. הוא יכול להיות שימושי לביקורת על גישה לרשת או למתן אזהרה מוקדמת על שימוש ברשת באופן לא מאושר. העלות של יומנים יכולה להיות משמעותית. מידע נוסף על ניהול יומנים של כללי חומת אש ועל העלות שלו זמין במאמר שימוש בניהול יומנים של כללי חומת אש.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על השם של כלל חומת האש הרצוי.

  3. לוחצים על עריכה.

  4. בקטע Logs, בוחרים באפשרות On.

  5. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Flow logs disabled

שם הקטגוריה ב-API: FLOW_LOGS_DISABLED

יש רשת משנה של VPC שיומני הזרימה שלה מושבתים.

ב-VPC Flow Logs מתועמת דגימה של זרימות נתונים ברשת שנשלחות ממכונות וירטואליות ומתקבלות בהן. היומנים האלה יכולים לשמש למעקב אחרי הרשת, לניתוח פורנזי, לניתוח אבטחה בזמן אמת ולאופטימיזציה של ההוצאות. מידע נוסף על יומני תעבורה ועל העלות שלהם זמין במאמר שימוש ב-VPC Flow Logs.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VPC networks במסוףGoogle Cloud .

    מעבר לרשתות VPC

  2. ברשימת הרשתות, לוחצים על שם הרשת הרצויה.

  3. בדף פרטי רשת VPC, לוחצים על הכרטיסייה Subnets.

  4. ברשימת רשתות המשנה, לוחצים על השם של רשת המשנה שמצוין בממצא.

  5. בדף פרטי רשת המשנה, לוחצים על עריכה.

  6. בקטע יומני זרימה, בוחרים באפשרות מופעל.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

שם הקטגוריה ב-API: VPC_FLOW_LOGS_SETTINGS_NOT_RECOMMENDED

בהגדרות של רשת משנה ברשת VPC, השירות VPC Flow Logs מושבת או שלא מוגדר בהתאם להמלצות של CIS Benchmark 1.3. ‫VPC Flow Logs מתעד דגימה של זרימות נתונים ברשת שנשלחות ממופעי מכונות וירטואליות ומתקבלות בהם, וניתן להשתמש בו כדי לזהות איומים.

מידע נוסף על VPC Flow Logs ועל העלות שלהם זמין במאמר שימוש ב-VPC Flow Logs.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VPC networks במסוףGoogle Cloud .

    מעבר לרשתות VPC

  2. ברשימת הרשתות, לוחצים על שם הרשת.

  3. בדף פרטי רשת VPC, לוחצים על הכרטיסייה Subnets.

  4. ברשימת רשתות המשנה, לוחצים על השם של רשת המשנה שמצוין בממצא.

  5. בדף פרטי רשת המשנה, לוחצים על עריכה.

  6. בקטע יומני זרימה, בוחרים באפשרות מופעל.

    1. אופציונלי: כדי לשנות את הגדרת היומנים, לוחצים על הלחצן Configure logs כדי להרחיב את הכרטיסייה. ההגדרות המומלצות של CIS Benchmarks:
      1. מגדירים את מרווח הצבירה ל-5 שניות.
      2. בתיבת הסימון Additional fields, בוחרים באפשרות Include metadata.
      3. מגדירים את קצב הדגימה ל-100%.
      4. לוחצים על הלחצן שמירה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Full API access

שם הקטגוריה ב-API: FULL_API_ACCESS

מכונה של Compute Engine מוגדרת לשימוש בחשבון השירות שמוגדר כברירת מחדל עם גישה מלאה לכל Google Cloud ממשקי ה-API.

יכול להיות שמופע שהוגדר עם חשבון השירות שמוגדר כברירת מחדל ועם היקף הגישה ל-API שהוגדר למתן גישה מלאה לכל ממשקי Cloud API יאפשר למשתמשים לבצע פעולות או קריאות ל-API שאין להם הרשאות IAM לגביהן. מידע נוסף מופיע במאמר בנושא חשבון שירות שמוגדר כברירת מחדל ב-Compute Engine.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. ברשימת המקרים, לוחצים על שם המקרה בתוצאת החיפוש.

  3. אם המופע פועל, לוחצים על Stop (עצירה).

  4. כשהמופע מופסק, לוחצים על עריכה.

  5. בקטע Security and access (אבטחה וגישה), בקטע Service accounts (חשבונות שירות), בוחרים באפשרות Compute Engine default service account (חשבון שירות שמוגדר כברירת מחדל ב-Compute Engine).

  6. בקטע Access scopes, בוחרים באפשרות Allow default access או באפשרות Set access for each API. ההגדרה הזו מגבילה את ממשקי ה-API שאפשר לגשת אליהם מכל תהליך או עומס עבודה שמשתמש בחשבון השירות שמוגדר כברירת מחדל במכונה הווירטואלית.

  7. אם בחרתם באפשרות Set access for each API, מבצעים את הפעולות הבאות:

    • משביתים את Cloud Platform על ידי הגדרת הערך ללא.
    • מפעילים את ממשקי ה-API הספציפיים שחשבון השירות שמוגדר כברירת מחדל במכונה הווירטואלית צריך גישה אליהם.
  8. לוחצים על Save.

  9. לוחצים על Start (התחלה) כדי להפעיל את המכונה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

HTTP load balancer

שם הקטגוריה ב-API: HTTP_LOAD_BALANCER

מכונה של Compute Engine משתמשת במאזן עומסים שמוגדר להשתמש ב-proxy ל-HTTP עם יעד במקום ב-proxy ל-HTTPS עם יעד.

כדי להגן על שלמות הנתונים ולמנוע מפורצים לשנות את התקשורת, צריך להגדיר את מאזני העומסים של HTTP(S) כך שיאפשרו רק תנועה של HTTPS. מידע נוסף אפשר למצוא במאמר סקירה כללית על איזון עומסים חיצוני מסוג HTTP(S).

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Target proxies במסוף Google Cloud .

    מעבר אל Target proxies

  2. ברשימת שרתי היעד הפרוקסי, לוחצים על שם שרת היעד הפרוקסי בתוצאת החיפוש.

  3. לוחצים על הקישור שמתחת למפת URL.

  4. לוחצים על עריכה.

  5. לוחצים על Frontend configuration.

  6. מוחקים את כל ההגדרות של Frontend IP ויציאות שמאפשרות תעבורת HTTP, ויוצרים הגדרות חדשות שמאפשרות תעבורת HTTPS.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Instance OS login disabled

שם הקטגוריה ב-API: INSTANCE_OS_LOGIN_DISABLED

התכונה OS Login מושבתת במכונה הזו ב-Compute Engine.

שירות OS Login מאפשר ניהול מפתחות SSH באופן מרכזי באמצעות IAM, והוא משבית את ההגדרה של מפתחות SSH מבוססי-מטא-נתונים בכל המופעים בפרויקט. איך מגדירים את OS Login

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. ברשימת המקרים, לוחצים על שם המקרה בתוצאת החיפוש.

  3. בדף Instance details (פרטי המכונה) שנטען, לוחצים על Stop (עצירה).

  4. אחרי שהמופע מפסיק, לוחצים על עריכה.

  5. בקטע מטא-נתונים בהתאמה אישית, מוודאים שהפריט עם המפתח enable-oslogin מכיל את הערך TRUE.

  6. לוחצים על Save.

  7. לוחצים על Start (התחלה) כדי להפעיל את המכונה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Integrity monitoring disabled

שם הקטגוריה ב-API: INTEGRITY_MONITORING_DISABLED

המעקב אחר שלמות האפליקציה מושבת באשכול GKE.

ניטור שלמות מאפשר לכם לנטר ולאמת את שלמות ההפעלה בזמן הריצה של הצמתים המוגנים באמצעות Monitoring. כך אפשר להגיב לכשלי תקינות ולמנוע פריסה של צמתים שנפרצו באשכול.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

אחרי שמקצים צומת, אי אפשר לעדכן אותו כדי להפעיל את מעקב השלמות. תצטרכו ליצור מאגר צמתים חדש עם הפעלת מעקב אחר תקינות.

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. לוחצים על שם האשכול בממצא.

  3. לוחצים על הוספת מאגר צמתים.

  4. בכרטיסייה אבטחה, מוודאים שהאפשרות הפעלת מעקב אחר שלמות האפליקציה מופעלת.

  5. לוחצים על יצירה.

  6. כדי להעביר את עומסי העבודה ממאגרי הצמתים הקיימים שלא עומדים בדרישות למאגרי הצמתים החדשים, אפשר לעיין במאמר בנושא העברת עומסי עבודה לסוגים שונים של מכונות.

  7. אחרי העברת עומסי העבודה, מוחקים את מאגר הצמתים המקורי שלא תואם.

    1. בדף Kubernetes cluster (אשכול Kubernetes), בתפריט Node pools (מאגרי צמתים), לוחצים על השם של מאגר הצמתים שרוצים למחוק.
    2. לוחצים על הסרת מאגר צמתים.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Intranode visibility disabled

שם הקטגוריה ב-API: INTRANODE_VISIBILITY_DISABLED

החשיפה בתוך הצומת מושבתת באשכול GKE.

הפעלת החשיפה של התנועה בתוך הצומת מאפשרת לראות את התנועה בין הפודים בתוך הצומת ברשת. בעזרת התכונה הזו, אתם יכולים להשתמש ב-VPC flow logging או בתכונות אחרות של VPC כדי לעקוב אחרי תנועת נתונים בין צמתים או לשלוט בה. כדי לקבל יומנים, צריך להפעיל יומני זרימה של VPC ברשת המשנה שנבחרה. מידע נוסף זמין במאמר בנושא שימוש ביומני זרימת נתונים של VPC.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

אחרי שמקצים צומת, אי אפשר לעדכן אותו כדי להפעיל את מעקב השלמות. תצטרכו ליצור מאגר צמתים חדש עם הפעלת מעקב אחר תקינות.

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. בקטע Networking, בשורה Intranode visibility, לוחצים על Edit intranode visibility.

    אם חלו שינויים בהגדרות של האשכול לאחרונה, יכול להיות שהלחצן 'עריכה' יהיה מושבת. אם אתם לא מצליחים לערוך את הגדרות האשכול, כדאי להמתין כמה דקות ולנסות שוב.

  3. בתיבת הדו-שיח, בוחרים באפשרות הפעלת חשיפה בתוך הצומת.

  4. לוחצים על שמירת השינויים.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

IP alias disabled

שם הקטגוריה ב-API: IP_ALIAS_DISABLED

נוצר אשכול GKE עם השבתה של טווחי כתובות IP חלופיות.

כשמפעילים טווחי כתובות IP של כינויים, אשכולות GKE מקצים כתובות IP מבלוק CIDR ידוע, כך שהאשכול ניתן להרחבה ופועל בצורה טובה יותר עם מוצרים וישויות של Google Cloud . מידע נוסף מופיע במאמר סקירה כללית על טווחים של כתובות IP של כינויים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

אי אפשר להעביר אשכול קיים לשימוש בכתובות IP חלופיות. כדי ליצור אשכול חדש עם כתובות IP של כינויים מופעלות:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. לוחצים על יצירה.

  3. בחלונית הניווט, בקטע Cluster, לוחצים על Networking.

  4. בקטע אפשרויות מתקדמות של רשת, בוחרים באפשרות הפעלה של ניתוב תעבורה מקורי ב-VPC (שימוש בכתובת IP עם כינוי).

  5. לוחצים על יצירה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

IP forwarding enabled

שם הקטגוריה ב-API: IP_FORWARDING_ENABLED

העברת IP מופעלת במכונות ב-Compute Engine.

כדי למנוע אובדן נתונים או חשיפת מידע, צריך להשבית את העברת מנות הנתונים של כתובות ה-IP במכונות הווירטואליות.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. ברשימת המכונות, מסמנים את התיבה שלצד שם המכונה בתוצאת החיפוש.

  3. לוחצים על מחיקה.

  4. בוחרים באפשרות Create Instance (יצירת מכונה) כדי ליצור מכונה חדשה שתחליף את המכונה שמחקתם.

  5. כדי לוודא שהעברת כתובות IP מושבתת, לוחצים על ניהול, דיסקים, רשתות, מפתחות SSH ואז על רשתות.

  6. בקטע Network interfaces, לוחצים על Edit.

  7. בקטע העברת כתובות IP, בתפריט הנפתח, מוודאים שהאפשרות מושבת מסומנת.

  8. מציינים פרמטרים אחרים של המופע ולוחצים על יצירה. מידע נוסף זמין במאמר יצירה והפעלה של מכונה וירטואלית.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

KMS key not rotated

שם הקטגוריה ב-API: KMS_KEY_NOT_ROTATED

לא מוגדרת רוטציה במפתח הצפנה של Cloud KMS.

רוטציה קבועה של מפתחות ההצפנה מספקת הגנה במקרה של פריצה למפתח, ומגבילה את מספר ההודעות המוצפנות שזמינות לניתוח קריפטוגרפי לגרסה ספציפית של מפתח. מידע נוסף זמין במאמר בנושא רוטציה של מפתחות.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud KMS keys במסוף Google Cloud .

    מעבר למפתחות Cloud KMS

  2. לוחצים על השם של אוסף המפתחות שמצוין בתוצאת החיפוש.

  3. לוחצים על שם המפתח שמצוין בתוצאה.

  4. לוחצים על עריכת תקופת הרוטציה.

  5. מגדירים את תקופת הרוטציה ל-90 ימים לכל היותר.

  6. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

KMS project has owner

שם הקטגוריה ב-API: KMS_PROJECT_HAS_OWNER

למשתמש יש הרשאות roles/Owner בפרויקט שיש בו מפתחות קריפטוגרפיים. מידע נוסף זמין במאמר בנושא הרשאות ותפקידים.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף IAM במסוף Google Cloud .

    כניסה לדף IAM

  2. אם צריך, בוחרים את הפרויקט בתוצאת החיפוש.

  3. לכל חשבון משתמש שהוקצה לו התפקיד בעלים:

    1. לוחצים על עריכה.
    2. בחלונית Edit permissions, ליד התפקיד Owner, לוחצים על Delete.
    3. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

KMS public key

שם הקטגוריה ב-API: KMS_PUBLIC_KEY

מפתח הצפנה או אוסף מפתחות של Cloud KMS הם ציבוריים וכל אחד באינטרנט יכול לגשת אליהם. מידע נוסף זמין במאמר שימוש ב-IAM עם Cloud KMS.

כדי לפתור את הממצא הזה, אם הוא קשור ל-CryptoKey:

  1. נכנסים לדף Cryptographic Keys במסוף Google Cloud .

    מפתחות קריפטוגרפיים

  2. בקטע Name, בוחרים את אוסף המפתחות שמכיל את המפתח הקריפטוגרפי שקשור לממצא של Security Health Analytics.

  3. בדף פרטי מחזיק המפתחות שנפתח, מסמנים את תיבת הסימון לצד המפתח הקריפטוגרפי.

  4. אם חלונית המידע לא מוצגת, לוחצים על הלחצן הצגת חלונית המידע.

  5. משתמשים בתיבת הסינון שלפני Role / Principal כדי לחפש את החשבונות allUsers ו-allAuthenticatedUsers, ולוחצים על Delete כדי להסיר את הגישה של החשבונות האלה.

כדי לטפל בממצא הזה, אם הוא קשור לאוסף מפתחות:

  1. נכנסים לדף Cryptographic Keys במסוף Google Cloud .

    מפתחות קריפטוגרפיים

  2. מוצאים את השורה עם מחזיק המפתחות בתוצאה ובוחרים את תיבת הסימון.

  3. אם חלונית המידע לא מוצגת, לוחצים על הלחצן הצגת חלונית המידע.

  4. משתמשים בתיבת הסינון שלפני Role / Principal כדי לחפש את החשבונות allUsers ו-allAuthenticatedUsers, ולוחצים על Delete כדי להסיר את הגישה של החשבונות האלה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

KMS role separation

שם הקטגוריה ב-API: KMS_ROLE_SEPARATION

הממצא הזה לא זמין להפעלות ברמת הפרויקט.

לגורם אחד או יותר הוקצו כמה הרשאות Cloud KMS. מומלץ שלא יהיו בחשבון בו-זמנית הרשאות אדמין ב-Cloud KMS והרשאות אחרות ב-Cloud KMS. מידע נוסף זמין במאמר בנושא הרשאות ותפקידים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף IAM במסוף Google Cloud .

    כניסה לדף IAM

  2. לכל חשבון ראשי שמופיע בממצא, מבצעים את הפעולות הבאות:

    1. כדי לבדוק אם התפקיד הועבר בירושה מתיקייה או ממשאב ארגוני, מסתכלים בעמודה העברה בירושה. אם העמודה מכילה קישור למשאב אב, לוחצים על הקישור כדי לעבור לדף IAM של משאב האב.
    2. לוחצים על עריכה לצד העיקרון.
    3. כדי להסיר הרשאות, לוחצים על מחיקה לצד אדמין של Cloud KMS. אם רוצים להסיר את כל ההרשאות של הגורם המורשה, לוחצים על מחיקה לצד כל ההרשאות האחרות.
  3. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Legacy authorization enabled

שם הקטגוריה ב-API: LEGACY_AUTHORIZATION_ENABLED

ההרשאה מדור קודם מופעלת באשכולות GKE.

ב-Kubernetes, בקרת גישה מבוססת-תפקידים (RBAC) מאפשרת להגדיר תפקידים עם כללים שמכילים קבוצה של הרשאות, ולהעניק הרשאות ברמת האשכול וברמת מרחב השמות. התכונה הזו מספקת אבטחה טובה יותר כי היא מוודאת שלמשתמשים יש גישה רק למשאבים ספציפיים. כדאי להשבית את בקרת הגישה מבוססת-המאפיינים (ABAC) מדור קודם.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. בוחרים את האשכול שמופיע בתוצאת החיפוש של Security Health Analytics.

  3. לוחצים על עריכה.

    אם חלו שינויים בהגדרת האשכול לאחרונה, יכול להיות שהלחצן 'עריכה' יהיה מושבת. אם אתם לא מצליחים לערוך את הגדרות האשכול, כדאי להמתין כמה דקות ולנסות שוב.

  4. ברשימה הנפתחת Legacy Authorization (הרשאה מדור קודם), בוחרים באפשרות Disabled (מושבת).

  5. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Legacy metadata enabled

שם הקטגוריה ב-API: LEGACY_METADATA_ENABLED

מטא-נתונים מדור קודם מופעלים באשכולות GKE.

שרת המטא-נתונים של מכונות VM ב-Compute Engine חושף נקודות קצה מדור קודם /0.1/ ו-/v1beta1/ שלא אוכפות כותרות של שאילתות מטא-נתונים. זו תכונה בממשקי /v1/ API שמקשה על תוקף פוטנציאלי לאחזר מטא-נתונים של מופע. אלא אם יש צורך בכך, מומלץ להשבית את ממשקי ה-API מדור קודם /0.1/ ו-/v1beta1/.

מידע נוסף זמין במאמר השבתה של ממשקי API מדור קודם של מטא-נתונים ומעבר מהם.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

אפשר להשבית את ממשקי ה-API של מטא-נתונים מדור קודם רק כשיוצרים אשכול חדש או כשמוסיפים מאגר צמתים חדש לאשכול קיים. כדי לעדכן אשכול קיים ולהשבית ממשקי API מדור קודם של מטא-נתונים, אפשר לעיין במאמר העברת עומסי עבודה לסוגים שונים של מכונות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Legacy network

שם הקטגוריה ב-API: LEGACY_NETWORK

קיימת רשת מדור קודם בפרויקט.

לא מומלץ להשתמש ברשתות מדור קודם כי הרבה אמצעי אבטחה חדשים לא נתמכים ברשתות מדור קודם. Google Cloud במקום זאת, משתמשים ברשתות VPC. מידע נוסף זמין במאמר בנושא רשתות מדור קודם.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VPC networks במסוףGoogle Cloud .

    מעבר לרשתות VPC

  2. כדי ליצור רשת חדשה שאינה מדור קודם, לוחצים על יצירת רשת.

  3. חוזרים לדף רשתות VPC.

  4. ברשימת הרשתות, לוחצים על legacy_network.

  5. בדף VPC network details (פרטי רשת VPC), לוחצים על Delete VPC Network (מחיקת רשת VPC).

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Load balancer logging disabled

שם הקטגוריה ב-API: LOAD_BALANCER_LOGGING_DISABLED

הרישום ביומן מושבת בשירות הקצה העורפי במאזן עומסים.

הפעלת הרישום ביומן של מאזן עומסים מאפשרת לכם לראות את תעבורת הרשת של HTTP(S) באפליקציות האינטרנט שלכם. מידע נוסף זמין במאמר בנושא מאזן עומסים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud Load Balancing במסוףGoogle Cloud .

    כניסה ל-Cloud Load Balancing

  2. לוחצים על השם של מאזן העומסים.

  3. לוחצים על עריכה.

  4. לוחצים על Backend configuration.

  5. בדף Backend configuration, לוחצים על Edit.

  6. בקטע Logging, בוחרים באפשרות Enable logging ובוחרים את קצב הדגימה המתאים ביותר לפרויקט.

  7. כדי לסיים את העריכה של שירות לקצה העורפי, לוחצים על עדכון.

  8. כדי לסיים את העריכה של מאזן העומסים, לוחצים על עדכון.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Locked retention policy not set

שם הקטגוריה ב-API: LOCKED_RETENTION_POLICY_NOT_SET

לא מוגדרת מדיניות שמירת נתונים נעולה ליומנים.

מדיניות שמירת נתונים נעולה מונעת את ההחלפה של יומנים ואת המחיקה של קטגוריית היומנים. מידע נוסף זמין במאמר בנושא נעילת קטגוריות.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Storage Browser במסוף Google Cloud .

    כניסה לדף Storage Browser

  2. בוחרים את הקטגוריה שמופיעה בתוצאה של Security Health Analytics.

  3. בדף Bucket details, לוחצים על הכרטיסייה Retention.

  4. אם לא הוגדרה מדיניות שמירת נתונים, לוחצים על Set Retention Policy (הגדרת מדיניות שמירת נתונים).

  5. מזינים תקופת שמירה.

  6. לוחצים על Save. מדיניות שמירת הנתונים מוצגת בכרטיסייה שמירה.

  7. לוחצים על נעילה כדי לוודא שתקופת השמירה לא תקוצר או תוסר.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Log not exported

שם הקטגוריה ב-API: LOG_NOT_EXPORTED

לא הוגדר משאב עם sink מתאים ביומן.

‫Cloud Logging עוזר לכם למצוא במהירות את הגורם לבעיות במערכת ובאפליקציות. עם זאת, רוב היומנים נשמרים רק למשך 30 יום כברירת מחדל. כדי להאריך את תקופת האחסון, אפשר לייצא עותקים של כל הרשומות ביומן. מידע נוסף מופיע במאמר סקירה כללית על ייצוא יומנים.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Log Router במסוף Google Cloud .

    מעבר אל Log Router

  2. לוחצים על Create Sink.

  3. כדי לוודא שכל הרישומים מיוצאים, משאירים את מסנני ההכללה ומסנני ההחרגה ריקים.

  4. לוחצים על Create Sink.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Master authorized networks disabled

שם הקטגוריה ב-API: MASTER_AUTHORIZED_NETWORKS_DISABLED

האפשרות 'רשתות מורשות במישור הבקרה' לא מופעלת באשכולות GKE.

התכונה 'רשתות מורשות של מישור הבקרה' משפרת את האבטחה של אשכול הקונטיינרים שלכם על ידי חסימת גישה למישור הבקרה של האשכול מכתובות IP שצוינו. מידע נוסף זמין במאמר בנושא הוספת רשתות מורשות לגישה למישור הבקרה.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. בוחרים את האשכול שמופיע בתוצאת החיפוש של Security Health Analytics.

  3. לוחצים על עריכה.

    אם חלו שינויים בהגדרת האשכול לאחרונה, יכול להיות שהלחצן 'עריכה' יהיה מושבת. אם אתם לא מצליחים לערוך את הגדרות האשכול, כדאי להמתין כמה דקות ולנסות שוב.

  4. ברשימה הנפתחת Control Plane Authorized Networks, בוחרים באפשרות Enabled.

  5. לוחצים על הוספה של חברת ביטוח.

  6. מציינים את הרשתות המורשות שבהן רוצים להשתמש.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

MFA not enforced

שם הקטגוריה ב-API: MFA_NOT_ENFORCED

הממצא הזה לא זמין להפעלות ברמת הפרויקט.

האימות הרב-שלבי, ובמיוחד האימות הדו-שלבי (2SV), מושבת אצל חלק מהמשתמשים בארגון.

אימות רב-שלבי (MFA) משמש להגנה על חשבונות מפני גישה לא מורשית, והוא הכלי החשוב ביותר להגנה על הארגון מפני פריצה לפרטי הכניסה. מידע נוסף זמין במאמר הגנה על העסק באמצעות אימות דו-שלבי.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. עוברים לדף מסוף Admin במסוף Google Cloud .

    כניסה למסוף Admin

  2. אכיפה של אימות דו-שלבי בכל היחידות הארגוניות.

הסתרה של ממצאים מהסוג הזה

כדי למנוע את האיתור של סוג כזה של ממצאים, מגדירים כלל להשתקת ממצאים שמשתיק אוטומטית ממצאים עתידיים מהסוג הזה. מידע נוסף זמין במאמר השתקת ממצאים ב-Security Command Center.

אפשר גם להוסיף סימני אבטחה ייעודיים לנכסים כדי שגלאי האבטחה של Security Health Analytics לא ייצרו ממצאים לגבי הנכסים האלה, אבל זו לא דרך מומלצת להשבית את הממצאים.

  • כדי למנוע את ההפעלה של הממצא הזה שוב, מוסיפים לנכס את סימן האבטחה allow_mfa_not_enforced עם הערך true.
  • כדי להתעלם מהפרות פוטנציאליות ביחידות ארגוניות ספציפיות, מוסיפים את הסימן excluded_orgunits לאמצעי הבקרה עם רשימה של נתיבי יחידות ארגוניות שמופרדים בפסיקים בשדה value. לדוגמה: excluded_orgunits:/people/vendors/vendorA,/people/contractors/contractorA.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Network not monitored

שם הקטגוריה ב-API: NETWORK_NOT_MONITORED

מדדים ונתוני התראות ביומן לא מוגדרים למעקב אחרי שינויים ברשת VPC.

כדי לזהות שינויים לא נכונים או לא מורשים בהגדרת הרשת, צריך לעקוב אחרי שינויים ברשת VPC. מידע נוסף מופיע במאמר סקירה כללית של מדדים שמבוססים על יומנים.

העלויות של Cloud Monitoring יכולות להיות משמעותיות, בהתאם לכמות המידע. כדי להבין את השימוש בשירות ואת העלויות שלו, אפשר לעיין במחירון של Google Cloud Observability.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

יצירת מדד

  1. נכנסים לדף Logs-based Metrics במסוף Google Cloud .

    מעבר אל 'מדדים מבוססי-יומנים'

  2. לוחצים על יצירת מדד.

  3. בקטע סוג המדד, בוחרים באפשרות מונה.

  4. בקטע פרטים:

    1. מגדירים שם של מדד יומן.
    2. מוסיפים תיאור.
    3. מגדירים את Units (יחידות) לערך 1.
  5. בקטע בחירת מסנן, מעתיקים את הטקסט הבא ומדביקים אותו בתיבה יצירת מסנן, ומחליפים את הטקסט הקיים אם צריך:

      resource.type="gce_network"
      AND (protoPayload.methodName:"compute.networks.insert"
      OR protoPayload.methodName:"compute.networks.patch"
      OR protoPayload.methodName:"compute.networks.delete"
      OR protoPayload.methodName:"compute.networks.removePeering"
      OR protoPayload.methodName:"compute.networks.addPeering")

  6. לוחצים על יצירת מדד. יוצג אישור.

יצירת מדיניות התראות

  1. נכנסים לדף Log-based Metrics במסוף Google Cloud :

    כניסה אל מדדים מבוססי-יומנים

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Logging.

  2. בקטע מדדים שהוגדרו על ידי המשתמש, בוחרים את המדד שיצרתם בקטע הקודם.
  3. לוחצים על סמל האפשרויות הנוספות ואז על יצירת התראה ממדד.

    תיבת הדו-שיח תנאי חדש תיפתח עם אפשרויות המדד והמרת הנתונים שאוכלסו מראש.

  4. לוחצים על הבא.
    1. בודקים את ההגדרות שמולאו מראש. אולי תרצו לשנות את ערך הסף.
    2. לוחצים על שם התנאי ומזינים שם לתנאי.
  5. לוחצים על הבא.
  6. כדי להוסיף התראות למדיניות ההתראות, לוחצים על ערוצי התראות. בתיבת הדו-שיח, בוחרים ערוץ התראות אחד או יותר מהתפריט ולוחצים על אישור.

    כדי לקבל התראה כשאירועים נפתחים ונסגרים, מסמנים את התיבה Notify on incident closure. כברירת מחדל, ההתראות נשלחות רק כשנפתחים אירועים.

  7. אופציונלי: מעדכנים את משך הזמן עד לסגירה אוטומטית של אירוע. השדה הזה קובע מתי מערכת Monitoring סוגרת אירועים בהיעדר נתונים של מדדים.
  8. אופציונלי: לוחצים על תיעוד, ואז מוסיפים את המידע שרוצים לכלול בהודעת ההתראה.
  9. לוחצים על שם ההתראה ומזינים שם למדיניות ההתראה.
  10. לוחצים על יצירת מדיניות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Network policy disabled

שם הקטגוריה ב-API: NETWORK_POLICY_DISABLED

מדיניות הרשת מושבתת באשכולות GKE.

כברירת מחדל, התקשורת בין הפודים פתוחה. תקשורת פתוחה מאפשרת ל-pods להתחבר ישירות בין צמתים, עם או בלי תרגום כתובות רשת (NAT). משאב NetworkPolicy הוא כמו חומת אש ברמת הפוד שמגבילה את החיבורים בין הפודים, אלא אם משאב NetworkPolicy מאפשר את החיבור באופן מפורש. איך מגדירים מדיניות רשת

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. לוחצים על שם האשכול שמופיע בתוצאת הבדיקה של Security Health Analytics.

  3. בקטע Networking, בשורה Calico Kubernetes Network policy, לוחצים על Edit.

    אם חלו שינויים בהגדרת האשכול לאחרונה, יכול להיות שהלחצן 'עריכה' יהיה מושבת. אם אתם לא מצליחים לערוך את הגדרות האשכול, כדאי להמתין כמה דקות ולנסות שוב.

  4. בתיבת הדו-שיח, בוחרים באפשרות הפעלה של מדיניות רשת Calico Kubernetes למישור הבקרה והפעלה של מדיניות רשת Calico Kubernetes לצמתים.

  5. לוחצים על שמירת השינויים.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Nodepool boot CMEK disabled

שם הקטגוריה ב-API: NODEPOOL_BOOT_CMEK_DISABLED

דיסקים של אתחול במאגר הצמתים הזה לא מוצפנים באמצעות מפתחות הצפנה בניהול הלקוח (CMEK). ‫CMEK מאפשר למשתמש להגדיר את מפתחות ההצפנה שמוגדרים כברירת מחדל לדיסקים של אתחול במאגר צמתים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. ברשימת האשכולות, לוחצים על שם האשכול בממצא.

  3. לוחצים על הכרטיסייה Nodes.

  4. לכל מאגר צמתים מסוג default-pool, לוחצים על מחיקה.

  5. כשמופיעה בקשה לאישור, לוחצים על מחיקה.

  6. כדי ליצור מאגרי צמתים חדשים באמצעות CMEK, אפשר לעיין במאמר בנושא שימוש במפתחות הצפנה בניהול הלקוח (CMEK). השימוש ב-CMEK כרוך בעלויות נוספות שקשורות ל-Cloud KMS.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Nodepool secure boot disabled

שם הקטגוריה ב-API: NODEPOOL_SECURE_BOOT_DISABLED

ההפעלה המאובטחת מושבתת באשכול GKE.

כדי לאמת את החתימות הדיגיטליות של רכיבי האתחול של הצומת, מפעילים את האתחול המאובטח בצומתי GKE מוגנים. מידע נוסף זמין במאמר בנושא אתחול מאובטח.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

אחרי שמקצים מאגר צמתים, אי אפשר לעדכן אותו כדי להפעיל את האתחול המאובטח. צריך ליצור מאגר צמתים חדש עם Secure Boot (אתחול מאובטח) מופעל.

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. לוחצים על שם האשכול בממצא.

  3. לוחצים על הוספת מאגר צמתים.

  4. בתפריט Node pools, מבצעים את הפעולות הבאות:

    1. לוחצים על השם של מאגר הצמתים החדש כדי להרחיב את הכרטיסייה.
    2. בוחרים באפשרות אבטחה, ואז בקטע אפשרויות מוגנות בוחרים באפשרות הפעלת אתחול מאובטח.
    3. לוחצים על יצירה.
    4. כדי להעביר את עומסי העבודה ממאגרי הצמתים הקיימים שלא עומדים בדרישות למאגרי הצמתים החדשים, אפשר לעיין במאמר בנושא העברת עומסי עבודה לסוגים שונים של מכונות.
    5. אחרי העברת עומסי העבודה, מוחקים את מאגר הצמתים המקורי שלא תואם.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Non org IAM member

שם הקטגוריה ב-API: NON_ORG_IAM_MEMBER

למשתמש מחוץ לארגון או לפרויקט יש הרשאות IAM בפרויקט או בארגון. מידע נוסף על הרשאות ב-IAM

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף IAM במסוף Google Cloud .

    כניסה לדף IAM

  2. מסמנים את התיבה לצד משתמשים מחוץ לארגון או לפרויקט.

  3. לוחצים על הסרה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Object versioning disabled

שם הקטגוריה ב-API: OBJECT_VERSIONING_DISABLED

ניהול גרסאות של אובייקטים לא מופעל בקטגוריית אחסון שמוגדרים בה יעדים.

כדי לתמוך באחזור אובייקטים שנמחקו או נכתבו מחדש, Cloud Storage כולל תכונת ניהול גרסאות של אובייקטים. הפעלת ניהול גרסאות של אובייקטים כדי להגן על הנתונים ב-Cloud Storage מפני החלפה או מחיקה בטעות. איך מפעילים ניהול גרסאות של אובייקטים

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לתקן את הממצא הזה, משתמשים בדגל --versioning בפקודה gcloud storage buckets update עם הערך המתאים:

    gcloud storage buckets update gs://finding.assetDisplayName --versioning

מחליפים את finding.assetDisplayName בשם הקטגוריה הרלוונטית.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open Cassandra port

שם הקטגוריה ב-API: OPEN_CASSANDRA_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות של Cassandra עלולים לחשוף את שירותי Cassandra שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

היציאות של שירות Cassandra הן:

  • TCP - 7000, 7001, 7199, 8888, 9042, 9160, 61620, 61621

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open ciscosecure websm port

שם הקטגוריה ב-API: OPEN_CISCOSECURE_WEBSM_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות של CiscoSecure/WebSM עלולים לחשוף את שירותי CiscoSecure/WebSM שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות השירות של CiscoSecure/WebSM הן:

  • TCP - 9090

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open directory services port

שם הקטגוריה ב-API: OPEN_DIRECTORY_SERVICES_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות של Directory עלולים לחשוף את שירותי Directory שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

היציאות של שירות הספרייה הן:

  • TCP - 445
  • UDP - 445

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open DNS port

שם הקטגוריה ב-API: OPEN_DNS_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות DNS עלולים לחשוף את שירותי ה-DNS שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות שירות ה-DNS הן:

  • TCP - 53
  • UDP - 53

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open Elasticsearch port

שם הקטגוריה ב-API: OPEN_ELASTICSEARCH_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות של Elasticsearch עלולים לחשוף את שירותי Elasticsearch שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות שירות Elasticsearch הן:

  • TCP - 9200, 9300

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open firewall

שם הקטגוריה ב-API: OPEN_FIREWALL

כללי חומת אש שמאפשרים חיבורים מכל כתובות ה-IP, כמו 0.0.0.0/0, או מכל היציאות, עלולים לחשוף משאבים להתקפות ממקורות לא מכוונים. צריך להסיר את הכללים האלה או להגדיר אותם במפורש לטווחי כתובות ה-IP או ליציאות המקוריות המיועדות. לדוגמה, באפליקציות שמיועדות לציבור, כדאי להגביל את היציאות המותרות לאלה שנדרשות לאפליקציה, כמו 80 ו-443. אם האפליקציה שלכם צריכה לאפשר חיבורים מכל כתובות ה-IP או היציאות, כדאי להוסיף את הנכס לרשימת ההיתרים. מידע נוסף על עדכון הכללים של חומת האש

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall rules במסוף Google Cloud .

    מעבר לכללי חומת אש

  2. לוחצים על כלל חומת האש שמופיע בממצא של Security Health Analytics, ואז לוחצים על עריכה.

  3. בקטע טווחי כתובות IP של מקורות, עורכים את ערכי ה-IP כדי להגביל את טווח כתובות ה-IP המותרות.

  4. בקטע Protocols and ports [פרוטוקולים ויציאות], בוחרים באפשרות Specified protocols and ports [פרוטוקולים ויציאות שצוינו], בוחרים את הפרוטוקולים המותרים ומזינים את היציאות המותרות.

  5. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open FTP port

שם הקטגוריה ב-API: OPEN_FTP_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות FTP עלולים לחשוף את שירותי ה-FTP שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות שירות ה-FTP הן:

  • TCP - 21

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open group IAM member

שם הקטגוריה ב-API: OPEN_GROUP_IAM_MEMBER

אחד או יותר מהגורמים שיש להם גישה לארגון, לפרויקט או לתיקייה הם חשבונות של קבוצות Google שאפשר להצטרף אליהם בלי אישור.

Google Cloud לקוחות יכולים להשתמש בקבוצות Google כדי לנהל תפקידים והרשאות של חברים בארגונים שלהם, או להחיל מדיניות גישה על קבוצות של משתמשים. במקום להקצות תפקידים ישירות לחברים, האדמינים יכולים להקצות תפקידים והרשאות לקבוצות Google, ואז להוסיף חברים לקבוצות ספציפיות. חברי קבוצה יורשים את כל התפקידים וההרשאות של הקבוצה, מה שמאפשר להם לגשת למשאבים ולשירותים ספציפיים.

אם משתמשים בחשבון פתוח של קבוצות Google כישות מורשית בקשירת IAM, כל אחד יכול לרשת את התפקיד המשויך פשוט על ידי הצטרפות לקבוצה באופן ישיר או עקיף (דרך תת-קבוצה). מומלץ לבטל את התפקידים של הקבוצות הפתוחות או להגביל את הגישה לקבוצות האלה.

כדי לטפל בבעיה הזו, מבצעים אחת מהפעולות הבאות.

הסרת הקבוצה ממדיניות ה-IAM

  1. נכנסים לדף IAM במסוף Google Cloud .

    כניסה לדף IAM

  2. אם צריך, בוחרים את הפרויקט, התיקייה או הארגון בתוצאת החיפוש.

  3. ביטול התפקיד של כל קבוצה פתוחה שזוהתה בממצא.

הגבלת הגישה לקבוצות הפתוחות

  1. נכנסים לקבוצות Google.
  2. מעדכנים את ההגדרות של כל קבוצה פתוחה ושל קבוצות המשנה שלה, כדי לציין מי יכול להצטרף לקבוצה ומי צריך לאשר את ההצטרפות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open HTTP port

שם הקטגוריה ב-API: OPEN_HTTP_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות HTTP עלולים לחשוף את שירותי ה-HTTP שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות שירות ה-HTTP הן:

  • TCP - 80

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open LDAP port

שם הקטגוריה ב-API: OPEN_LDAP_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות LDAP עלולים לחשוף את שירותי ה-LDAP שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

היציאות של שירות ה-LDAP הן:

  • TCP - 389, 636
  • UDP - 389

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open Memcached port

שם הקטגוריה ב-API: OPEN_MEMCACHED_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות של Memcached עלולים לחשוף את שירותי Memcached שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות השירות של Memcached הן:

  • TCP - 11211, 11214, 11215
  • UDP - 11211, 11214, 11215

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open MongoDB port

שם הקטגוריה ב-API: OPEN_MONGODB_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות של MongoDB עלולים לחשוף את שירותי MongoDB שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות השירות של MongoDB הן:

  • TCP - 27017, 27018, 27019

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open MySQL port

שם הקטגוריה ב-API: OPEN_MYSQL_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות של MySQL עלולים לחשוף את שירותי MySQL שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות השירות של MySQL הן:

  • TCP - 3306

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open NetBIOS port

שם הקטגוריה ב-API: ‏ `OPEN_NETBIOS_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות NetBIOS עלולים לחשוף את שירותי NetBIOS שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות השירות של NetBIOS הן:

  • TCP - 137, 138, 139
  • UDP - 137, 138, 139

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open OracleDB port

שם הקטגוריה ב-API: OPEN_ORACLEDB_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות של OracleDB עלולים לחשוף את שירותי OracleDB שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות שירות OracleDB הן:

  • TCP - 1521, 2483, 2484
  • UDP - 2483, 2484

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open POP3 port

שם הקטגוריה ב-API: OPEN_POP3_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות POP3 עלולים לחשוף את שירותי POP3 שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות שירות POP3 הן:

  • TCP - 110

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open PostgreSQL port

שם הקטגוריה ב-API: OPEN_POSTGRESQL_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות של PostgreSQL עלולים לחשוף את שירותי PostgreSQL שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות השירות של PostgreSQL הן:

  • TCP - 5432
  • UDP - 5432

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open RDP port

שם הקטגוריה ב-API: OPEN_RDP_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות RDP עלולים לחשוף את שירותי ה-RDP שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות שירות ה-RDP הן:

  • TCP - 3389
  • UDP - 3389

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open Redis port

שם הקטגוריה ב-API: OPEN_REDIS_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות של Redis עלולים לחשוף את שירותי Redis שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות שירות Redis הן:

  • TCP - 6379

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open SMTP port

שם הקטגוריה ב-API: OPEN_SMTP_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות SMTP עלולים לחשוף את שירותי ה-SMTP שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות שירות ה-SMTP הן:

  • TCP - 25

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open SSH port

שם הקטגוריה ב-API: OPEN_SSH_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות SSH עלולים לחשוף את שירותי ה-SSH שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות שירות ה-SSH הן:

  • SCTP - 22
  • TCP - 22

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Open Telnet port

שם הקטגוריה ב-API: OPEN_TELNET_PORT

כללי חומת אש שמאפשרים לכל כתובת IP להתחבר ליציאות Telnet עלולים לחשוף את שירותי Telnet שלכם לתוקפים. מידע נוסף זמין במאמר סקירה כללית על כללים של חומת אש ב-VPC.

יציאות השירות של Telnet הן:

  • TCP - 23

הממצא הזה נוצר עבור כללים פגיעים בחומת האש, גם אם השבתתם את הכללים בכוונה. ממצאים פעילים לגבי כללים מושבתים של חומת אש מתריעים על הגדרות לא בטוחות שיאפשרו תעבורה לא רצויה אם יופעלו.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Firewall במסוף Google Cloud .

    כניסה לדף Firewall

  2. ברשימת כללי חומת האש, לוחצים על שם כלל חומת האש בתוצאת הסריקה.

  3. לוחצים על עריכה.

  4. בקטע Source IP ranges (טווחי כתובות ה-IP של המקור), מוחקים את 0.0.0.0/0.

  5. מוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. מוסיפים פרוטוקולים ויציאות ספציפיים שרוצים לפתוח במופע.

  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Org policy Confidential VM policy

שם הקטגוריה ב-API: ORG_POLICY_CONFIDENTIAL_VM_POLICY

משאב של Compute Engine לא עומד בדרישות של מדיניות הארגון constraints/compute.restrictNonConfidentialComputing. מידע נוסף על האילוץ הזה של מדיניות הארגון זמין במאמר בנושא אכיפת אילוצים של מדיניות הארגון.

הארגון שלכם דורש שהשירות Confidential VM יהיה מופעל במכונה הווירטואלית הזו. מכונות וירטואליות שלא מופעל בהן השירות הזה לא ישתמשו בהצפנת זיכרון בזמן ריצה, ולכן הן יהיו חשופות להתקפות על הזיכרון בזמן ריצה.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. ברשימת המקרים, לוחצים על שם המקרה בתוצאת החיפוש.

  3. אם לא צריך את שירות המכונה הווירטואלית הסודית במכונה הווירטואלית, מעבירים אותה לתיקייה או לפרויקט חדשים.

  4. אם מכונת ה-VM דורשת מכונת VM חסויה, לוחצים על מחיקה.

  5. כדי ליצור מכונה וירטואלית חדשה עם Confidential VM מופעל, אפשר לעיין במאמר מדריך למתחילים: יצירת מכונה וירטואלית מסוג Confidential VM.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Org policy location restriction

שם הקטגוריה ב-API: ORG_POLICY_LOCATION_RESTRICTION

האילוץ gcp.resourceLocations של מדיניות הארגון מאפשר להגביל את יצירת המשאבים החדשים לאזורי Cloud שתבחרו. מידע נוסף זמין במאמר בנושא הגבלת מיקומי משאבים.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

גלאי ORG_POLICY_LOCATION_RESTRICTION מכסה הרבה סוגים של משאבים וההוראות לתיקון שונות לכל משאב. הגישה הכללית לתיקון הפרות שקשורות למיקום כוללת את הפעולות הבאות:

  1. מעתיקים, מעבירים או מגבים את המשאב או את הנתונים שלו לאזור אחר. כדי לקבל הוראות להעברת משאבים, קוראים את המסמכים של כל שירות.
  2. מוחקים את המשאב המקורי שלא נמצא באזור או את הנתונים שלו.

אי אפשר להשתמש בגישה הזו לכל סוגי המשאבים. כדי לקבל הנחיות, אפשר לעיין בהמלצות המותאמות אישית שמופיעות בתוצאת החיפוש.

שיקולים נוספים

כשמטפלים בממצא הזה, כדאי לקחת בחשבון את הנקודות הבאות.

משאבים מנוהלים

לפעמים משאבים אחרים מנהלים ושולטים במחזורי החיים של משאבים. לדוגמה, קבוצת מופעי מכונה מנוהלת ב-Compute Engine יוצרת מכונות ב-Compute Engine ומשמידה אותן בהתאם למדיניות של קבוצת המופעים בנושא שינוי גודל אוטומטי. אם משאבים מנוהלים ומשאבים שמנהלים אותם נמצאים בהיקף האכיפה של המיקום, יכול להיות ששניהם יסומנו כהפרה של מדיניות הארגון. כדי להבטיח יציבות תפעולית, צריך לבצע תיקון של ממצאים לגבי משאבים מנוהלים במשאב המנהל.

משאבים בשימוש

משאבים מסוימים משמשים משאבים אחרים. לדוגמה, דיסק של Compute Engine שמצורף למכונה פעילה של Compute Engine נחשב לדיסק שנמצא בשימוש על ידי המכונה. אם המשאב שנמצא בשימוש מפר את מדיניות הארגון בנושא מיקום, צריך לוודא שהמשאב לא נמצא בשימוש לפני שפותרים את ההפרה של מדיניות המיקום.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

OS login disabled

שם הקטגוריה ב-API: OS_LOGIN_DISABLED

התכונה OS Login מושבתת במכונות של Compute Engine בפרויקט הזה.

שירות OS Login מאפשר ניהול מפתחות SSH באופן מרכזי באמצעות IAM, והוא משבית את ההגדרה של מפתחות SSH מבוססי-מטא-נתונים בכל המופעים בפרויקט. איך מגדירים את OS Login

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Metadata במסוף Google Cloud .

    מעבר אל Metadata

  2. לוחצים על עריכה ואז על הוספת פריט.

  3. מוסיפים פריט עם המפתח enable-oslogin והערך TRUE.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Over privileged account

שם הקטגוריה ב-API: OVER_PRIVILEGED_ACCOUNT

צומת GKE משתמש בצומת שירות ברירת המחדל של Compute Engine, שיש לו גישה רחבה כברירת מחדל, ויכול להיות שיש לו הרשאות יתר להרצת אשכול GKE.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

פועלים לפי ההוראות לשימוש בחשבונות שירות של Google עם הרשאות מינימליות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Over privileged scopes

שם הקטגוריה ב-API: OVER_PRIVILEGED_SCOPES

לחשבון שירות של צומת יש היקפי גישה רחבים.

היקפי גישה הם השיטה הקודמת להגדרת הרשאות למופע. כדי להקטין את הסיכוי להסלמת הרשאות בהתקפה, כדאי ליצור חשבון שירות עם הרשאות מינימליות ולהשתמש בו להפעלת אשכול GKE.

כדי לטפל בבעיה הזו, פועלים לפי ההוראות לשימוש בחשבונות שירות של Google עם הרשאות מינימליות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Over privileged service account user

שם הקטגוריה ב-API: OVER_PRIVILEGED_SERVICE_ACCOUNT_USER

למשתמש יש את התפקידים iam.serviceAccountUser או iam.serviceAccountTokenCreator ברמת הפרויקט, התיקייה או הארגון, ולא ברמת חשבון שירות ספציפי.

הקצאת התפקידים האלה למשתמש בפרויקט, בתיקייה או בארגון מעניקה למשתמש גישה לכל חשבונות השירות הקיימים והעתידיים בהיקף הזה. המצב הזה עלול לגרום להעלאת הרשאות לא מכוונת. מידע נוסף זמין במאמר הרשאות לחשבון שירות.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף IAM במסוף Google Cloud .

    כניסה לדף IAM

  2. אם צריך, בוחרים את הפרויקט, התיקייה או הארגון בתוצאת החיפוש.

  3. לכל חשבון ראשי שהוקצה לו roles/iam.serviceAccountUser או roles/iam.serviceAccountTokenCreator, מבצעים את הפעולות הבאות:

    1. לוחצים על עריכה.
    2. בחלונית Edit permissions, ליד התפקידים, לוחצים על Delete.
    3. לוחצים על Save.
  4. במאמר הזה מוסבר איך להעניק למשתמשים בודדים הרשאה להתחזות לחשבון שירות יחיד. צריך לפעול לפי ההוראות לכל חשבון שירות שרוצים לאפשר למשתמשים נבחרים להתחזות אליו.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Owner not monitored

שם הקטגוריה ב-API: OWNER_NOT_MONITORED

המדדים וההתראות ביומן לא מוגדרים למעקב אחרי הקצאות או שינויים של בעלות על פרויקטים.

לתפקיד בעלים ב-IAM יש את רמת ההרשאות הגבוהה ביותר בפרויקט. כדי לאבטח את המשאבים, כדאי להגדיר התראות כדי לקבל עדכון כשבעלים חדשים מתווספים או מוסרים. מידע נוסף מופיע במאמר סקירה כללית של מדדים שמבוססים על יומנים.

העלויות של Cloud Monitoring יכולות להיות משמעותיות, בהתאם לכמות המידע. כדי להבין את השימוש בשירות ואת העלויות שלו, אפשר לעיין במחירון של Google Cloud Observability.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

יצירת מדד

  1. נכנסים לדף Logs-based Metrics במסוף Google Cloud .

    מעבר אל 'מדדים מבוססי-יומנים'

  2. לוחצים על יצירת מדד.

  3. בקטע סוג המדד, בוחרים באפשרות מונה.

  4. בקטע פרטים:

    1. מגדירים שם של מדד יומן.
    2. מוסיפים תיאור.
    3. מגדירים את Units (יחידות) לערך 1.
  5. בקטע בחירת מסנן, מעתיקים את הטקסט הבא ומדביקים אותו בתיבה יצירת מסנן, ומחליפים את הטקסט הקיים אם צריך:

      (protoPayload.serviceName="cloudresourcemanager.googleapis.com")
      AND (ProjectOwnership OR projectOwnerInvitee)
      OR (protoPayload.serviceData.policyDelta.bindingDeltas.action="REMOVE"
      AND protoPayload.serviceData.policyDelta.bindingDeltas.role="roles/owner")
      OR (protoPayload.serviceData.policyDelta.bindingDeltas.action="ADD"
      AND protoPayload.serviceData.policyDelta.bindingDeltas.role="roles/owner")

  6. לוחצים על יצירת מדד. יוצג אישור.

יצירת מדיניות התראות

  1. נכנסים לדף Log-based Metrics במסוף Google Cloud :

    כניסה אל מדדים מבוססי-יומנים

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Logging.

  2. בקטע מדדים שהוגדרו על ידי המשתמש, בוחרים את המדד שיצרתם בקטע הקודם.
  3. לוחצים על סמל האפשרויות הנוספות ואז על יצירת התראה ממדד.

    תיבת הדו-שיח תנאי חדש תיפתח עם אפשרויות המדד והמרת הנתונים שאוכלסו מראש.

  4. לוחצים על הבא.
    1. בודקים את ההגדרות שמולאו מראש. אולי תרצו לשנות את ערך הסף.
    2. לוחצים על שם התנאי ומזינים שם לתנאי.
  5. לוחצים על הבא.
  6. כדי להוסיף התראות למדיניות ההתראות, לוחצים על ערוצי התראות. בתיבת הדו-שיח, בוחרים ערוץ התראות אחד או יותר מהתפריט ולוחצים על אישור.

    כדי לקבל התראה כשאירועים נפתחים ונסגרים, מסמנים את התיבה Notify on incident closure. כברירת מחדל, ההתראות נשלחות רק כשנפתחים אירועים.

  7. אופציונלי: מעדכנים את משך הזמן עד לסגירה אוטומטית של אירוע. השדה הזה קובע מתי מערכת Monitoring סוגרת אירועים בהיעדר נתונים של מדדים.
  8. אופציונלי: לוחצים על תיעוד, ואז מוסיפים את המידע שרוצים לכלול בהודעת ההתראה.
  9. לוחצים על שם ההתראה ומזינים שם למדיניות ההתראה.
  10. לוחצים על יצירת מדיניות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Pod security policy disabled

שם הקטגוריה ב-API: POD_SECURITY_POLICY_DISABLED

האפשרות PodSecurityPolicy מושבתת באשכול GKE.

PodSecurityPolicy הוא משאב של בקרת כניסה שמאמת בקשות ליצירה ולעדכון של pods באשכול. אשכולות לא יקבלו פודים שלא עומדים בתנאים שמוגדרים ב-PodSecurityPolicy.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לתקן את הממצא הזה, צריך להגדיר את PodSecurityPolicies ולאשר אותו, ולהפעיל את בקר PodSecurityPolicy. הוראות מפורטות מופיעות במאמר בנושא שימוש ב-PodSecurityPolicies.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Primitive roles used

שם הקטגוריה ב-API: PRIMITIVE_ROLES_USED

למשתמש יש אחד מהתפקידים הבסיסיים הבאים ב-IAM: ‏ roles/owner,‏ roles/editor או roles/viewer. ההרשאות של התפקידים האלה רחבות מדי, ולכן לא מומלץ להשתמש בהם. במקום זאת, צריך להקצות אותם רק לכל פרויקט.

מידע נוסף זמין במאמר הסבר על התפקידים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף מדיניות IAM במסוף Google Cloud .

    כניסה למדיניות IAM

  2. לכל משתמש שהוקצה לו תפקיד בסיסי, מומלץ להשתמש בתפקידים עם הרשאות ספציפיות יותר.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Private cluster disabled

שם הקטגוריה ב-API: PRIVATE_CLUSTER_DISABLED

באשכול GKE, האפשרות 'אשכול פרטי' מושבתת.

באשכולות פרטיים, לצמתים יש רק כתובות IP פרטיות. התכונה הזו מגבילה את הגישה לאינטרנט מחוץ לצמתים. אם לצומת באשכול אין כתובת IP ציבורית, אי אפשר לגלות אותו או לחשוף אותו לאינטרנט הציבורי. עדיין אפשר לנתב תנועה לצומת באמצעות מאזן עומסים פנימי. מידע נוסף מופיע במאמר בנושא אשכולות פרטיים.

אי אפשר להפוך אשכול קיים לפרטי. כדי לתקן את הממצא הזה, צריך ליצור אשכול פרטי חדש:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. לוחצים על יצירת אשכול.

  3. בתפריט הניווט, בקטע Cluster, בוחרים באפשרות Networking.

  4. בוחרים את כפתור הבחירה אשכול פרטי.

  5. בקטע Advanced networking options (אפשרויות מתקדמות של רשת), מסמנים את תיבת הסימון Enable VPC-native traffic routing (uses alias IP) (הפעלה של ניתוב תנועה מקורי ב-VPC (שימוש בכתובת IP עם כינוי)).

  6. לוחצים על יצירה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Private Google access disabled

שם הקטגוריה ב-API: PRIVATE_GOOGLE_ACCESS_DISABLED

יש רשתות משנה פרטיות ללא גישה לממשקי Google API ציבוריים.

הגישה הפרטית ל-Google מאפשרת למכונות וירטואליות עם כתובות IP פנימיות (פרטיות) בלבד להגיע לכתובות ה-IP הציבוריות של שירותים וממשקי Google API.

מידע נוסף זמין במאמר בנושא הגדרת גישה פרטית של Google.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VPC networks במסוףGoogle Cloud .

    מעבר לרשתות VPC

  2. ברשימת הרשתות, לוחצים על שם הרשת הרצויה.

  3. בדף פרטי רשת VPC, לוחצים על הכרטיסייה Subnets.

  4. ברשימת רשתות המשנה, לוחצים על שם רשת המשנה שמשויכת לאשכול Kubernetes בממצא.

  5. בדף פרטי רשת המשנה, לוחצים על עריכה.

  6. בקטע גישה פרטית ל-Google, בוחרים באפשרות מופעל.

  7. לוחצים על Save.

  8. כדי להסיר כתובות IP ציבוריות (חיצוניות) ממכונות וירטואליות שתעבורת הנתונים החיצונית היחידה שלהן היא ל-Google APIs, אפשר לעיין במאמר בנושא ביטול ההקצאה של כתובת IP חיצונית סטטית.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Public bucket ACL

שם הקטגוריה ב-API: PUBLIC_BUCKET_ACL

הקטגוריה היא ציבורית וכל אחד באינטרנט יכול לגשת אליה.

סקירה כללית על בקרת גישה

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Storage Browser במסוף Google Cloud .

    כניסה לדף Storage Browser

  2. בוחרים את הקטגוריה שמופיעה בתוצאה של Security Health Analytics.

  3. בדף Bucket details, לוחצים על הכרטיסייה Permissions.

  4. לצד תצוגה לפי, לוחצים על תפקידים.

  5. בתיבה Filter, מחפשים את allUsers ואת allAuthenticatedUsers.

  6. לוחצים על מחיקה כדי להסיר את כל ההרשאות ב-IAM שניתנו ל-allUsers ול-allAuthenticatedUsers.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Public Compute image

שם הקטגוריה ב-API: PUBLIC_COMPUTE_IMAGE

תמונת Compute Engine היא ציבורית וכל אחד באינטרנט יכול לגשת אליה. allUsers מייצג כל אחד באינטרנט ו-allAuthenticatedUsers מייצג כל אחד שאומת באמצעות חשבון Google. אף אחד מהם לא מוגבל למשתמשים בארגון שלכם.

תמונות של Compute Engine עשויות להכיל מידע רגיש כמו מפתחות הצפנה או תוכנות עם רישיון. אסור שמידע רגיש כזה יהיה זמין לציבור. אם התכוונתם להפוך את תמונת Compute Engine הזו לציבורית, ודאו שהיא לא מכילה מידע רגיש.

מידע נוסף על בקרת גישה

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף התמונות של Compute Engine במסוףGoogle Cloud .

    מעבר לקובצי אימג' של Compute Engine

  2. מסמנים את התיבה לצד התמונה public-image ולוחצים על הצגת חלונית המידע.

  3. בתיבה Filter, מחפשים את חשבונות המשתמש allUsers ו-allAuthenticatedUsers.

  4. מרחיבים את התפקיד שרוצים להסיר ממנו משתמשים.

  5. כדי להסיר משתמש מתפקיד, לוחצים על מחיקה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Public dataset

שם הקטגוריה ב-API: PUBLIC_DATASET

מערך נתונים ב-BigQuery הוא ציבורי וכל אחד באינטרנט יכול לגשת אליו. הגורם הראשי ב-IAM‏ allUsers מייצג כל אחד באינטרנט, והגורם הראשי allAuthenticatedUsers מייצג כל מי שמחובר לשירות של Google. אף אחד מהם לא מוגבל למשתמשים בארגון שלכם.

מידע נוסף מופיע במאמר בנושא שליטה בגישה למערכי נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Explorer ב-BigQuery במסוף Google Cloud .

    מעבר למערך נתונים ב-BigQuery

  2. ברשימת מערכי הנתונים, לוחצים על שם מערך הנתונים שזוהה בממצא. החלונית Dataset info תיפתח.

  3. בחלק העליון של החלונית פרטי מערך הנתונים, לוחצים על שיתוף.

  4. בתפריט הנפתח, לוחצים על הרשאות.

  5. בחלונית Dataset Permissions (הרשאות של מערך נתונים), מזינים allUsers ו-allAuthenticatedUsers ומסירים את הגישה לחשבונות הראשיים האלה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Public IP address

שם הקטגוריה ב-API: PUBLIC_IP_ADDRESS

למכונה של Compute Engine יש כתובת IP ציבורית.

כדי לצמצם את שטח הפנים של הארגון להתקפות, מומלץ להימנע מהקצאת כתובות IP ציבוריות למכונות הווירטואליות. יכול להיות שמכונות שהופסקו עדיין יסומנו בתוצאת חיפוש של כתובת IP ציבורית, למשל אם ממשקי הרשת מוגדרים להקצאת כתובת IP ציבורית זמנית בהפעלה. מוודאים שהגדרות הרשת של מכונות מושבתות לא כוללות גישה חיצונית.

מידע נוסף זמין במאמר חיבור מאובטח למופעי מכונות וירטואליות.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. ברשימת המכונות, מסמנים את התיבה שלצד שם המכונה בתוצאת החיפוש.

  3. לוחצים על עריכה.

  4. לכל ממשק בקטע Network interfaces, לוחצים על Edit ומגדירים את כתובת IP חיצונית לערך None.

  5. לוחצים על סיום ואז על שמירה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Public log bucket

שם הקטגוריה ב-API: PUBLIC_LOG_BUCKET

הממצא הזה לא זמין להפעלות ברמת הפרויקט.

מאגר אחסון הוא ציבורי ומשמש כ-sink ביומן, כלומר כל אחד באינטרנט יכול לגשת ליומנים שמאוחסנים במאגר הזה. allUsers מייצג כל אחד באינטרנט ו-allAuthenticatedUsers מייצג כל מי שמחובר לשירות Google. אף אחד מהם לא מוגבל למשתמשים בארגון שלכם.

סקירה כללית על בקרת גישה

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud Storage browser במסוףGoogle Cloud .

    כניסה אל Cloud Storage browser

  2. ברשימת הקטגוריות, לוחצים על שם הקטגוריה שמצוינת בתוצאת החיפוש.

  3. לוחצים על הכרטיסייה Permissions.

  4. מסירים את allUsers ואת allAuthenticatedUsers מרשימת הגורמים המורשים.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Public SQL instance

שם הקטגוריה ב-API: PUBLIC_SQL_INSTANCE

המכונה של SQL כוללת את 0.0.0.0/0 כרשת מורשית. המשמעות של המקרה הזה היא שכל לקוח IPv4 יכול לעבור את חומת האש בין רשתות ולנסות להתחבר למופע שלכם, כולל לקוחות שאולי לא התכוונתם לאפשר להם להתחבר. הלקוחות עדיין צריכים פרטי כניסה תקינים כדי להתחבר בהצלחה למופע שלכם.

מידע נוסף זמין במאמר בנושא מתן הרשאה באמצעות רשתות מורשות.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוף Google Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בחלונית הניווט, לוחצים על Connections (קישורים).

  5. בקטע Authorized networks, מוחקים את 0.0.0.0/0 ומוסיפים כתובות IP ספציפיות או טווחי כתובות IP שרוצים לאפשר להם להתחבר למופע.

  6. לוחצים על סיום ואז על שמירה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Pubsub CMEK disabled

שם הקטגוריה ב-API: PUBSUB_CMEK_DISABLED

נושא Pub/Sub לא מוצפן באמצעות מפתחות הצפנה בניהול הלקוח (CMEK).

בעזרת CMEK, המפתחות שאתם יוצרים ומנהלים ב-Cloud KMS עוטפים את המפתחות שבהם Google משתמשת כדי להצפין את הנתונים שלכם, וכך אתם מקבלים יותר שליטה על הגישה לנתונים.

כדי לתקן את הממצא הזה, צריך למחוק את הנושא הקיים וליצור נושא חדש:

  1. נכנסים לדף Topics של Pub/Sub במסוף Google Cloud .

    לדף Topics

  2. אם צריך, בוחרים את הפרויקט שמכיל את נושא ה-Pub/Sub.

  3. מסמנים את התיבה לצד הנושא שמופיע בממצא ולוחצים על מחיקה.

  4. כדי ליצור נושא חדש ב-Pub/Sub עם CMEK מופעל, אפשר לעיין במאמר שימוש במפתחות הצפנה בניהול הלקוח. השימוש ב-CMEK כרוך בעלויות נוספות שקשורות ל-Cloud KMS.

  5. פרסום ממצאים או נתונים אחרים בנושא Pub/Sub עם הפעלת CMEK.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Route not monitored

שם הקטגוריה ב-API: ROUTE_NOT_MONITORED

מדדים והתראות ביומן לא מוגדרים למעקב אחרי שינויים בנתיב של רשת VPC.

‫Google Cloud routes הם יעדים ודילוגים שמגדירים את הנתיב שבו תנועת הרשת עוברת ממופע של מכונה וירטואלית לכתובת IP של יעד. מעקב אחרי שינויים בטבלאות ניתוב יכול לעזור לכם לוודא שכל התנועה ב-VPC עוברת בנתיב הצפוי.

מידע נוסף מופיע במאמר סקירה כללית של מדדים שמבוססים על יומנים.

העלויות של Cloud Monitoring יכולות להיות משמעותיות, בהתאם לכמות המידע. כדי להבין את השימוש בשירות ואת העלויות שלו, אפשר לעיין במחירון של Google Cloud Observability.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

יצירת מדד

  1. נכנסים לדף Logs-based Metrics במסוף Google Cloud .

    מעבר אל 'מדדים מבוססי-יומנים'

  2. לוחצים על יצירת מדד.

  3. בקטע סוג המדד, בוחרים באפשרות מונה.

  4. בקטע פרטים:

    1. מגדירים שם של מדד יומן.
    2. מוסיפים תיאור.
    3. מגדירים את Units (יחידות) לערך 1.
  5. בקטע בחירת מסנן, מעתיקים את הטקסט הבא ומדביקים אותו בתיבה יצירת מסנן, ומחליפים את הטקסט הקיים אם צריך:

      resource.type="gce_route"
      AND (protoPayload.methodName:"compute.routes.delete"
      OR protoPayload.methodName:"compute.routes.insert")

  6. לוחצים על יצירת מדד. יוצג אישור.

יצירת מדיניות התראות

  1. נכנסים לדף Log-based Metrics במסוף Google Cloud :

    כניסה אל מדדים מבוססי-יומנים

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Logging.

  2. בקטע מדדים שהוגדרו על ידי המשתמש, בוחרים את המדד שיצרתם בקטע הקודם.
  3. לוחצים על סמל האפשרויות הנוספות ואז על יצירת התראה ממדד.

    תיבת הדו-שיח תנאי חדש תיפתח עם אפשרויות המדד והמרת הנתונים שאוכלסו מראש.

  4. לוחצים על הבא.
    1. בודקים את ההגדרות שמולאו מראש. אולי תרצו לשנות את ערך הסף.
    2. לוחצים על שם התנאי ומזינים שם לתנאי.
  5. לוחצים על הבא.
  6. כדי להוסיף התראות למדיניות ההתראות, לוחצים על ערוצי התראות. בתיבת הדו-שיח, בוחרים ערוץ התראות אחד או יותר מהתפריט ולוחצים על אישור.

    כדי לקבל התראה כשאירועים נפתחים ונסגרים, מסמנים את התיבה Notify on incident closure. כברירת מחדל, ההתראות נשלחות רק כשנפתחים אירועים.

  7. אופציונלי: מעדכנים את משך הזמן עד לסגירה אוטומטית של אירוע. השדה הזה קובע מתי מערכת Monitoring סוגרת אירועים בהיעדר נתונים של מדדים.
  8. אופציונלי: לוחצים על תיעוד, ואז מוסיפים את המידע שרוצים לכלול בהודעת ההתראה.
  9. לוחצים על שם ההתראה ומזינים שם למדיניות ההתראה.
  10. לוחצים על יצירת מדיניות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Redis role used on org

שם הקטגוריה ב-API: REDIS_ROLE_USED_ON_ORG

הממצא הזה לא זמין להפעלות ברמת הפרויקט.

תפקיד IAM של Redis מוקצה ברמת הארגון או התיקייה.

צריך להקצות את תפקידי ה-IAM הבאים של Redis רק ברמת הפרויקט, ולא ברמת הארגון או התיקייה:

  • roles/redis.admin
  • roles/redis.viewer
  • roles/redis.editor

מידע נוסף זמין במאמר בקרת גישה והרשאות.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף מדיניות IAM במסוף Google Cloud .

    כניסה למדיניות IAM

  2. מסירים את תפקידי ה-IAM של Redis שמצוינים בממצא ומוסיפים אותם בפרויקטים הספציפיים במקום זאת.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Release channel disabled

שם הקטגוריה ב-API: RELEASE_CHANNEL_DISABLED

אף אשכול GKE לא רשום לערוץ הפצה.

כדי לשדרג את הגרסה של אשכול GKE באופן אוטומטי, צריך להירשם לערוץ הפצה. בנוסף, התכונות מפחיתות את מורכבות ניהול הגרסאות למספר התכונות ולרמת היציבות הנדרשת. מידע נוסף זמין במאמר בנושא ערוצי הפצה.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. בקטע Cluster basics (הגדרות בסיסיות של אשכול), לוחצים על Upgrade cluster master version (שדרוג הגרסה הראשית של האשכול) בשורה Release channel (ערוץ הפצה).

    אם חלו שינויים בהגדרות של האשכול לאחרונה, יכול להיות שהלחצן 'עריכה' יהיה מושבת. אם אתם לא מצליחים לערוך את הגדרות האשכול, כדאי להמתין כמה דקות ולנסות שוב.

  3. בתיבת הדו-שיח, בוחרים באפשרות ערוץ הפצה, ואז בוחרים את ערוץ ההפצה שאליו רוצים להירשם.

    אם אי אפשר לשדרג את גרסת רמת הבקרה של האשכול לערוץ הפצה, יכול להיות שהערוץ הזה יושבת כאפשרות.

  4. לוחצים על שמירת השינויים.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

RSASHA1 for signing

שם הקטגוריה ב-API: RSASHA1_FOR_SIGNING

‫RSASHA1 משמש לחתימת מפתחות באזורי Cloud DNS. האלגוריתם שמשמש לחתימת המפתח לא יכול להיות חלש.

כדי לפתור את הבעיה הזו, צריך להחליף את האלגוריתם באלגוריתם מומלץ. לשם כך, אפשר להיעזר במדריך בנושא שימוש באפשרויות מתקדמות לחתימה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Service account key not rotated

שם הקטגוריה ב-API: SERVICE_ACCOUNT_KEY_NOT_ROTATED

הממצא הזה לא זמין להפעלות ברמת הפרויקט.

לא בוצע רוטציה של מפתח לחשבון שירות בניהול משתמש במשך יותר מ-90 ימים.

באופן כללי, מומלץ לבצע רוטציה למפתחות של חשבונות שירות בניהול המשתמש לפחות כל 90 יום, כדי לוודא שלא תהיה גישה לנתונים באמצעות מפתח ישן שאולי אבד, נפרץ או נגנב. מידע נוסף מופיע במאמר ביצוע רוטציה למפתחות של חשבונות שירות כדי לצמצם את סיכון האבטחה שנוצר בגלל מפתחות שדלפו.

אם יצרתם בעצמכם את זוג המפתחות הציבוריים/הפרטיים, אחסנתם את המפתח הפרטי במודול אבטחת חומרה (HSM) והעליתם את המפתח הציבורי ל-Google, יכול להיות שלא תצטרכו לבצע רוטציה של המפתח כל 90 יום. במקום זאת, אפשר לבצע רוטציה למפתח אם חושדים שהוא נפרץ.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Service Accounts במסוף Google Cloud .

    לדף Service accounts

  2. אם צריך, בוחרים את הפרויקט שמצוין בתוצאת החיפוש.

  3. ברשימת חשבונות השירות, מחפשים את חשבון השירות שמופיע בתוצאה.

  4. לוחצים על הכרטיסייה מפתחות ומזהים את המפתח שרוצים להשבית.

  5. כדי להשבית את המפתח, פועלים לפי ההוראות במאמר השבתת מפתח לחשבון שירות.

  6. אופציונלי: אחרי שמוודאים שהמפתח כבר לא בשימוש, מוחקים את המפתח של חשבון השירות.

    מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Service account role separation

שם הקטגוריה ב-API: SERVICE_ACCOUNT_ROLE_SEPARATION

הממצא הזה לא זמין להפעלות ברמת הפרויקט.

לגורם מרכזי אחד או יותר בארגון שלכם הוקצו כמה הרשאות לחשבון שירות. לאף חשבון לא צריכות להיות בו-זמנית ההרשאה אדמין של חשבון שירות והרשאות אחרות של חשבון שירות. מידע על חשבונות שירות ועל התפקידים שזמינים להם מופיע במאמר חשבונות שירות.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף IAM במסוף Google Cloud .

    כניסה לדף IAM

  2. לכל חשבון ראשי שמופיע בממצא, מבצעים את הפעולות הבאות:

    1. כדי לבדוק אם התפקיד הועבר בירושה מתיקייה או ממשאב ארגוני, מסתכלים בעמודה העברה בירושה. אם העמודה מכילה קישור למשאב אב, לוחצים על הקישור כדי לעבור לדף IAM של משאב האב.
    2. לוחצים על עריכה לצד העיקרון.
    3. כדי להסיר הרשאות, לוחצים על מחיקה לצד אדמין של חשבון שירות. אם רוצים להסיר את כל ההרשאות של חשבון השירות, לוחצים על מחיקה לצד כל ההרשאות האחרות.
  3. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Shielded VM disabled

שם הקטגוריה ב-API: SHIELDED_VM_DISABLED

התכונה 'מכונה וירטואלית מוגנת' מושבתת במכונה הזו ב-Compute Engine.

מכונות וירטואליות מוגנות הן מכונות וירטואליות ב- Google Cloud שעברו חיזוק באמצעות קבוצה של אמצעי אבטחה שעוזרים להגן מפני ערכות rootkit ו-bootkit. מכונות וירטואליות מוגנות עוזרות לוודא שמנהל האתחול והקושחה חתומים ומאומתים. מידע נוסף על מכונה וירטואלית מוגנת

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. בוחרים את המופע שקשור לממצא של Security Health Analytics.

  3. בדף Instance details (פרטי המכונה) שנטען, לוחצים על Stop (עצירה).

  4. אחרי שהמופע מפסיק, לוחצים על עריכה.

  5. בקטע מכונה וירטואלית מוגנת, מעבירים את המתגים Turn on vTPM ו-Turn on Integrity Monitoring למצב מופעל כדי להפעיל את מכונה וירטואלית מוגנת.

  6. אופציונלי: אם אתם לא משתמשים במנהלי התקנים מותאמים אישית או לא חתומים, כדאי גם להפעיל את האתחול המאובטח.

  7. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance details.

  8. לוחצים על Start (התחלה) כדי להפעיל את המכונה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL CMEK disabled

שם הקטגוריה ב-API: SQL_CMEK_DISABLED

מופע של מסד נתונים מסוג SQL לא משתמש במפתחות הצפנה בניהול הלקוח (CMEK).

בעזרת CMEK, המפתחות שאתם יוצרים ומנהלים ב-Cloud KMS עוטפים את המפתחות שבהם Google משתמשת כדי להצפין את הנתונים שלכם, וכך אתם מקבלים יותר שליטה על הגישה לנתונים. מידע נוסף זמין במאמרי הסקירה הכללית של CMEK למוצר שלכם: Cloud SQL ל-MySQL, Cloud SQL ל-PostgreSQL או Cloud SQL ל-SQL Server. השימוש ב-CMEK כרוך בעלויות נוספות שקשורות ל-Cloud KMS.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על מחיקה.

  4. כדי ליצור מכונה חדשה עם CMEK מופעל, פועלים לפי ההוראות להגדרת CMEK למוצר:

    1. Cloud SQL ל-MySQL
    2. Cloud SQL ל-PostgreSQL
    3. Cloud SQL ל-SQL Server

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL contained database authentication

שם הקטגוריה ב-API: SQL_CONTAINED_DATABASE_AUTHENTICATION

במופע של מסד נתונים ב-Cloud SQL ל-SQL Server, הדגל של מסד הנתונים contained database authentication לא מוגדר לערך Off.

הדגל contained database authentication קובע אם אפשר ליצור או לצרף מסדי נתונים עצמאיים למנוע מסד הנתונים. מסד נתונים מוכלל כולל את כל ההגדרות ומטא-הנתונים שנדרשים להגדרת מסד הנתונים, ואין לו תלות בהגדרות של מופע מנוע מסד הנתונים שבו מסד הנתונים מותקן.

לא מומלץ להפעיל את הדגל הזה מהסיבות הבאות:

  • המשתמשים יכולים להתחבר למסד הנתונים בלי אימות ברמת מנוע מסד הנתונים.
  • בידוד מסד הנתונים ממנוע מסד הנתונים מאפשר להעביר את מסד הנתונים למופע אחר של SQL Server.

מסדי נתונים עצמאיים חשופים לאיומים ייחודיים שצריך להבין ולצמצם אותם על ידי מנהלי מנוע מסד הנתונים של SQL Server. רוב האיומים נובעים מתהליך האימות USER WITH PASSWORD, שמעביר את גבולות האימות מרמת מנוע מסד הנתונים לרמת מסד הנתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את דגל מסד הנתונים contained database authentication (אימות של מסד נתונים מוכל) עם הערך Off (מושבת).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL cross DB ownership chaining

שם הקטגוריה ב-API: SQL_CROSS_DB_OWNERSHIP_CHAINING

בדוגמה הזו, בדגל מסד הנתונים cross db ownership chaining של מופע מסד הנתונים של Cloud SQL ל-SQL Server מוגדר הערך Off.

הדגל cross db ownership chaining מאפשר לכם לשלוט בשרשור בעלות בין מסדי נתונים ברמת מסד הנתונים, או לאפשר שרשור בעלות בין מסדי נתונים לכל ההצהרות של מסד הנתונים.

לא מומלץ להפעיל את הדגל הזה אלא אם כל מסדי הנתונים שמארח מופע SQL Server משתתפים בשרשור בעלות בין מסדי נתונים, ואתם מודעים להשלכות האבטחה של ההגדרה הזו.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את דגל מסד הנתונים cross db ownership chaining (שרשור של בעלות על מסד נתונים) עם הערך Off (מושבת).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL external scripts enabled

שם הקטגוריה ב-API: SQL_EXTERNAL_SCRIPTS_ENABLED

במופע של מסד נתונים ב-Cloud SQL ל-SQL Server, הדגל של מסד הנתונים external scripts enabled מוגדר לערך Off.

כשההגדרה הזו מופעלת, היא מאפשרת הרצה של סקריפטים עם תוספים מסוימים של שפות מרוחקות. התכונה הזו עלולה לפגוע באבטחת המערכת, ולכן מומלץ להשבית אותה.

מידע נוסף זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל של מסד הנתונים external scripts enabled (הפעלת סקריפטים חיצוניים) עם הערך Off (מושבת).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL instance not monitored

שם הקטגוריה ב-API: SQL_INSTANCE_NOT_MONITORED

הממצא הזה לא זמין להפעלות ברמת הפרויקט.

מדדים והתראות ביומן לא מוגדרים למעקב אחרי שינויים בהגדרות של מופע Cloud SQL.

הגדרה שגויה של אפשרויות מופע SQL עלולה לגרום לסיכוני אבטחה. השבתה של אפשרויות הגיבוי האוטומטי והזמינות הגבוהה עלולה להשפיע על המשכיות עסקית, ואי הגבלת רשתות מורשות עלולה להגביר את החשיפה לרשתות לא מהימנות. מעקב אחרי שינויים בהגדרות של מופע SQL עוזר לצמצם את הזמן שנדרש לזיהוי ולתיקון של הגדרות שגויות.

מידע נוסף מופיע במאמר סקירה כללית של מדדים שמבוססים על יומנים.

העלויות של Cloud Monitoring יכולות להיות משמעותיות, בהתאם לכמות המידע. כדי להבין את השימוש בשירות ואת העלויות שלו, אפשר לעיין במחירון של Google Cloud Observability.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

יצירת מדד

  1. נכנסים לדף Logs-based Metrics במסוף Google Cloud .

    מעבר אל 'מדדים מבוססי-יומנים'

  2. לוחצים על יצירת מדד.

  3. בקטע סוג המדד, בוחרים באפשרות מונה.

  4. בקטע פרטים:

    1. מגדירים שם של מדד יומן.
    2. מוסיפים תיאור.
    3. מגדירים את Units (יחידות) לערך 1.
  5. בקטע בחירת מסנן, מעתיקים את הטקסט הבא ומדביקים אותו בתיבה יצירת מסנן, ומחליפים את הטקסט הקיים אם צריך:

      protoPayload.methodName="cloudsql.instances.update"
      OR protoPayload.methodName="cloudsql.instances.create"
      OR protoPayload.methodName="cloudsql.instances.delete"

  6. לוחצים על יצירת מדד. יוצג אישור.

יצירת מדיניות התראות

  1. נכנסים לדף Log-based Metrics במסוף Google Cloud :

    כניסה אל מדדים מבוססי-יומנים

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Logging.

  2. בקטע מדדים שהוגדרו על ידי המשתמש, בוחרים את המדד שיצרתם בקטע הקודם.
  3. לוחצים על סמל האפשרויות הנוספות ואז על יצירת התראה ממדד.

    תיבת הדו-שיח תנאי חדש תיפתח עם אפשרויות המדד והמרת הנתונים שאוכלסו מראש.

  4. לוחצים על הבא.
    1. בודקים את ההגדרות שמולאו מראש. אולי תרצו לשנות את ערך הסף.
    2. לוחצים על שם התנאי ומזינים שם לתנאי.
  5. לוחצים על הבא.
  6. כדי להוסיף התראות למדיניות ההתראות, לוחצים על ערוצי התראות. בתיבת הדו-שיח, בוחרים ערוץ התראות אחד או יותר מהתפריט ולוחצים על אישור.

    כדי לקבל התראה כשאירועים נפתחים ונסגרים, מסמנים את התיבה Notify on incident closure. כברירת מחדל, ההתראות נשלחות רק כשנפתחים אירועים.

  7. אופציונלי: מעדכנים את משך הזמן עד לסגירה אוטומטית של אירוע. השדה הזה קובע מתי מערכת Monitoring סוגרת אירועים בהיעדר נתונים של מדדים.
  8. אופציונלי: לוחצים על תיעוד, ואז מוסיפים את המידע שרוצים לכלול בהודעת ההתראה.
  9. לוחצים על שם ההתראה ומזינים שם למדיניות ההתראה.
  10. לוחצים על יצירת מדיניות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL local infile

שם הקטגוריה ב-API: SQL_LOCAL_INFILE

במופע של מסד נתונים ב-Cloud SQL ל-MySQL, הדגל local_infile של מסד הנתונים לא מוגדר לערך Off. בגלל בעיות אבטחה שקשורות לדגל local_infile, צריך להשבית אותו. מידע נוסף זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל local_infile של מסד הנתונים עם הערך Off (מושבת).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log checkpoints disabled

שם הקטגוריה ב-API: SQL_LOG_CHECKPOINTS_DISABLED

במכונת מסד נתונים של Cloud SQL ל-PostgreSQL, האפשרות log_checkpoints לא מוגדרת כ-On.

הפעלת log_checkpoints גורמת לנקודות ביקורת ולנקודות הפעלה מחדש להירשם ביומן השרת. חלק מהנתונים הסטטיסטיים נכללים בהודעות היומן, כולל מספר המאגרים שנכתבו והזמן שהושקע בכתיבתם.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags [דגלים של מסד הנתונים], מגדירים את הדגל log_checkpoints של מסד הנתונים עם הערך On [מופעל].

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log connections disabled

שם הקטגוריה ב-API: SQL_LOG_CONNECTIONS_DISABLED

במכונת מסד נתונים של Cloud SQL ל-PostgreSQL, האפשרות log_connections לא מוגדרת כ-On.

הפעלת ההגדרה log_connections גורמת לרישום ניסיונות חיבור לשרת, וגם להשלמה מוצלחת של אימות הלקוח. היומנים יכולים לעזור בפתרון בעיות ובאישור של ניסיונות חיבור לא רגילים לשרת.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_connections של מסד הנתונים עם הערך On (מופעל).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log disconnections disabled

שם הקטגוריה ב-API: SQL_LOG_DISCONNECTIONS_DISABLED

במכונת מסד נתונים של Cloud SQL ל-PostgreSQL, האפשרות log_disconnections לא מוגדרת כ-On.

הפעלת ההגדרה log_disconnections יוצרת רשומות ביומן בסוף כל סשן. היומנים שימושיים לפתרון בעיות ולאישור פעילות חריגה לאורך תקופה מסוימת. מידע נוסף זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את דגל מסד הנתונים log_disconnections עם הערך On (מופעל).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log duration disabled

שם הקטגוריה ב-API: SQL_LOG_DURATION_DISABLED

במכונת מסד נתונים ב-Cloud SQL ל-PostgreSQL, האפשרות log_duration לא מוגדרת כ-On.

כשההגדרה log_duration מופעלת, ההגדרה הזו גורמת לרישום של זמן הביצוע והמשך של כל הצהרה שהושלמה. מעקב אחרי משך הזמן שלוקח להריץ שאילתות יכול להיות חיוני לזיהוי שאילתות איטיות ולפתרון בעיות במסד הנתונים.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_duration של מסד הנתונים למצב On (מופעל).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log error verbosity

שם הקטגוריה ב-API: SQL_LOG_ERROR_VERBOSITY

במופע מסד נתונים של Cloud SQL ל-PostgreSQL, האפשרות log_error_verbosity לא מוגדרת כ-default או כ-verbose.

הדגל log_error_verbosity קובע את רמת הפירוט בהודעות שמתועדות ביומן. ככל שהפירוט גבוה יותר, כך יותר פרטים נרשמים בהודעות. מומלץ להגדיר את הדגל הזה לערך default או verbose.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_error_verbosity של מסד הנתונים לערך default (ברירת מחדל) או verbose (מפורט).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log lock waits disabled

שם הקטגוריה ב-API: SQL_LOG_LOCK_WAITS_DISABLED

במכונת מסד נתונים של Cloud SQL ל-PostgreSQL, האפשרות log_lock_waits לא מוגדרת כ-On.

הפעלת ההגדרה log_lock_waits יוצרת רשומות ביומן כשההמתנה של הסשן להשגת נעילה נמשכת יותר מהזמן של deadlock_timeout. היומנים עוזרים לקבוע אם ההמתנה לנעילה גורמת לביצועים ירודים.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_lock_waits של מסד הנתונים עם הערך On (מופעל).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log min duration statement enabled

שם הקטגוריה ב-API: SQL_LOG_MIN_DURATION_STATEMENT_ENABLED

הערך של הדגל log_min_duration_statement במסד הנתונים של Cloud SQL ל-PostgreSQL לא מוגדר ל-‎-1.

הדגל log_min_duration_statement גורם לרישום ביומן של הצהרות SQL שפועלות יותר זמן מהזמן שצוין. כדאי להשבית את ההגדרה הזו כי יכול להיות שהצהרות SQL יכילו מידע רגיש שלא צריך לתעד ביומן. מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_min_duration_statement של מסד הנתונים עם הערך ‎-1.

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log min error statement

שם הקטגוריה ב-API: SQL_LOG_MIN_ERROR_STATEMENT

לא הוגדר כראוי בדגל מסד הנתונים log_min_error_statement במכונת מסד נתונים של Cloud SQL ל-PostgreSQL.

הדגל log_min_error_statement קובע אם משפטי SQL שגורמים לתנאי שגיאה יתועדו ביומני השרת. הוראות SQL ברמת חומרה שצוינה או ברמה גבוהה יותר נרשמות ביומן עם הודעות לגבי הוראות השגיאה. ככל שהחומרה גבוהה יותר, כך פחות הודעות נרשמות.

אם log_min_error_statement לא מוגדר לערך הנכון, יכול להיות שהודעות לא יסווגו כהודעות שגיאה. אם רמת החומרה נמוכה מדי, יכול להיות שמספר ההודעות יגדל ויהיה קשה למצוא את השגיאות בפועל. אם רמת החומרה גבוהה מדי, יכול להיות שהודעות שגיאה לגבי שגיאות בפועל לא יתועדו.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_min_error_statement של מסד הנתונים עם אחד מהערכים המומלצים הבאים, בהתאם למדיניות הרישום ביומן של הארגון.

    • debug5
    • debug4
    • debug3
    • debug2
    • debug1
    • info
    • notice
    • warning
    • error
  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log min error statement severity

שם הקטגוריה ב-API: SQL_LOG_MIN_ERROR_STATEMENT_SEVERITY

לא הוגדר כראוי בדגל מסד הנתונים log_min_error_statement במכונת מסד נתונים של Cloud SQL ל-PostgreSQL.

הדגל log_min_error_statement קובע אם משפטי SQL שגורמים לתנאי שגיאה יתועדו ביומני השרת. הוראות SQL ברמת חומרה שצוינה או ברמה חמורה יותר מתועדות עם הודעות להוראות השגיאה. ככל שרמת החומרה גבוהה יותר, כך פחות הודעות נרשמות.

אם log_min_error_statement לא מוגדר לערך הנכון, יכול להיות שהודעות לא יסווגו כהודעות שגיאה. אם רמת החומרה נמוכה מדי, מספר ההודעות יגדל ויהיה קשה למצוא את השגיאות האמיתיות. רמת חומרה גבוהה מדי (מחמירה מדי) עלולה לגרום לכך שהודעות שגיאה לגבי שגיאות בפועל לא יתועדו.

מומלץ להגדיר את הדגל הזה לערך error או לערך מחמיר יותר.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_min_error_statement של מסד הנתונים עם אחד מהערכים המומלצים הבאים, בהתאם למדיניות הרישום ביומן של הארגון.

    • error
    • log
    • fatal
    • panic
  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log min messages

שם הקטגוריה ב-API: SQL_LOG_MIN_MESSAGES

במופע של מסד נתונים ב-Cloud SQL ל-PostgreSQL, האפשרות log_min_messages לא מוגדרת לפחות לערך warning.

הדגל log_min_messages קובע אילו רמות של הודעות יתועדו ביומני השרת. ככל שרמת החומרה גבוהה יותר, כך פחות הודעות נרשמות. הגדרת סף נמוך מדי עלולה להגדיל את הגודל והאורך של יומן הרישום, ולכן יהיה קשה למצוא שגיאות אמיתיות.

מידע נוסף זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags, מגדירים את דגל מסד הנתונים log_min_messages עם אחד מהערכים המומלצים הבאים, בהתאם למדיניות הרישום ביומן של הארגון.

    • debug5
    • debug4
    • debug3
    • debug2
    • debug1
    • info
    • notice
    • warning
  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log executor stats enabled

שם הקטגוריה ב-API: SQL_LOG_EXECUTOR_STATS_ENABLED

במופע של מסד נתונים ב-Cloud SQL ל-PostgreSQL, הדגל log_executor_stats לא מוגדר לערך Off.

כשהדגל log_executor_stats מופעל, נתוני הביצועים של מנהל הפעולות נכללים ביומנים של PostgreSQL לכל שאילתה. ההגדרה הזו יכולה להיות שימושית לפתרון בעיות, אבל היא יכולה להגדיל באופן משמעותי את מספר היומנים ואת תקורה הביצועים.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוף Google Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_executor_stats של מסד הנתונים למצב Off (מושבת).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log hostname enabled

שם הקטגוריה ב-API: ‏ `SQL_LOG_HOSTNAME_ENABLED

במופע של מסד נתונים ב-Cloud SQL ל-PostgreSQL, הדגל log_hostname של מסד הנתונים לא מוגדר לערך Off.

כשהדגל log_hostname מופעל, שם המארח של המארח המתחבר נרשם ביומן. כברירת מחדל, בהודעות של יומן החיבורים מוצגת רק כתובת ה-IP. ההגדרה הזו יכולה להיות שימושית לפתרון בעיות. עם זאת, היא עלולה להעמיס על ביצועי השרת, כי עבור כל הצהרה שנרשמת ביומן, נדרש פענוח DNS כדי להמיר כתובת IP לשם מארח.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוף Google Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_hostname של מסד הנתונים למצב Off (מושבת).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log parser stats enabled

שם הקטגוריה ב-API: SQL_LOG_PARSER_STATS_ENABLED

במופע של מסד נתונים ב-Cloud SQL ל-PostgreSQL, האפשרות log_parser_stats לא מוגדרת כOff.

כשמפעילים את הדגל log_parser_stats, נתוני הביצועים של כלי הניתוח נכללים ביומנים של PostgreSQL לכל שאילתה. האפשרות הזו יכולה להיות שימושית לפתרון בעיות, אבל היא עלולה להגדיל באופן משמעותי את מספר היומנים ואת תקורה הביצועים.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוף Google Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_parser_stats של מסד הנתונים למצב Off (מושבת).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log planner stats enabled

שם הקטגוריה ב-API: SQL_LOG_PLANNER_STATS_ENABLED

במופע של מסד נתונים ב-Cloud SQL ל-PostgreSQL, הדגל log_planner_stats של מסד הנתונים לא מוגדר לערך Off.

כשהדגל log_planner_stats מופעל, נעשה שימוש בשיטת פרופיל גולמית לרישום נתוני הביצועים של מתכנן PostgreSQL. האפשרות הזו יכולה להיות שימושית לפתרון בעיות, אבל היא עלולה להגדיל באופן משמעותי את מספר היומנים ואת תקורה הביצועים.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוף Google Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_planner_stats של מסד הנתונים למצב Off (מושבת).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log statement

שם הקטגוריה ב-API: SQL_LOG_STATEMENT

במופע מסד נתונים של Cloud SQL ל-PostgreSQL, הדגל log_statement לא מוגדר לערך ddl.

הערך של הדגל הזה קובע אילו הצהרות SQL נרשמות ביומן. רישום ביומן עוזר לפתור בעיות תפעוליות ומאפשר ניתוח פורנזי. אם הדגל הזה לא מוגדר לערך הנכון, יכול להיות שמידע רלוונטי ידלג או יוסתר ביותר מדי הודעות. מומלץ להשתמש בערך ddl (כל ההצהרות להגדרת נתונים), אלא אם מדיניות הרישום ביומן של הארגון שלכם קובעת אחרת.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוף Google Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags, מגדירים את דגל מסד הנתונים log_statement לערך ddl.

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log statement stats enabled

שם הקטגוריה ב-API: SQL_LOG_STATEMENT_STATS_ENABLED

במופע של מסד נתונים ב-Cloud SQL ל-PostgreSQL, הדגל log_statement_stats לא מוגדר לערך Off.

כשמפעילים את הדגל log_statement_stats, נתוני ביצועים מקצה לקצה נכללים ביומנים של PostgreSQL לכל שאילתה. ההגדרה הזו יכולה להיות שימושית לפתרון בעיות, אבל היא יכולה להגדיל באופן משמעותי את מספר היומנים ואת תקורה הביצועים.

מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוף Google Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_statement_stats של מסד הנתונים למצב Off (מושבת).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL log temp files

שם הקטגוריה ב-API: SQL_LOG_TEMP_FILES

במכונת מסד נתונים של Cloud SQL ל-PostgreSQL, הדגל log_temp_files של מסד הנתונים לא מוגדר לערך 0.

אפשר ליצור קבצים זמניים למיון, לגיבוב ולתוצאות זמניות של שאילתות. הגדרת הדגל log_temp_files לערך 0 גורמת לרישום ביומן של כל המידע על הקבצים הזמניים. רישום ביומן של כל הקבצים הזמניים שימושי לזיהוי בעיות פוטנציאליות בביצועים. מידע נוסף זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוף Google Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), מגדירים את הדגל log_temp_files של מסד הנתונים עם הערך 0.

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL no root password

שם הקטגוריה ב-API: SQL_NO_ROOT_PASSWORD

לא מוגדרת סיסמה לחשבון הבסיס במופע של מסד נתונים של MySQL. מומלץ להוסיף סיסמה למופע של מסד הנתונים MySQL. מידע נוסף זמין במאמר בנושא משתמשי MySQL.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. בדף Instance details שנטען, בוחרים בכרטיסייה Users.

  4. לצד המשתמש root, לוחצים על סמל האפשרויות הנוספות , ואז בוחרים באפשרות שינוי סיסמה.

  5. מזינים סיסמה חדשה וחזקה ולוחצים על אישור.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL public IP

שם הקטגוריה ב-API: SQL_PUBLIC_IP

למסד נתונים ב-Cloud SQL יש כתובת IP ציבורית.

כדי לצמצם את שטח הפנים של הארגון להתקפות, למסדי נתונים של Cloud SQL לא צריכות להיות כתובות IP ציבוריות. כתובות IP פרטיות מספקות אבטחת רשת משופרת וזמן אחזור נמוך יותר לאפליקציה.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוף Google Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. בתפריט הצד שמימין, לוחצים על Connections (חיבורים).

  4. לוחצים על הכרטיסייה Networking (רשת) ומבטלים את הסימון של התיבה Public IP (כתובת IP ציבורית).

  5. אם המכונה לא מוגדרת כבר לשימוש בכתובת IP פרטית, אפשר לעיין במאמר בנושא הגדרת כתובת IP פרטית למכונה קיימת.

  6. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL remote access enabled

שם הקטגוריה ב-API: SQL_REMOTE_ACCESS_ENABLED

במופע של מסד נתונים ב-Cloud SQL ל-SQL Server, הדגל של מסד הנתונים remote access מוגדר לערך Off.

כשההגדרה הזו מופעלת, היא מעניקה הרשאה להפעיל פרוצדורות מאוחסנות מקומיות משרתים מרוחקים או פרוצדורות מאוחסנות מרוחקות מהשרת המקומי. גורמים זדוניים יכולים לנצל לרעה את הפונקציונליות הזו כדי להפעיל התקפת מניעת שירות (DoS) על שרתים מרוחקים, על ידי העברת עיבוד השאילתות ליעד. כדי למנוע שימוש לרעה, מומלץ להשבית את ההגדרה הזו.

מידע נוסף זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Flags (דגלים), מגדירים את remote access (גישה מרחוק) לOff (מושבת).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL skip show database disabled

שם הקטגוריה ב-API: SQL_SKIP_SHOW_DATABASE_DISABLED

במכונת מסד נתונים של Cloud SQL ל-MySQL, הדגל skip_show_database של מסד הנתונים לא מוגדר לערך On.

כשהדגל הזה מופעל, משתמשים לא יכולים להשתמש בהצהרה SHOW DATABASES אם אין להם את ההרשאה SHOW DATABASES. אם בוחרים בהגדרה הזו, משתמשים שלא קיבלו הרשאה מפורשת לא יכולים לראות מסדי נתונים ששייכים למשתמשים אחרים. מומלץ להפעיל את הדגל הזה.

מידע נוסף זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Flags, מגדירים את האפשרות skip_show_database למצב On.

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL trace flag 3625

שם הקטגוריה ב-API: SQL_TRACE_FLAG_3625

במופע של מסד נתונים ב-Cloud SQL ל-SQL Server, האפשרות 3625 (trace flag) לא מוגדרת כOn.

הדגל הזה מגביל את כמות המידע שמוחזר למשתמשים שלא חברים בתפקיד השרת הקבוע sysadmin, על ידי מיסוך הפרמטרים של חלק מהודעות השגיאה באמצעות כוכביות (******). כדי למנוע חשיפה של מידע רגיש, מומלץ להפעיל את הדגל הזה.

מידע נוסף זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags, מגדירים את 3625 למצב On.

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL user connections configured

שם הקטגוריה ב-API: SQL_USER_CONNECTIONS_CONFIGURED

במופע של מסד נתונים ב-Cloud SQL ל-SQL Server מוגדר הדגל user connections של מסד הנתונים.

האפשרות user connections מציינת את המספר המקסימלי של חיבורי משתמשים בו-זמנית שמותרים במופע של SQL Server. מכיוון שמדובר באפשרות דינמית (הגדרה עצמית), שרת SQL מתאים את המספר המקסימלי של חיבורי משתמשים באופן אוטומטי לפי הצורך, עד הערך המקסימלי המותר. ערך ברירת המחדל הוא 0, כלומר מותרים עד 32,767 חיבורים של משתמשים. לכן, אנחנו לא ממליצים להגדיר את דגל מסד הנתונים user connections.

מידע נוסף זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), לצד user connections (חיבורי משתמשים), לוחצים על Delete (מחיקה).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL user options configured

שם הקטגוריה ב-API: SQL_USER_OPTIONS_CONFIGURED

מוגדר דגל מסד הנתונים user options במכונת מסד נתונים של Cloud SQL ל-SQL Server.

ההגדרה הזו מבטלת את ערכי ברירת המחדל הגלובליים של אפשרויות ה-SET עבור כל המשתמשים. יכול להיות שמשתמשים ואפליקציות יניחו שאפשרויות ברירת המחדל של מסד הנתונים SET נמצאות בשימוש, ולכן הגדרת אפשרויות המשתמש עלולה לגרום לתוצאות לא צפויות. לכן, אנחנו לא ממליצים להגדיר את דגל מסד הנתונים user options.

מידע נוסף זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוףGoogle Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. לוחצים על עריכה.

  4. בקטע Database flags (דגלים של מסד הנתונים), לצד user options (אפשרויות משתמש), לוחצים על Delete (מחיקה).

  5. לוחצים על Save. ההגדרה החדשה מופיעה בדף Instance overview.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SQL weak root password

שם הקטגוריה ב-API: SQL_WEAK_ROOT_PASSWORD

במופע של מסד נתונים של MySQL מוגדרת סיסמה חלשה לחשבון הבסיס. מומלץ להגדיר סיסמה חזקה למופע. מידע נוסף זמין במאמר בנושא משתמשי MySQL.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances במסוף Google Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. בדף Instance details שנטען, בוחרים בכרטיסייה Users.

  4. לצד המשתמש root, לוחצים על סמל האפשרויות הנוספות , ואז בוחרים באפשרות שינוי סיסמה.

  5. מזינים סיסמה חדשה וחזקה ולוחצים על אישור.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

SSL not enforced

שם הקטגוריה ב-API: SSL_NOT_ENFORCED

לא נדרש שכל החיבורים הנכנסים למכונת מסד נתונים ב-Cloud SQL יהיו מוצפנים באמצעות SSL.

כדי למנוע דליפה של מידע אישי רגיש בזמן העברה דרך תקשורת לא מוצפנת, כל החיבורים הנכנסים למופע של מסד הנתונים SQL צריכים להשתמש ב-SSL. מידע נוסף על הגדרת SSL/TLS

כדי לתקן את הממצא הזה, צריך לאפשר רק חיבורי SSL למופעי SQL:

  1. נכנסים לדף Cloud SQL Instances במסוף Google Cloud .

    כניסה לדף Cloud SQL Instances

  2. בוחרים את המופע שמופיע בתוצאה של Security Health Analytics.

  3. בכרטיסייה Connections (חיבורים), לוחצים על Allow only SSL connections (אפשר רק חיבורי SSL) או על Require trusted client certificates (נדרשים אישורי לקוח מהימנים). מידע נוסף זמין במאמר בנושא החלת הצפנה באמצעות SSL/TLS.

  4. אם בחרתם באפשרות דרישת אישורי לקוח מהימנים, צריך ליצור אישור לקוח חדש. מידע נוסף זמין במאמר בנושא יצירת אישור לקוח חדש.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Too many KMS users

שם הקטגוריה ב-API: TOO_MANY_KMS_USERS

הגבלת מספר המשתמשים העיקריים שיכולים להשתמש במפתחות קריפטוגרפיים לשלושה. התפקידים המוגדרים מראש הבאים מעניקים הרשאות להצפנה, לפענוח או לחתימה של נתונים באמצעות מפתחות קריפטוגרפיים:

  • roles/owner
  • roles/cloudkms.cryptoKeyEncrypterDecrypter
  • roles/cloudkms.cryptoKeyEncrypter
  • roles/cloudkms.cryptoKeyDecrypter
  • roles/cloudkms.signer
  • roles/cloudkms.signerVerifier

מידע נוסף זמין במאמר בנושא הרשאות ותפקידים.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Cloud KMS keys במסוף Google Cloud .

    עוברים אל מפתחות Cloud KMS

  2. לוחצים על השם של אוסף המפתחות שמצוין בתוצאת החיפוש.

  3. לוחצים על שם המפתח שמצוין בתוצאה.

  4. מסמנים את התיבה לצד הגרסה הראשית ולוחצים על הצגת חלונית המידע.

  5. מצמצמים את מספר הגורמים שיש להם הרשאות להצפנה, לפענוח או לחתימה של נתונים לשלושה או פחות. כדי לבטל הרשאות, לוחצים על מחיקה לצד כל חשבון ראשי.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Unconfirmed AppArmor profile

שם הקטגוריה ב-API: GKE_APP_ARMOR

אפשר להגדיר קונטיינר באופן מפורש כך שלא יוגבל על ידי AppArmor. כך מוודאים שלא מוחל פרופיל AppArmor על הקונטיינר, ולכן הוא לא מוגבל על ידי פרופיל. השבתה של אמצעי בקרה למניעת סיכונים מגבירה את הסיכון לפירצה בקונטיינר.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים בעומסי העבודה המושפעים:

  1. פותחים את המניפסט של כל עומס עבודה מושפע.
  2. מגדירים את השדות המוגבלים הבאים לאחד מהערכים המותרים.

שדות מוגבלים

  • metadata.annotations["container.apparmor.security.beta.kubernetes.io/*"]

ערכים מותרים

  • FALSE

User managed service account key

שם הקטגוריה ב-API: USER_MANAGED_SERVICE_ACCOUNT_KEY

משתמש מנהל מפתח של חשבון שירות. מפתחות של חשבונות שירות מהווים סיכון אבטחה אם לא מנהלים אותם בצורה נכונה. כשזה אפשרי, מומלץ לבחור שיטה מאובטחת יותר ממפתחות של חשבונות שירות. אם אתם מוכרחים לבצע אימות באמצעות מפתח של חשבון שירות, באחריותכם לאבטח את המפתח הפרטי ולבצע פעולות אחרות שמתוארות במאמר שיטות מומלצות לניהול מפתחות לחשבונות שירות. אם אתם לא יכולים ליצור מפתח לחשבון שירות, יכול להיות שהיצירה של מפתחות לחשבון שירות מושבתת בארגון שלכם. מידע נוסף מופיע במאמר בנושא ניהול משאבי ארגון שמוגדרים כמאובטחים כברירת מחדל.

אם קיבלתם את המפתח של חשבון השירות ממקור חיצוני, אתם צריכים לאמת אותו לפני השימוש. מידע נוסף זמין במאמר בנושא דרישות אבטחה לפרטי כניסה ממקור חיצוני.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

  1. נכנסים לדף Service Accounts במסוף Google Cloud .

    לדף Service accounts

  2. אם צריך, בוחרים את הפרויקט שמצוין בתוצאת החיפוש.

  3. אם מפתחות של חשבונות שירות בניהול משתמש לא נמצאים בשימוש באף אפליקציה, מוחקים אותם.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Weak SSL policy

שם הקטגוריה ב-API: WEAK_SSL_POLICY

במופע של Compute Engine מוגדרת מדיניות SSL חלשה או נעשה שימוש במדיניות SSL שמוגדרת כברירת מחדל ב- Google Cloudעם גרסת TLS שקטנה מ-1.2.

מאזני עומסים של HTTPS ושל שרת proxy של SSL משתמשים במדיניות SSL כדי לקבוע את הפרוטוקול ואת חבילות ההצפנה שמשמשים בחיבורי TLS שנוצרים בין משתמשים לבין האינטרנט. החיבורים האלה מצפינים נתונים רגישים כדי למנוע גישה של האזנות זדוניות. מדיניות SSL חלשה מאפשרת ללקוחות שמשתמשים בגרסאות מיושנות של TLS להתחבר עם סט אלגוריתמים להצפנה (cipher suite) או פרוטוקול פחות מאובטחים. רשימה של סטים מומלצים ומיושנים של אלגוריתמים להצפנה זמינה בדף הפרמטרים של TLS ב-iana.org.

אם הפעלתם את Security Command Center Premium ברמת הפרויקט, הממצא הזה זמין רק אם מסלול Standard-legacy מופעל בארגון האב.

שלבי התיקון של הממצא הזה משתנים בהתאם לגורם שהפעיל אותו. יכול להיות שהגורם הוא שימוש במדיניות SSL שמוגדרת כברירת מחדל ב- Google Cloud או במדיניות SSL שמאפשרת סט אלגוריתמים להצפנה (cipher suite) חלש או גרסת TLS מינימלית שקטנה מ-1.2. פועלים לפי התהליך שמתאים לטריגר של הממצא.

תיקון של מדיניות SSL שמוגדרת כברירת מחדל Google Cloud

  1. נכנסים לדף Target proxies במסוף Google Cloud .

    מעבר אל Target proxies

  2. מחפשים את שרת ה-proxy של היעד שמצוין בממצא ורושמים את כללי ההעברה בעמודה בשימוש על ידי.

  3. כדי ליצור מדיניות SSL חדשה, אפשר לעיין במאמר בנושא שימוש במדיניות SSL. במדיניות צריך להיות פרופיל מודרני או מוגבל וגרסת TLS מינימלית של 1.2.

  4. כדי להשתמש בפרופיל Custom , צריך לוודא שחבילות ההצפנה הבאות מושבתות:

    • TLS_RSA_WITH_AES_128_GCM_SHA256
    • TLS_RSA_WITH_AES_256_GCM_SHA384
    • TLS_RSA_WITH_AES_128_CBC_SHA
    • TLS_RSA_WITH_AES_256_CBC_SHA
    • TLS_RSA_WITH_3DES_EDE_CBC_SHA
  5. מחילים את מדיניות ה-SSL על כל כלל העברה שרשמתם קודם.

תיקון שגיאות של סט אלגוריתמים להצפנה (cipher suite) חלש או גרסת TLS נמוכה

  1. נכנסים לדף SSL policies במסוף Google Cloud .

    מעבר למדיניות SSL

  2. מחפשים את מאזן העומסים שמצוין בעמודה בשימוש על ידי.

  3. לוחצים מתחת לשם המדיניות.

  4. לוחצים על עריכה.

  5. משנים את גרסת TLS מינימלית ל-TLS 1.2 ואת פרופיל ל-Modern או ל-Restricted.

  6. כדי להשתמש בפרופיל Custom, צריך לוודא שחבילות ההצפנה הבאות מושבתות:

    • TLS_RSA_WITH_AES_128_GCM_SHA256
    • TLS_RSA_WITH_AES_256_GCM_SHA384
    • TLS_RSA_WITH_AES_128_CBC_SHA
    • TLS_RSA_WITH_AES_256_CBC_SHA
    • TLS_RSA_WITH_3DES_EDE_CBC_SHA
  7. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Web UI enabled

שם הקטגוריה ב-API: WEB_UI_ENABLED

ממשק האינטרנט (מרכז הבקרה) של GKE מופעל.

חשבונות שירות ב-Kubernetes עם הרשאות גבוהות מגבים את ממשק האינטרנט של Kubernetes. אם חשבון השירות נפרץ, אפשר לנצל אותו לרעה. אם אתם כבר משתמשים במסוף Google Cloud , ממשק האינטרנט של Kubernetes מרחיב את שטח הפנים של המתקפה שלא לצורך. מידע נוסף על השבתת ממשק האינטרנט של Kubernetes

כדי לפתור את הבעיה הזו, צריך להשבית את ממשק האינטרנט של Kubernetes:

  1. נכנסים לדף Kubernetes clusters במסוף Google Cloud .

    מעבר אל Kubernetes clusters

  2. לוחצים על שם האשכול שמופיע בתוצאת הבדיקה של Security Health Analytics.

  3. לוחצים על עריכה.

    אם חלו שינויים בהגדרת האשכול לאחרונה, יכול להיות שהלחצן 'עריכה' יהיה מושבת. אם אתם לא מצליחים לערוך את הגדרות האשכול, כדאי להמתין כמה דקות ולנסות שוב.

  4. לוחצים על תוספים. הקטע יורחב ויוצגו בו התוספים הזמינים.

  5. ברשימה הנפתחת Kubernetes dashboard, בוחרים באפשרות Disabled (מושבת).

  6. לוחצים על Save.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Workload Identity disabled

שם הקטגוריה ב-API: WORKLOAD_IDENTITY_DISABLED

איחוד זהויות של עומסי עבודה ל-GKE מושבת באשכול GKE.

איחוד זהויות של עומסי עבודה ל-GKE הוא הדרך המומלצת לגשת לשירותיGoogle Cloud מתוך GKE, כי הוא מציע מאפייני אבטחה וניהול משופרים. הפעלת התכונה מאפשרת להשתמש במדיניות IAM כדי להעניק לעומסי עבודה של Kubernetes באשכול GKE גישה לממשקי API ספציפיים של Google Cloud בלי להצטרך להגדיר את הגישה באופן ידני או להשתמש בשיטות פחות מאובטחות כמו קובצי מפתחות של חשבונות שירות.

כדי לפתור את הבעיה, אפשר לעיין במאמר בנושא אימות ל-APIs Google Cloud מעומסי עבודה ב-GKE.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

תיקון של הגדרות שגויות ב-AWS

AWS Cloud Shell Full Access Restricted

שם הקטגוריה ב-API: ACCESS_AWSCLOUDSHELLFULLACCESS_RESTRICTED

‫AWS CloudShell היא דרך נוחה להריץ פקודות CLI בשירותי AWS. מדיניות IAM מנוהלת (AWSCloudShellFullAccess) מספקת גישה מלאה ל-CloudShell, שמאפשרת העלאה והורדה של קבצים בין המערכת המקומית של המשתמש לבין סביבת CloudShell. בסביבת Cloud Shell, למשתמש יש הרשאות sudo והוא יכול לגשת לאינטרנט. לכן אפשר להתקין תוכנה להעברת קבצים (לדוגמה) ולהעביר נתונים מ-CloudShell לשרתים חיצוניים באינטרנט.

המלצה: צריך לוודא שהגישה ל-AWSCloudShellFullAccess מוגבלת

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. פותחים את מסוף IAM בכתובת https://console.aws.amazon.com/iam/
  2. בחלונית הימנית, בוחרים באפשרות 'כללי מדיניות'.
  3. מחפשים את AWSCloudShellFullAccess ובוחרים בו
  4. בכרטיסייה 'ישויות מצורפות', מסמנים את התיבה לצד כל פריט ולוחצים על 'ניתוק'.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Access Keys Rotated Every 90 Days or Less

שם הקטגוריה ב-API: ACCESS_KEYS_ROTATED_90_DAYS_LESS

מפתחות גישה מורכבים ממזהה מפתח גישה וממפתח גישה סודי, שמשמשים לחתימה על בקשות תוכנתיות ששולחים ל-AWS. משתמשי AWS צריכים מפתחות גישה משלהם כדי לבצע קריאות תוכנה ל-AWS מ-AWS Command Line Interface (‏AWS CLI),‏ Tools for Windows PowerShell,‏ AWS SDKs או קריאות HTTP ישירות באמצעות ממשקי ה-API לשירותי AWS נפרדים. מומלץ לבצע רוטציה של כל מפתחות הגישה באופן קבוע.

המלצה: הקפידו לבצע רוטציה של מפתחות הגישה כל 90 יום או פחות

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. עוברים אל מסוף הניהול (https://console.aws.amazon.com/iam)
  2. לוחצים על Users
  3. לוחצים על Security Credentials
  4. בתור אדמין
    – לוחצים על Make Inactive ליד מפתחות שלא עברו רוטציה ב-90 ימים
  5. כמשתמש IAM
    – לוחצים על Make Inactive או על Delete עבור מפתחות שלא עברו רוטציה או שלא נעשה בהם שימוש במשך 90 ימים
  6. לוחצים על Create Access Key
  7. עדכון של קריאה פרוגרמטית עם פרטי כניסה חדשים של מפתח גישה

AWS CLI

  1. בזמן שמפתח הגישה הראשון עדיין פעיל, יוצרים מפתח גישה שני שפעיל כברירת מחדל. מריצים את הפקודה הבאה:
aws iam create-access-key

בשלב הזה, למשתמש יש שני מפתחות גישה פעילים.

  1. מעדכנים את כל האפליקציות והכלים כדי שישתמשו במפתח הגישה החדש.
  2. כדי לבדוק אם מפתח הגישה הראשון עדיין בשימוש, משתמשים בפקודה הבאה:
aws iam get-access-key-last-used
  1. אפשרות אחת היא לחכות כמה ימים ואז לבדוק אם נעשה שימוש במפתח הגישה הישן לפני שממשיכים.

גם אם בשלב 3 לא מצוין שימוש במפתח הישן, מומלץ לא למחוק מיד את מפתח הגישה הראשון. במקום זאת, משנים את הסטטוס של מפתח הגישה הראשון ל-Inactive (לא פעיל) באמצעות הפקודה הבאה:

aws iam update-access-key
  1. משתמשים רק במפתח הגישה החדש כדי לוודא שהאפליקציות פועלות. אפליקציות וכלים שעדיין משתמשים במפתח הגישה המקורי יפסיקו לפעול בשלב הזה, כי לא תהיה להם יותר גישה למשאבי AWS. אם אתם מוצאים אפליקציה או כלי כאלה, אתם יכולים לשנות את המצב שלהם בחזרה ל'פעיל' כדי להפעיל מחדש את מקש הגישה הראשון. לאחר מכן חוזרים לשלב 2 ומעדכנים את האפליקציה הזו כדי להשתמש במפתח החדש.

  2. אחרי שמחכים פרק זמן מסוים כדי לוודא שכל האפליקציות והכלים עודכנו, אפשר למחוק את מפתח הגישה הראשון באמצעות הפקודה הבאה:

aws iam delete-access-key

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

All Expired Ssl Tls Certificates Stored Aws Iam Removed

שם הקטגוריה ב-API: ALL_EXPIRED_SSL_TLS_CERTIFICATES_STORED_AWS_IAM_REMOVED

כדי להפעיל חיבורי HTTPS לאתר או לאפליקציה ב-AWS, צריך אישור שרת SSL/TLS. אתם יכולים להשתמש ב-ACM או ב-IAM כדי לאחסן ולפרוס אישורי שרת.
משתמשים ב-IAM כמנהל אישורים רק כשצריך לתמוך בחיבורי HTTPS באזור שלא נתמך על ידי ACM. מערכת IAM מצפינה באופן מאובטח את המפתחות הפרטיים שלכם ומאחסנת את הגרסה המוצפנת באחסון אישורי ה-SSL של IAM. ‫IAM תומך בפריסת אישורי שרת בכל האזורים, אבל אתם צריכים לקבל את האישור מספק חיצוני כדי להשתמש בו ב-AWS. אי אפשר להעלות אישור ACM ל-IAM. בנוסף, אי אפשר לנהל את האישורים דרך מסוף IAM.

המלצה: חשוב לוודא שכל אישורי ה-SSL/TLS שפג תוקפם ומאוחסנים ב-AWS IAM הוסרו

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

בשלב הזה, אי אפשר להסיר אישורים שתוקפם פג דרך מסוף הניהול של AWS. כדי למחוק אישורי SSL/TLS שמאוחסנים ב-IAM דרך AWS API, משתמשים בממשק שורת הפקודה (CLI).

AWS CLI

כדי למחוק אישור שפג תוקפו, מריצים את הפקודה הבאה ומחליפים את CERTIFICATE_NAME בשם האישור שרוצים למחוק:

aws iam delete-server-certificate --server-certificate-name <CERTIFICATE_NAME>

אם הפקודה הקודמת מצליחה, היא לא מחזירה פלט.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Autoscaling Group Elb Healthcheck Required

שם הקטגוריה ב-API: AUTOSCALING_GROUP_ELB_HEALTHCHECK_REQUIRED

הבדיקה הזו בודקת אם קבוצות ה-Auto Scaling שמשויכות למאזן עומסים משתמשות בבדיקות תקינות של Elastic Load Balancing.

כך אפשר לוודא שהקבוצה תוכל לקבוע את תקינות המופע על סמך בדיקות נוספות שסופקו על ידי מאזן העומסים. שימוש בבדיקות תקינות של Elastic Load Balancing יכול לעזור לתמוך בזמינות של אפליקציות שמשתמשות בקבוצות של EC2 Auto Scaling.

המלצה: בדיקה שכל קבוצות ההרחבה האוטומטית שמשויכות למאזן עומסים משתמשות בבדיקות תקינות

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

כדי להפעיל בדיקות תקינות של Elastic Load Balancing

  1. פותחים את מסוף Amazon EC2 בכתובת https://console.aws.amazon.com/ec2/.
  2. בחלונית הניווט, בקטע Auto Scaling, בוחרים באפשרות Auto Scaling Groups.
  3. מסמנים את התיבה של הקבוצה.
  4. בוחרים באפשרות 'עריכה'.
  5. בקטע Health checks (בדיקות תקינות), בשדה Health check type (סוג בדיקת תקינות), בוחרים באפשרות ELB.
  6. בשדה Health check grace period (תקופת חסד לבדיקת תקינות), מזינים 300.
  7. בחלק התחתון של הדף, בוחרים באפשרות 'עדכון'.

מידע נוסף על שימוש במאזן עומסים עם קבוצת Auto Scaling זמין במדריך למשתמש של AWS Auto Scaling.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Auto Minor Version Upgrade Feature Enabled Rds Instances

שם הקטגוריה ב-API: AUTO_MINOR_VERSION_UPGRADE_FEATURE_ENABLED_RDS_INSTANCES

כדי לקבל שדרוגים אוטומטיים של גרסאות משניות של המנוע במהלך חלון זמן לתחזוקה שצוין, צריך לוודא שהדגל Auto Minor Version Upgrade (שדרוג אוטומטי של גרסה משנית) מופעל במכונות של מסד הנתונים של RDS. כך, מופעי RDS יכולים לקבל את התכונות החדשות, תיקוני הבאגים ותיקוני האבטחה למנועי מסדי הנתונים שלהם.

המלצה: מוודאים שהתכונה 'שדרוג אוטומטי של גרסה משנית' מופעלת עבור מופעי RDS

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. מתחברים למסוף הניהול של AWS ועוברים למרכז הבקרה של RDS בכתובת https://console.aws.amazon.com/rds/.
  2. בחלונית הניווט הימנית, לוחצים על Databases.
  3. בוחרים את מופע ה-RDS שרוצים לעדכן.
  4. לוחצים על הלחצן Modify בפינה השמאלית העליונה.
  5. בדף Modify DB Instance: <instance identifier>, בקטע Maintenance, בוחרים באפשרות Auto minor version upgrade ולוחצים על לחצן הבחירה Yes.
  6. בתחתית הדף, לוחצים על Continue, מסמנים את התיבה לצד 'החלה מיידית' כדי להחיל את השינויים באופן מיידי, או בוחרים באפשרות Apply during the next scheduled maintenance window כדי למנוע השבתה.
  7. בודקים את השינויים ולוחצים על Modify DB Instance. סטטוס המופע צריך להשתנות מ'זמין' ל'בשינוי' ואז לחזור ל'זמין'. אחרי הפעלת התכונה, הסטטוס Auto Minor Version Upgrade אמור להשתנות לYes.

AWS CLI

  1. מריצים את הפקודה describe-db-instances כדי לקבל רשימה של כל שמות המופעים של מסד הנתונים של RDS שזמינים באזור AWS שנבחר:
aws rds describe-db-instances --region <regionName> --query 'DBInstances[*].DBInstanceIdentifier'
  1. פלט הפקודה צריך להחזיר את המזהה של כל מופע של מסד הנתונים.
  2. מריצים את הפקודה modify-db-instance כדי לשנות את ההגדרה של מופע ה-RDS שנבחר. הפקודה הזו תחיל את השינויים באופן מיידי. מסירים את --apply-immediately כדי להחיל את השינויים במהלך חלון זמן לתחזוקה המתוזמן הבא וכדי למנוע השבתה:
aws rds modify-db-instance --region <regionName> --db-instance-identifier <dbInstanceIdentifier> --auto-minor-version-upgrade --apply-immediately
  1. פלט הפקודה צריך לחשוף את המטא-נתונים החדשים של התצורה עבור מופע ה-RDS ולבדוק את ערך הפרמטר AutoMinorVersionUpgrade.
  2. מריצים את הפקודה describe-db-instances כדי לבדוק אם התכונה 'שדרוג אוטומטי של הגרסה המשנית' הופעלה בהצלחה:
aws rds describe-db-instances --region <regionName> --db-instance-identifier <dbInstanceIdentifier> --query 'DBInstances[*].AutoMinorVersionUpgrade'
  1. פלט הפקודה אמור להחזיר את הסטטוס הנוכחי של התכונה שמוגדר כ-true, התכונה enabled ושדרוגי המנוע המשניים יחולו על מופע ה-RDS שנבחר.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Aws Config Enabled All Regions

שם הקטגוריה ב-API: AWS_CONFIG_ENABLED_ALL_REGIONS

‫AWS Config הוא שירות אינטרנט שמבצע ניהול תצורה של משאבי AWS נתמכים בחשבון שלכם, ומספק לכם קובצי יומן. המידע שתועד כולל את פריט ההגדרה (משאב AWS), את הקשרים בין פריטי ההגדרה (משאבי AWS) ואת כל שינויי ההגדרה בין המשאבים. מומלץ להפעיל את AWS Config בכל האזורים.

המלצה: מוודאים ש-AWS Config מופעל בכל האזורים

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. בוחרים את האזור שבו רוצים להתמקד בפינה השמאלית העליונה של המסוף.
  2. לוחצים על 'שירותים'.
  3. לוחצים על Config (הגדרה).
  4. אם כלי להקלטת הגדרות מופעל באזור הזה, צריך לעבור לדף ההגדרות מתפריט הניווט בצד ימין. אם עדיין לא הפעלתם את Config recorder באזור הזה, תצטרכו ללחוץ על Get Started (תחילת העבודה).
  5. בוחרים באפשרות 'הקלטה של כל המשאבים שנתמכים באזור הזה'.
  6. בחירה באפשרות לכלול משאבים גלובליים (משאבי IAM)
  7. מציינים קטגוריית S3 באותו חשבון או בחשבון AWS מנוהל אחר
  8. יצירת נושא SNS מאותו חשבון AWS או מחשבון AWS מנוהל אחר

AWS CLI

  1. מוודאים שיש דלי S3 מתאים, נושא SNS ותפקיד IAM בהתאם לדרישות המוקדמות של שירות AWS Config.
  2. מריצים את הפקודה הבאה כדי ליצור רשם תצורה חדש:
aws configservice put-configuration-recorder --configuration-recorder name=default,roleARN=arn:aws:iam::012345678912:role/myConfigRole --recording-group allSupported=true,includeGlobalResourceTypes=true
  1. יוצרים באופן מקומי קובץ הגדרות של ערוץ העברת נתונים שמציין את מאפייני הערוץ, שאוכלסו מתוך הדרישות המוקדמות שהוגדרו קודם:
{
 "name": "default",
 "s3BucketName": "my-config-bucket",
 "snsTopicARN": "arn:aws:sns:us-east-1:012345678912:my-config-notice",
 "configSnapshotDeliveryProperties": {
 "deliveryFrequency": "Twelve_Hours"
 }
}
  1. מריצים את הפקודה הבאה כדי ליצור ערוץ העברה חדש, עם הפניה לקובץ תצורת ה-JSON שנוצר בשלב הקודם:
aws configservice put-delivery-channel --delivery-channel file://deliveryChannel.json
  1. מריצים את הפקודה הבאה כדי להפעיל את הכלי לתיעוד התצורה:
aws configservice start-configuration-recorder --configuration-recorder-name default

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Aws Security Hub Enabled

שם הקטגוריה ב-API: AWS_SECURITY_HUB_ENABLED

מרכז האבטחה אוסף נתוני אבטחה מחשבונות, משירותים וממוצרים נתמכים של שותפי צד שלישי ב-AWS, ועוזר לכם לנתח את מגמות האבטחה ולזהות את בעיות האבטחה שהכי חשוב לטפל בהן. כשמפעילים את Security Hub, הוא מתחיל לצרוך, לצבור, לארגן ולתעדף ממצאים משירותי AWS שהפעלתם, כמו Amazon GuardDuty,‏ Amazon Inspector ו-Amazon Macie. אפשר גם להפעיל שילובים עם מוצרי אבטחה של שותפי AWS.

המלצה: מוודאים ש-AWS Security Hub מופעל

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. משתמשים בפרטי הכניסה של זהות IAM כדי להיכנס למסוף Security Hub.
  2. כשפותחים את מסוף Security Hub בפעם הראשונה, בוחרים באפשרות Enable AWS Security Hub (הפעלת AWS Security Hub).
  3. בדף הפתיחה, ברשימה Security standards (תקני אבטחה) מפורטים תקני האבטחה שנתמכים ב-Security Hub.
  4. בוחרים באפשרות Enable Security Hub (הפעלת Security Hub).

AWS CLI

  1. מריצים את הפקודה enable-security-hub. כדי להפעיל את התקנים שמוגדרים כברירת מחדל, צריך לכלול את --enable-default-standards.
aws securityhub enable-security-hub --enable-default-standards
  1. כדי להפעיל את מרכז האבטחה בלי התקנים שמוגדרים כברירת מחדל, צריך לכלול את --no-enable-default-standards.
aws securityhub enable-security-hub --no-enable-default-standards

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Cloudtrail Logs Encrypted Rest Using Kms Cmks

שם הקטגוריה ב-API: CLOUDTRAIL_LOGS_ENCRYPTED_REST_USING_KMS_CMKS

‫AWS CloudTrail הוא שירות אינטרנט שמתעד קריאות ל-AWS API עבור חשבון, ומאפשר למשתמשים ולמשאבים לגשת ליומנים האלה בהתאם למדיניות IAM. ‫AWS Key Management Service‏ (KMS) הוא שירות מנוהל שעוזר ליצור ולשלוט במפתחות ההצפנה שמשמשים להצפנת נתוני החשבון, ומשתמש במודולים של אבטחה לחומרה (HSM) כדי להגן על האבטחה של מפתחות ההצפנה. אפשר להגדיר את יומני CloudTrail כך שישתמשו בהצפנה בצד השרת (SSE) ובמפתחות מאסטר (CMK) שנוצרו על ידי לקוחות KMS, כדי להגן על יומני CloudTrail. מומלץ להגדיר את CloudTrail לשימוש ב-SSE-KMS.

המלצה: מוודאים שיומני CloudTrail מוצפנים במצב לא פעיל באמצעות מפתחות CMK של KMS

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. נכנסים אל AWS Management Console ופותחים את CloudTrail Console בכתובת https://console.aws.amazon.com/cloudtrail
  2. בחלונית הניווט שמימין, בוחרים באפשרות Trails .
  3. לחיצה על שביל
  4. בקטע S3, לוחצים על לחצן העריכה (סמל העיפרון).
  5. לחץ על Advanced
  6. בוחרים CMK קיים מהתפריט הנפתח KMS key Id
    . הערה: חשוב לוודא שה-CMK נמצא באותו אזור כמו קטגוריית S3
    . הערה: כדי ש-CloudTrail כשירות יוכל להצפין ולפענח קובצי יומן באמצעות ה-CMK שסופק, צריך להחיל מדיניות מפתח KMS על ה-CMK שנבחר. כאן מפורטים השלבים לעריכת מדיניות המפתח שנבחר ב-CMK
  7. לחץ על Save
  8. תוצג לכם הודעה שצריך הרשאות פענוח במפתח ה-KMS שצוין כדי לפענח קובצי יומן.
  9. לחץ על Yes

AWS CLI

aws cloudtrail update-trail --name <trail_name> --kms-id <cloudtrail_kms_key>
aws kms put-key-policy --key-id <cloudtrail_kms_key> --policy <cloudtrail_kms_key_policy>

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Cloudtrail Log File Validation Enabled

שם הקטגוריה ב-API: CLOUDTRAIL_LOG_FILE_VALIDATION_ENABLED

באימות של קובץ יומן CloudTrail נוצר קובץ תקציר חתום דיגיטלית שמכיל גיבוב של כל יומן ש-CloudTrail כותב ל-S3. אפשר להשתמש בקובצי התקציר האלה כדי לקבוע אם קובץ יומן השתנה, נמחק או לא השתנה אחרי ש-CloudTrail העביר את היומן. מומלץ להפעיל אימות קבצים בכל CloudTrail.

המלצה: מוודאים שאימות קובץ היומן של CloudTrail מופעל

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. נכנסים אל AWS Management Console ופותחים את IAM console בכתובת https://console.aws.amazon.com/cloudtrail
  2. לוחצים על Trails בחלונית הניווט הימנית.
  3. לוחצים על המסלול המבוקש.
  4. בקטע General details לוחצים על edit
  5. בקטע Advanced settings
  6. מסמנים את תיבת הסימון להפעלה בקטע Log file validation
  7. לחץ על Save changes

AWS CLI

aws cloudtrail update-trail --name <trail_name> --enable-log-file-validation

שימו לב שאפשר לבצע אימות תקופתי של היומנים באמצעות התקצירים האלה על ידי הרצת הפקודה הבאה:

aws cloudtrail validate-logs --trail-arn <trail_arn> --start-time <start_time> --end-time <end_time>

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Cloudtrail Trails Integrated Cloudwatch Logs

שם הקטגוריה ב-API: CLOUDTRAIL_TRAILS_INTEGRATED_CLOUDWATCH_LOGS

‫AWS CloudTrail הוא שירות אינטרנט שמתעד קריאות ל-AWS API שבוצעו בחשבון AWS נתון. המידע שנרשם כולל את הזהות של מי שקורא ל-API, את השעה שבה בוצעה הקריאה ל-API, את כתובת ה-IP של המקור של מי שקורא ל-API, את פרמטרים הבקשה ואת רכיבי התגובה שמוחזרים על ידי שירות AWS. ‫CloudTrail משתמש ב-Amazon S3 לאחסון ולמסירת קובצי יומן, כך שקובצי היומן מאוחסנים בצורה עמידה. בנוסף לתיעוד יומני CloudTrail בדליקת S3 שצוינה לצורך ניתוח לטווח ארוך, אפשר לבצע ניתוח בזמן אמת על ידי הגדרת CloudTrail לשליחת יומנים ל-CloudWatch Logs. אם הפעלתם את המעקב בכל האזורים בחשבון, CloudTrail שולח קובצי יומן מכל האזורים האלה לקבוצת יומנים של CloudWatch Logs. מומלץ לשלוח את יומני CloudTrail אל CloudWatch Logs.

הערה: המטרה של ההמלצה הזו היא לוודא שהפעילות בחשבון AWS מתועדת, מפוקחת ומופעלות לגביה התראות מתאימות. יומני CloudWatch הם דרך מקורית לעשות את זה באמצעות שירותי AWS, אבל אפשר גם להשתמש בפתרון חלופי.

המלצה: לוודא ששבילי CloudTrail משולבים עם CloudWatch Logs

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. מתחברים למסוף CloudTrail בכתובת https://console.aws.amazon.com/cloudtrail/
  2. בוחרים את Trail שצריך לעדכן.
  3. גוללים למטה אל CloudWatch Logs.
  4. לחץ על Edit
  5. בקטע CloudWatch Logs, לוחצים על התיבה Enabled.
  6. בקטע Log Group בוחרים קבוצת יומנים חדשה או קיימת
  7. עורכים את Log group name כך שיתאים ל-CloudTrail או בוחרים את קבוצת CloudWatch הקיימת.
  8. בקטע IAM Role, בוחרים באפשרות 'חדש' או בוחרים קובץ קיים.
  9. עורכים את Role name כך שיתאים ל-CloudTrail או בוחרים את תפקיד ה-IAM הקיים.
  10. לוחצים על 'שמירת השינויים'.

AWS CLI

aws cloudtrail update-trail --name <trail_name> --cloudwatch-logs-log-group-arn <cloudtrail_log_group_arn> --cloudwatch-logs-role-arn <cloudtrail_cloudwatchLogs_role_arn>

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Cloudwatch Alarm Action Check

שם הקטגוריה ב-API: CLOUDWATCH_ALARM_ACTION_CHECK

הבדיקה הזו בודקת אם מוגדרות פעולות ב-Amazon Cloudwatch כשמתרחש מעבר של התראה בין המצבים OK,‏ ALARM ו-INSUFFICIENT_DATA.

הגדרת פעולות למצב ALARM בהתראות של Amazon CloudWatch חשובה מאוד להפעלת תגובה מיידית כשמדדים שנמצאים במעקב חורגים מספי ערך הסף.
היא מאפשרת לפתור בעיות במהירות, מצמצמת את זמן ההשבתה ומאפשרת תיקון אוטומטי, כך שהמערכת תקינה ולא יתרחשו הפסקות שירות.

לכל התראה יש לפחות פעולה אחת.
לכל התראות יש פעולה אחת לפחות כשההתראה עוברת למצב INSUFFICIENT_DATA מכל מצב אחר.
(אופציונלי) לאזעקות יש לפחות פעולה אחת כשהאזעקה עוברת למצב 'OK' מכל מצב אחר.

המלצה: בודקת אם לאזעקות של CloudWatch יש לפחות פעולת אזעקה אחת, פעולת INSUFFICIENT_DATA אחת או פעולת OK אחת שמופעלות.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

כדי להגדיר פעולות של התראות ב-Amazon CloudWatch, מבצעים את הפעולות הבאות.

  1. פותחים את מסוף Amazon CloudWatch בכתובת https://console.aws.amazon.com/cloudwatch/.
  2. בחלונית הניווט, בקטע 'התראות', בוחרים באפשרות 'כל ההתראות'.
  3. בוחרים את ההתראה של Amazon CloudWatch שרוצים לשנות, בוחרים באפשרות 'פעולות' ואז באפשרות 'עריכה'.
  4. בצד ימין, בוחרים באפשרות 'שלב 2 – הגדרת פעולות אופציונלית'.
  5. בקטע 'הפעלה של מצב התראה', בוחרים באפשרות 'במצב התראה' כדי להגדיר פעולה שמבוססת על התראה.
  6. כדי לשלוח התראה לנושא חדש שנוצר ב-SNS, בוחרים באפשרות 'יצירת נושא חדש'.
  7. בתיבה 'יצירת נושא חדש...' מציינים שם ייחודי לנושא SNS.
  8. בתיבה 'כתובות אימייל שיקבלו את ההתראה…' מציינים כתובת אימייל אחת או יותר.
  9. לאחר מכן בוחרים באפשרות 'יצירת נושא' כדי ליצור את הנושא הנדרש ב-Amazon SNS.
  10. בפינה השמאלית התחתונה, לוחצים על 'הבא', 'הבא' ובוחרים באפשרות 'עדכון השעון המעורר' כדי להחיל את השינויים.
  11. פותחים את תוכנת האימייל ובאימייל מ-AWS Notifications, לוחצים על הקישור כדי לאשר את המינוי לנושא ה-SNS הרלוונטי.
  12. חוזרים על שלבים 4 עד 11, ובשלב 5 בוחרים באפשרות 'אישור' ובאפשרות 'אין מספיק נתונים' עבור 'הפעלת מצב התראה' כדי להגדיר פעולות לשני המצבים האלה.
  13. חוזרים על התהליך לכל ההתראות האחרות של CloudWatch באותו אזור AWS.
  14. חוזרים על התהליך לגבי כל ההתראות האחרות של CloudWatch בכל האזורים האחרים של AWS.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Cloudwatch Log Group Encrypted

שם הקטגוריה ב-API: CLOUDWATCH_LOG_GROUP_ENCRYPTED

הבדיקה הזו מוודאת שיומני CloudWatch מוגדרים עם KMS.

הנתונים של קבוצת היומנים תמיד מוצפנים ב-CloudWatch Logs. כברירת מחדל, CloudWatch Logs משתמש בהצפנה בצד השרת עבור נתוני היומן באחסון. אפשרות אחרת היא להשתמש ב-AWS Key Management Service (שירות ניהול מפתחות) להצפנה הזו. אם כן, ההצפנה מתבצעת באמצעות מפתח AWS KMS. ההצפנה באמצעות AWS KMS מופעלת ברמת קבוצת היומנים, על ידי שיוך מפתח KMS לקבוצת יומנים, בזמן שיוצרים את קבוצת היומנים או אחרי שהיא נוצרת.

המלצה: בדיקה שכל קבוצות היומנים ב-Amazon CloudWatch Logs מוצפנות באמצעות KMS

מידע נוסף זמין במאמר הצפנת נתוני יומן ב-CloudWatch Logs באמצעות AWS שירות ניהול מפתחות (KMS) במדריך למשתמש של Amazon CloudWatch.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

CloudTrail CloudWatch Logs Enabled

שם הקטגוריה ב-API: CLOUD_TRAIL_CLOUD_WATCH_LOGS_ENABLED

הבקרה הזו בודקת אם מסלולי CloudTrail מוגדרים לשליחת יומנים ל-CloudWatch Logs. הבדיקה נכשלת אם המאפיין CloudWatchLogsLogGroupArn של ה-trail ריק.

‫CloudTrail מתעד קריאות ל-AWS API שמתבצעות בחשבון נתון. המידע שתועד כולל את הפרטים הבאים:

  • הזהות של מי שקורא ל-API
  • השעה של הקריאה ל-API
  • כתובת ה-IP של המקור של מבצע הקריאה ל-API
  • הפרמטרים של הבקשה
  • רכיבי התגובה שמוחזרים על ידי שירות AWS

‫CloudTrail משתמש ב-Amazon S3 לאחסון ולמסירה של קובצי יומן. אפשר לתעד יומנים של CloudTrail בקטגוריית S3 שצוינה לצורך ניתוח לטווח ארוך. כדי לבצע ניתוח בזמן אמת, אפשר להגדיר את CloudTrail כך שישלח יומנים אל CloudWatch Logs.

אם הפעלתם את המעקב בכל האזורים בחשבון, CloudTrail שולח קובצי יומן מכל האזורים האלה לקבוצת יומנים של CloudWatch Logs.

ב-Security Hub מומלץ לשלוח יומני CloudTrail אל CloudWatch Logs. ההמלצה הזו נועדה להבטיח שהפעילות בחשבון תתועד, תנוטר ותיבדק בצורה מתאימה. אתם יכולים להשתמש ב-CloudWatch Logs כדי להגדיר את זה בשירותי AWS. ההמלצה הזו לא מונעת שימוש בפתרון אחר.

שליחת יומנים של CloudTrail אל CloudWatch Logs מאפשרת תיעוד פעילות בזמן אמת ופעילות היסטורית על סמך משתמש, API, משאב וכתובת IP. אתם יכולים להשתמש בגישה הזו כדי להגדיר התראות על פעילות חריגה או רגישה בחשבון.

המלצה: בדיקה שכל העקבות של CloudTrail מוגדרים לשליחת יומנים אל AWS CloudWatch

כדי לשלב את CloudTrail עם CloudWatch Logs, אפשר לעיין במאמר שליחת אירועים אל CloudWatch Logs במדריך למשתמש של AWS CloudTrail.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

No AWS Credentials in CodeBuild Project Environment Variables

שם הקטגוריה ב-API: CODEBUILD_PROJECT_ENVVAR_AWSCRED_CHECK

הבדיקה הזו מוודאת שהפרויקט מכיל את משתני הסביבה AWS_ACCESS_KEY_ID ו-AWS_SECRET_ACCESS_KEY.

אסור לאחסן את פרטי הכניסה לאימות AWS_ACCESS_KEY_ID וAWS_SECRET_ACCESS_KEY בטקסט פשוט, כי זה עלול להוביל לחשיפת נתונים לא מכוונת ולגישה לא מורשית.

המלצה: בדיקה שכל הפרויקטים שמכילים את משתני הסביבה AWS_ACCESS_KEY_ID ו-AWS_SECRET_ACCESS_KEY לא מוצגים בטקסט לא מוצפן

כדי להסיר משתני סביבה מפרויקט CodeBuild, אפשר לעיין במאמר שינוי ההגדרות של פרויקט build ב-AWS CodeBuild במדריך למשתמש של AWS CodeBuild. מוודאים שלא נבחרו משתני סביבה.

אפשר לאחסן משתני סביבה עם ערכים רגישים ב-AWS Systems Manager Parameter Store או ב-AWS Secrets Manager, ואז לאחזר אותם ממפרט הבנייה. הוראות מפורטות מופיעות בתיבה עם הכיתוב 'חשוב' בקטע Environment במדריך למשתמש של AWS CodeBuild.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Codebuild Project Source Repo Url Check

שם הקטגוריה ב-API: CODEBUILD_PROJECT_SOURCE_REPO_URL_CHECK

הבדיקה הזו בודקת אם כתובת ה-URL של מאגר המקור של Bitbucket בפרויקט AWS CodeBuild מכילה טוקנים של גישה אישית או שם משתמש וסיסמה. הבדיקה נכשלת אם כתובת ה-URL של מאגר המקור ב-Bitbucket מכילה טוקנים של גישה אישית או שם משתמש וסיסמה.

אסור לאחסן או לשדר פרטי כניסה בטקסט לא מוצפן, או להציג אותם בכתובת ה-URL של מאגר המקור. במקום להשתמש בטוקנים אישיים לגישה או בפרטי כניסה, צריך לגשת לספק המקור ב-CodeBuild ולשנות את כתובת ה-URL של מאגר המקור כך שתכלול רק את הנתיב למיקום המאגר ב-Bitbucket. שימוש באסימוני גישה אישיים או בפרטי כניסה עלול לגרום לחשיפת נתונים לא מכוונת או לגישה לא מורשית.

המלצה: בדיקה שכל הפרויקטים שמשתמשים ב-GitHub או ב-Bitbucket כמקור משתמשים ב-OAuth

אפשר לעדכן את פרויקט CodeBuild כך שישתמש ב-OAuth.

כדי להסיר אימות בסיסי / טוקן גישה אישי (GitHub) ממקור הפרויקט ב-CodeBuild

  1. פותחים את מסוף CodeBuild בכתובת https://console.aws.amazon.com/codebuild/.
  2. בוחרים את פרויקט ה-build שמכיל את טוקני הגישה האישיים או את שם המשתמש והסיסמה.
  3. בתפריט 'עריכה', בוחרים באפשרות 'מקור'.
  4. בוחרים באפשרות 'התנתקות מ-GitHub / Bitbucket'.
  5. בוחרים באפשרות Connect using OAuth (התחברות באמצעות OAuth) ואז באפשרות Connect to GitHub / Bitbucket (התחברות אל GitHub / Bitbucket).
  6. כשמוצגת בקשה, מאשרים את הפעולה לפי הצורך.
  7. במקרה הצורך, מגדירים מחדש את כתובת ה-URL של המאגר והגדרות נוספות.
  8. בוחרים באפשרות 'עדכון המקור'.

מידע נוסף זמין במאמר דוגמאות לתרחישי שימוש ב-CodeBuild במדריך למשתמש של AWS CodeBuild.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Credentials Unused 45 Days Greater Disabled

שם הקטגוריה ב-API: CREDENTIALS_UNUSED_45_DAYS_GREATER_DISABLED

משתמשי AWS IAM יכולים לגשת למשאבי AWS באמצעות סוגים שונים של פרטי כניסה, כמו סיסמאות או מפתחות גישה. מומלץ להשבית או להסיר את כל פרטי הכניסה שלא נעשה בהם שימוש במשך 45 ימים או יותר.

המלצה: כדאי להשבית את פרטי הכניסה שלא נעשה בהם שימוש במשך 45 ימים או יותר

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

כדי לנהל את ההגדרה 'סיסמה שלא נעשה בה שימוש' (גישה למסוף של משתמש IAM)

  1. מתחברים למסוף הניהול של AWS:
  2. לחץ על Services
  3. לחץ על IAM
  4. לוחצים על Users
  5. לוחצים על Security Credentials
  6. בחירת משתמש שערך Console last sign-in שלו גדול מ-45 ימים
  7. לחץ על Security credentials
  8. בקטע Sign-in credentials, Console password לוחצים על Manage
  9. בקטע Console Access (גישה למסוף), בוחרים באפשרות Disable
    . ‫10. לוחצים על Apply.

כדי להשבית את מקשי הגישה:

  1. מתחברים למסוף הניהול של AWS:
  2. לחץ על Services
  3. לחץ על IAM
  4. לוחצים על Users
  5. לוחצים על Security Credentials
  6. בוחרים את כל מפתחות הגישה שגילם מעל 45 ימים ושנעשה בהם שימוש ו
    – לוחצים על Make Inactive
  7. בוחרים את כל מפתחות הגישה שנוצרו לפני יותר מ-45 ימים ולא נעשה בהם שימוש ו
    – לוחצים על X כדי Delete

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Default Security Group Vpc Restricts All Traffic

שם הקטגוריה ב-API: DEFAULT_SECURITY_GROUP_VPC_RESTRICTS_ALL_TRAFFIC

ל-VPC יש קבוצת אבטחה שמוגדרת כברירת מחדל, שההגדרות הראשוניות שלה מונעות את כל התעבורה הנכנסת, מאפשרות את כל התעבורה היוצאת ומאפשרות את כל התעבורה בין מופעים שמוקצים לקבוצת האבטחה. אם לא מציינים קבוצת אבטחה כשמפעילים מופע, המופע מוקצה אוטומטית לקבוצת האבטחה שמוגדרת כברירת המחדל. קבוצות אבטחה מספקות סינון עם שמירת מצב של תנועה ברשת נכנסת/יוצאת למשאבי AWS. מומלץ להגביל את כל התנועה בקבוצת האבטחה שמוגדרת כברירת מחדל.

צריך לעדכן את קבוצת האבטחה שמוגדרת כברירת מחדל בכל אזור ברשת ה-VPC שמוגדרת כברירת מחדל, כדי לעמוד בדרישות. כל רשתות ה-VPC החדשות שייווצרו יכללו באופן אוטומטי קבוצת אבטחה שמוגדרת כברירת מחדל, ויהיה צורך לבצע פעולות לתיקון כדי לעמוד בהמלצה הזו.

הערה: כשמיישמים את ההמלצה הזו, רישום של תנועת נתונים ב-VPC הוא כלי חשוב לקביעת הגישה המינימלית לפורטים שנדרשת למערכות כדי לפעול בצורה תקינה, כי הוא יכול לרשום את כל קבלות החבילות והדחיות שמתרחשות בקבוצות האבטחה הנוכחיות. השיטה הזו מפחיתה באופן משמעותי את המכשול העיקרי בהנדסת הרשאות מינימליות – גילוי היציאות המינימליות שנדרשות למערכות בסביבה. גם אם לא תאמצו את ההמלצה בנושא רישום ביומן של תנועת נתונים ב-VPC כצעד אבטחה קבוע, כדאי להשתמש בה במהלך תקופת הגילוי והתכנון של קבוצות אבטחה עם הרשאות מינימליות.

המלצה: מוודאים שקבוצת האבטחה שמוגדרת כברירת מחדל בכל VPC מגבילה את כל התנועה

חברים בקבוצת אבטחה

כדי להטמיע את המצב שנקבע:

  1. זיהוי משאבי AWS שקיימים בקבוצת האבטחה שמוגדרת כברירת מחדל
  2. יצירה של קבוצת אבטחה עם הרשאות מינימליות למשאבים האלה
  3. ממקמים את המשאבים בקבוצות האבטחה האלה
  4. מסירים את המשאבים שמצוינים בסעיף 1 מקבוצת האבטחה שמוגדרת כברירת מחדל

מצב קבוצת האבטחה

  1. מתחברים למסוף הניהול של AWS בכתובת https://console.aws.amazon.com/vpc/home
  2. חוזרים על השלבים הבאים לכל רשת VPC – כולל רשת ה-VPC שמוגדרת כברירת מחדל בכל אזור AWS:
  3. בחלונית הימנית, לוחצים על Security Groups.
  4. לכל קבוצת אבטחה שמוגדרת כברירת מחדל, מבצעים את הפעולות הבאות:
  5. בוחרים את קבוצת האבטחה default.
  6. לוחצים על הכרטיסייה Inbound Rules.
  7. הסרת כל הכללים לשיחות נכנסות
  8. לוחצים על הכרטיסייה Outbound Rules.
  9. הסרת כל כללי התעבורה היוצאת

מומלץ:

קבוצות IAM מאפשרות לערוך את השדה 'שם'. אחרי שמתקנים את כללי קבוצות ברירת המחדל בכל רשתות ה-VPC בכל האזורים, עורכים את השדה הזה ומוסיפים טקסט כמו 'אין להשתמש. אל תוסיפו כללים"

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Dms Replication Not Public

שם הקטגוריה ב-API: DMS_REPLICATION_NOT_PUBLIC

בודקת אם מופעי השכפול של AWS DMS הם ציבוריים. לשם כך, המערכת בודקת את הערך של השדה PubliclyAccessible.

למופע שכפול פרטי יש כתובת IP פרטית שאי אפשר לגשת אליה מחוץ לרשת השכפול. למכונת השכפול צריכה להיות כתובת IP פרטית אם מסדי הנתונים של המקור והיעד נמצאים באותה רשת. הרשת צריכה להיות מחוברת גם ל-VPC של מופע הרפליקציה באמצעות VPN,‏ AWS Direct Connect או קישור בין רשתות VPC שכנות. מידע נוסף על מופעי שכפול ציבוריים ופרטיים זמין במאמר Public and private replication instances במדריך למשתמש של AWS Database Migration Service.

כדאי גם לוודא שהגישה להגדרות של מופע AWS DMS מוגבלת למשתמשים מורשים בלבד. כדי לעשות זאת, מגבילים את הרשאות ה-IAM של המשתמשים לשינוי ההגדרות והמשאבים של AWS DMS.

המלצה: בדיקה אם מופעים של שכפול ב-AWS Database Migration Service הם ציבוריים

אי אפשר לשנות את הגדרת הגישה הציבורית של מופע שכפול של DMS אחרי שיוצרים אותו. כדי לשנות את הגדרת הגישה הציבורית, צריך למחוק את המופע הנוכחי ואז ליצור אותו מחדש. לא בוחרים באפשרות 'נגיש לכולם'.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Do Setup Access Keys During Initial User Setup All Iam Users Console

שם הקטגוריה ב-API: DO_SETUP_ACCESS_KEYS_DURING_INITIAL_USER_SETUP_ALL_IAM_USERS_CONSOLE

במסוף AWS, כשיוצרים משתמש IAM חדש, ברירת המחדל היא שתיבות הסימון לא מסומנות. כשיוצרים את פרטי הכניסה של משתמש IAM, צריך לקבוע את סוג הגישה שנדרש לו.

גישה באמצעות תוכנה: יכול להיות שמשתמש IAM יצטרך לבצע קריאות ל-API, להשתמש ב-AWS CLI או להשתמש ב-Tools for Windows PowerShell. במקרה כזה, צריך ליצור מפתח גישה (מזהה מפתח גישה ומפתח גישה סודי) עבור המשתמש.

גישה למסוף הניהול של AWS: אם המשתמש צריך לגשת למסוף הניהול של AWS, צריך ליצור סיסמה בשבילו.

המלצה: אל תגדירו מפתחות גישה במהלך ההגדרה הראשונית של משתמשים לכל משתמשי ה-IAM שיש להם סיסמה למסוף

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. מתחברים למסוף הניהול של AWS:
  2. לחץ על Services
  3. לחץ על IAM
  4. לוחצים על Users
  5. לוחצים על Security Credentials
  6. בתור אדמין
    – לוחצים על X (Delete) ליד מפתחות שנוצרו באותו זמן כמו פרופיל המשתמש, אבל לא נעשה בהם שימוש.
  7. כמשתמש IAM
    – לוחצים על X (Delete) ליד מפתחות שנוצרו באותו זמן שנוצר פרופיל המשתמש, אבל לא נעשה בהם שימוש.

AWS CLI

aws iam delete-access-key --access-key-id <access-key-id-listed> --user-name <users-name>

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Dynamodb Autoscaling Enabled

שם הקטגוריה ב-API: DYNAMODB_AUTOSCALING_ENABLED

הבדיקה הזו נועדה לוודא שאפשר להגדיל את קיבולת הקריאה והכתיבה של טבלה ב-Amazon DynamoDB לפי הצורך. הבדיקה הזו עוברת אם הטבלה משתמשת במצב קיבולת לפי דרישה או במצב הקצאה עם קנה מידה אוטומטי מוגדר. התאמת הקיבולת לביקוש מאפשרת להימנע מחריגות של ויסות נתונים (throttle), וכך לשמור על הזמינות של האפליקציות.

הטבלאות של DynamoDB במצב קיבולת לפי דרישה מוגבלות רק על ידי מכסות ברירת המחדל של DynamoDB לתפוקה של טבלאות. כדי להגדיל את המכסות האלה, אפשר להגיש כרטיס תמיכה דרך התמיכה של AWS.

טבלאות DynamoDB במצב מוקצה עם התאמה אוטומטית לעומס משנות את קיבולת התפוקה המוקצית באופן דינמי בתגובה לדפוסי תנועה. מידע נוסף על הגבלת קצב הבקשות ב-DynamoDB זמין במאמר Request throttling and burst capacity (הגבלת קצב הבקשות וקיבולת פרץ) במדריך למפתחים של Amazon DynamoDB.

המלצה: טבלאות DynamoDB צריכות להתאים את הקיבולת באופן אוטומטי בהתאם לביקוש

הוראות מפורטות להפעלת התאמה אוטומטית לעומס של DynamoDB בטבלאות קיימות במצב קיבולת זמינות במאמר הפעלת התאמה אוטומטית לעומס של DynamoDB בטבלאות קיימות במדריך למפתחים של Amazon DynamoDB.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Dynamodb In Backup Plan

שם הקטגוריה ב-API: DYNAMODB_IN_BACKUP_PLAN

הבקרה הזו בודקת אם טבלת DynamoDB מכוסה על ידי תוכנית גיבוי. הבקרות נכשלות אם טבלת DynamoDB לא נכללת בתוכנית גיבוי. הבקרה הזו מעריכה רק טבלאות של DynamoDB שנמצאות במצב ACTIVE.

גיבויים עוזרים לכם להתאושש מהר יותר מאירוע אבטחה. הם גם מחזקים את החוסן של המערכות שלכם. הכללת טבלאות של DynamoDB בתוכנית גיבוי עוזרת להגן על הנתונים מפני אובדן או מחיקה לא מכוונים.

המלצה: טבלאות DynamoDB צריכות להיכלל בתוכנית גיבוי

כדי להוסיף טבלת DynamoDB לתוכנית גיבוי של AWS Backup, אפשר לעיין במאמר הקצאת משאבים לתוכנית גיבוי במדריך למפתחים של AWS Backup.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Dynamodb Pitr Enabled

שם הקטגוריה ב-API: DYNAMODB_PITR_ENABLED

שחזור מערכת מנקודה מסוימת בזמן (PITR) הוא אחד מהמנגנונים שזמינים לגיבוי טבלאות DynamoDB.

גיבוי לנקודת זמן מסוימת נשמר למשך 35 ימים. אם אתם צריכים תקופת שמירה ארוכה יותר, תוכלו לעיין במאמר הגדרת גיבויים מתוזמנים ל-Amazon DynamoDB באמצעות AWS Backup בתיעוד של AWS.

המלצה: בדיקה ששחזור לנקודת זמן (PITR) מופעל בכל טבלאות AWS DynamoDB

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

כדי להגדיר PITR לטבלאות של DynamoDB, מגדירים את הבלוק point_in_time_recovery:

resource "aws_dynamodb_table" "example" {
  # ... other configuration ...
  point_in_time_recovery {
    enabled = true
  }
}

מסוף AWS

כדי להפעיל שחזור מערכת מנקודה מסוימת בזמן (PITR) ב-DynamoDB עבור טבלה קיימת

  1. פותחים את מסוף DynamoDB בכתובת https://console.aws.amazon.com/dynamodb/.
  2. בוחרים את הטבלה שרוצים לעבוד איתה ואז בוחרים באפשרות 'גיבויים'.
  3. בקטע 'שחזור מערכת מנקודה מסוימת בזמן (PITR)', בקטע 'סטטוס', בוחרים באפשרות 'הפעלה'.
  4. לוחצים שוב על 'הפעלה' כדי לאשר את השינוי.

AWS CLI

aws dynamodb update-continuous-backups \
  --table-name "GameScoresOnDemand" \
  --point-in-time-recovery-specification "PointInTimeRecoveryEnabled=true"

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Dynamodb Table Encrypted Kms

שם הקטגוריה ב-API: DYNAMODB_TABLE_ENCRYPTED_KMS

הבדיקה קובעת אם כל טבלאות DynamoDB מוצפנות באמצעות מפתח KMS בניהול לקוח (לא ברירת המחדל).

המלצה: בדיקה שכל טבלאות DynamoDB מוצפנות באמצעות AWS Key Management Service‏ (KMS)

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

כדי לתקן את אמצעי הבקרה הזה, צריך ליצור מפתח AWS KMS ולהשתמש בו כדי להצפין את משאב DynamoDB שבו נמצאה הפרה.

resource "aws_kms_key" "dynamodb_encryption" {
  description         = "Used for DynamoDB encryption configuration"
  enable_key_rotation = true
}

resource "aws_dynamodb_table" "example" {
  # ... other configuration ...
  server_side_encryption {
    enabled     = true
    kms_key_arn = aws_kms_key.dynamodb_encryption.arn
  }
}

מסוף AWS

נניח שיש מפתח AWS KMS קיים שזמין להצפנת DynamoDB.

כדי לשנות את ההצפנה של טבלת DynamoDB למפתח KMS בניהול ובבעלות הלקוח.

  1. פותחים את מסוף DynamoDB בכתובת https://console.aws.amazon.com/dynamodb/.
  2. בוחרים את הטבלה שרוצים לעבוד איתה, ואז בוחרים באפשרות 'הגדרות נוספות'.
  3. בקטע 'הצפנה', בוחרים באפשרות 'ניהול הצפנה'.
  4. בקטע 'הצפנה במנוחה', בוחרים באפשרות 'מאוחסן בחשבון שלך, בבעלותך ובניהולך'.
  5. בוחרים את מפתח ה-AWS שרוצים להשתמש בו. שומרים את השינויים.

AWS CLI

aws dynamodb update-table \
  --table-name <value> \
  --sse-specification "Enabled=true,SSEType=KMS,KMSMasterKeyId=<kms_key_arn>"

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Ebs Optimized Instance

שם הקטגוריה ב-API: EBS_OPTIMIZED_INSTANCE

בודק אם האופטימיזציה של EBS מופעלת במופעי EC2 שאפשר לבצע בהם אופטימיזציה של EBS

המלצה: בדיקה שהאופטימיזציה של EBS מופעלת בכל המופעים שתומכים באופטימיזציה של EBS

הוראות להגדרת מופע שעבר אופטימיזציה ל-EBS מופיעות במאמר Amazon EBS–optimized instances במדריך למשתמש של Amazon EC2.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Ebs Snapshot Public Restorable Check

שם הקטגוריה ב-API: EBS_SNAPSHOT_PUBLIC_RESTORABLE_CHECK

הבדיקה קובעת אם תמונות המצב של Amazon Elastic Block Store הן לא ציבוריות. הבדיקה נכשלת אם כל אחד יכול לשחזר תמונות מצב של Amazon EBS.

תמונות מצב של EBS משמשות לגיבוי הנתונים בכרכים של EBS ב-Amazon S3 בנקודת זמן ספציפית. אפשר להשתמש בתמונות המצב כדי לשחזר מצבים קודמים של נפחי EBS. בדרך כלל לא מקובל לשתף צילום מסך עם הציבור. בדרך כלל ההחלטה לשתף תמונה של מצב המערכת באופן ציבורי מתקבלת בטעות או ללא הבנה מלאה של ההשלכות. הבדיקה הזו עוזרת לוודא שכל השיתופים האלה תוכננו מראש ונעשו בכוונה.

המלצה: לא ניתן לשחזר תמונות מצב של Amazon EBS באופן ציבורי

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

כדי לפתור את הבעיה, צריך לעדכן את תמונת ה-EBS כך שהיא תהיה פרטית ולא ציבורית.

כדי להפוך snapshot ציבורי של EBS לפרטי:

  1. פותחים את מסוף Amazon EC2 בכתובת https://console.aws.amazon.com/ec2/.
  2. בחלונית הניווט, בקטע Elastic Block Store, בוחרים בתפריט Snapshots (תמונות מצב) ואז בוחרים את תמונת המצב הציבורית.
  3. בקטע 'פעולות', בוחרים באפשרות 'שינוי הרשאות'.
  4. בוחרים באפשרות 'פרטי'.
  5. (אופציונלי) מוסיפים את מספרי החשבונות ב-AWS של החשבונות המורשים שרוצים לשתף איתם את התמונה, ובוחרים באפשרות 'הוספת הרשאה'.
  6. לוחצים על 'שמירה'.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Ebs Volume Encryption Enabled All Regions

שם הקטגוריה ב-API: EBS_VOLUME_ENCRYPTION_ENABLED_ALL_REGIONS

שירות Elastic Compute Cloud‏ (EC2) תומך בהצפנה במנוחה כשמשתמשים בשירות Elastic Block Store‏ (EBS). ההצפנה מושבתת כברירת מחדל, אבל יש תמיכה בהפעלת הצפנה כשיוצרים נפח אחסון של EBS.

המלצה: מוודאים שהצפנת נפח EBS מופעלת בכל האזורים

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. מתחברים אל מסוף הניהול של AWS ופותחים את מסוף Amazon EC2 באמצעות הכתובת https://console.aws.amazon.com/ec2/
  2. בקטע Account attributes, לוחצים על EBS encryption.
  3. לחץ על Manage.
  4. לוחצים על תיבת הסימון Enable.
  5. לחץ על Update EBS encryption
  6. חוזרים על הפעולה הזו לכל אזור שרוצים לשנות.

הערה: הצפנת נפח EBS מוגדרת לכל אזור.

AWS CLI

  1. ריצה
aws --region <region> ec2 enable-ebs-encryption-by-default
  1. מוודאים שמוצג "EbsEncryptionByDefault": true.
  2. חוזרים על הפעולה בכל אזור שרוצים לשנות.

הערה: הצפנת נפח EBS מוגדרת לכל אזור.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Ec2 Instances In Vpc

שם הקטגוריה ב-API: EC2_INSTANCES_IN_VPC

‫Amazon VPC מספקת פונקציונליות אבטחה רחבה יותר מ-EC2 Classic. מומלץ שכל הצמתים יהיו שייכים ל-Amazon VPC.

המלצה: מוודאים שכל המופעים שייכים ל-VPC

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

אם הגדרתם ב-Terraform מופעי EC2 Classic, תוכלו לשנות את המשאבים כך שיהיו חלק מ-VPC. ההעברה הזו תתבסס על ארכיטקטורה שהכי מתאימה לצרכים שלכם. בדוגמה הפשוטה הבאה של Terraform מוצג EC2 שחשוף לציבור ב-VPC.

  resource "aws_vpc" "example_vpc" {
    cidr_block = "10.0.0.0/16"
  }

  resource "aws_subnet" "example_public_subnet" {
    vpc_id            = aws_vpc.example_vpc.id
    cidr_block        = "10.0.1.0/24"
    availability_zone = "1a"
  }

  resource "aws_internet_gateway" "example_igw" {
    vpc_id = aws_vpc.example_vpc.id
  }

  resource "aws_key_pair" "example_key" {
    key_name   = "web-instance-key"
    public_key = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD3F6tyPEFEzV0LX3X8BsXdMsQz1x2cEikKDEY0aIj41qgxMCP/iteneqXSIFZBp5vizPvaoIR3Um9xK7PGoW8giupGn+EPuxIA4cDM4vzOqOkiMPhz5XK0whEjkVzTo4+S0puvDZuwIsdiW9mxhJc7tgBNL0cYlWSYVkz4G/fslNfRPW5mYAM49f4fhtxPb5ok4Q2Lg9dPKVHO/Bgeu5woMc7RY0p1ej6D4CKFE6lymSDJpW0YHX/wqE9+cfEauh7xZcG0q9t2ta6F6fmX0agvpFyZo8aFbXeUBr7osSCJNgvavWbM/06niWrOvYX2xwWdhXmXSrbX8ZbabVohBK41 email@example.com"
  }

  resource "aws_security_group" "web_sg" {
    name   = "http and ssh"
    vpc_id = aws_vpc.some_custom_vpc.id

    ingress {
      from_port   = 80
      to_port     = 80
      protocol    = "tcp"
      cidr_blocks = ["0.0.0.0/0"]
    }

    ingress {
      from_port   = 22
      to_port     = 22
      protocol    = "tcp"
      cidr_blocks = ["0.0.0.0/0"]
    }

    egress {
      from_port   = 0
      to_port     = 0
      protocol    = -1
      cidr_blocks = ["0.0.0.0/0"]
    }
  }

  resource "aws_instance" "web" {
    ami                    = <ami_id>
    instance_type          = <instance_flavor>
    key_name               = aws_key_pair.example_key.name
    monitoring             = true
    subnet_id              = aws_subnet.example_public_subnet.id
    vpc_security_group_ids = [aws_security_group.web_sg.id]
    metadata_options {
      http_tokens = "required"
    }
  }

מסוף AWS

כדי להעביר את EC2 Classic ל-VPC, אפשר לעיין במאמר בנושא העברה מ-EC2-Classic ל-VPC

AWS CLI

בדוגמה הזו של AWS CLI מוצגת אותה תשתית שמוגדרת באמצעות Terraform. זוהי דוגמה פשוטה למכונת EC2 שחשופה לציבור ב-VPC

יצירת VPC

  aws ec2 create-vpc \
  --cidr-block 10.0.0.0/16

יצירת רשת משנה ציבורית

  aws ec2 create-subnet \
  --availability-zone 1a \
  --cidr-block 10.0.1.0/24 \
  --vpc-id <id_from_create-vpc_command>

יצירת שער אינטרנט

  aws ec2 create-internet-gateway

צירוף שער לאינטרנט ל-VPC

  aws ec2 attach-internet-gateway \
  --internet-gateway-id <id_from_create-internet-gateway_command> \
  --vpc-id <id_from_create-vpc_command>

‫Create Key Pair (יצירת זוג מפתחות) – המפתח הפרטי יישמר ב-/.ssh/web-instance-key.pem

  aws ec2 create-key-pair \
  --key-name web-instance-key \
  --query "KeyMaterial" \
  --output text > ~/.ssh/web-instance-key.pem && \
  chmod 400 ~/.ssh/web-instance-key.pem

יצירת קבוצת אבטחה

  aws ec2 create-security-group \
  --group-name "http and ssh" \
  --vpc-id <id_from_create-vpc_command>

יצירת כללים לקבוצת אבטחה – כדי להגביל את הגישה, מגדירים CIDR מוגבל יותר ל-SSH ביציאה 22

  aws ec2 authorize-security-group-ingress \
  --group-id <id_from_create-security-group_command>
  --protocol tcp \
  --port 80 \
  --cidr 0.0.0.0/0

  aws ec2 authorize-security-group-ingress \
  --group-id <id_from_create-security-group_command>
  --protocol tcp \
  --port 22 \
  --cidr 0.0.0.0/0

  aws ec2 authorize-security-group-egress \
  --group-id <id_from_create-security-group_command>
  --protocol -1 \
  --port 0 \
  --cidr 0.0.0.0/0

יצירת מופע EC2

  aws ec2 run-instances \
  --image-id <ami_id> \
  --instance-type <instance_flavor> \
  --metadata-options "HttpEndpoint=enabled,HttpTokens=required" \
  --monitoring true \
  --key-name web-instance-key \
  --subnet-id <id_from_create-subnet_command> \
  --security-group-ids <id_from_create-security-group_command>

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Ec2 Instance No Public Ip

שם הקטגוריה ב-API: EC2_INSTANCE_NO_PUBLIC_IP

יש סיכון מוגבר לפריצה למכונות EC2 שיש להן כתובת IP ציבורית. מומלץ לא להגדיר כתובת IP ציבורית למכונות EC2.

המלצה: מוודאים שלמכונות אין כתובת IP ציבורית

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

משתמשים בארגומנט associate_public_ip_address = false עם המשאב aws_instance כדי לוודא שמכונות EC2 מוקצות ללא כתובת IP ציבורית

resource "aws_instance" "no_public_ip" {
  ...
  associate_public_ip_address = false
}

מסוף AWS

כברירת מחדל, מאפיין הכתובת הציבורית של IPv4 מוגדר כ-false ברשתות משנה שאינן ברירת מחדל, וכ-true ברשתות משנה שהן ברירת מחדל. חריגה היא רשת משנה שאינה ברירת מחדל, שנוצרה על ידי האשף להפעלת מופע Amazon EC2 – האשף מגדיר את המאפיין כ-true. אפשר לשנות את המאפיין הזה באמצעות מסוף Amazon VPC.

כדי לשנות את אופן ההקצאה של כתובות IPv4 ציבוריות לרשת המשנה

  1. פותחים את מסוף Amazon VPC בכתובת https://console.aws.amazon.com/vpc/.
  2. בחלונית הניווט, בוחרים באפשרות Subnets (רשתות משנה).
  3. בוחרים את רשת המשנה ולוחצים על פעולות, עריכת הגדרות רשת המשנה.
  4. אם מסומנת תיבת הסימון הקצאה אוטומטית של כתובת IPv4 ציבורית, המערכת מבקשת כתובת IPv4 ציבורית לכל המופעים שמופעלים ברשת המשנה שנבחרה. מסמנים את תיבת הסימון או מבטלים את הסימון שלה לפי הצורך, ואז בוחרים באפשרות שמירה.

AWS CLI

הפקודה הבאה מריצה מכונת EC2 בתת-רשת שמוגדרת כברירת מחדל, בלי לשייך לה כתובת IP ציבורית.

aws ec2 run-instances \
--image-id <ami_id> \
--instance-type <instance_flavor> \
--no-associate-public-ip-address \
--key-name MyKeyPair

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Ec2 Managedinstance Association Compliance Status Check

שם הקטגוריה ב-API: EC2_MANAGEDINSTANCE_ASSOCIATION_COMPLIANCE_STATUS_CHECK

שיוך של State Manager הוא הגדרה שמוקצית למופעים המנוהלים שלכם. ההגדרה מגדירה את המצב שרוצים לשמור במופעים. לדוגמה, אפשר לציין שצריך להתקין תוכנת אנטי-וירוס ולהפעיל אותה במופעים, או שצריך לסגור יציאות מסוימות. מכונות EC2 שמקושרות ל-AWS Systems Manager מנוהלות על ידי Systems Manager, ולכן קל יותר להחיל תיקונים, לתקן הגדרות שגויות ולהגיב לאירועי אבטחה.

המלצה: בדיקת סטטוס התאימות של שיוך AWS Systems Manager

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

הדוגמה הבאה ממחישה איך ליצור מכונת EC2 פשוטה, מסמך של AWS Systems Manager ‏ (SSM) ושיוך בין SSM לבין מכונת EC2. סוגי המסמכים הנתמכים הם Command ו-Policy.

resource "aws_instance" "web" {
  ami           = "<iam_id>"
  instance_type = "<instance_flavor>"
}

resource "aws_ssm_document" "check_ip" {
  name          = "check-ip-config"
  document_type = "Command"

  content = <<DOC
  {
    "schemaVersion": "1.2",
    "description": "Check ip configuration of a Linux instance.",
    "parameters": {

    },
    "runtimeConfig": {
      "aws:runShellScript": {
        "properties": [
          {
            "id": "0.aws:runShellScript",
            "runCommand": ["ifconfig"]
          }
        ]
      }
    }
  }
DOC
}

resource "aws_ssm_association" "check_ip_association" {
  name = aws_ssm_document.check_ip.name

  targets {
    key    = "InstanceIds"
    values = [aws_instance.web.id]
  }
}

מסוף AWS

מידע על הגדרת שיוכים באמצעות AWS Systems Manager באמצעות המסוף מופיע במאמר יצירת שיוכים במסמכי התיעוד של AWS Systems Manager.

AWS CLI

יצירת מסמך SSM

aws ssm create-document \
--name <document_name> \
--content  file://path/to-file/document.json \
--document-type "Command"

יצירת שיוך SSM

aws ssm create-association \
--name <association_name> \
--targets "Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>"

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Ec2 Managedinstance Patch Compliance Status Check

שם הקטגוריה ב-API: EC2_MANAGEDINSTANCE_PATCH_COMPLIANCE_STATUS_CHECK

אמצעי הבקרה הזה בודק אם הסטטוס של התאימות של שיוך AWS Systems Manager הוא COMPLIANT או NON_COMPLIANT אחרי שהשיוך מופעל במופע. הבדיקה נכשלת אם סטטוס התאימות של השיוך הוא NON_COMPLIANT.

שיוך של State Manager הוא הגדרה שמוקצית למופעים המנוהלים שלכם. ההגדרה מגדירה את המצב שרוצים לשמור במופעים. לדוגמה, שיוך יכול לציין שצריך להתקין תוכנת אנטי-וירוס ולהפעיל אותה במופעים שלכם, או שצריך לסגור יציאות מסוימות.

אחרי שיוצרים שיוך אחד או יותר ל-State Manager, מידע על סטטוס התאימות זמין באופן מיידי. אפשר לראות את סטטוס התאימות במסוף או בתגובה לפקודות AWS CLI או לפעולות מקבילות ב-Systems Manager API. במקרה של שיוכים, ב-Configuration Compliance מוצג סטטוס התאימות (Compliant או Non-compliant). בנוסף, מוצגת רמת החומרה שמשויכת להשתייכות, כמו 'קריטית' או 'בינונית'.

מידע נוסף על התאמה לדרישות של שיוך State Manager זמין במאמר About State Manager association compliance (מידע על התאמה לדרישות של שיוך State Manager) במדריך למשתמש של AWS Systems Manager.

המלצה: בדיקת הסטטוס של תאימות התיקונים ב-AWS Systems Manager

שיוך שנכשל יכול להיות קשור לדברים שונים, כולל יעדים ושמות של מסמכי SSM. כדי לפתור את הבעיה הזו, צריך קודם לזהות את השיוך ולבדוק אותו על ידי צפייה בהיסטוריית השיוכים. הוראות לצפייה בהיסטוריית השיוך מופיעות במאמר Viewing association histories במדריך למשתמש של AWS Systems Manager.

אחרי שתבדקו את הבעיה, תוכלו לערוך את הקישור כדי לתקן אותה. אפשר לערוך שיוך כדי לציין שם חדש, לוח זמנים, רמת חומרה או יעדים. אחרי שאתם עורכים שיוך, AWS Systems Manager יוצר גרסה חדשה. הוראות לעריכת שיוך מופיעות במאמר עריכה ויצירה של גרסה חדשה של שיוך במדריך למשתמש של AWS Systems Manager.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Ec2 Metadata Service Allows Imdsv2

שם הקטגוריה ב-API: EC2_METADATA_SERVICE_ALLOWS_IMDSV2

כשמפעילים את שירות המטא-נתונים במופעי AWS EC2, למשתמשים יש אפשרות להשתמש בגרסה 1 של שירות המטא-נתונים של המופע (IMDSv1; שיטת בקשה/תגובה) או בגרסה 2 של שירות המטא-נתונים של המופע (IMDSv2; שיטה מבוססת-סשן).

המלצה: מוודאים ששירות המטא-נתונים של EC2 מאפשר רק IMDSv2

ממסוף:
‫1. מתחברים אל AWS Management Console ופותחים את Amazon EC2 console דרך הכתובת https://console.aws.amazon.com/ec2/‎
2. בתפריט Instances (מופעים), בוחרים באפשרות Instances (מופעים).
‫3. לכל מופע, בוחרים את המופע ואז בוחרים באפשרות 'פעולות' > 'שינוי אפשרויות המטא-נתונים של המופע'.
4. אם שירות המטא-נתונים של המכונה מופעל, מגדירים את IMDSv2 לערך Required.

משורת הפקודה:

aws ec2 modify-instance-metadata-options --instance-id <instance_id> --http-tokens required

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Ec2 Volume Inuse Check

שם הקטגוריה ב-API: EC2_VOLUME_INUSE_CHECK

זיהוי והסרה של נפחי Elastic Block Store‏ (EBS) לא מצורפים (לא בשימוש) בחשבון AWS, כדי להקטין את העלות של החשבון ב-AWS. מחיקה של נפחי EBS שלא נעשה בהם שימוש גם מצמצמת את הסיכון שנתונים סודיים או רגישים ייצאו מהמתחם שלכם. בנוסף, אמצעי הבקרה הזה בודק גם אם מופעלת בארכיונים של מופעי EC2 הגדרה למחיקת נפחים בסיום.

כברירת מחדל, מופעי EC2 מוגדרים למחיקת הנתונים בכל נפחי EBS שמשויכים למופע, ולמחיקת נפח ה-EBS הבסיסי של המופע. עם זאת, כל אמצעי האחסון מסוג EBS שאינם root שמצורפים למופע, בהפעלה או במהלך הביצוע, נשמרים כברירת מחדל אחרי הסיום.

המלצה: בדיקה אם אמצעי האחסון של EBS מצורפים למכונות EC2 ומוגדרים למחיקה עם סיום המכונה

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

כדי למנוע את התרחיש הזה באמצעות Terraform, צריך ליצור מכונות EC2 עם בלוקים מוטמעים של EBS. כדי לוודא שכל בלוקי ה-EBS שמשויכים למופע (לא רק בלוק השורש) יימחקו עם סיום המופע, צריך להגדיר את מאפיין ebs_block_device.delete_on_termination כברירת מחדל לערך true.

resource "aws_instance" "web" {
    ami                    = <ami_id>
    instance_type          = <instance_flavor>
    ebs_block_device {
      delete_on_termination = true # Default
      device_name           = "/dev/sdh"
    }

מסוף AWS

כדי למחוק נפח EBS באמצעות המסוף

  1. פותחים את מסוף Amazon EC2 בכתובת https://console.aws.amazon.com/ec2/.
  2. בחלונית הניווט, בוחרים באפשרות כרכים.
  3. בוחרים את אמצעי האחסון שרוצים למחוק ולוחצים על פעולות, מחיקת אמצעי אחסון.
  4. הערה: אם האפשרות 'מחיקת נפח' מושבתת, הנפח מצורף למופע. כדי למחוק את אמצעי האחסון, צריך לנתק אותו מהמופע.
  5. בתיבת הדו-שיח לאישור, בוחרים באפשרות מחיקה.

AWS CLI

פקודת הדוגמה הזו מוחקת נפח אחסון זמין עם מזהה נפח האחסון vol-049df61146c4d7901. אם הפקודה מצליחה, לא מוחזר פלט.

aws ec2 delete-volume --volume-id vol-049df61146c4d7901

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Efs Encrypted Check

שם הקטגוריה ב-API: EFS_ENCRYPTED_CHECK

‫Amazon EFS תומך בשני סוגים של הצפנה למערכות קבצים: הצפנה של נתונים במעבר והצפנה במנוחה. הבדיקה הזו מוודאת שכל מערכות הקבצים של EFS מוגדרות עם הצפנה במצב מנוחה בכל האזורים המופעלים בחשבון.

המלצה: בדיקה אם EFS מוגדר להצפנת נתוני קבצים באמצעות KMS

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

אפשר להשתמש בקטע הקוד הבא כדי ליצור EFS מוצפן באמצעות KMS (הערה: המאפיין kms_key_id הוא אופציונלי, ואם לא מועבר מזהה מפתח KMS, ייצור מפתח).

resource "aws_efs_file_system" "encrypted-efs" {
  creation_token = "my-kms-encrypted-efs"
  encrypted      = true
  kms_key_id     = "arn:aws:kms:us-west-2:12344375555:key/16393ebd-3348-483f-b162-99b6648azz23"

  tags = {
    Name = "MyProduct"
  }
}

מסוף AWS

כדי להגדיר הצפנה ב-EFS באמצעות מסוף AWS, אפשר לעיין במאמר הצפנה של מערכת קבצים במנוחה באמצעות המסוף.

AWS CLI

חשוב לשים לב שכאשר יוצרים EFS מהמסוף, ההצפנה במנוחה מופעלת כברירת מחדל, אבל זה לא נכון לגבי EFS שנוצר באמצעות CLI,‏ API או SDK. בדוגמה הבאה מוסבר איך ליצור מערכת קבצים מוצפנת בתשתית שלכם.

aws efs create-file-system \
--backup \
--encrypted \
--region us-east-1 \

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Efs In Backup Plan

שם הקטגוריה ב-API: EFS_IN_BACKUP_PLAN

השיטות המומלצות של אמזון כוללות הגדרת גיבויים ל-Elastic File Systems (EFS). הבדיקה הזו מתבצעת בכל מערכות EFS בכל אזור מופעל בחשבון AWS שלכם, כדי לוודא שהגיבויים מופעלים.

המלצה: בדיקה אם מערכות קבצים של EFS כלולות בתוכניות של AWS Backup

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

משתמשים במשאב aws_efs_backup_policy כדי להגדיר מדיניות גיבוי למערכות קבצים של EFS.

resource "aws_efs_file_system" "encrypted-efs" {
  creation_token = "my-encrypted-efs"
  encrypted      = true

  tags = merge({
    Name = "${local.resource_prefix.value}-efs"
    }, {
    git_file             = "terraform/aws/efs.tf"
    git_org              = "your_git_org"
    git_repo             = "your_git_repo"
  })
}

resource "aws_efs_backup_policy" "policy" {
  file_system_id = aws_efs_file_system.encrypted-efs.id

  backup_policy {
    status = "ENABLED"
  }
}

מסוף AWS

יש שתי אפשרויות לגיבוי EFS: שירות הגיבוי של AWS ופתרון גיבוי מ-EFS ל-EFS. כדי לתקן EFS שלא גובה באמצעות המסוף, אפשר לעיין במאמר:

  1. שימוש ב-AWS Backup כדי לגבות ולשחזר מערכות קבצים של Amazon EFS
  2. גיבוי מ-EFS ל-EFS

AWS CLI

יש כמה אפשרויות ליצירת מערכות קבצים תואמות של EFS באמצעות ה-CLI:

  1. יצירת EFS עם גיבוי אוטומטי מופעל (ברירת המחדל לאחסון באזור אחד ותלוי בזמינות הגיבוי באזור AWS)
  2. יצירת EFS והגדרת מדיניות גיבוי

עם זאת, בהנחה שהתיקון צריך להתבצע ב-EFS קיים, האפשרות הטובה ביותר היא ליצור מדיניות גיבוי ולשייך אותה ל-EFS שלא עומד בדרישות. תצטרכו להשתמש בפקודה אחת לכל מערכת EFS בתשתית שלכם.

arr=( $(aws efs describe-file-systems | jq -r '.FileSystems[].FileSystemId') )
for efs in "${arr[@]}"
do
  aws efs put-backup-policy \
  --file-system-id "${efs}" \
  --backup-policy "Status=ENABLED"
done

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Elb Acm Certificate Required

שם הקטגוריה ב-API: ELB_ACM_CERTIFICATE_REQUIRED

בודקת אם מאזן העומסים הקלאסי משתמש באישור HTTPS/SSL שסופק על ידי AWS Certificate Manager‏ (ACM). הבדיקה נכשלת אם מאזן העומסים הקלאסי שהוגדר עם מאזין HTTPS/SSL לא משתמש באישור שסופק על ידי ACM.

כדי ליצור אישור, אפשר להשתמש ב-ACM או בכלי שתומך בפרוטוקולים SSL ו-TLS, כמו OpenSSL. ב-Security Hub מומלץ להשתמש ב-ACM כדי ליצור או לייבא אישורים למאזן העומסים.

‫ACM משולב עם מאזני עומסים קלאסיים, כך שאפשר לפרוס את האישור במאזן העומסים. כדאי גם לחדש את האישורים האלה באופן אוטומטי.

המלצה: בדיקה שכל מאזני העומסים הקלאסיים משתמשים באישורי SSL שסופקו על ידי AWS Certificate Manager

מידע על שיוך אישור SSL/TLS של ACM למאזן עומסים קלאסי זמין במאמר במרכז הידע של AWS בנושא איך משייכים אישור SSL/TLS של ACM למאזן עומסים קלאסי, של אפליקציות או של רשת?

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Elb Deletion Protection Enabled

שם הקטגוריה ב-API: ELB_DELETION_PROTECTION_ENABLED

הבדיקה הזו בודקת אם מופעלת הגנה מפני מחיקה ב-Application Load Balancer. הבדיקה נכשלת אם לא מוגדרת הגנה מפני מחיקה.

כדי להגן על איזון העומסים של האפליקציה מפני מחיקה, מפעילים את ההגנה מפני מחיקה.

המלצה: צריך להפעיל הגנה מפני מחיקה של מאזן עומסים של אפליקציות

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

כדי למנוע מחיקה בטעות של איזון העומסים, אפשר להפעיל הגנה מפני מחיקה. כברירת מחדל, ההגנה מפני מחיקה מושבתת במאזן העומסים.

אם הפעלתם הגנה מפני מחיקה עבור איזון העומסים, אתם צריכים להשבית את ההגנה הזו כדי שתוכלו למחוק את איזון העומסים.

כדי להפעיל את ההגנה מפני מחיקה מהמסוף.

  1. פותחים את מסוף Amazon EC2 בכתובת https://console.aws.amazon.com/ec2/.
  2. בחלונית הניווט, בקטע איזון עומסים, בוחרים באפשרות מאזני עומסים.
  3. בוחרים את מאזן העומסים.
  4. בכרטיסייה תיאור, בוחרים באפשרות עריכת מאפיינים.
  5. בדף עריכת מאפייני איזון העומסים, בוחרים באפשרות הפעלה של הגנה מפני מחיקה ואז לוחצים על שמירה.
  6. לוחצים על שמירה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Elb Logging Enabled

שם הקטגוריה ב-API: ELB_LOGGING_ENABLED

הבדיקה הזו בודקת אם מאזן העומסים של האפליקציות ומאזן העומסים הקלאסי מוגדרים עם הפעלת רישום ביומן. הבדיקה נכשלת אם הערך של access_logs.s3.enabled הוא false.

שירות Elastic Load Balancing מספק יומני גישה שמתעדים מידע מפורט על בקשות שנשלחות למאזן העומסים. כל יומן מכיל מידע כמו השעה שבה הבקשה התקבלה, כתובת ה-IP של הלקוח, זמני האחזור, נתיבי הבקשות ותגובות השרת. אפשר להשתמש ביומני הגישה האלה כדי לנתח דפוסי תנועה ולפתור בעיות.

מידע נוסף זמין במאמר Access logs for your Classic Load Balancer (יומני גישה למאזן עומסים קלאסי) במדריך למשתמש בנושא מאזני עומסים קלאסיים.

המלצה: בדיקה אם מאזני עומסים קלאסיים ומאזני עומסים של אפליקציות כוללים הפעלה של רישום ביומן

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

כדי לפתור את הבעיה, צריך לעדכן את מאזני העומסים כדי להפעיל את הרישום ביומן.

כדי להפעיל יומני גישה

  1. פותחים את מסוף Amazon EC2 בכתובת https://console.aws.amazon.com/ec2/.
  2. בחלונית הניווט, בוחרים באפשרות Load balancers (מאזני עומסים).
  3. בוחרים מאזן עומסים של אפליקציות (ALB) או מאזן עומסים קלאסי.
  4. בקטע פעולות, בוחרים באפשרות עריכת מאפיינים.
  5. בקטע יומני גישה, בוחרים באפשרות הפעלה.
  6. מזינים את המיקום ב-S3. המיקום הזה יכול להיות קיים או שאפשר ליצור אותו בשבילכם. אם לא מציינים קידומת, יומני הגישה מאוחסנים בבסיס של קטגוריית S3.
  7. לוחצים על שמירה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Elb Tls Https Listeners Only

שם הקטגוריה ב-API: ELB_TLS_HTTPS_LISTENERS_ONLY

הבדיקה הזו מוודאת שכל מאזני העומסים הקלאסיים מוגדרים לשימוש בתקשורת מאובטחת.

מאזין הוא תהליך שבודק אם יש בקשות לחיבור. הוא מוגדר עם פרוטוקול ויציאה לחיבורים של חזית האתר (מהלקוח למאזן העומסים) ופרוטוקול ויציאה לחיבורים של קצה העורפי (ממאזן העומסים למופע). מידע על היציאות, הפרוטוקולים והגדרות המאזינים שנתמכים על ידי Elastic Load Balancing זמין במאמר Listeners for your Classic Load Balancer.

המלצה: בדיקה שכל מאזני העומסים הקלאסיים מוגדרים עם מאזינים מסוג SSL או HTTPS

כדי להגדיר SSL או TLS למאזני עומסים קלאסיים, אפשר לעיין במאמר יצירת מאזן עומסים מסוג HTTPS/SSL באמצעות AWS Management Console.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Encrypted Volumes

שם הקטגוריה ב-API: ENCRYPTED_VOLUMES

בודקת אם אמצעי האחסון של EBS שנמצאים במצב מצורף מוצפנים. כדי שהבדיקה הזו תעבור, צריך להשתמש בכרכים של EBS ולהצפין אותם. אם אמצעי האחסון של EBS לא מצורף, הוא לא נבדק.

כדי להוסיף שכבת אבטחה לנתונים הרגישים בנפחי EBS, כדאי להפעיל הצפנה במנוחה של EBS. ההצפנה של Amazon EBS היא פתרון פשוט להצפנה של משאבי EBS, שלא דורש מכם לבנות, לתחזק ולאבטח תשתית משלכם לניהול מפתחות. הוא משתמש במפתחות KMS כשיוצרים אמצעי אחסון ותמונות מצב מוצפנים.

מידע נוסף על הצפנה ב-Amazon EBS זמין במאמר בנושא הצפנה ב-Amazon EBS במדריך למשתמש של Amazon EC2 למקרים של Linux.

המלצה: כדאי להצפין את נפחי Amazon EBS המצורפים במצב מנוחה

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

אין דרך ישירה להצפין נפח או תמונת מצב קיימים שלא מוצפנים. אפשר להצפין נפח או snapshot חדשים רק כשיוצרים אותם.

אם הפעלתם הצפנה כברירת מחדל, Amazon EBS מצפין את הווליום או את תמונת המצב החדשים שנוצרו באמצעות מפתח ברירת המחדל שלכם להצפנת Amazon EBS. גם אם לא הפעלתם הצפנה כברירת מחדל, אתם יכולים להפעיל הצפנה כשאתם יוצרים נפח או תמונת מצב ספציפיים. בשני המקרים, אפשר לבטל את מפתח ברירת המחדל להצפנת Amazon EBS ולבחור מפתח סימטרי בניהול הלקוח.

מידע נוסף זמין במאמרים יצירת נפח Amazon EBS והעתקת תמונת מצב של Amazon EBS במדריך למשתמש של Amazon EC2 למופעי Linux.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Encryption At Rest Enabled Rds Instances

שם הקטגוריה ב-API: ENCRYPTION_AT_REST_ENABLED_RDS_INSTANCES

מופעי מסד נתונים מוצפנים של Amazon RDS משתמשים באלגוריתם ההצפנה AES-256, שהוא התקן המקובל בתחום, כדי להצפין את הנתונים בשרת שמארח את מופעי מסד הנתונים של Amazon RDS. אחרי שהנתונים מוצפנים, Amazon RDS מטפל באימות הגישה ובפענוח של הנתונים באופן שקוף, עם השפעה מינימלית על הביצועים.

המלצה: מוודאים שההצפנה במצב מנוחה מופעלת במכונות RDS

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. נכנסים אל AWS Management Console (מסוף הניהול ב-AWS) ופותחים את מרכז הבקרה של RDS בכתובת https://console.aws.amazon.com/rds/.
  2. בחלונית הניווט הימנית, לוחצים על Databases.
  3. בוחרים את מופע מסד הנתונים שצריך להצפין.
  4. לוחצים על הלחצן Actions בפינה השמאלית העליונה ובוחרים באפשרות Take Snapshot.
  5. בדף 'יצירת תמונת מצב', מזינים את שם מסד הנתונים שרוצים ליצור לו תמונת מצב בשדה Snapshot Name ולוחצים על Take Snapshot.
  6. בוחרים את התמונה החדשה שנוצרה ולוחצים על הלחצן Action בפינה השמאלית העליונה, ואז בוחרים באפשרות Copy snapshot בתפריט הפעולות.
  7. בדף Make Copy of DB Snapshot (יצירת עותק של תמונת מצב של מסד נתונים), מבצעים את הפעולות הבאות:
  • בשדה New DB Snapshot Identifier (מזהה חדש של תמונת מצב של מסד נתונים), מזינים שם ל-new snapshot.
  • מסמנים את התיבה Copy Tags, New snapshot must have the same tags as the source snapshot (לקובץ ה-snapshot החדש צריכים להיות אותם תגים כמו לקובץ ה-snapshot של המקור).
  • בוחרים באפשרות Yes מהרשימה הנפתחת Enable Encryption כדי להפעיל הצפנה. אפשר לבחור להשתמש במפתח ההצפנה שמוגדר כברירת מחדל ב-AWS או במפתח מותאם אישית מהרשימה הנפתחת Master Key (מפתח ראשי).
  1. לוחצים על Copy Snapshot כדי ליצור עותק מוצפן של תמונת המצב של המופע שנבחר.
  2. בוחרים את העותק החדש של התמונה המגובת המוצפנת ולוחצים על הלחצן Action בפינה השמאלית העליונה, ואז בוחרים בלחצן Restore Snapshot בתפריט הפעולות. כך תשוחזר התמונה המגובת המוצפנת למופע חדש של מסד נתונים.
  3. בדף Restore DB Instance (שחזור מופע מסד נתונים), מזינים שם ייחודי למופע מסד הנתונים החדש בשדה DB Instance Identifier (מזהה מופע מסד נתונים).
  4. בודקים את פרטי ההגדרות של המופע ולוחצים על Restore DB Instance.
  5. אחרי שתהליך הקצאת המופע החדש יושלם, תוכלו לעדכן את הגדרות האפליקציה כך שיפנו לנקודת הקצה של מופע מסד הנתונים החדש והמוצפן. אחרי שתשנו את נקודת הקצה של מסד הנתונים ברמת האפליקציה, תוכלו להסיר את המופע הלא מוצפן.

AWS CLI

  1. מריצים את הפקודה describe-db-instances כדי להציג רשימה של כל שמות מסדי הנתונים של RDS שזמינים באזור AWS שנבחר. פלט הפקודה אמור להחזיר את מזהה מופע מסד הנתונים.
aws rds describe-db-instances --region <region-name> --query 'DBInstances[*].DBInstanceIdentifier'
  1. מריצים את הפקודה create-db-snapshot כדי ליצור תמונת מצב של מופע מסד הנתונים שנבחר. בפלט הפקודה יופיע הערך new snapshot עם השם DB Snapshot Name.
aws rds create-db-snapshot --region <region-name> --db-snapshot-identifier <DB-Snapshot-Name> --db-instance-identifier <DB-Name>
  1. מריצים את הפקודה list-aliases כדי להציג את הכינויים של מפתחות KMS שזמינים באזור מסוים. פלט הפקודה צריך להחזיר כל key alias currently available. בתהליך ההפעלה של ההצפנה ב-RDS, מאתרים את המזהה של מפתח ברירת המחדל של AWS KMS.
aws kms list-aliases --region <region-name>
  1. מריצים את הפקודה copy-db-snapshot באמצעות מזהה מפתח ה-KMS שמוגדר כברירת מחדל עבור מופעי RDS שהוחזר קודם כדי ליצור עותק מוצפן של קובץ ה-snapshot של מופע מסד הנתונים. בפלט הפקודה יוחזר encrypted instance snapshot configuration.
aws rds copy-db-snapshot --region <region-name> --source-db-snapshot-identifier <DB-Snapshot-Name> --target-db-snapshot-identifier <DB-Snapshot-Name-Encrypted> --copy-tags --kms-key-id <KMS-ID-For-RDS>
  1. מריצים את הפקודה restore-db-instance-from-db-snapshot כדי לשחזר את תמונת המצב המוצפנת שנוצרה בשלב הקודם למופע חדש של מסד נתונים. אם הפעולה בוצעה ללא שגיאות, פלט הפקודה צריך להחזיר את ההגדרה של מופע מסד הנתונים המוצפן החדש.
aws rds restore-db-instance-from-db-snapshot --region <region-name> --db-instance-identifier <DB-Name-Encrypted> --db-snapshot-identifier <DB-Snapshot-Name-Encrypted>
  1. מריצים את הפקודה describe-db-instances כדי להציג רשימה של כל שמות מסדי הנתונים של RDS שזמינים באזור AWS שנבחר. הפלט יחזיר את שם מזהה מופע מסד הנתונים. בוחרים את שם מסד הנתונים המוצפן שיצרנו זה עתה, DB-Name-Encrypted.
aws rds describe-db-instances --region <region-name> --query 'DBInstances[*].DBInstanceIdentifier'
  1. מריצים שוב את הפקודה describe-db-instances באמצעות מזהה מופע ה-RDS שהוחזר קודם, כדי לקבוע אם מופע מסד הנתונים שנבחר מוצפן. פלט הפקודה צריך להחזיר את סטטוס ההצפנה True.
aws rds describe-db-instances --region <region-name> --db-instance-identifier <DB-Name-Encrypted> --query 'DBInstances[*].StorageEncrypted'

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Encryption Enabled Efs File Systems

שם הקטגוריה ב-API: ENCRYPTION_ENABLED_EFS_FILE_SYSTEMS

צריך להצפין את הנתונים ב-EFS במצב מנוחה באמצעות AWS KMS (Key Management Service).

המלצה: מוודאים שההצפנה מופעלת במערכות קבצים של EFS

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. מתחברים למסוף הניהול של AWS ועוברים למרכז הבקרה Elastic File System (EFS).
  2. בחלונית הניווט שמימין, לוחצים על File Systems.
  3. כדי להתחיל בתהליך ההגדרה של מערכת הקבצים, לוחצים על הכפתור Create File System בתפריט העליון של מרכז הבקרה.
  4. בדף ההגדרה של Configure file system access, מבצעים את הפעולות הבאות.
    - בוחרים את ה-VPC הנכון מהרשימה הנפתחת של ה-VPC.
    - בקטע Create mount targets (יצירת יעדי הרכבה), מסמנים את תיבות הסימון של כל אזורי הזמינות (AZ) ב-VPC שנבחר. אלה יהיו יעדי ההצמדה.
    - לוחצים על Next step כדי להמשיך.

  5. מבצעים את הפעולות הבאות בדף Configure optional settings.
    - יוצרים tags כדי לתאר את מערכת הקבצים החדשה.
    - בוחרים באפשרות performance mode בהתאם לדרישות שלכם.
    - מסמנים את התיבה Enable encryption ובוחרים באפשרות aws/elasticfilesystem מהתפריט הנפתח Select KMS master key (בחירת מפתח מאסטר של KMS) כדי להפעיל הצפנה למערכת הקבצים החדשה באמצעות מפתח המאסטר שמוגדר כברירת מחדל ומסופק ומנוהל על ידי AWS KMS.
    - לוחצים על Next step כדי להמשיך.

  6. בודקים את פרטי ההגדרה של מערכת הקבצים בדף review and create ולוחצים על Create File System כדי ליצור את מערכת הקבצים החדשה של AWS EFS.

  7. מעתיקים את הנתונים ממערכת הקבצים הישנה של EFS שלא מוצפנת למערכת הקבצים המוצפנת החדשה שנוצרה.
  8. אחרי שמעבירים את הנתונים למערכת הקבצים המוצפנת החדשה, צריך להסיר את מערכת הקבצים הלא מוצפנת.
  9. משנים את אזור AWS מסרגל הניווט וחוזרים על התהליך כולו עבור אזורי AWS אחרים.

מ-CLI:
‫1. מריצים את הפקודה describe-file-systems כדי לתאר את פרטי התצורה שזמינים למערכת הקבצים שנבחרה (לא מוצפנת) (בקטע 'ביקורת' מוסבר איך לזהות את המשאב הנכון):

aws efs describe-file-systems --region <region> --file-system-id <file-system-id from audit section step 2 output>
  1. פלט הפקודה צריך להחזיר את פרטי ההגדרה המבוקשים.
  2. כדי להקצות מערכת קבצים חדשה של AWS EFS, צריך ליצור מזהה ייחודי אוניברסלי (UUID) כדי ליצור את האסימון שנדרש לפקודה create-file-system. כדי ליצור את האסימון הנדרש, אפשר להשתמש ב-UUID שנוצר באופן אקראי מכתובת האתר https://www.uuidgenerator.net.
  3. מריצים את הפקודה create-file-system באמצעות האסימון הייחודי שנוצר בשלב הקודם.
aws efs create-file-system --region <region> --creation-token <Token (randomly generated UUID from step 3)> --performance-mode generalPurpose --encrypted
  1. פלט הפקודה צריך להחזיר את המטא-נתונים של ההגדרה החדשה של מערכת הקבצים.
  2. מריצים את הפקודה create-mount-target באמצעות מזהה מערכת הקבצים של EFS שנוצר בשלב הקודם כמזהה, ואת המזהה של אזור הזמינות (AZ) שייצג את יעד הטעינה:
aws efs create-mount-target --region <region> --file-system-id <file-system-id> --subnet-id <subnet-id>
  1. פלט הפקודה צריך להחזיר את המטא-נתונים של נקודת הגישה החדשה.
  2. עכשיו אפשר לטעון את מערכת הקבצים ממופע EC2.
  3. מעתיקים את הנתונים ממערכת הקבצים הישנה של EFS שלא מוצפנת למערכת הקבצים המוצפנת החדשה שנוצרה.
  4. אחרי שמעבירים את הנתונים למערכת הקבצים המוצפנת החדשה, צריך להסיר את מערכת הקבצים הלא מוצפנת.
aws efs delete-file-system --region <region> --file-system-id <unencrypted-file-system-id>
  1. כדי לשנות את אזור AWS, מעדכנים את ‎--region וחוזרים על כל התהליך עבור אזורי AWS אחרים.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Iam Password Policy

שם הקטגוריה ב-API: IAM_PASSWORD_POLICY

ב-AWS אפשר להגדיר מדיניות סיסמאות מותאמת אישית בחשבון AWS כדי לציין דרישות מורכבות ותקופות חובה לשינוי הסיסמאות של משתמשי IAM. אם לא מגדירים מדיניות סיסמאות מותאמת אישית, הסיסמאות של משתמשי IAM צריכות לעמוד בדרישות של מדיניות הסיסמאות שמוגדרת כברירת מחדל ב-AWS. השיטות המומלצות לאבטחה ב-AWS כוללות את הדרישות הבאות למורכבות הסיסמה:

  • נדרשת לפחות אות גדולה אחת בסיסמה.
  • נדרשת לפחות אות קטנה אחת בסיסמאות.
  • נדרש לפחות סמל אחד בסיסמאות.
  • נדרשת לפחות ספרה אחת בסיסמאות.
  • הגדרת דרישה לאורך סיסמה מינימלי של 14 תווים לפחות.
  • נדרשות לפחות 24 סיסמאות לפני שניתן לעשות שימוש חוזר בסיסמה.
  • נדרשים לפחות 90 ימים לפני שתוקף הסיסמה יפוג

הבדיקה הזו בודקת את כל דרישות המדיניות שצוינו במדיניות הסיסמאות.

המלצה: בדיקה אם מדיניות הסיסמאות בחשבון למשתמשי IAM עומדת בדרישות שצוינו

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

resource "aws_iam_account_password_policy" "strict" {
  allow_users_to_change_password = true
  require_uppercase_characters   = true
  require_lowercase_characters   = true
  require_symbols                = true
  require_numbers                = true
  minimum_password_length        = 14
  password_reuse_prevention      = 24
  max_password_age               = 90
}

מסוף AWS

כדי ליצור מדיניות סיסמאות מותאמת אישית

  1. נכנסים אל AWS Management Console ופותחים את IAM Console בכתובת https://console.aws.amazon.com/iam/.
  2. בחלונית הניווט, בוחרים באפשרות 'הגדרות חשבון'.
  3. בקטע 'מדיניות הסיסמאות', בוחרים באפשרות 'שינוי מדיניות הסיסמאות'.
  4. בוחרים את האפשרויות שרוצים להחיל על מדיניות הסיסמאות ולוחצים על 'שמירת שינויים'.

כדי לשנות מדיניות סיסמאות מותאמת אישית

  1. נכנסים אל AWS Management Console ופותחים את IAM Console בכתובת https://console.aws.amazon.com/iam/.
  2. בחלונית הניווט, בוחרים באפשרות 'הגדרות חשבון'.
  3. בקטע 'מדיניות הסיסמאות', בוחרים באפשרות 'שינוי'.
  4. בוחרים את האפשרויות שרוצים להחיל על מדיניות הסיסמאות ולוחצים על 'שמירת שינויים'.

AWS CLI

aws iam update-account-password-policy \
--allow-users-to-change-password \
--require-uppercase-characters \
--require-lowercase-characters \
--require-symbols \
--require-numbers \
--minimum-password-length 14 \
--password-reuse-prevention 24 \
--max-password-age 90

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Iam Password Policy Prevents Password Reuse

שם הקטגוריה ב-API: IAM_PASSWORD_POLICY_PREVENTS_PASSWORD_REUSE

כללי מדיניות של סיסמאות ב-IAM יכולים למנוע שימוש חוזר בסיסמה מסוימת על ידי אותו משתמש. מומלץ להגדיר במדיניות הסיסמאות שלא תהיה אפשרות לעשות שימוש חוזר בסיסמאות.

המלצה: מוודאים שמדיניות הסיסמאות ב-IAM מונעת שימוש חוזר בסיסמאות

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. מתחברים למסוף AWS (עם הרשאות מתאימות לצפייה בהגדרות של חשבון לניהול זהויות וגישה)
  2. עוברים אל IAM Service ב-AWS Console
  3. בחלונית הימנית, לוחצים על 'הגדרות חשבון'.
  4. מסמנים את התיבה 'מניעת שימוש חוזר בסיסמאות'.
  5. ההגדרה 'מספר הסיסמאות לזכור' מוגדרת ל-24

AWS CLI

 aws iam update-account-password-policy --password-reuse-prevention 24

הערה: אפשר לשלב את כל הפקודות שמתחילות ב-aws iam update-account-password-policy בפקודה אחת.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Iam Password Policy Requires Minimum Length 14 Greater

שם הקטגוריה ב-API: IAM_PASSWORD_POLICY_REQUIRES_MINIMUM_LENGTH_14_GREATER

מדיניות הסיסמאות משמשת, בין היתר, לאכיפה של דרישות מורכבות הסיסמה. אפשר להשתמש במדיניות סיסמאות של IAM כדי לוודא שהסיסמאות יהיו באורך מסוים לפחות. מומלץ לדרוש במדיניות הסיסמאות אורך מינימלי של 14 תווים לסיסמה.

המלצה: מוודאים שמדיניות הסיסמאות של IAM מחייבת אורך מינימלי של 14 תווים או יותר

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. מתחברים למסוף AWS (עם הרשאות מתאימות לצפייה בהגדרות של חשבון לניהול זהויות וגישה)
  2. עוברים אל IAM Service ב-AWS Console
  3. בחלונית הימנית, לוחצים על 'הגדרות חשבון'.
  4. מגדירים את הערך של 'אורך סיסמה מינימלי' ל-14 או יותר.
  5. לוחצים על 'החלת מדיניות סיסמאות'.

AWS CLI

 aws iam update-account-password-policy --minimum-password-length 14

הערה: אפשר לשלב את כל הפקודות שמתחילות ב-aws iam update-account-password-policy בפקודה אחת.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Iam Policies Allow Full Administrative Privileges Attached

שם הקטגוריה ב-API: IAM_POLICIES_ALLOW_FULL_ADMINISTRATIVE_PRIVILEGES_ATTACHED

כללי המדיניות ב-IAM הם האמצעי שבאמצעותו מוענקות הרשאות למשתמשים, לקבוצות או לתפקידים. מומלץ להעניק הרשאות מינימליות, כלומר לתת רק את ההרשאות שנדרשות לביצוע משימה. זהו גם עיקרון אבטחה מקובל. כדאי להבין מה המשתמשים צריכים לעשות, ואז ליצור עבורם כללי מדיניות שיאפשרו להם לבצע רק את המשימות האלה, במקום לתת להם הרשאות אדמין מלאות.

המלצה: מוודאים שכללי מדיניות IAM שמאפשרים הרשאות אדמין מלאות '*:*' לא מצורפים

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

כדי לנתק את המדיניות שכוללת הרשאות אדמין מלאות, פועלים לפי השלבים הבאים:

  1. נכנסים אל AWS Management Console ופותחים את IAM console בכתובת https://console.aws.amazon.com/iam/.
  2. בחלונית הניווט, לוחצים על Policies (מדיניות) ואז מחפשים את שם המדיניות שמופיע בשלב הביקורת.
  3. בוחרים את המדיניות שרוצים למחוק.
  4. בתפריט הפעולות של המדיניות, בוחרים באפשרות Detach
  5. בחירת כל המשתמשים, הקבוצות והתפקידים שהמדיניות הזו מצורפת אליהם
  6. לחץ על Detach Policy
  7. בתפריט הפעולות של המדיניות, בוחרים באפשרות Detach.

AWS CLI

כדי לנתק את המדיניות עם הרשאות אדמין מלאות, כמו שמופיע בשלב הביקורת, מבצעים את הפעולות הבאות:

  1. מוצגת רשימה של כל המשתמשים, הקבוצות והתפקידים ב-IAM שהמדיניות המנוהלת שצוינה מצורפת אליהם.
 aws iam list-entities-for-policy --policy-arn <policy_arn>
  1. מבטלים את השיוך של המדיניות לכל משתמשי ה-IAM:
 aws iam detach-user-policy --user-name <iam_user> --policy-arn <policy_arn>
  1. מנתקים את המדיניות מכל קבוצות ה-IAM:
 aws iam detach-group-policy --group-name <iam_group> --policy-arn <policy_arn>
  1. מבטלים את הקישור של המדיניות מכל התפקידים ב-IAM:
 aws iam detach-role-policy --role-name <iam_role> --policy-arn <policy_arn>

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Iam Users Receive Permissions Groups

שם הקטגוריה ב-API: IAM_USERS_RECEIVE_PERMISSIONS_GROUPS

למשתמשי IAM ניתנת גישה לשירותים, לפונקציות ולנתונים באמצעות מדיניות IAM. יש ארבע דרכים להגדיר מדיניות למשתמש: 1) עריכה ישירה של מדיניות המשתמש, כלומר מדיניות מוטבעת או מדיניות משתמש; 2) צירוף מדיניות ישירות למשתמש; 3) הוספת המשתמש לקבוצת IAM שמצורפת אליה מדיניות; 4) הוספת המשתמש לקבוצת IAM שיש לה מדיניות מוטבעת.

מומלץ להשתמש רק בהטמעה השלישית.

המלצה: מוודאים שמשתמשי IAM מקבלים הרשאות רק דרך קבוצות

כדי ליצור קבוצת IAM ולהקצות לה מדיניות:

  1. נכנסים אל AWS Management Console ופותחים את IAM console בכתובת https://console.aws.amazon.com/iam/.
  2. בחלונית הניווט, לוחצים על Groups ואז על Create New Group .
  3. בתיבה Group Name, מקלידים את שם הקבוצה ולוחצים על Next Step .
  4. ברשימת המדיניות, מסמנים את התיבה לצד כל מדיניות שרוצים להחיל על כל חברי הקבוצה. אחר כך לוחצים על Next Step .
  5. לחץ על Create Group

כדי להוסיף משתמש לקבוצה מסוימת:

  1. נכנסים אל AWS Management Console ופותחים את IAM console בכתובת https://console.aws.amazon.com/iam/.
  2. בחלונית הניווט, לוחצים על Groups.
  3. בחירת הקבוצה שאליה רוצים להוסיף משתמש
  4. לחץ על Add Users To Group
  5. בחירת המשתמשים שרוצים להוסיף לקבוצה
  6. לחץ על Add Users

כדי להסיר שיוך ישיר בין משתמש לבין מדיניות:

  1. נכנסים אל AWS Management Console ופותחים את IAM console בכתובת https://console.aws.amazon.com/iam/.
  2. בחלונית הניווט הימנית, לוחצים על 'משתמשים'.
  3. לכל משתמש:
    - בוחרים את המשתמש
    - לוחצים על הכרטיסייה Permissions
    - מרחיבים את Permissions policies
    - לוחצים על X לכל מדיניות, ואז לוחצים על 'ניתוק' או על 'הסרה' (בהתאם לסוג המדיניות)

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Iam User Group Membership Check

שם הקטגוריה ב-API: IAM_USER_GROUP_MEMBERSHIP_CHECK

משתמשי IAM צריכים תמיד להיות חלק מקבוצת IAM כדי לפעול בהתאם לשיטות המומלצות לאבטחת IAM.

הוספת משתמשים לקבוצה מאפשרת לשתף מדיניות בין סוגים שונים של משתמשים.

המלצה: בדיקה אם משתמשי IAM הם חברים בקבוצת IAM אחת לפחות

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

resource "aws_iam_user" "example" {
  name = "test-iam-user"
  path = "/users/dev/"
}

resource "aws_iam_group" "example" {
  name = "Developers"
  path = "/users/dev/"
}

resource "aws_iam_user_group_membership" "example" {
  user   = aws_iam_user.example.name
  groups = [aws_iam_group.example.name]
}

מסוף AWS

כשמשתמשים ב-AWS Management Console כדי למחוק משתמש IAM, מערכת IAM מוחקת אוטומטית את המידע הבא:

  1. המשתמש
  2. חברויות בקבוצות משתמשים – כלומר, המשתמש מוסר מכל קבוצות המשתמשים ב-IAM שהיה חבר בהן
  3. כל סיסמה שמשויכת למשתמש
  4. כל מפתחות הגישה ששייכים למשתמש
  5. כל כללי המדיניות שמוטמעים במשתמש (כללי מדיניות שמוחלים על משתמש דרך הרשאות של קבוצת משתמשים לא מושפעים)

כדי למחוק משתמש IAM:

  1. נכנסים אל AWS Management Console ופותחים את IAM Console בכתובת https://console.aws.amazon.com/iam/.
  2. בחלונית הניווט, בוחרים באפשרות 'משתמשים' ואז מסמנים את תיבת הסימון לצד שם המשתמש שרוצים למחוק.
  3. בראש הדף, בוחרים באפשרות 'מחיקה'.
  4. בתיבת הדו-שיח לאישור, מזינים את שם המשתמש בשדה הזנת הטקסט כדי לאשר את מחיקת המשתמש.
  5. בוחרים באפשרות 'מחיקה'.

כדי להוסיף משתמש לקבוצת משתמשים ב-IAM:

  1. נכנסים אל AWS Management Console ופותחים את IAM Console בכתובת https://console.aws.amazon.com/iam/.
  2. בחלונית הניווט, בוחרים באפשרות 'קבוצות משתמשים' ואז בוחרים את שם הקבוצה.
  3. בוחרים בכרטיסייה 'משתמשים' ואז באפשרות 'הוספת משתמשים'. מסמנים את התיבה לצד המשתמשים שרוצים להוסיף.
  4. בוחרים באפשרות 'הוספת משתמשים'.

AWS CLI

בניגוד למסוף הניהול של Amazon Web Services, כשמוחקים משתמש באופן פרוגרמטי, צריך למחוק את הפריטים שמצורפים למשתמש באופן ידני, אחרת המחיקה תיכשל.

לפני שמנסים למחוק משתמש, צריך להסיר את הפריטים הבאים:

  1. סיסמה ( DeleteLoginProfile )
  2. מפתחות גישה ( DeleteAccessKey )
  3. אישור חתימה ( DeleteSigningCertificate )
  4. מפתח ציבורי SSH ‏ ( DeleteSSHPublicKey )
  5. פרטי כניסה ל-Git ( DeleteServiceSpecificCredential )
  6. מכשיר לאימות רב-שלבי (MFA) ( DeactivateMFADevice , DeleteVirtualMFADevice )
  7. מדיניות מוטמעת ( DeleteUserPolicy )
  8. מדיניות מנוהלת שמצורפת ( DetachUserPolicy )
  9. חברות בקבוצות ( RemoveUserFromGroup )

כדי למחוק משתמש, אחרי שמוחקים את כל הפריטים שמשויכים למשתמש:

aws iam delete-user \
  --user-name "test-user"

כדי להוסיף משתמש IAM לקבוצת IAM:

aws iam add-user-to-group \
  --group-name "test-group"
  --user-name "test-user"

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Iam User Mfa Enabled

שם הקטגוריה ב-API: IAM_USER_MFA_ENABLED

אימות רב-שלבי (MFA) הוא שיטה מומלצת שמוסיפה שכבת הגנה נוספת מעבר לשמות משתמשים וסיסמאות. כשמשתמש נכנס למסוף הניהול של AWS עם MFA, הוא נדרש לספק קוד אימות רגיש לזמן, שסופק על ידי מכשיר וירטואלי או פיזי רשום.

המלצה: בדיקה אם למשתמשי AWS IAM מופעל אימות רב-שלבי (MFA)

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

ב-Terraform, יש כמה אפשרויות לפתרון הבעיה של היעדר מכשירי MFA. סביר להניח שכבר יש לכם מבנה הגיוני לארגון המשתמשים בקבוצות ולכללי מדיניות מגבילים.

בדוגמה הבאה אפשר לראות איך:

  1. יוצרים משתמשים.
  2. יצירת פרופילי התחברות של משתמשים עם מפתח ציבורי PGP.
  3. יצירת קבוצה ומדיניות קבוצה שמאפשרות ניהול עצמי של פרופיל IAM.
  4. מצרפים משתמשים לקבוצה.
  5. יצירת מכשירי MFA וירטואליים למשתמשים.
  6. מספקים לכל משתמש את קוד ה-QR ואת הסיסמה שנוצרו.
variable "users" {
  type = set(string)
  default = [
    "test@example.com",
    "test2@example.com"
  ]
}

resource "aws_iam_user" "test_users" {
  for_each = toset(var.users)
  name     = each.key
}

resource "aws_iam_user_login_profile" "test_users_profile" {
  for_each                = var.users
  user                    = each.key
  # Key pair created using GnuPG, this is the public key
  pgp_key = file("path/to/gpg_pub_key_base64.pem")
  password_reset_required = true
  lifecycle {
    ignore_changes = [
      password_length,
      password_reset_required,
      pgp_key,
    ]
  }
}

resource "aws_iam_virtual_mfa_device" "test_mfa" {
  for_each                = toset(var.users)
  virtual_mfa_device_name = each.key
}

resource "aws_iam_group" "enforce_mfa_group" {
  name = "EnforceMFAGroup"
}

resource "aws_iam_group_membership" "enforce_mfa_group_membership" {
  name  = "EnforceMFAGroupMembership"
  group = aws_iam_group.enforce_mfa_group.name
  users = [for k in aws_iam_user.test_users : k.name]
}

resource "aws_iam_group_policy" "enforce_mfa_policy" {
  name   = "EnforceMFAGroupPolicy"
  group  = aws_iam_group.enforce_mfa_group.id
  policy = <<POLICY
{
  "Version": "2012-10-17",
  "Statement": [
    {
        "Sid": "AllowViewAccountInfo",
        "Effect": "Allow",
        "Action": [
            "iam:GetAccountPasswordPolicy",
            "iam:ListVirtualMFADevices"
        ],
        "Resource": "*"
    },
    {
        "Sid": "AllowManageOwnPasswords",
        "Effect": "Allow",
        "Action": [
            "iam:ChangePassword",
            "iam:GetUser"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnAccessKeys",
        "Effect": "Allow",
        "Action": [
            "iam:CreateAccessKey",
            "iam:DeleteAccessKey",
            "iam:ListAccessKeys",
            "iam:UpdateAccessKey"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnSigningCertificates",
        "Effect": "Allow",
        "Action": [
            "iam:DeleteSigningCertificate",
            "iam:ListSigningCertificates",
            "iam:UpdateSigningCertificate",
            "iam:UploadSigningCertificate"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnSSHPublicKeys",
        "Effect": "Allow",
        "Action": [
            "iam:DeleteSSHPublicKey",
            "iam:GetSSHPublicKey",
            "iam:ListSSHPublicKeys",
            "iam:UpdateSSHPublicKey",
            "iam:UploadSSHPublicKey"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnGitCredentials",
        "Effect": "Allow",
        "Action": [
            "iam:CreateServiceSpecificCredential",
            "iam:DeleteServiceSpecificCredential",
            "iam:ListServiceSpecificCredentials",
            "iam:ResetServiceSpecificCredential",
            "iam:UpdateServiceSpecificCredential"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnVirtualMFADevice",
        "Effect": "Allow",
        "Action": [
            "iam:CreateVirtualMFADevice",
            "iam:DeleteVirtualMFADevice"
        ],
        "Resource": "arn:aws:iam::*:mfa/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnUserMFA",
        "Effect": "Allow",
        "Action": [
            "iam:DeactivateMFADevice",
            "iam:EnableMFADevice",
            "iam:ListMFADevices",
            "iam:ResyncMFADevice"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "DenyAllExceptListedIfNoMFA",
        "Effect": "Deny",
        "NotAction": [
            "iam:CreateVirtualMFADevice",
            "iam:EnableMFADevice",
            "iam:GetUser",
            "iam:ListMFADevices",
            "iam:ListVirtualMFADevices",
            "iam:ResyncMFADevice",
            "sts:GetSessionToken"
        ],
        "Resource": "*",
        "Condition": {
            "BoolIfExists": {
                "aws:MultiFactorAuthPresent": "false"
            }
        }
    }
  ]
}
POLICY
}

output "user_password_map" {
  # Outputs a map in the format {"test@example.com": <PGPEncryptedPassword>, "test2@example.com": <PGPEncryptedPassword>}
  value = { for k, v in aws_iam_user_login_profile.test_users_profile : k => v.password }
}

output "user_qr_map" {
  # Outputs a map in the format {"test@example.com": <QRCode>, "test2@example.com": <QRCode>}
  value = { for k, v in aws_iam_virtual_mfa_device.test_mfa : k => v.qr_code_png }
}

מסוף AWS

כדי להפעיל MFA לחשבונות משתמשים עם גישה למסוף AWS, אפשר לעיין במאמר הפעלת מכשיר וירטואלי לאימות רב-גורמי (MFA) (מסוף) במסמכי התיעוד של AWS.

AWS CLI

יצירת מכשיר MFA

aws iam create-virtual-mfa-device \
  --virtual-mfa-device-name "test@example.com" \
  --outfile ./QRCode.png \
  --bootstrap-method QRCodePNG

הפעלת מכשיר MFA למשתמש קיים

aws iam enable-mfa-device \
  --user-name "test@example.com" \
  --serial-number "arn:aws:iam::123456976749:mfa/test@example.com" \
  --authentication-code1 123456 \
  --authentication-code2 654321

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Iam User Unused Credentials Check

שם הקטגוריה ב-API: IAM_USER_UNUSED_CREDENTIALS_CHECK

הבדיקה הזו מאתרת סיסמאות IAM או מפתחות גישה פעילים שלא נעשה בהם שימוש ב-90 הימים האחרונים.

השיטות המומלצות הן להסיר, להשבית או להחליף את כל פרטי הכניסה שלא נעשה בהם שימוש במשך 90 ימים או יותר. כך מצטמצם חלון ההזדמנויות לשימוש בפרטי כניסה שמשויכים לחשבון שנפרץ או ננטש.

המלצה: בדיקה שלכל המשתמשים ב-AWS IAM יש סיסמאות או מפתחות גישה פעילים שלא נעשה בהם שימוש ב-maxCredentialUsageAge ימים (ברירת מחדל: 90)

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

כדי להסיר מפתחות גישה שפג תוקפם שנוצרו באמצעות Terraform, מסירים את המשאב aws_iam_access_key מהמודול ומחילים את השינוי.

כדי לאפס סיסמה לכניסה של משתמש IAM, משתמשים ב--replace כשמריצים את terraform apply.

נניח שיש פרופיל התחברות של משתמש כפי שמוצג בהמשך

resource "aws_iam_user" "example" {
  name          = "test@example.com"
  path          = "/users/"
  force_destroy = true
}

resource "aws_iam_user_login_profile" "example" {
  user    = aws_iam_user.example.name
  pgp_key = "keybase:some_person_that_exists"
}

מריצים את הפקודה הבאה כדי לאפס את הסיסמה של פרופיל הכניסה של המשתמש

terraform apply -replace="aws_iam_user_login_profile.example"

מסוף AWS

כדי להשבית את פרטי הכניסה של חשבונות לא פעילים:

  1. פותחים את מסוף IAM בכתובת https://console.aws.amazon.com/iam/.
  2. בוחרים באפשרות 'משתמשים'.
  3. בוחרים את שם המשתמש שפרטי הכניסה שלו ישנים יותר מ-90 יום או שהשימוש האחרון שלו היה לפני יותר מ-90 יום.
  4. בוחרים באפשרות 'פרטי כניסה מאובטחים'.
  5. לכל אישורי כניסה ומפתח גישה שלא נעשה בהם שימוש במשך 90 ימים לפחות, בוחרים באפשרות 'הפיכה ללא פעילים'.

כדי לדרוש מהמשתמשים במסוף להזין סיסמה חדשה בכניסה הבאה:

  1. פותחים את מסוף IAM בכתובת https://console.aws.amazon.com/iam/.
  2. בוחרים באפשרות 'משתמשים'.
  3. בוחרים את שם המשתמש שפרטי הכניסה שלו ישנים יותר מ-90 יום או שהשימוש האחרון שלו היה לפני יותר מ-90 יום.
  4. בוחרים באפשרות 'פרטי כניסה מאובטחים'.
  5. בקטע 'פרטי כניסה וסיסמה למסוף', בוחרים באפשרות 'ניהול'.
  6. מגדירים סיסמה חדשה (שנוצרה אוטומטית או בהתאמה אישית).
  7. מסמנים את התיבה לצד האפשרות 'נדרש איפוס סיסמה'.
  8. לוחצים על 'אישור'.

AWS CLI

כדי להשבית את מפתחות הגישה

aws iam update-access-key \
  --access-key-id <value> \
  --status "Inactive"

כדי למחוק מפתחות גישה

aws iam delete-access-key \
  --access-key-id <value>

כדי לאפס סיסמה של פרופיל כניסה של משתמש

aws iam update-login-profile \
  --user-name "test@example.com" \
  --password <temporary_password> \
  --password-reset-required

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Kms Cmk Not Scheduled For Deletion

שם הקטגוריה ב-API: KMS_CMK_NOT_SCHEDULED_FOR_DELETION

הבקרה הזו בודקת אם מפתחות KMS מתוזמנים למחיקה. הבדיקה תיכשל אם מפתח KMS מתוזמן למחיקה.

אי אפשר לשחזר מפתחות KMS אחרי שמוחקים אותם. אם מוחקים מפתח KMS, אי אפשר לשחזר נתונים שהוצפנו באמצעותו. אם נתונים משמעותיים הוצפנו באמצעות מפתח KMS שמתוזמן למחיקה, כדאי לשקול לפענח את הנתונים או להצפין אותם מחדש באמצעות מפתח KMS חדש, אלא אם אתם מבצעים מחיקה קריפטוגרפית בכוונה.

כשמפתח KMS מתוזמן למחיקה, יש תקופת המתנה חובה שמאפשרת לבטל את המחיקה, אם היא תוכננה בטעות. תקופת ההמתנה שמוגדרת כברירת מחדל היא 30 יום, אבל אפשר לקצר אותה ל-7 ימים אם מפתח ה-KMS מתוזמן למחיקה. במהלך תקופת ההמתנה, אפשר לבטל את המחיקה המתוזמנת ומפתח ה-KMS לא יימחק.

מידע נוסף על מחיקת מפתחות KMS זמין במאמר מחיקת מפתחות KMS במדריך למפתחים של AWS Key Management Service.

המלצה: בדיקה שכל מפתחות ה-CMK לא מתוזמנים למחיקה

כדי לבטל מחיקה מתוזמנת של מפתח KMS, ראו ביטול מחיקת מפתח בקטע 'תזמון וביטול של מחיקת מפתח (מסוף)' במדריך למפתחים של AWS Key Management Service.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Lambda Concurrency Check

שם הקטגוריה ב-API: LAMBDA_CONCURRENCY_CHECK

בודק אם פונקציית Lambda מוגדרת עם מגבלת הרצה מקבילית ברמת הפונקציה. הכלל הוא NON_COMPLIANT אם פונקציית Lambda לא מוגדרת עם מגבלת ביצוע מקבילי ברמת הפונקציה.

המלצה: בדיקה אם פונקציות Lambda מוגדרות עם מגבלת ביצוע מקבילי ברמת הפונקציה

כדי להגדיר מגבלה על מספר ההרצות המקבילות ברמת הפונקציה, אפשר לעיין במאמר הגדרת מקבילות שמורה במאמרי העזרה של AWS Lambda.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Lambda Dlq Check

שם הקטגוריה ב-API: LAMBDA_DLQ_CHECK

הפונקציה בודקת אם פונקציית Lambda מוגדרת עם תור להודעות שלא ניתן למסור. הכלל הוא NON_COMPLIANT אם פונקציית Lambda לא מוגדרת עם תור להודעות שלא ניתן להעביר (dead-letter queue).

המלצה: בדיקה אם פונקציות Lambda מוגדרות עם תור להודעות שלא ניתן להעביר

כדי לעדכן פונקציות Lambda לשימוש בתורי הודעות שלא נמסרו, אפשר לעיין במאמר תורי הודעות שלא נמסרו במסמכי התיעוד של AWS.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Lambda Function Public Access Prohibited

שם הקטגוריה ב-API: LAMBDA_FUNCTION_PUBLIC_ACCESS_PROHIBITED

השיטות המומלצות של AWS הן לא לחשוף את פונקציית Lambda לציבור. המדיניות הזו בודקת את כל פונקציות Lambda שנפרסו בכל האזורים המופעלים בחשבון, והיא תיכשל אם הן מוגדרות כך שהן מאפשרות גישה ציבורית.

המלצה: בדיקה אם המדיניות שמצורפת לפונקציית Lambda אוסרת גישה ציבורית

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

בדוגמה הבאה מוצג שימוש ב-Terraform כדי להקצות תפקיד IAM שמגביל את הגישה לפונקציית Lambda ולצרף את התפקיד הזה לפונקציית Lambda

resource "aws_iam_role" "iam_for_lambda" {
  name = "iam_for_lambda"

  assume_role_policy = <<EOF
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": "sts:AssumeRole",
      "Principal": {
        "Service": "lambda.amazonaws.com"
      },
      "Effect": "Allow",
      "Sid": ""
    }
  ]
}
EOF
}

resource "aws_lambda_function" "test_lambda" {
  filename      = "lambda_function_payload.zip"
  function_name = "lambda_function_name"
  role          = aws_iam_role.iam_for_lambda.arn
  handler       = "index.test"

  source_code_hash = filebase64sha256("lambda_function_payload.zip")

  runtime = "nodejs12.x"

}

מסוף AWS

אם פונקציית Lambda נכשלת בבדיקה הזו, המשמעות היא שהצהרת המדיניות מבוססת-המשאבים של פונקציית Lambda מאפשרת גישה ציבורית.

כדי לפתור את הבעיה, צריך לעדכן את המדיניות כדי להסיר את ההרשאות או להוסיף את התנאי AWS:SourceAccount. אפשר לעדכן את המדיניות שמבוססת על משאבים רק דרך Lambda API.

בהוראות הבאות נעשה שימוש במסוף כדי לבדוק את המדיניות, ובממשק שורת הפקודה של AWS כדי להסיר את ההרשאות.

כדי לראות את המדיניות לפי משאבים של פונקציית Lambda

  1. פותחים את מסוף AWS Lambda בכתובת https://console.aws.amazon.com/lambda/.
  2. בחלונית הניווט, בוחרים באפשרות Functions (פונקציות).
  3. בוחרים את הפונקציה.
  4. בוחרים באפשרות 'הרשאות'. מדיניות מבוססת-משאבים מציגה את ההרשאות שחלות כשחשבון אחר או שירות AWS מנסים לגשת לפונקציה.
  5. בודקים את המדיניות מבוססת-המשאבים.
  6. מזהים את הצהרת המדיניות שבה ערכי השדה Principal הופכים את המדיניות לציבורית. לדוגמה, אפשר לאפשר "*" או { "AWS": "*" }.

אי אפשר לערוך את המדיניות במסוף. כדי להסיר הרשאות מהפונקציה, משתמשים בפקודה remove-permission מ-AWS CLI.

שימו לב לערך של מזהה ההצהרה (Sid) של ההצהרה שרוצים להסיר.

AWS CLI

כדי להשתמש ב-CLI כדי להסיר הרשאות מפונקציית Lambda, מריצים את הפקודה remove-permission באופן הבא.

aws lambda remove-permission \
--function-name <value> \
--statement-id <value>

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Lambda Inside Vpc

שם הקטגוריה ב-API: LAMBDA_INSIDE_VPC

בודקת אם פונקציית Lambda נמצאת ב-VPC. יכול להיות שיוצגו לכם ממצאים שנכשלו לגבי משאבי Lambda@Edge.

היא לא בודקת את הגדרת הניתוב של רשת המשנה ב-VPC כדי לקבוע את יכולת ההגעה (reachability) הציבורית.

המלצה: בדיקה אם פונקציות ה-Lambda קיימות ב-VPC

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

כדי להגדיר פונקציה להתחברות לרשתות משנה פרטיות בענן וירטואלי פרטי (VPC) בחשבון שלכם:

  1. פותחים את מסוף AWS Lambda בכתובת https://console.aws.amazon.com/lambda/.
  2. עוברים אל Functions (פונקציות) ובוחרים את פונקציית ה-Lambda.
  3. גוללים אל Network (רשת) ובוחרים VPC עם דרישות הקישוריות של הפונקציה.
  4. כדי להריץ את הפונקציות במצב זמינות גבוהה, Security Hub ממליץ לבחור לפחות שתי רשתות משנה.
  5. בוחרים לפחות קבוצת אבטחה אחת שעומדת בדרישות הקישוריות של הפונקציה.
  6. לוחצים על 'שמירה'.

מידע נוסף זמין בקטע בנושא הגדרת פונקציית Lambda לגישה למשאבים ב-VPC במדריך למפתחים של AWS Lambda.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Mfa Delete Enabled S3 Buckets

שם הקטגוריה ב-API: MFA_DELETE_ENABLED_S3_BUCKETS

אחרי שמפעילים את התכונה 'מחיקה עם MFA' בדלי S3 רגיש ומסווג, המשתמש נדרש לבצע אימות בשתי דרכים.

המלצה: מוודאים שהאפשרות 'מחיקה עם אימות רב-שלבי' מופעלת בקטגוריות S3

כדי להפעיל מחיקה עם אימות רב-שלבי בדלי S3, פועלים לפי השלבים הבאים.

הערה:
- אי אפשר להפעיל את התכונה 'מחיקה עם אימות MFA' באמצעות מסוף הניהול של AWS. צריך להשתמש ב-AWS CLI או ב-API.
- כדי להפעיל מחיקה עם אימות MFA בדלי S3, צריך להשתמש בחשבון ה-root.

משורת הפקודה:

  1. מריצים את הפקודה s3api put-bucket-versioning
aws s3api put-bucket-versioning --profile my-root-profile --bucket Bucket_Name --versioning-configuration Status=Enabled,MFADelete=Enabled --mfa “arn:aws:iam::aws_account_id:mfa/root-account-mfa-device passcode”

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Mfa Enabled Root User Account

שם הקטגוריה ב-API: MFA_ENABLED_ROOT_USER_ACCOUNT

חשבון המשתמש 'root' הוא המשתמש עם ההרשאות הגבוהות ביותר בחשבון AWS. אימות רב-שלבי (MFA) מוסיף שכבת הגנה נוספת מעבר לשם משתמש וסיסמה. כש-MFA מופעל, כשמשתמש נכנס לאתר של AWS, הוא מתבקש להזין את שם המשתמש והסיסמה שלו, וגם קוד אימות ממכשיר ה-MFA של AWS.

הערה: כשמשתמשים באימות MFA וירטואלי לחשבונות 'root', מומלץ שהמכשיר שבו משתמשים לא יהיה מכשיר אישי, אלא מכשיר נייד ייעודי (טאבלט או טלפון) שמנוהל כך שיהיה טעון ומאובטח בנפרד ממכשירים אישיים פרטיים. ("אימות רב-גורמי וירטואלי לא אישי") כך מצמצמים את הסיכון לאובדן הגישה לאימות הרב-גורמי בגלל אובדן המכשיר, עסקת טרייד אין של המכשיר או אם האדם שבבעלותו המכשיר כבר לא עובד בחברה.

המלצה: מוודאים שאימות דו-שלבי מופעל בחשבון המשתמש 'root'

כדי להגדיר אימות רב-שלבי (MFA) לחשבון המשתמש 'root':

  1. נכנסים אל AWS Management Console ופותחים את IAM console בכתובת https://console.aws.amazon.com/iam/.

הערה: כדי לנהל מכשירי MFA בחשבון AWS 'הראשי', צריך להשתמש בפרטי כניסה לחשבון הראשי כדי להיכנס ל-AWS. אי אפשר לנהל מכשירי MFA עבור חשבון 'הבסיס' באמצעות פרטי כניסה אחרים.

  1. בוחרים באפשרות Dashboard , ובקטע Security Status , מרחיבים את Activate MFA בחשבון הבסיס.
  2. בוחרים באפשרות Activate MFA
  3. באשף, בוחרים באפשרות A virtual MFA מכשיר ואז בוחרים באפשרות Next Step .
  4. שירות IAM יוצר ומציג פרטי הגדרה למכשיר ה-MFA הווירטואלי, כולל גרפיקה של קוד QR. הגרפיקה היא ייצוג של 'מפתח ההגדרה הסודי' שזמין להזנה ידנית במכשירים שלא תומכים בקודים של QR.
  5. פותחים את אפליקציית האימות הווירטואלית. (רשימת האפליקציות שבהן אפשר להשתמש לאירוח מכשירי MFA וירטואליים זמינה במאמר אפליקציות וירטואליות של MFA). אם אפליקציית ה-MFA הווירטואלי תומכת בכמה חשבונות (כמה מכשירי MFA וירטואליים), בוחרים באפשרות ליצור חשבון חדש (מכשיר MFA וירטואלי חדש).
  6. בודקים אם אפליקציית ה-MFA תומכת בקודים של QR, ואז מבצעים אחת מהפעולות הבאות:
  • משתמשים באפליקציה כדי לסרוק את קוד ה-QR. לדוגמה, אפשר ללחוץ על סמל המצלמה או לבחור באפשרות שדומה ל'סריקת קוד', ואז להשתמש במצלמת המכשיר כדי לסרוק את הקוד.
  • באשף Manage MFA Device (ניהול מכשיר MFA), בוחרים באפשרות Show secret key for manual configuration (הצגת מפתח סודי להגדרה ידנית) ומקלידים את מפתח ההגדרה הסודי באפליקציית ה-MFA.

בסיום, מכשיר ה-MFA הווירטואלי מתחיל ליצור סיסמאות חד-פעמיות.

באשף Manage MFA Device (ניהול מכשיר MFA), בתיבה Authentication Code 1 (קוד אימות 1), מקלידים את הסיסמה החד-פעמית שמופיעה כרגע במכשיר ה-MFA הווירטואלי. מחכים עד 30 שניות עד שהמכשיר ייצור סיסמה חד-פעמית חדשה. לאחר מכן מקלידים את הסיסמה השנייה לשימוש חד-פעמי בתיבה 'קוד אימות 2'. בוחרים באפשרות 'הקצאת אימות וירטואלי רב-שלבי'.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Multi Factor Authentication Mfa Enabled All Iam Users Console

שם הקטגוריה ב-API: MULTI_FACTOR_AUTHENTICATION_MFA_ENABLED_ALL_IAM_USERS_CONSOLE

אימות רב-שלבי (MFA) מוסיף שכבת אימות נוספת מעבר לפרטי הכניסה הרגילים. כש-MFA מופעל, כשמשתמש נכנס ל-AWS Console, הוא מתבקש להזין את שם המשתמש והסיסמה שלו, וגם קוד אימות מהטוקן הפיזי או הווירטואלי של MFA. מומלץ להפעיל אימות דו-שלבי בכל החשבונות שיש להם סיסמה למסוף.

המלצה: מוודאים שאימות רב-שלבי (MFA) מופעל לכל משתמשי IAM שיש להם סיסמה למסוף

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. נכנסים אל AWS Management Console ופותחים את IAM Console בכתובת https://console.aws.amazon.com/iam/‎.
  2. בחלונית הימנית, לוחצים על Users.
  3. ברשימה User Name, בוחרים את השם של המשתמש שאליו רוצים להקצות אימות דו-שלבי.
  4. בוחרים בכרטיסייה Security Credentials ואז באפשרות Manage MFA Device.
  5. ב-Manage MFA Device wizard, בוחרים במכשיר Virtual MFA ואז בוחרים באפשרות Continue.

שירות IAM יוצר ומציג פרטי הגדרה למכשיר ה-MFA הווירטואלי, כולל גרפיקה של קוד QR. הגרפיקה היא ייצוג של 'מפתח ההגדרה הסודי' שזמין להזנה ידנית במכשירים שלא תומכים בקודים של QR.

  1. פותחים את אפליקציית האימות הווירטואלית. (רשימת האפליקציות שבהן אפשר להשתמש כדי לארח מכשירי MFA וירטואליים זמינה בכתובת https://aws.amazon.com/iam/details/mfa/#Virtual_MFA_Applications). אם אפליקציית ה-MFA הווירטואלי תומכת בכמה חשבונות (כמה מכשירי MFA וירטואליים), בוחרים באפשרות ליצור חשבון חדש (מכשיר MFA וירטואלי חדש).
  2. בודקים אם אפליקציית ה-MFA תומכת בקודים של QR, ואז מבצעים אחת מהפעולות הבאות:
  • משתמשים באפליקציה כדי לסרוק את קוד ה-QR. לדוגמה, אפשר ללחוץ על סמל המצלמה או לבחור באפשרות שדומה ל'סריקת קוד', ואז להשתמש במצלמת המכשיר כדי לסרוק את הקוד.
  • באשף Manage MFA Device (ניהול מכשיר MFA), בוחרים באפשרות Show secret key for manual configuration (הצגת מפתח סודי להגדרה ידנית) ומקלידים את מפתח ההגדרה הסודי באפליקציית ה-MFA.

בסיום, מכשיר ה-MFA הווירטואלי מתחיל ליצור סיסמאות חד-פעמיות.

  1. ב-Manage MFA Device wizard, ב-MFA Code 1 box, מקלידים את one-time password שמופיע כרגע במכשיר ה-MFA הווירטואלי. מחכים עד 30 שניות עד שהמכשיר ייצור סיסמה חד-פעמית חדשה. מקלידים את one-time password השני בMFA Code 2 box.

  2. לחץ על Assign MFA.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

No Network Acls Allow Ingress 0 0 0 0 Remote Server Administration

שם הקטגוריה ב-API: NO_NETWORK_ACLS_ALLOW_INGRESS_0_0_0_0_REMOTE_SERVER_ADMINISTRATION

הפונקציה Network Access Control List (NACL) מספקת סינון חסר מצב של תנועת רשת נכנסת ויוצאת למשאבי AWS. מומלץ שאף NACL לא יאפשר גישה בלתי מוגבלת לתעבורת נתונים נכנסת (ingress) ליציאות של ניהול שרתים מרוחקים, כמו SSH ליציאה 22 ו-RDP ליציאה 3389, באמצעות הפרוטוקולים TDP ‏(6), UDP ‏(17) או ALL ‏(-1)

המלצה: מוודאים שאף רשימת ACL של רשת לא מאפשרת כניסה מ-0.0.0.0/0 ליציאות ניהול של שרתים מרוחקים

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

מבצעים את הפעולות הבאות:
‫1. מתחברים למסוף הניהול של AWS בכתובת https://console.aws.amazon.com/vpc/home
2. בחלונית הימנית, לוחצים על Network ACLs
. 3. לכל רשימת ACL ברשת שצריך לתקן, מבצעים את הפעולות הבאות:
– בוחרים את רשימת ה-ACL ברשת
– לוחצים על הכרטיסייה Inbound Rules
– לוחצים על Edit inbound rules
– או א) מעדכנים את השדה Source (מקור) לטווח שאינו 0.0.0.0/0, או ב) לוחצים על Delete כדי להסיר את כלל התעבורה הנכנסת הבעייתי
– לוחצים על Save

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

No Root User Account Access Key Exists

שם הקטגוריה ב-API: NO_ROOT_USER_ACCOUNT_ACCESS_KEY_EXISTS

חשבון המשתמש 'root' הוא המשתמש עם ההרשאות הגבוהות ביותר בחשבון AWS. מפתחות גישה ל-AWS מספקים גישה תוכניתית לחשבון AWS נתון. מומלץ למחוק את כל מפתחות הגישה שמשויכים לחשבון המשתמש 'root'.

המלצה: מוודאים שלא קיים מפתח גישה לחשבון משתמש 'root'

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. נכנסים למסוף הניהול של AWS כמשתמש 'root' ופותחים את מסוף IAM בכתובת https://console.aws.amazon.com/iam/.
  2. לוחצים על <root_account> בפינה השמאלית העליונה ובוחרים באפשרות My Security Credentials מהתפריט הנפתח.
  3. במסך הקופץ, לוחצים על Continue to Security Credentials.
  4. לוחצים על Access Keys (מזהה מפתח גישה ומפתח גישה סודי).
  5. בעמודה Status (אם יש מפתחות פעילים).
  6. לוחצים על Delete (הערה: אי אפשר לשחזר מפתחות שנמחקו).

הערה: גם אם מפתח מושבת, הוא עדיין יופיע בפקודת ה-CLI מהליך הבדיקה, ויכול להיות שהוא יסומן בטעות כלא תואם.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

No Security Groups Allow Ingress 0 0 0 0 Remote Server Administration

שם הקטגוריה ב-API: NO_SECURITY_GROUPS_ALLOW_INGRESS_0_0_0_0_REMOTE_SERVER_ADMINISTRATION

קבוצות אבטחה מספקות סינון עם שמירת מצב של תנועה ברשת נכנסת ויוצאת למשאבי AWS. מומלץ שאף קבוצת אבטחה לא תאפשר גישת ingress בלתי מוגבלת ליציאות של שרתים מרוחקים לניהול, כמו SSH ליציאה 22 ו-RDP ליציאה 3389, באמצעות הפרוטוקולים TDP ‏ (6), UDP ‏ (17) או ALL ‏ (-1)

המלצה: מוודאים שאף קבוצת אבטחה לא מאפשרת כניסה מ-0.0.0.0/0 ליציאות של ניהול שרתים מרוחקים

כדי להטמיע את המצב שנקבע:

  1. מתחברים למסוף הניהול של AWS בכתובת https://console.aws.amazon.com/vpc/home
  2. בחלונית הימנית, לוחצים על Security Groups.
  3. לכל קבוצת אבטחה, מבצעים את הפעולות הבאות:
  4. בוחרים את קבוצת האבטחה.
  5. לוחצים על הכרטיסייה Inbound Rules.
  6. לוחצים על הלחצן Edit inbound rules.
  7. זיהוי הכללים שרוצים לערוך או להסיר
  8. אפשרות א') לעדכן את שדה המקור לטווח שאינו 0.0.0.0/0, או אפשרות ב') ללחוץ על Delete כדי להסיר את כלל התעבורה הנכנסת הבעייתי
  9. לחץ על Save rules

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

No Security Groups Allow Ingress 0 Remote Server Administration

שם הקטגוריה ב-API: NO_SECURITY_GROUPS_ALLOW_INGRESS_0_REMOTE_SERVER_ADMINISTRATION

קבוצות אבטחה מספקות סינון עם שמירת מצב של תנועה ברשת נכנסת ויוצאת למשאבי AWS. מומלץ שאף קבוצת אבטחה לא תאפשר גישת כניסה בלתי מוגבלת ליציאות של ניהול שרתים מרוחקים, כמו SSH ליציאה 22 ו-RDP ליציאה 3389.

המלצה: מוודאים שאף קבוצת אבטחה לא מאפשרת תעבורת נתונים נכנסת מ-‎ ::/0 ליציאות של שרתים מרוחקים לניהול

כדי להטמיע את המצב שנקבע:

  1. מתחברים למסוף הניהול של AWS בכתובת https://console.aws.amazon.com/vpc/home
  2. בחלונית הימנית, לוחצים על Security Groups.
  3. לכל קבוצת אבטחה, מבצעים את הפעולות הבאות:
  4. בוחרים את קבוצת האבטחה.
  5. לוחצים על הכרטיסייה Inbound Rules.
  6. לוחצים על הלחצן Edit inbound rules.
  7. זיהוי הכללים שרוצים לערוך או להסיר
  8. אפשרות א': לעדכן את שדה המקור לטווח שאינו ::‎/0, או אפשרות ב': ללחוץ על Delete כדי להסיר את כלל התעבורה הנכנסת הבעייתי
  9. לחץ על Save rules

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

One Active Access Key Available Any Single Iam User

שם הקטגוריה ב-API: ONE_ACTIVE_ACCESS_KEY_AVAILABLE_ANY_SINGLE_IAM_USER

מפתחות גישה הם פרטי כניסה לטווח ארוך למשתמש IAM או למשתמש 'הבסיס' של חשבון AWS. אפשר להשתמש במפתחות גישה כדי לחתום על בקשות פרוגרמטיות ל-AWS CLI או ל-AWS API (ישירות או באמצעות AWS SDK)

המלצה: מוודאים שיש רק מפתח גישה פעיל אחד שזמין לכל משתמש IAM יחיד

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. נכנסים למסוף הניהול של AWS ועוברים למרכז הבקרה של IAM בכתובת https://console.aws.amazon.com/iam/.
  2. בחלונית הניווט שמימין, בוחרים באפשרות Users.
  3. לוחצים על שם המשתמש ב-IAM שרוצים לבדוק.
  4. בדף ההגדרה של משתמש IAM, בוחרים בכרטיסייה Security Credentials.
  5. בקטע Access Keys, בוחרים מפתח גישה שנוצר לפני פחות מ-90 יום. זה צריך להיות המפתח הפעיל היחיד שמשתמש ה-IAM הזה משתמש בו כדי לגשת למשאבי AWS באופן פרוגרמטי. בודקים את האפליקציות כדי לוודא שמפתח הגישה שנבחר פועל.
  6. באותו קטע Access Keys, מאתרים את מפתחות הגישה שלא פועלים (מלבד זה שנבחר) ומשביתים אותם בלחיצה על הקישור Make Inactive.
  7. אם מופיעה תיבת האישור Change Key Status, לוחצים על Deactivate כדי להשבית את המפתח שנבחר.
  8. חוזרים על שלבים 3 עד 7 לכל משתמש IAM בחשבון AWS.

AWS CLI

  1. בעזרת פרטי מפתח הגישה והמשתמש ב-IAM שמופיעים ב-Audit CLI, בוחרים מפתח גישה שלא נוצר לפני יותר מ-90 ימים. זה צריך להיות המפתח הפעיל היחיד שמשתמש ה-IAM הזה משתמש בו כדי לגשת למשאבי AWS באופן פרוגרמטי. בודקים את האפליקציות כדי לוודא שמפתח הגישה שנבחר פועל.

  2. מריצים את הפקודה update-access-key שלמטה באמצעות שם המשתמש ב-IAM ומזהי מפתחות הגישה הלא פעילים כדי להשבית את המפתחות המיותרים. כדאי לעיין בקטע 'ביקורת' כדי לזהות את מזהה מפתח הגישה שלא נחוץ למשתמש IAM שנבחר

הערה – הפקודה לא מחזירה פלט:

aws iam update-access-key --access-key-id <access-key-id> --status Inactive --user-name <user-name>
  1. כדי לוודא שצמד מפתחות הגישה שנבחר deactivated, מריצים שוב את פקודת הביקורת list-access-keys עבור משתמש ה-IAM הזה:
aws iam list-access-keys --user-name <user-name>
  • פלט הפקודה צריך לחשוף את המטא-נתונים של כל מפתח גישה שמשויך למשתמש IAM. אם זוגות המפתחות הלא פעילים Status מוגדרים כ-Inactive, המפתח הושבת בהצלחה והגדרת הגישה של משתמש IAM תואמת עכשיו להמלצה הזו.
  1. חוזרים על שלבים 1 עד 3 לכל משתמש IAM בחשבון AWS.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Public Access Given Rds Instance

שם הקטגוריה ב-API: PUBLIC_ACCESS_GIVEN_RDS_INSTANCE

כדי לצמצם את הסיכונים הביטחוניים, צריך לוודא ולאשר שמופעי מסד הנתונים של RDS שהוקצו בחשבון AWS שלכם מגבילים גישה לא מורשית. כדי להגביל את הגישה לכל מופע של מסד נתונים ב-RDS שנגיש לציבור, צריך להשבית את הדגל Publicly Accessible (נגיש לציבור) של מסד הנתונים ולעדכן את קבוצת האבטחה של ה-VPC שמשויכת למופע.

המלצה: מוודאים שלא ניתנת גישה ציבורית למופע RDS

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. מתחברים למסוף הניהול של AWS ועוברים למרכז הבקרה של RDS בכתובת https://console.aws.amazon.com/rds/.
  2. בחלונית הניווט, במרכז הבקרה של RDS, לוחצים על Databases.
  3. בוחרים את מופע ה-RDS שרוצים לעדכן.
  4. לוחצים על Modify בתפריט העליון של מרכז הבקרה.
  5. בחלונית Modify DB Instance (שינוי מופע מסד נתונים), בקטע Connectivity, לוחצים על Additional connectivity configuration ומעדכנים את הערך של Publicly Accessible ל-Not publicly accessible (לא נגיש לציבור) כדי להגביל את הגישה הציבורית. כדי לעדכן את ההגדרות של רשתות המשנה, פועלים לפי השלבים הבאים:
    - בוחרים בכרטיסייה Connectivity and security ולוחצים על ערך המאפיין של ה-VPC בקטע Networking.
    - בוחרים בכרטיסייה Details בחלונית התחתונה של מרכז הבקרה של ה-VPC ולוחצים על ערך המאפיין של הגדרת טבלת הניתוב.
    - בדף הפרטים של טבלת המסלולים, בוחרים בכרטיסייה 'מסלולים' בחלונית התחתונה של מרכז הבקרה ולוחצים על Edit routes.
    - בדף 'עריכת נתיבים', מעדכנים את היעד של היעד שמוגדר ל-igw-xxxxx ולוחצים על Save נתיבים.
  6. בחלונית Modify DB Instance (שינוי מופע מסד נתונים), לוחצים על Continue ובקטע Scheduling of modifications (תזמון שינויים), מבצעים אחת מהפעולות הבאות בהתאם לדרישות: - בוחרים באפשרות Apply during the next scheduled maintenance window (החלת השינויים במהלך חלון זמן לתחזוקה המתוזמן הבא) כדי להחיל את השינויים באופן אוטומטי במהלך חלון זמן לתחזוקה המתוזמן הבא.

    - בוחרים באפשרות 'החלה מיידית' כדי להחיל את השינויים באופן מיידי. באמצעות האפשרות הזו, כל השינויים שממתינים יחולו באופן אסינכרוני בהקדם האפשרי, ללא קשר להגדרת חלון זמן לתחזוקה של מופע מסד הנתונים הזה של RDS. שימו לב שכל השינויים שזמינים בתור של השינויים בהמתנה יחולו גם הם. אם אחד מהשינויים שממתינים לאישור דורש השבתה, בחירה באפשרות הזו עלולה לגרום להשבתה לא צפויה של האפליקציה.
  7. חוזרים על שלבים 3 עד 6 לכל מופע RDS שזמין באזור הנוכחי.
  8. כדי לחזור על התהליך באזורים אחרים, משנים את האזור ב-AWS מסרגל הניווט.

AWS CLI

  1. מריצים את הפקודה describe-db-instances כדי לקבל רשימה של כל מזהי שמות מסדי הנתונים של RDS שזמינים באזור AWS שנבחר:
aws rds describe-db-instances --region <region-name> --query 'DBInstances[*].DBInstanceIdentifier'
  1. פלט הפקודה צריך להחזיר את המזהה של כל מופע של מסד הנתונים.
  2. מריצים את הפקודה modify-db-instance כדי לשנות את ההגדרה של מופע ה-RDS שנבחר. לאחר מכן משתמשים בפקודה הבאה כדי להשבית את הדגל Publicly Accessible עבור מופעי ה-RDS שנבחרו. בפקודה הזו נעשה שימוש בדגל apply-immediately. אם רוצים to avoid any downtime --no-apply-immediately flag can be used:
aws rds modify-db-instance --region <region-name> --db-instance-identifier <db-name> --no-publicly-accessible --apply-immediately
  1. פלט הפקודה צריך לחשוף את ההגדרה PubliclyAccessible בערכים בהמתנה, והיא תוחל בזמן שצוין.
  2. בשלב הזה, אי אפשר לעדכן את היעד של שער האינטרנט באמצעות AWS CLI. כדי לעדכן מידע על שער האינטרנט, צריך להשתמש בהליך של AWS Console.
  3. חוזרים על שלבים 1 עד 5 לכל מופע RDS שהוקצה באזור הנוכחי.
  4. כדי לשנות את אזור AWS, משתמשים במסנן ‎--region כדי לחזור על התהליך עבור אזורים אחרים.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Rds Enhanced Monitoring Enabled

שם הקטגוריה ב-API: RDS_ENHANCED_MONITORING_ENABLED

ניטור משופר מספק מדדים בזמן אמת לגבי מערכת ההפעלה שמופעלת במופע RDS, באמצעות סוכן שמותקן במופע.

פרטים נוספים מופיעים במאמר מעקב אחרי מדדי מערכת הפעלה באמצעות מעקב משופר.

המלצה: בדיקה אם מעקב משופר מופעל בכל מופעי מסד הנתונים של RDS

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

כדי לטפל בבעיה הזו, צריך להפעיל את התכונה 'ניטור משופר' במופעי ה-RDS באופן הבא:

יוצרים תפקיד IAM עבור RDS:

resource "aws_iam_role" "rds_logging" {
  name = "CustomRoleForRDSMonitoring"
  assume_role_policy = jsonencode({
    Version = "2012-10-17"
    Statement = [
      {
        Action = "sts:AssumeRole"
        Effect = "Allow"
        Sid    = "CustomRoleForRDSLogging"
        Principal = {
          Service = "monitoring.rds.amazonaws.com"
        }
      },
    ]
  })
}

מאחזרים את המדיניות המנוהלת של AWS עבור RDS Enhanced Monitoring:

data "aws_iam_policy" "rds_logging" {
  name = "AmazonRDSEnhancedMonitoringRole"
}

מצרפים את המדיניות לתפקיד:

resource "aws_iam_policy_attachment" "rds_logging" {
  name       = "AttachRdsLogging"
  roles      = [aws_iam_role.rds_logging.name]
  policy_arn = data.aws_iam_policy.rds_logging.arn
}

מגדירים את מרווח המעקב ואת ה-ARN של תפקיד המעקב במופע RDS שבו זוהה הפרה כדי להפעיל מעקב משופר:

resource "aws_db_instance" "default" {
  identifier           = "test-rds"
  allocated_storage    = 10
  engine               = "mysql"
  engine_version       = "5.7"
  instance_class       = "db.t3.micro"
  db_name              = "mydb"
  username             = "foo"
  password             = "foobarbaz"
  parameter_group_name = "default.mysql5.7"
  skip_final_snapshot  = true
  monitoring_interval  = 60
  monitoring_role_arn  = aws_iam_role.rds_logging.arn
}

מסוף AWS

אפשר להפעיל את התכונה 'ניטור משופר' כשיוצרים מופע של מסד נתונים, אשכול מסד נתונים Multi-AZ או עותק לקריאה, או כשמשנים מופע של מסד נתונים או אשכול מסד נתונים Multi-AZ. אם משנים את מופע מסד הנתונים כדי להפעיל את 'ניטור משופר', לא צריך להפעיל מחדש את מופע מסד הנתונים כדי שהשינוי ייכנס לתוקף.

אפשר להפעיל את התכונה 'מעקב משופר' במסוף RDS כשמבצעים אחת מהפעולות הבאות בדף Databases:

  • יוצרים מכונת מסד נתונים או אשכול מסד נתונים Multi-AZ – בוחרים באפשרות 'יצירת מסד נתונים'.
  • יוצרים העתק לקריאה – בוחרים באפשרות Actions (פעולות) ואז באפשרות Create read replica (יצירת העתק לקריאה).
  • שינוי מופע של מסד נתונים או אשכול מסדי נתונים Multi-AZ – בוחרים באפשרות Modify (שינוי).

כדי להפעיל או להשבית את המעקב המשופר במסוף RDS

  1. גוללים אל 'הגדרה נוספת'.
  2. בקטע Monitoring (מעקב), בוחרים באפשרות Enable Enhanced Monitoring (הפעלה של מעקב משופר) עבור מופע מסד הנתונים או העותק לקריאה. כדי להשבית את המעקב המשופר, בוחרים באפשרות 'השבתת המעקב המשופר'.
  3. מגדירים את המאפיין Monitoring Role (תפקיד ניהול) לתפקיד ה-IAM שיצרתם כדי לאפשר ל-Amazon RDS לתקשר עם Amazon CloudWatch Logs בשבילכם, או בוחרים באפשרות Default (ברירת מחדל) כדי ש-RDS ייצור בשבילכם תפקיד בשם rds-monitoring-role.
  4. מגדירים את המאפיין Granularity למרווח הזמן, בשניות, בין הנקודות שבהן המדדים נאספים עבור מופע מסד הנתונים או הרפליקה לקריאה. המאפיין Granularity יכול לקבל אחד מהערכים הבאים: 1,‏ 5,‏ 10,‏ 15,‏ 30 או 60. המסוף של RDS מתעדכן כל 5 שניות. אם מגדירים את רמת הפירוט לשנייה אחת במסוף RDS, עדיין רואים מדדים מעודכנים רק כל 5 שניות. אפשר לאחזר עדכונים של מדדים כל שנייה באמצעות CloudWatch Logs.

AWS CLI

יוצרים את תפקיד ה-IAM של RDS:

aws iam create-role \
  --role-name "CustomRoleForRDSMonitoring" \
  --assume-role-policy-document file://rds-assume-role.json

מצרפים את המדיניות AmazonRDSEnhancedMonitoringRole לתפקיד:

aws iam attach-role-policy \
  --role-name "CustomRoleForRDSMonitoring"\
  --policy-arn "arn:aws:iam::aws:policy/service-role/AmazonRDSEnhancedMonitoringRole"

משנים את מופע ה-RDS כדי להפעיל את התכונה 'ניטור משופר', על ידי הגדרת --monitoring-interval ו---monitoring-role-arn:

aws rds modify-db-instance \
  --db-instance-identifier "test-rds" \
  --monitoring-interval 30 \
  --monitoring-role-arn "arn:aws:iam::<account_id>:role/CustomRoleForRDSMonitoring"

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Rds Instance Deletion Protection Enabled

שם הקטגוריה ב-API: RDS_INSTANCE_DELETION_PROTECTION_ENABLED

הפעלת ההגנה מפני מחיקת מופעים היא שכבת הגנה נוספת מפני מחיקה מקרית של מסד נתונים או מחיקה על ידי גורם לא מורשה.

כשמופעלת הגנה מפני מחיקה, אי אפשר למחוק מופע של מסד נתונים של RDS. כדי שבקשת מחיקה תצליח, צריך להשבית את ההגנה מפני מחיקה.

המלצה: בדיקה אם בכל מופעי RDS מופעלת הגנה מפני מחיקה

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

כדי לתקן את אמצעי הבקרה הזה, צריך להגדיר את deletion_protection לערך true במשאב aws_db_instance.

resource "aws_db_instance" "example" {
  # ... other configuration ...
  deletion_protection = true
}

מסוף AWS

כדי להפעיל הגנה מפני מחיקה עבור מופע מסד נתונים של RDS

  1. פותחים את מסוף Amazon RDS בכתובת https://console.aws.amazon.com/rds/.
  2. בחלונית הניווט, בוחרים באפשרות Databases (מסדי נתונים) ואז בוחרים את מופע מסד הנתונים שרוצים לשנות.
  3. בוחרים באפשרות 'שינוי'.
  4. בקטע 'הגנה מפני מחיקה', בוחרים באפשרות 'הפעלת הגנה מפני מחיקה'.
  5. לוחצים על 'המשך'.
  6. בקטע 'תזמון שינויים', בוחרים מתי להחיל את השינויים. האפשרויות הן 'החלה במהלך חלון זמן לתחזוקה הבא' או 'החלה מיידית'.
  7. בוחרים באפשרות Modify DB Instance (שינוי מופע מסד נתונים).

AWS CLI

אותו עיקרון חל על AWS CLI. הגדרת --deletion-protection כמו שמופיע בהמשך.

aws rds modify-db-instance \
  --db-instance-identifier = "test-rds" \
  --deletion-protection

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Rds In Backup Plan

שם הקטגוריה ב-API: RDS_IN_BACKUP_PLAN

הבדיקה הזו מעריכה אם מופעים של מסד נתונים ב-Amazon RDS מכוסים על ידי תוכנית גיבוי. הבדיקה הזו נכשלת אם מופע של מסד נתונים של RDS לא מכוסה על ידי תוכנית גיבוי.

‫AWS Backup הוא שירות גיבוי מנוהל לחלוטין שמרכז ומבצע אוטומטית גיבוי של נתונים בשירותי AWS. באמצעות AWS Backup, אתם יכולים ליצור מדיניות גיבוי שנקראת תוכניות גיבוי. אתם יכולים להשתמש בתוכניות האלה כדי להגדיר את דרישות הגיבוי שלכם, כמו התדירות שבה הנתונים מגובים ומשך הזמן שבו הגיבויים האלה נשמרים. הכללת מופעי מסד נתונים של RDS בתוכנית גיבוי עוזרת להגן על הנתונים מפני אובדן או מחיקה לא מכוונים.

המלצה: מכונות מסד נתונים של RDS צריכות להיות מכוסות על ידי תוכנית גיבוי

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

כדי לתקן את הבעיה הזו, צריך להגדיר את הערך של backup_retention_period לערך שגדול מ-7 במשאב aws_db_instance.

resource "aws_db_instance" "example" {
  # ... other Configuration ...
  backup_retention_period = 7
}

מסוף AWS

כדי להפעיל גיבויים אוטומטיים באופן מיידי

  1. פותחים את מסוף Amazon RDS בכתובת https://console.aws.amazon.com/rds/.
  2. בחלונית הניווט, בוחרים באפשרות Databases (מסדי נתונים) ואז בוחרים את מופע מסד הנתונים שרוצים לשנות.
  3. בוחרים באפשרות Modify (שינוי) כדי לפתוח את הדף Modify DB Instance (שינוי מופע מסד נתונים).
  4. בקטע 'תקופת השמירה של הגיבוי', בוחרים ערך חיובי שאינו אפס, למשל 30 ימים, ואז בוחרים באפשרות 'המשך'.
  5. בוחרים בקטע 'תזמון השינויים' ומחליטים מתי להחיל את השינויים: אפשר לבחור באפשרות 'החלה במהלך חלון זמן לתחזוקה המתוזמן הבא' או באפשרות 'החלה מיידית'.
  6. לאחר מכן, בדף האישור, בוחרים באפשרות Modify DB Instance (שינוי מופע מסד נתונים) כדי לשמור את השינויים ולהפעיל גיבויים אוטומטיים.

AWS CLI

אותו עיקרון חל על AWS CLI. כדי להפעיל גיבויים אוטומטיים, משנים את הערך של backup-retention-period לערך שגדול מ-0 (ברירת המחדל).

aws rds modify-db-instance --db-instance-identifier "test-rds" --backup-retention-period 7

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Rds Logging Enabled

שם הקטגוריה ב-API: RDS_LOGGING_ENABLED

הכלי בודק אם היומנים הבאים של Amazon RDS מופעלים ונשלחים אל CloudWatch.

צריך להפעיל יומנים רלוונטיים במסדי נתונים של RDS. רישום ביומן של מסד נתונים מספק רשומות מפורטות של בקשות שנשלחו אל RDS. יומני מסד נתונים יכולים לעזור בביקורות אבטחה וגישה, וגם באבחון בעיות זמינות.

המלצה: בדיקה אם הייצוא של יומנים מופעל בכל מופעי מסד הנתונים של RDS

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

resource "aws_db_instance" "example" {
  # ... other configuration for MySQL ...
  enabled_cloudwatch_logs_exports = ["audit", "error", "general", "slowquery"]
  parameter_group_name            = aws_db_parameter_group.example.name
}

resource "aws_db_parameter_group" "example" {
  name   = "${aws_db_instance.example.dbInstanceIdentifier}-parameter-group"
  family = "mysql5.7"

  parameter {
    name  = "general_log"
    value = 1
  }

  parameter {
    name  = "slow_query_log"
    value = 1
  }

  parameter {
    name  = "log_output"
    value = "FILE"
  }
}

ב-MariaDB, בנוסף, יוצרים קבוצת אפשרויות בהתאמה אישית ומגדירים את option_group_name במשאב aws_db_instance.

resource "aws_db_instance" "example" {
  # ... other configuration for MariaDB ...
  enabled_cloudwatch_logs_exports = ["audit", "error", "general", "slowquery"]
  parameter_group_name            = aws_db_parameter_group.example.name
  option_group_name               = aws_db_option_group.example.name
}

resource "aws_db_option_group" "example" {
  name                     = "mariadb-option-group-for-logs"
  option_group_description = "MariaDB Option Group for Logs"
  engine_name              = "mariadb"
  option {
    option_name = "MARIADB_AUDIT_PLUGIN"
    option_settings {
      name  = "SERVER_AUDIT_EVENTS"
      value = "CONNECT,QUERY,TABLE,QUERY_DDL,QUERY_DML,QUERY_DCL"
    }
  }
}

מסוף AWS

כדי ליצור קבוצת פרמטרים מותאמת אישית של מסד נתונים

  1. פותחים את מסוף Amazon RDS בכתובת https://console.aws.amazon.com/rds/.
  2. בחלונית הניווט, בוחרים באפשרות 'קבוצות פרמטרים'.
  3. בוחרים באפשרות 'יצירת קבוצת פרמטרים'.
  4. ברשימה Parameter group family (משפחה של קבוצות פרמטרים), בוחרים משפחה של קבוצות פרמטרים של מסד נתונים.
  5. ברשימת הסוגים, בוחרים באפשרות DB Parameter Group (קבוצת פרמטרים של מסד נתונים).
  6. בשדה Group name (שם הקבוצה), מזינים את השם של קבוצת הפרמטרים החדשה של מסד הנתונים.
  7. בתיאור, מזינים תיאור לקבוצת הפרמטרים החדשה של מסד הנתונים.
  8. בוחרים באפשרות 'יצירה'.

כדי ליצור קבוצת אפשרויות חדשה לרישום ביומן של MariaDB באמצעות המסוף

  1. פותחים את מסוף Amazon RDS בכתובת https://console.aws.amazon.com/rds/.
  2. בחלונית הניווט, בוחרים באפשרות 'קבוצות אפשרויות'.
  3. בוחרים באפשרות 'יצירת קבוצה'.
  4. בחלון Create option group (יצירת קבוצת אפשרויות), מציינים את הפרטים הבאים:
    * Name (שם): השם חייב להיות ייחודי בחשבון AWS. רק אותיות, ספרות ומקפים.
    * תיאור: משמש רק למטרות תצוגה.
    * מנוע: בוחרים את מנוע מסד הנתונים.
    * גרסה ראשית של מנוע מסד הנתונים: בוחרים את הגרסה הראשית של מנוע מסד הנתונים.
  5. בוחרים באפשרות 'יצירה'.
  6. בוחרים את השם של קבוצת האפשרויות שיצרתם.
  7. בוחרים באפשרות 'הוספה'.
  8. בוחרים באפשרות MARIADB_AUDIT_PLUGIN מתוך רשימת שמות האפשרויות.
  9. מגדירים את SERVER_AUDIT_EVENTS ל-CONNECT, ‏ QUERY, ‏ TABLE, ‏ QUERY_DDL, ‏ QUERY_DML, ‏ QUERY_DCL.
  10. בוחרים באפשרות 'הוספה'.

כדי לפרסם יומנים של SQL Server DB,‏ Oracle DB או PostgreSQL ב-CloudWatch Logs מתוך AWS Management Console

  1. פותחים את מסוף Amazon RDS בכתובת https://console.aws.amazon.com/rds/.
  2. בחלונית הניווט, בוחרים באפשרות 'מסדי נתונים'.
  3. בוחרים את מופע מסד הנתונים שרוצים לשנות.
  4. בוחרים באפשרות 'שינוי'.
  5. בקטע Log exports (ייצוא יומנים), בוחרים את כל קובצי היומן כדי להתחיל לפרסם אותם ב-CloudWatch Logs.
  6. ייצוא יומנים זמין רק לגרסאות של המנוע של מסד הנתונים שתומכות בפרסום ב-CloudWatch Logs.
  7. לוחצים על 'המשך'. אחר כך, בדף הסיכום, בוחרים באפשרות Modify DB Instance (שינוי מופע מסד נתונים).

כדי להחיל קבוצת פרמטרים חדשה של מסד נתונים או קבוצת אפשרויות של מסד נתונים על מופע מסד נתונים של RDS

  1. פותחים את מסוף Amazon RDS בכתובת https://console.aws.amazon.com/rds/.
  2. בחלונית הניווט, בוחרים באפשרות 'מסדי נתונים'.
  3. בוחרים את מופע מסד הנתונים שרוצים לשנות.
  4. בוחרים באפשרות 'שינוי'.
  5. בקטע Database options (אפשרויות מסד נתונים), משנים את DB parameter group (קבוצת פרמטרים של מסד נתונים) ואת DB options group (קבוצת אפשרויות של מסד נתונים) לפי הצורך.
  6. כשמסיימים לבצע שינויים, בוחרים באפשרות 'המשך'. בודקים את סיכום השינויים.
  7. בוחרים באפשרות Modify DB Instance (שינוי מופע מסד נתונים) כדי לשמור את השינויים.

AWS CLI

מאחזרים את משפחות המנועים ובוחרים את המשפחה שתואמת למנוע ולגרסה של מופע מסד הנתונים.

aws rds describe-db-engine-versions \
  --query "DBEngineVersions[].DBParameterGroupFamily" \
  --engine "mysql"

יוצרים קבוצת פרמטרים בהתאם למנוע ולגרסה.

aws rds create-db-parameter-group \
  --db-parameter-group-name "rds-mysql-parameter-group" \
  --db-parameter-group-family "mysql5.7" \
  --description "Example parameter group for logs"

יוצרים קובץ rds-parameters.json שמכיל את הפרמטרים הנדרשים בהתאם למנוע מסד הנתונים. בדוגמה הזו נעשה שימוש ב-MySQL5.7.

[
  {
    "ParameterName": "general_log",
    "ParameterValue": "1",
    "ApplyMethod": "immediate"
  },
  {
    "ParameterName": "slow_query_log",
    "ParameterValue": "1",
    "ApplyMethod": "immediate"
  },
  {
    "ParameterName": "log_output",
    "ParameterValue": "FILE",
    "ApplyMethod": "immediate"
  }
]

משנים את קבוצת הפרמטרים כדי להוסיף את הפרמטרים בהתאם למנוע מסד הנתונים. בדוגמה הזו נעשה שימוש ב-MySQL5.7

aws rds modify-db-parameter-group \
  --db-parameter-group-name "rds-mysql-parameter-group" \
  --parameters file://rds-parameters.json

משנים את מופע מסד הנתונים כדי לשייך את קבוצת הפרמטרים.

aws rds modify-db-instance \
  --db-instance-identifier "test-rds" \
  --db-parameter-group-name "rds-mysql-parameter-group"

בנוסף, ב-MariaDB, יוצרים קבוצת אפשרויות באופן הבא.

aws rds create-option-group \
  --option-group-name "rds-mariadb-option-group" \
  --engine-name "mariadb" \
  --major-engine-version "10.6" \
  --option-group-description "Option group for MariaDB logs"

יוצרים קובץ rds-mariadb-options.json לפי ההוראות הבאות.

{
  "OptionName": "MARIADB_AUDIT_PLUGIN",
  "OptionSettings": [
    {
      "Name": "SERVER_AUDIT_EVENTS",
      "Value": "CONNECT,QUERY,TABLE,QUERY_DDL,QUERY_DML,QUERY_DCL"
    }
  ]
}

מוסיפים את האפשרות לקבוצת האפשרויות.

aws rds add-option-to-option-group \
  --option-group-name "rds-mariadb-option-group" \
  --options file://rds-mariadb-options.json

משייכים את קבוצת האפשרויות למופע של מסד הנתונים על ידי שינוי המופע של MariaDB.

aws rds modify-db-instance \
  --db-instance-identifier "rds-test-mariadb" \
  --option-group-name "rds-mariadb-option-group"

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Rds Multi Az Support

שם הקטגוריה ב-API: RDS_MULTI_AZ_SUPPORT

צריך להגדיר את מופעי מסד הנתונים של RDS למספר אזורי זמינות (AZ). כך אפשר להבטיח שהנתונים המאוחסנים יהיו זמינים. פריסות מרובות אזורי זמינות מאפשרות מעבר אוטומטי לגיבוי אם יש בעיה בזמינות של אזור זמינות, ובמהלך תחזוקה רגילה של RDS.

המלצה: בדיקה אם זמינות גבוהה מופעלת בכל מופעי מסד הנתונים של RDS

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

כדי לתקן את אמצעי הבקרה הזה, צריך להגדיר את multi_az כ-true במשאב aws_db_instance.

resource "aws_db_instance" "example" {
  # ... other configuration ...
  multi_az                = true
}

מסוף AWS

כדי להפעיל כמה אזורי זמינות למופע של מסד נתונים

  1. פותחים את מסוף Amazon RDS בכתובת https://console.aws.amazon.com/rds/.
  2. בחלונית הניווט, בוחרים באפשרות Databases (מסדי נתונים) ואז בוחרים את מופע מסד הנתונים שרוצים לשנות.
  3. בוחרים באפשרות 'שינוי'. מופיע הדף Modify DB Instance (שינוי מופע מסד נתונים).
  4. בקטע Instance Specifications (מפרטי מופע), מגדירים את Multi-AZ deployment (פריסה בכמה אזורי זמינות) לערך Yes (כן).
  5. לוחצים על 'המשך' ואז בודקים את סיכום השינויים.
  6. (אופציונלי) בוחרים באפשרות 'החלה מיידית' כדי להחיל את השינויים באופן מיידי. במקרים מסוימים, בחירה באפשרות הזו עלולה לגרום להפסקת פעולה. מידע נוסף מופיע במאמר בנושא שימוש בהגדרה 'החלה מיידית' במדריך למשתמש של Amazon RDS.
  7. בדף האישור, בודקים את השינויים. אם הם נכונים, בוחרים באפשרות Modify DB Instance (שינוי מופע מסד נתונים) כדי לשמור את השינויים.

AWS CLI

אותו עיקרון חל על AWS CLI. כדי להפעיל תמיכה בכמה אזורי זמינות, צריך לספק את האפשרות --multi-az.

modify-db-instance
  --db-instance-identifier "test-rds" \
  --multi-az

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Redshift Cluster Configuration Check

שם הקטגוריה ב-API: REDSHIFT_CLUSTER_CONFIGURATION_CHECK

הבדיקה הזו בודקת את הרכיבים החיוניים של אשכול Redshift: הצפנה במנוחה, רישום ביומן וסוג הצומת.

פריטי ההגדרה האלה חשובים לתחזוקה של אשכול Redshift מאובטח וניתן לצפייה.

המלצה: בדיקה שלכל אשכול Redshift יש הצפנה במנוחה, רישום ביומן וסוג צומת.

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

resource "aws_kms_key" "redshift_encryption" {
  description         = "Used for Redshift encryption configuration"
  enable_key_rotation = true
}

resource "aws_redshift_cluster" "example" {
  # ... other configuration ...
  encrypted                           = true
  kms_key_id                          = aws_kms_key.redshift_encryption.id
  logging {
    enable               = true
    log_destination_type = "cloudwatch"
    log_exports          = ["connectionlog", "userlog", "useractivitylog"]
  }
}

מסוף AWS

כדי להפעיל רישום ביומן ביקורת של אשכול

  1. פותחים את מסוף Amazon Redshift בכתובת https://console.aws.amazon.com/redshift/.
  2. בתפריט הניווט, בוחרים באפשרות 'אשכולות' ואז בוחרים את שם האשכול שרוצים לשנות.
  3. בוחרים באפשרות Properties (נכסים).
  4. בוחרים באפשרות 'עריכה' ואז באפשרות 'עריכת יומן ביקורת'.
  5. מגדירים את האפשרות Configure audit logging (הגדרת יומן ביקורת) למצב Turn on (הפעלה), מגדירים את האפשרות Log export type (סוג ייצוא יומן) למצב CloudWatch (מומלץ) ובוחרים את היומנים לייצוא.

כדי להשתמש ב-AWS S3 לניהול יומני ביקורת של Redshift, אפשר לעיין במאמר Redshift - Database audit logging (יומני ביקורת של מסד נתונים) במסמכי התיעוד של AWS.

  1. לוחצים על 'שמירת שינויים'.

כדי לשנות את ההצפנה של מסד נתונים באשכול

  1. נכנסים אל AWS Management Console ופותחים את Amazon Redshift console בכתובת https://console.aws.amazon.com/redshift/.
  2. בתפריט הניווט, בוחרים באפשרות Clusters (אשכולות) ואז באשכול שרוצים לשנות את ההצפנה שלו.
  3. בוחרים באפשרות Properties (נכסים).
  4. בוחרים באפשרות 'עריכה' ואז באפשרות 'עריכת ההצפנה'.
  5. בוחרים את ההצפנה שרוצים להשתמש בה (KMS או HSM) ומזינים:
  • ‫KMS: מפתח לשימוש
  • עבור HSM: חיבור ואישור לקוח

AWS CLI

  1. יצירת מפתח KMS ואחזור מזהה המפתח
aws kms create-key \
  --description "Key to encrypt Redshift Clusters"
  1. שינוי האשכול
aws redshift modify-cluster \
  --cluster-identifiers "test-redshift-cluster" \
  --encrypted \
  --kms-key-id <value>

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Redshift Cluster Maintenancesettings Check

שם הקטגוריה ב-API: REDSHIFT_CLUSTER_MAINTENANCESETTINGS_CHECK

שדרוגים אוטומטיים של גרסאות ראשיות מתבצעים בהתאם לחלון זמן לתחזוקה

המלצה: בדיקה של כל אשכולות Redshift כדי לוודא שהאפשרות allowVersionUpgrade מופעלת, ושההגדרות preferredMaintenanceWindow ו-automatedSnapshotRetentionPeriod מוגדרות

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

הבדיקה הזו תואמת לכל ערכי ברירת המחדל שסופקו על ידי Terraform. במקרה של אשכול Redshift שנכשל, בודקים את הדרישות ומסירים את הגדרות ברירת המחדל של המאפיינים הבאים של רכיב aws_redshift_cluster.

resource "aws_redshift_cluster" "example" {

  # ...other configuration ...

  # The following values are compliant and set by default if omitted.
  allow_version_upgrade               = true
  preferred_maintenance_window        = "sat:10:00-sat:10:30"
  automated_snapshot_retention_period = 1
}

מסוף AWS

כשיוצרים אשכול Redshift דרך מסוף AWS, ערכי ברירת המחדל כבר תואמים לבקרת הגישה הזו.

מידע נוסף זמין במאמר ניהול אשכולות באמצעות המסוף

AWS CLI

כדי לתקן את אמצעי הבקרה הזה באמצעות AWS CLI, צריך לבצע את הפעולות הבאות:

aws redshift modify-cluster \
  --cluster-identifier "test-redshift-cluster" \
  --allow-version-upgrade

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Redshift Cluster Public Access Check

שם הקטגוריה ב-API: REDSHIFT_CLUSTER_PUBLIC_ACCESS_CHECK

המאפיין PubliclyAccessible בהגדרת אשכול Amazon Redshift מציין אם האשכול נגיש לכולם. אם האפשרות PubliclyAccessible מוגדרת כ-true, מדובר במכונה שפונה לאינטרנט עם שם DNS שניתן לפענוח באופן ציבורי, שמתפרש ככתובת IP ציבורית.

אם לא ניתן לגשת לאשכול באופן ציבורי, מדובר במופע פנימי עם שם DNS שמתורגם לכתובת IP פרטית. אלא אם אתם רוצים שהאשכול יהיה נגיש לכולם, לא צריך להגדיר את האפשרות PubliclyAccessible ל-true.

המלצה: בדיקה אם יש גישה ציבורית לאשכולות Redshift

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

כדי לתקן את אמצעי הבקרה הזה, צריך לשנות את משאב אשכול redshift ולהגדיר את publicly_accessible ל-false. ערך ברירת המחדל הוא true.

resource "aws_redshift_cluster" "example" {
  # ... other configuration ...
  publicly_accessible = false
}

מסוף AWS

כדי להשבית את הגישה הציבורית לאשכול Amazon Redshift

  1. פותחים את מסוף Amazon Redshift בכתובת https://console.aws.amazon.com/redshift/.
  2. בתפריט הניווט, בוחרים באפשרות Clusters (אשכולות), ואז בוחרים את שם האשכול עם קבוצת האבטחה שרוצים לשנות.
  3. בוחרים באפשרות 'פעולות' ואז באפשרות 'שינוי הגדרה שנגישה לכולם'.
  4. בקטע Allow instances and devices outside the VPC to connect to your database through the cluster endpoint (מתן אפשרות למופעים ולמכשירים מחוץ ל-VPC להתחבר למסד הנתונים דרך נקודת הקצה של האשכול), בוחרים באפשרות No (לא).
  5. לוחצים על 'אישור'.

AWS CLI

משתמשים בפקודה modify-cluster כדי להגדיר את --no-publicly-accessible.

aws redshift modify-cluster \
  --cluster-identifier "test-redshift-cluster" \
  --no-publicly-accessible

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Restricted Common Ports

שם הקטגוריה ב-API: RESTRICTED_COMMON_PORTS

הבדיקה הזו בודקת אם תנועה נכנסת לא מוגבלת לקבוצות האבטחה נגישה ליציאות שצוינו, שהסיכון בהן הוא הגבוה ביותר. הבדיקה הזו נכשלת אם אחד מהכללים בקבוצת אבטחה מאפשר תעבורת נתונים נכנסת מכתובות '0.0.0.0/0' או '::/0' עבור הפורטים האלה.

גישה לא מוגבלת (0.0.0.0/0) מגדילה את הסיכוי לפעילות זדונית, כמו פריצה, התקפות מניעת שירות ואובדן נתונים.

קבוצות אבטחה מספקות סינון עם שמירת מצב של תנועה ברשת נכנסת ויוצאת למשאבי AWS. אף קבוצת אבטחה לא צריכה לאפשר גישה בלתי מוגבלת ליציאות הבאות:

  • ‫20, 21 (FTP)
  • ‫22 (SSH)
  • ‫23 (Telnet)
  • ‫25 (SMTP)
  • ‫110 (POP3)
  • ‫135 (RPC)
  • ‫143 (IMAP)
  • ‫445 (CIFS)
  • ‫1433, ‏ 1434 (MSSQL)
  • ‫3, 000 (מסגרות לפיתוח אתרים ב-Go, ‏ Node.js ו-Ruby)
  • ‫3306 (mySQL)
  • ‫3389 (RDP)
  • 4333 (ahsp)
  • ‫5000 (מסגרות לפיתוח אתרים ב-Python)
  • ‫5432 (postgresql)
  • ‫5500 (fcp-addr-srvr1)
  • ‫5601 (OpenSearch Dashboards)
  • ‫8080 (proxy)
  • ‫8088 (יציאת HTTP מדור קודם)
  • ‫8888 (יציאת HTTP חלופית)
  • ‫9200 או 9300 (OpenSearch)
המלצה: קבוצות אבטחה לא צריכות לאפשר גישה לא מוגבלת ליציאות עם סיכון גבוה

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

כדי למחוק כלל של קבוצת אבטחה:

  1. פותחים את מסוף Amazon EC2 בכתובת https://console.aws.amazon.com/ec2/.
  2. בחלונית הניווט, בוחרים באפשרות 'קבוצות אבטחה'.
  3. בוחרים את קבוצת האבטחה שרוצים לעדכן, בוחרים באפשרות 'פעולות' ואז בוחרים באפשרות 'עריכת כללי תעבורה נכנסת' כדי להסיר כלל תעבורה נכנסת, או באפשרות 'עריכת כללי תעבורה יוצאת' כדי להסיר כלל תעבורה יוצאת.
  4. לוחצים על לחצן המחיקה משמאל לכלל שרוצים למחוק.
  5. בוחרים באפשרות 'תצוגה מקדימה של השינויים' ואז באפשרות 'אישור'.

מידע על מחיקת כללים מקבוצת אבטחה מופיע במאמר Configure security group rules (הגדרת כללים של קבוצת אבטחה) במדריך למשתמש של Amazon EC2.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Restricted Ssh

שם הקטגוריה ב-API: RESTRICTED_SSH

קבוצות אבטחה מספקות סינון עם שמירת מצב של תנועה ברשת נכנסת ויוצאת למשאבי AWS.

‫CIS ממליצה שאף קבוצת אבטחה לא תאפשר גישת ingress בלתי מוגבלת ליציאה 22. הסרת קישוריות בלתי מוגבלת לשירותי קונסולה מרוחקים, כמו SSH, מפחיתה את החשיפה של השרת לסיכון.

המלצה: קבוצות אבטחה לא צריכות לאפשר תעבורה נכנסת מ-0.0.0.0/0 ליציאה 22

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

מבצעים את השלבים הבאים לכל קבוצת אבטחה שמשויכת ל-VPC.

פותחים את מסוף Amazon VPC בכתובת https://console.aws.amazon.com/vpc/.

  1. בחלונית הימנית, בוחרים באפשרות קבוצות אבטחה.
  2. בוחרים קבוצת אבטחה.
  3. בקטע התחתון של הדף, בוחרים בכרטיסייה Inbound Rules (כללים לתנועה נכנסת).
  4. בוחרים באפשרות עריכת הכללים.
  5. מזהים את הכלל שמאפשר גישה דרך יציאה 22 ולוחצים על X כדי להסיר אותו.
  6. לוחצים על שמירת הכללים.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Rotation Customer Created Cmks Enabled

שם הקטגוריה ב-API: ROTATION_CUSTOMER_CREATED_CMKS_ENABLED

בודק אם רוטציית מפתחות אוטומטית מופעלת לכל מפתח, ומתאים למזהה המפתח של מפתח AWS KMS שנוצר על ידי הלקוח. הכלל הוא NON_COMPLIANT אם לתפקיד של רשם הנתונים של AWS Config עבור משאב אין את ההרשאה kms:DescribeKey.

המלצה: מוודאים שהרוטציה של מפתחות CMK שנוצרו על ידי הלקוח מופעלת

כדי להפעיל רוטציית מפתחות אוטומטית עבור AWS KMS, אפשר לעיין במאמר Rotating AWS KMS keys (רוטציה של מפתחות AWS KMS) במסמכי התיעוד של AWS.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Rotation Customer Created Symmetric Cmks Enabled

שם הקטגוריה ב-API: ROTATION_CUSTOMER_CREATED_SYMMETRIC_CMKS_ENABLED

‫AWS Key Management Service (KMS) מאפשר ללקוחות לבצע רוטציה של מפתח הגיבוי, שהוא חומר מפתח שמאוחסן ב-KMS ומקושר למזהה המפתח של מפתח המאסטר (CMK) שנוצר על ידי הלקוח. זהו מפתח הגיבוי שמשמש לביצוע פעולות קריפטוגרפיות כמו הצפנה ופענוח. רוטציית מפתחות אוטומטית שומרת כרגע את כל מפתחות הגיבוי הקודמים כדי שפענוח הנתונים המוצפנים יוכל להתבצע באופן שקוף. מומלץ להפעיל רוטציית מפתחות CMK עבור מפתחות סימטריים. אי אפשר להפעיל רוטציית מפתחות עבור אף מפתח CMK אסימטרי.

המלצה: מוודאים שהרוטציה של מפתחות CMK סימטריים שנוצרו על ידי הלקוח מופעלת

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. נכנסים אל AWS Management Console ופותחים את IAM Console בכתובת https://console.aws.amazon.com/iam.
  2. בחלונית הניווט שמימין, בוחרים באפשרות Customer managed keys .
  3. בוחרים מפתח CMK בניהול הלקוח שבו Key spec = SYMMETRIC_DEFAULT
  4. מתחת לחלונית 'הגדרה כללית', פותחים את הכרטיסייה 'רוטציית מפתחות'.
  5. מסמנים את תיבת הסימון 'רוטציה אוטומטית של מפתח ה-KMS הזה מדי שנה'.

AWS CLI

  1. מריצים את הפקודה הבאה כדי להפעיל את רוטציית המפתחות:
 aws kms enable-key-rotation --key-id <kms_key_id>

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Routing Tables Vpc Peering Are Least Access

שם הקטגוריה ב-API: ROUTING_TABLES_VPC_PEERING_ARE_LEAST_ACCESS

הפונקציה בודקת אם טבלאות הניתוב עבור VPC peering מוגדרות עם העיקרון של הרשאות המינימום.

המלצה: צריך לוודא שלטבלאות הניתוב של VPC peering יש 'גישה מינימלית'

כדי לעדכן את טבלאות הניתוב עבור VPC Peering, אפשר לעיין במאמר עדכון טבלאות הניתוב עבור חיבור VPC Peering במדריך למשתמש של AWS VPC.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

S3 Account Level Public Access Blocks

שם הקטגוריה ב-API: S3_ACCOUNT_LEVEL_PUBLIC_ACCESS_BLOCKS

התכונה 'חסימת גישה ציבורית' ב-Amazon S3 מספקת הגדרות לנקודות גישה, לקטגוריות ולחשבונות, כדי לעזור לכם לנהל את הגישה הציבורית למשאבי Amazon S3. כברירת מחדל, אי אפשר לגשת באופן ציבורי לקטגוריות, לנקודות גישה ולאובייקטים חדשים.

המלצה: בדיקה אם הגדרות החסימה הנדרשות של גישה ציבורית ל-S3 מוגדרות מרמת החשבון

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

הגדרת המשאב הבאה של Terraform מגדירה גישה ברמת החשבון ל-S3.

resource "aws_s3_account_public_access_block" "s3_control" {
  block_public_acls       = true
  block_public_policy     = true
  ignore_public_acls      = true
  restrict_public_buckets = true
}

מסוף AWS

כדי לערוך את ההגדרות של חסימת גישה ציבורית לכל קטגוריות S3 בחשבון AWS.

  1. נכנסים למסוף הניהול ב-AWS ופותחים את מסוף Amazon S3 בכתובת https://console.aws.amazon.com/s3/.
  2. בוחרים את ההגדרות של חסימת גישה ציבורית לחשבון הזה.
  3. בוחרים באפשרות Edit (עריכה) כדי לשנות את ההגדרות של חסימת גישה ציבורית לכל הדליים בחשבון AWS.
  4. בוחרים את ההגדרות שרוצים לשנות ולוחצים על 'שמירת שינויים'.
  5. כשמוצגת בקשה לאישור, מזינים confirm. אחר כך לוחצים על 'אישור' כדי לשמור את השינויים.

AWS CLI

aws s3control put-public-access-block \
--account-id <value> \
--public-access-block-configuration '{"BlockPublicAcls": true, "BlockPublicPolicy": true, "IgnorePublicAcls": true, "RestrictPublicBuckets": true}'

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

S3 Buckets Configured Block Public Access Bucket And Account Settings

שם הקטגוריה ב-API: S3_BUCKETS_CONFIGURED_BLOCK_PUBLIC_ACCESS_BUCKET_AND_ACCOUNT_SETTINGS

‫Amazon S3 מספקת את Block public access (bucket settings) ו-Block public access (account settings) כדי לעזור לכם לנהל את הגישה הציבורית למשאבי Amazon S3. כברירת מחדל, קטגוריות ואובייקטים ב-S3 נוצרים עם השבתה של הגישה הציבורית. עם זאת, חשבון משתמש ב-AWS IAM עם הרשאות S3 מספיקות יכול להפעיל גישה ציבורית ברמת הקטגוריה או האובייקט. כשההגדרה הזו מופעלת, Block public access (bucket settings) מונעת מקטגוריה ספציפית ומאובייקטים שנכללים בה להיות נגישים באופן ציבורי. באופן דומה, Block public access (account settings) מונעת גישה ציבורית לכל הקטגוריות ולאובייקטים שכלולים בהן בכל החשבון.

המלצה:

מוודאים שקטגוריות S3 מוגדרות עם Block public access (bucket settings).

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

אם הפלט הוא true עבור הגדרות התצורה הנפרדות, המשמעות היא שההגדרה מופעלת בחשבון.

  1. מתחברים אל AWS Management Console ופותחים את Amazon S3 console באמצעות הכתובת https://console.aws.amazon.com/s3/
  2. בוחרים באפשרות חסימת גישה ציבורית (הגדרות חשבון).
  3. בוחרים באפשרות עריכה כדי לשנות את ההגדרות של חסימת גישה ציבורית לכל הדליים בחשבון AWS
  4. בוחרים את ההגדרות שרוצים לשנות ולוחצים על שמירה. כדי לראות פרטים על כל הגדרה, מציבים את הסמן מעל לסמל i.
  5. כשמופיעה בקשת אישור, מזינים confirm. לוחצים על אישור כדי לשמור את השינויים.

AWS CLI

כדי להגדיר את ההגדרות של חסימת גישה ציבורית לחשבון הזה, מריצים את הפקודה הבאה:

aws s3control put-public-access-block
--public-access-block-configuration BlockPublicAcls=true, IgnorePublicAcls=true, BlockPublicPolicy=true, RestrictPublicBuckets=true
--account-id <value>

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

S3 Bucket Access Logging Enabled Cloudtrail S3 Bucket

שם הקטגוריה ב-API: S3_BUCKET_ACCESS_LOGGING_ENABLED_CLOUDTRAIL_S3_BUCKET

רישום ביומן של גישה לקטגוריית S3 יוצר יומן שמכיל רשומות גישה לכל בקשה שנשלחת לקטגוריית S3. רשומה ביומן הגישה מכילה פרטים על הבקשה, כמו סוג הבקשה, המשאבים שצוינו בבקשה, והשעה והתאריך שבהם הבקשה עובדה. מומלץ להפעיל את הרישום ביומן של הגישה לקטגוריה בקטגוריית CloudTrail S3.

המלצה:

מוודאים שיומן הגישה לקטגוריית S3 מופעל בקטגוריית S3 של CloudTrail

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. נכנסים למסוף הניהול ב-AWS ופותחים את מסוף S3 בכתובת https://console.aws.amazon.com/s3.
  2. בקטע All Buckets (כל הדליים), לוחצים על דלי היעד של S3.
  3. לוחצים על מאפיינים בפינה השמאלית העליונה של המסוף.
  4. בקטע Bucket:‎ <s3\_bucket\_for\_cloudtrail> לוחצים על Logging</s3\_bucket\_for\_cloudtrail>
  5. הגדרת רישום ביומן של קטגוריות
    – לוחצים על תיבת הסימון Enabled
    – בוחרים באפשרות Target Bucket (קטגוריית יעד) מהרשימה
    – מזינים Target Prefix (קידומת יעד)
  6. לוחצים על Save.

AWS CLI

  1. מקבלים את השם של קטגוריית S3 שאליה מתבצע רישום ביומן ב-CloudTrail:
aws cloudtrail describe-trails --region <region-name> --query trailList[*].S3BucketName
  1. מעתיקים את שם דלי היעד ומוסיפים אותו ב-, מעתיקים את הקידומת של קובץ היומן ומוסיפים אותה ב-. אפשר גם להוסיף כתובת אימייל בתבנית הבאה ולשמור אותה כ-:
{
 "LoggingEnabled": {
 "TargetBucket": "<Logging_BucketName>",
 "TargetPrefix": "<LogFilePrefix>",
 "TargetGrants": [
 {
 "Grantee": {
 "Type": "AmazonCustomerByEmail",
 "EmailAddress": "<EmailID>"
 },
 "Permission": "FULL_CONTROL"
 }
 ]
 }
}
  1. מריצים את הפקודה put-bucket-logging עם שם הקטגוריה ועם כקלט. מידע נוסף זמין במאמר put-bucket-logging.
aws s3api put-bucket-logging --bucket <BucketName> --bucket-logging-status file://<FileName.Json>

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

S3 Bucket Logging Enabled

שם הקטגוריה ב-API: S3_BUCKET_LOGGING_ENABLED

התכונה 'רישום ביומן של גישה לשרת' ב-AWS S3 מתעדת בקשות גישה לקטגוריות אחסון, וזה שימושי לביקורות אבטחה. כברירת מחדל, רישום ביומן של הגישה לשרת לא מופעל עבור דלי S3.

המלצה: בדיקה אם הרישום ביומן מופעל בכל קטגוריות S3

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

בדוגמה הבאה אפשר לראות איך יוצרים 2 דליים:

  1. קטגוריה ביומן
  2. קטגוריה שעומדת בדרישות
variable "bucket_acl_map" {
  type = map(any)
  default = {
    "logging-bucket"   = "log-delivery-write"
    "compliant-bucket" = "private"
  }
}

resource "aws_s3_bucket" "all" {
  for_each            = var.bucket_acl_map
  bucket              = each.key
  object_lock_enabled = true
  tags = {
    "Pwd"    = "s3"
  }
}

resource "aws_s3_bucket_acl" "private" {
  for_each = var.bucket_acl_map
  bucket   = each.key
  acl      = each.value
}

resource "aws_s3_bucket_versioning" "enabled" {
  for_each = var.bucket_acl_map
  bucket   = each.key
  versioning_configuration {
    status = "Enabled"
  }
}

resource "aws_s3_bucket_logging" "enabled" {
  for_each      = var.bucket_acl_map
  bucket        = each.key
  target_bucket = aws_s3_bucket.all["logging-bucket"].id
  target_prefix = "log/"
}

resource "aws_s3_bucket_server_side_encryption_configuration" "example" {
  for_each = var.bucket_acl_map
  bucket   = each.key

  rule {
    apply_server_side_encryption_by_default {
      sse_algorithm     = "aws:kms"
    }
  }
}

מסוף AWS

מידע על הפעלת רישום גישה ל-S3 דרך מסוף AWS זמין במאמר הפעלת רישום גישה לשרת Amazon S3 במסמכי התיעוד של AWS.

AWS CLI

בדוגמה הבאה אפשר לראות איך:

  1. יוצרים מדיניות לגבי קטגוריה כדי לתת לחשבון הראשי של שירות רישום היומנים הרשאה ל-PutObject בקטגוריה של רישום היומנים.

policy.json

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "S3ServerAccessLogsPolicy",
            "Effect": "Allow",
            "Principal": {"Service": "logging.s3.amazonaws.com"},
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::MyBucket/Logs/*",
            "Condition": {
                "ArnLike": {"aws:SourceARN": "arn:aws:s3:::SOURCE-BUCKET-NAME"},
                "StringEquals": {"aws:SourceAccount": "SOURCE-AWS-ACCOUNT-ID"}
            }
        }
    ]
}
aws s3api put-bucket-policy \
  --bucket my-bucket
  --policy file://policy.json
  1. החלת המדיניות על קטגוריית הרישום ביומן

logging.json

{
    "LoggingEnabled": {
        "TargetBucket": "MyBucket",
        "TargetPrefix": "Logs/"
    }
}
aws s3api put-bucket-logging \
  --bucket MyBucket \
  --bucket-logging-status file://logging.json

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

S3 Bucket Policy Set Deny Http Requests

שם הקטגוריה ב-API: S3_BUCKET_POLICY_SET_DENY_HTTP_REQUESTS

ברמת הקטגוריה של Amazon S3, אפשר להגדיר הרשאות באמצעות מדיניות של קטגוריה, כך שהגישה לאובייקטים תתאפשר רק באמצעות HTTPS.

המלצה: מוודאים שמדיניות קטגוריית S3 מוגדרת לדחיית בקשות HTTP

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

באמצעות AWS Policy Generator:

  1. חוזרים על שלבים 1 עד 4 שמתוארים למעלה.
  2. לוחצים על Policy Generator בתחתית הכלי לעריכת מדיניות של מאגר.
  3. בחירת סוג המדיניות
    S3 Bucket Policy
  4. ‫Add Statements
    - Effect = Deny
    - Principal = *
    - AWS Service = Amazon S3
    - Actions = *
    - Amazon Resource Name =
  5. יצירת מדיניות
  6. מעתיקים את הטקסט ומוסיפים אותו למדיניות של הקטגוריה.

AWS CLI

  1. מייצאים את מדיניות הקטגוריה לקובץ JSON.
aws s3api get-bucket-policy --bucket <bucket_name> --query Policy --output text > policy.json
  1. משנים את הקובץ policy.json על ידי הוספת ההצהרה הבאה:
{
 "Sid": <optional>",
 "Effect": "Deny",
 "Principal": "*",
 "Action": "s3:*",
 "Resource": "arn:aws:s3:::<bucket_name>/*",
 "Condition": {
 "Bool": {
 "aws:SecureTransport": "false"
 }
 }
 }
  1. מחילים את המדיניות ששונתה בחזרה על קטגוריית S3:
aws s3api put-bucket-policy --bucket <bucket_name> --policy file://policy.json

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

S3 Bucket Replication Enabled

שם הקטגוריה ב-API: S3_BUCKET_REPLICATION_ENABLED

הבקרה הזו בודקת אם ההגדרה Cross-Region Replication (שכפול בין אזורים) מופעלת בקטגוריית Amazon S3. הבדיקה נכשלת אם לא מופעלת בקטגוריה שכפול בין אזורים, או אם מופעל גם שכפול באותו אזור.

שכפול הוא העתקה אוטומטית ואסינכרונית של אובייקטים בין קטגוריות באותו אזור AWS או באזורים שונים. השכפול מעתיק אובייקטים שנוצרו לאחרונה ועדכונים של אובייקטים מקטגוריית מקור לקטגוריית יעד או לקטגוריות יעד. השיטות המומלצות של AWS כוללות שכפול של באקטים של מקור ויעד שנמצאים בבעלות של אותו חשבון AWS. בנוסף לזמינות, כדאי לשקול הגדרות אחרות להקשחת המערכת.

המלצה: בדיקה אם ההגדרה 'שכפול בין אזורים' מופעלת בקטגוריות S3

כדי להפעיל שכפול בין אזורים בקטגוריית S3, אפשר לעיין במאמר הגדרת שכפול לקטגוריות מקור ויעד שנמצאות בבעלות של אותו חשבון במדריך למשתמש של Amazon Simple Storage Service. בקטע Source bucket (קטגוריית מקור), בוחרים באפשרות Apply to all objects in the bucket (החלת ההגדרה על כל האובייקטים בקטגוריה).

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

S3 Bucket Server Side Encryption Enabled

שם הקטגוריה ב-API: S3_BUCKET_SERVER_SIDE_ENCRYPTION_ENABLED

בבדיקה הזו המערכת מוודאת שבאמצעות קטגוריית S3 מופעלת הצפנת ברירת המחדל של Amazon S3, או שמדיניות קטגוריית S3 דוחה באופן מפורש בקשות put-object ללא הצפנה בצד השרת.

המלצה: מוודאים שכל קטגוריות S3 מפעילות הצפנה במצב מנוחה

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

resource "aws_s3_bucket_server_side_encryption_configuration" "enable" {
  bucket = "my-bucket"

  rule {
    apply_server_side_encryption_by_default {
      sse_algorithm = "AES256"
    }
  }
}

מסוף AWS

כדי להפעיל הצפנה כברירת מחדל בקטגוריית S3

  1. פותחים את מסוף Amazon S3 בכתובת https://console.aws.amazon.com/s3/.
  2. בחלונית הניווט שמימין, בוחרים באפשרות Buckets (מאגרי מידע).
  3. בוחרים את דלי ה-S3 מהרשימה.
  4. בוחרים באפשרות Properties (נכסים).
  5. בוחרים באפשרות 'הצפנה כברירת מחדל'.
  6. בקטע Encryption (הצפנה), בוחרים באפשרות AES-256 או AWS-KMS.
  7. בוחרים באפשרות AES-256 כדי להשתמש במפתחות שמנוהלים על ידי Amazon S3 להצפנה כברירת מחדל. מידע נוסף על שימוש בהצפנה מצד השרת של Amazon S3 כדי להצפין את הנתונים זמין במדריך למשתמש של Amazon Simple Storage Service.
  8. בוחרים באפשרות AWS-KMS כדי להשתמש במפתחות שמנוהלים על ידי AWS KMS להצפנת ברירת המחדל. לאחר מכן בוחרים מפתח ראשי מתוך רשימת המפתחות הראשיים של AWS KMS שיצרתם.
  9. מקלידים את שם משאב Amazon‏ (ARN) של מפתח AWS KMS שבו רוצים להשתמש. אפשר למצוא את ה-ARN של מפתח AWS KMS במסוף IAM, בקטע Encryption keys (מפתחות הצפנה). אפשר גם לבחור שם מפתח מהרשימה הנפתחת.
  10. חשוב: אם משתמשים באפשרות AWS KMS להגדרת ההצפנה שמוגדרת כברירת מחדל, חלות עליכם מכסות ה-RPS (בקשות לשנייה) של AWS KMS. מידע נוסף על מכסות של AWS KMS ועל בקשות להגדלת מכסות זמין במדריך למפתחים של AWS Key Management Service.
  11. לוחצים על 'שמירה'.

מידע נוסף על יצירת מפתח AWS KMS זמין ב-AWS Key Management Service Developer Guide.

מידע נוסף על שימוש ב-AWS KMS עם Amazon S3 זמין במדריך למשתמש של Amazon Simple Storage Service.

כשמפעילים הצפנה כברירת מחדל, יכול להיות שצריך לעדכן את מדיניות הקטגוריה. מידע נוסף על מעבר ממדיניות של מאגרי מידע להצפנה שמוגדרת כברירת מחדל זמין במדריך למשתמש של Amazon Simple Storage Service.

AWS CLI

aws s3api put-bucket-encryption \
  --bucket my-bucket \
  --server-side-encryption-configuration '{"Rules": [{"ApplyServerSideEncryptionByDefault": {"SSEAlgorithm": "AES256"}}]}'

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

S3 Bucket Versioning Enabled

שם הקטגוריה ב-API: S3_BUCKET_VERSIONING_ENABLED

‫Amazon S3 מאפשר לשמור כמה גרסאות של אובייקט באותה קטגוריה, ויכול לעזור לכם להתאושש בקלות רבה יותר גם מפעולות משתמש לא מכוונות וגם מכשלים באפליקציה.

המלצה: בדיקה שהתכונה 'ניהול גרסאות' מופעלת בכל קטגוריות S3

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

resource "aws_s3_bucket" "my_bucket" {
  bucket = "my-bucket"

  versioning {
    enabled = true
  }
}

מסוף AWS

כדי להפעיל או להשבית את יצירת הגרסאות בקטגוריית S3

  1. נכנסים למסוף הניהול ב-AWS ופותחים את מסוף Amazon S3 בכתובת https://console.aws.amazon.com/s3/.
  2. ברשימת הקטגוריות, בוחרים את שם הקטגוריה שרוצים להפעיל בה את התכונה 'ניהול גרסאות'.
  3. בוחרים באפשרות Properties (נכסים).
  4. בקטע Bucket Versioning (ניהול גרסאות של דלי), בוחרים באפשרות Edit (עריכה).
  5. בוחרים באפשרות 'השעיה' או 'הפעלה', ואז בוחרים באפשרות 'שמירת שינויים'.

AWS CLI

aws s3control put-bucket-versioning \
--bucket <bucket_name> \
--versioning-configuration Status=Enabled

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

S3 Default Encryption Kms

שם הקטגוריה ב-API: S3_DEFAULT_ENCRYPTION_KMS

הבדיקה קובעת אם קטגוריות Amazon S3 מוצפנות באמצעות AWS Key Management Service ‏ (AWS KMS)

המלצה: בדיקה שכל המאגרי מידע מוצפנים באמצעות KMS

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

Terraform

resource "aws_kms_key" "s3_encryption" {
  description         = "Used for S3 Bucket encryption configuration"
  enable_key_rotation = true
}

resource "aws_s3_bucket_server_side_encryption_configuration" "enable" {
  bucket   = "my-bucket"

  rule {
    apply_server_side_encryption_by_default {
      kms_master_key_id = aws_kms_key.s3_encryption.arn
      sse_algorithm     = "aws:kms"
    }
  }
}

מסוף AWS

כדי להפעיל הצפנה כברירת מחדל בקטגוריית S3

  1. פותחים את מסוף Amazon S3 בכתובת https://console.aws.amazon.com/s3/.
  2. בחלונית הניווט שמימין, בוחרים באפשרות Buckets (מאגרי מידע).
  3. בוחרים את דלי ה-S3 מהרשימה.
  4. בוחרים באפשרות Properties (נכסים).
  5. בוחרים באפשרות 'הצפנה כברירת מחדל'.
  6. בקטע Encryption (הצפנה), בוחרים באפשרות AWS-KMS.
  7. בוחרים באפשרות AWS-KMS כדי להשתמש במפתחות שמנוהלים על ידי AWS KMS להצפנת ברירת המחדל. לאחר מכן בוחרים מפתח ראשי מתוך רשימת המפתחות הראשיים של AWS KMS שיצרתם. מידע נוסף על יצירת מפתחות KMS מופיע במסמכי התיעוד של AWS בנושא יצירת מפתחות.
  8. מקלידים את שם משאב Amazon‏ (ARN) של מפתח AWS KMS שבו רוצים להשתמש. אפשר למצוא את ה-ARN של מפתח AWS KMS במסוף IAM, בקטע Encryption keys (מפתחות הצפנה). אפשר גם לבחור שם מפתח מהרשימה הנפתחת.
  9. חשוב: הפתרון הזה כפוף למכסות של RPS (בקשות לשנייה) ב-AWS KMS. מידע נוסף על מכסות של AWS KMS ועל בקשות להגדלת מכסות זמין במדריך למפתחים של AWS Key Management Service.
  10. לוחצים על 'שמירה'.

מידע נוסף על שימוש ב-AWS KMS עם Amazon S3 זמין במדריך למשתמש של Amazon Simple Storage Service.

כשמפעילים הצפנה כברירת מחדל, יכול להיות שצריך לעדכן את מדיניות הקטגוריה. מידע נוסף על מעבר ממדיניות של מאגרי מידע להצפנה שמוגדרת כברירת מחדל זמין במדריך למשתמש של Amazon Simple Storage Service.

AWS CLI

יצירת מפתח KMS

aws kms create-key \
  --description "Key to encrypt S3 buckets"

הפעלת רוטציית מפתחות

aws kms enable-key-rotation \
  --key-id <key_id_from_previous_command>

עדכון קטגוריה

aws s3api put-bucket-encryption \
  --bucket my-bucket \
  --server-side-encryption-configuration '{"Rules": [{"ApplyServerSideEncryptionByDefault": {"KMSMasterKeyID": "<id_from_key>", "SSEAlgorithm": "AES256"}}]}'

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Sagemaker Notebook Instance Kms Key Configured

שם הקטגוריה ב-API: SAGEMAKER_NOTEBOOK_INSTANCE_KMS_KEY_CONFIGURED

בודק אם מפתח AWS Key Management Service ‏ (AWS KMS) מוגדר למופע של מחברת Amazon SageMaker. הכלל הוא NON_COMPLIANT אם לא צוין 'KmsKeyId' עבור מופע מחברת SageMaker.

המלצה: בדיקה שכל מופעי מחברת SageMaker מוגדרים לשימוש ב-KMS

במאמר Key Management (ניהול מפתחות) בתיעוד של Amazon SageMaker מוסבר איך להגדיר KMS ל-SageMaker.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Sagemaker Notebook No Direct Internet Access

שם הקטגוריה ב-API: SAGEMAKER_NOTEBOOK_NO_DIRECT_INTERNET_ACCESS

בודקת אם הגישה הישירה לאינטרנט מושבתת במופע של מחברת SageMaker. לשם כך, המערכת בודקת אם השדה DirectInternetAccess מושבת במופע של מחברת.

אם מגדירים את מופע SageMaker ללא VPC, אז כברירת מחדל מופעלת גישה ישירה לאינטרנט במופע. צריך להגדיר את המכונה עם VPC ולשנות את הגדרת ברירת המחדל ל'השבתה – גישה לאינטרנט דרך VPC'.

כדי לאמן מודלים או לארח אותם מ-Notebook, צריך גישה לאינטרנט. כדי להפעיל גישה לאינטרנט, צריך לוודא שלרשת ה-VPC יש שער NAT ושהקבוצת אבטחה מאפשרת חיבורים יוצאים. מידע נוסף על חיבור של מופע מחברת למשאבים ב-VPC זמין במאמר בנושא חיבור של מופע מחברת למשאבים ב-VPC במדריך למפתחים של Amazon SageMaker.

כדאי גם לוודא שהגישה להגדרות של SageMaker מוגבלת למשתמשים מורשים בלבד. הגבלת הרשאות IAM של משתמשים לשינוי הגדרות ומשאבים של SageMaker.

המלצה: בדיקה אם הגישה הישירה לאינטרנט מושבתת בכל מופע של מחברת Amazon SageMaker

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

שימו לב שאי אפשר לשנות את הגדרת הגישה לאינטרנט אחרי שיוצרים את מופע המחברת. צריך להפסיק את המכונה, למחוק אותה וליצור אותה מחדש.

כדי להגדיר מכונת notebook ב-SageMaker כך שלא תהיה לה גישה ישירה לאינטרנט:

  1. פותחים את מסוף SageMaker בכתובת https://console.aws.amazon.com/sagemaker/
  2. עוברים אל Notebook instances (מופעי Notebook).
  3. מוחקים את המופע שבו מופעלת גישה ישירה לאינטרנט. בוחרים את המופע, בוחרים באפשרות 'פעולות' ואז בוחרים באפשרות 'עצירה'.
  4. אחרי שהמופע נעצר, בוחרים באפשרות Actions (פעולות) ואז באפשרות delete (מחיקה).
  5. בוחרים באפשרות Create notebook instance (יצירת מופע של מחברת). מזינים את פרטי ההגדרות.
  6. מרחיבים את הקטע 'רשת' ובוחרים VPC, רשת משנה וקבוצת אבטחה. בקטע 'גישה ישירה לאינטרנט', בוחרים באפשרות 'השבתה' – 'גישה לאינטרנט דרך VPC'.
  7. בוחרים באפשרות Create notebook instance (יצירת מופע של מחברת).

מידע נוסף זמין במאמר בנושא חיבור של מחברת למשאבים ב-VPC במדריך למפתחים של Amazon SageMaker.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Secretsmanager Rotation Enabled Check

שם הקטגוריה ב-API: SECRETSMANAGER_ROTATION_ENABLED_CHECK

הבדיקה הזו בודקת אם סוד שמאוחסן ב-AWS Secrets Manager מוגדר עם רוטציה אוטומטית. הבקרה נכשלת אם הסוד לא מוגדר עם רוטציה אוטומטית. אם מספקים ערך מותאם אישית לפרמטר maximumAllowedRotationFrequency, הבקרה תעבור רק אם הסוד יעבור רוטציה אוטומטית בתוך חלון הזמן שצוין.

‫Secrets Manager עוזר לכם לשפר את מצב האבטחה של הארגון. הסודות כוללים פרטי כניסה למסד נתונים, סיסמאות ומפתחות API של צד שלישי. אתם יכולים להשתמש ב-Secrets Manager כדי לאחסן סודות באופן מרכזי, להצפין סודות באופן אוטומטי, לשלוט בגישה לסודות ולבצע רוטציה של סודות בצורה בטוחה ואוטומטית.

ב-Secret Manager אפשר לבצע רוטציה של סודות. אפשר להשתמש ברוטציה כדי להחליף סודות לטווח ארוך בסודות לטווח קצר. החלפת הסודות מגבילה את משך הזמן שבו משתמש לא מורשה יכול להשתמש בסוד שנפרץ. לכן, מומלץ לבצע רוטציה של הסודות לעיתים קרובות. מידע נוסף על רוטציה זמין במאמר בנושא רוטציה של סודות ב-AWS Secrets Manager במדריך למשתמש של AWS Secrets Manager.

המלצה: בדיקה שכל הסודות ב-AWS Secrets Manager מוגדרים לרוטציה

כדי להפעיל רוטציה אוטומטית של סודות ב-Secrets Manager, אפשר לעיין במאמר בנושא הגדרת רוטציה אוטומטית של סודות ב-AWS Secrets Manager באמצעות המסוף במדריך למשתמש של AWS Secrets Manager. צריך לבחור ולהגדיר פונקציית AWS Lambda לרוטציה.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Sns Encrypted Kms

שם הקטגוריה ב-API: SNS_ENCRYPTED_KMS

הבדיקה הזו בודקת אם נושא SNS מוצפן במנוחה באמצעות AWS KMS. הבקרות נכשלות אם נושא SNS לא משתמש במפתח KMS להצפנה בצד השרת (SSE).

הצפנת נתונים באחסון מפחיתה את הסיכון שמשתמש שלא אומת ב-AWS יקבל גישה לנתונים שמאוחסנים בדיסק. היא גם מוסיפה עוד קבוצה של אמצעי בקרת גישה כדי להגביל את היכולת של משתמשים לא מורשים לגשת לנתונים. לדוגמה, נדרשות הרשאות API כדי לפענח את הנתונים לפני שאפשר לקרוא אותם. כדי להוסיף שכבת אבטחה, צריך להצפין נושאי SNS במצב מנוחה.

המלצה: בדיקה שכל נושאי ה-SNS מוצפנים באמצעות KMS

כדי להפעיל SSE בנושא SNS, אפשר לעיין במאמר בנושא הפעלת הצפנה בצד השרת (SSE) בנושא Amazon SNS במדריך למפתחים של Amazon Simple Notification Service. כדי להשתמש ב-SSE, צריך גם להגדיר את מדיניות המפתחות של AWS KMS כדי לאפשר הצפנה של נושאים והצפנה ופענוח של הודעות. מידע נוסף זמין במאמר בנושא הגדרת הרשאות AWS KMS במדריך למפתחים של Amazon Simple Notification Service.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Vpc Default Security Group Closed

שם הקטגוריה ב-API: VPC_DEFAULT_SECURITY_GROUP_CLOSED

הבקרה הזו בודקת אם קבוצת האבטחה שמוגדרת כברירת מחדל ב-VPC מאפשרת תעבורת נתונים נכנסת או יוצאת. הבדיקה נכשלת אם קבוצת האבטחה מאפשרת תעבורת נתונים נכנסת או יוצאת.

הכללים של קבוצת האבטחה שמוגדרת כברירת מחדל מאפשרים את כל התעבורה היוצאת והנכנסת מממשקי רשת (ומהמופעים המשויכים אליהם) שמוקצים לאותה קבוצת אבטחה. מומלץ לא להשתמש בקבוצת האבטחה שמוגדרת כברירת מחדל. אי אפשר למחוק את קבוצת האבטחה שמוגדרת כברירת מחדל, ולכן צריך לשנות את הגדרת הכללים של קבוצת האבטחה שמוגדרת כברירת מחדל כדי להגביל את התנועה הנכנסת והיוצאת. ההגדרה הזו מונעת תנועה לא מכוונת אם קבוצת האבטחה שמוגדרת כברירת מחדל מוגדרת בטעות למשאבים כמו מופעי EC2.

המלצה: מוודאים שקבוצת האבטחה שמוגדרת כברירת מחדל בכל VPC מגבילה את כל התנועה

כדי לפתור את הבעיה הזו, צריך להתחיל ביצירת קבוצות אבטחה חדשות עם הרשאות מינימליות. הוראות מופיעות במאמר בנושא יצירת קבוצת אבטחה במדריך למשתמש של Amazon VPC. לאחר מכן, מקצים את קבוצות האבטחה החדשות למופעי EC2. הוראות מופיעות במאמר בנושא שינוי קבוצת אבטחה של מופע במדריך למשתמש ב-Amazon EC2 למופעי Linux.

אחרי שמקצים את קבוצות האבטחה החדשות למשאבים, מסירים את כל הכללים של תעבורה נכנסת ויוצאת מקבוצות האבטחה שמוגדרות כברירת מחדל. הוראות מופיעות במאמר בנושא מחיקת כללים של קבוצות אבטחה במדריך למשתמש של Amazon VPC.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Vpc Flow Logging Enabled All Vpcs

שם הקטגוריה ב-API: VPC_FLOW_LOGGING_ENABLED_ALL_VPCS

יומני זרימה של VPC היא תכונה שמאפשרת לכם לתעד מידע על תעבורת ה-IP שנכנסת לממשקי רשת ב-VPC ויוצאת מהם. אחרי שיוצרים יומן תעבורה, אפשר לראות את הנתונים שלו ב-Amazon CloudWatch Logs ולאחזר אותם. מומלץ להפעיל את התכונה VPC Flow Logs עבור מנות מסוג Reject ב-VPC.

המלצה: מוודאים שיומני הזרימה של VPC מופעלים בכל רשתות ה-VPC

כדי לפתור את הבעיה, מבצעים את השלבים הבאים:

מסוף AWS

  1. כניסה למסוף הניהול
  2. בוחרים באפשרות Services ואז באפשרות VPC.
  3. בחלונית הניווט שמימין, בוחרים באפשרות Your VPCs
  4. בחירת VPC
  5. בחלונית השמאלית, לוחצים על הכרטיסייה Flow Logs.
  6. אם לא קיים יומן של זרימת נתונים, לוחצים על Create Flow Log
  7. בקטע 'מסנן', בוחרים באפשרות Reject
  8. מזינים Role וDestination Log Group
  9. לחץ על Create Log Flow
  10. לוחצים על CloudWatch Logs Group

הערה: הגדרת המסנן ל'דחייה' תפחית באופן משמעותי את הצטברות נתוני הרישום בהמלצה הזו, ותספק מספיק מידע למטרות של זיהוי פרצות אבטחה, מחקר ותיקון. עם זאת, בתקופות של הנדסת קבוצות אבטחה עם הרשאות מינימליות, הגדרת המסנן ל'הכול' יכולה להיות מאוד מועילה לגילוי זרימות תנועה קיימות שנדרשות להפעלה תקינה של סביבה שכבר פועלת.

AWS CLI

  1. יוצרים מסמך מדיניות בשם role_policy_document.json ומדביקים בו את התוכן הבא:
{
 "Version": "2012-10-17",
 "Statement": [
 {
 "Sid": "test",
 "Effect": "Allow",
 "Principal": {
 "Service": "ec2.amazonaws.com"
 },
 "Action": "sts:AssumeRole"
 }
 ]
}
  1. יוצרים מסמך מדיניות נוסף בשם iam_policy.json ומדביקים בו את התוכן הבא:
{
 "Version": "2012-10-17",
 "Statement": [
 {
 "Effect": "Allow",
 "Action":[
 "logs:CreateLogGroup",
 "logs:CreateLogStream",
 "logs:DescribeLogGroups",
 "logs:DescribeLogStreams",
 "logs:PutLogEvents",
 "logs:GetLogEvents",
 "logs:FilterLogEvents"
 ],
 "Resource": "*"
 }
 ]
}
  1. מריצים את הפקודה הבאה כדי ליצור תפקיד IAM:
aws iam create-role --role-name <aws_support_iam_role> --assume-role-policy-document file://<file-path>role_policy_document.json
  1. מריצים את הפקודה הבאה כדי ליצור מדיניות IAM:
aws iam create-policy --policy-name <ami-policy-name> --policy-document file://<file-path>iam-policy.json
  1. מריצים את הפקודה attach-group-policy באמצעות ה-ARN של מדיניות ה-IAM שהוחזר בשלב הקודם כדי לצרף את המדיניות לתפקיד ה-IAM (אם הפקודה מסתיימת ללא שגיאות, לא מוחזר פלט):
aws iam attach-group-policy --policy-arn arn:aws:iam::<aws-account-id>:policy/<iam-policy-name> --group-name <group-name>
  1. מריצים את הפקודה describe-vpcs כדי לקבל את ה-VpcId שזמין באזור שנבחר:
aws ec2 describe-vpcs --region <region>
  1. פלט הפקודה צריך להחזיר את מזהה ה-VPC שזמין באזור שנבחר.
  2. מריצים את הפקודה create-flow-logs כדי ליצור יומן תעבורה של VPC:
aws ec2 create-flow-logs --resource-type VPC --resource-ids <vpc-id> --traffic-type REJECT --log-group-name <log-group-name> --deliver-logs-permission-arn <iam-role-arn>
  1. חוזרים על שלב 8 עבור רשתות VPC אחרות שזמינות באזור שנבחר.
  2. כדי לשנות את האזור, מעדכנים את ‎--region וחוזרים על תהליך התיקון עבור רשתות VPC אחרות.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Vpc Sg Open Only To Authorized Ports

שם הקטגוריה ב-API: VPC_SG_OPEN_ONLY_TO_AUTHORIZED_PORTS

הבקרה הזו בודקת אם קבוצת אבטחה של Amazon EC2 מאפשרת תנועה נכנסת בלתי מוגבלת מיציאות לא מורשות. הסטטוס של אמצעי הבקרה נקבע באופן הבא:

אם משתמשים בערך ברירת המחדל של authorizedTcpPorts, הבקרה נכשלת אם קבוצת האבטחה מאפשרת תנועה נכנסת בלתי מוגבלת מכל יציאה מלבד יציאות 80 ו-443.

אם מספקים ערכים מותאמים אישית ל-authorizedTcpPorts או ל-authorizedUdpPorts, הבקרה נכשלת אם קבוצת האבטחה מאפשרת תעבורה נכנסת ללא הגבלה מכל יציאה שלא מופיעה ברשימה.

אם לא משתמשים בפרמטר, הבקרה נכשלת עבור כל קבוצת אבטחה שיש לה כלל תנועה נכנסת לא מוגבל.

קבוצות אבטחה מספקות סינון עם שמירת מצב של תעבורת רשת נכנסת ויוצאת אל AWS. הכללים של קבוצות האבטחה צריכים להתבסס על העיקרון של הרשאות מינימליות. גישה לא מוגבלת (כתובת IP עם הסיומת ‎ /0) מגדילה את הסיכוי לפעילות זדונית כמו פריצה, התקפות מניעת שירות (DoS) ואובדן נתונים. אלא אם יציאה מסוימת מותרת, צריך לחסום את הגישה הבלתי מוגבלת ליציאה.

המלצה: בדיקה של קבוצות אבטחה עם 0.0.0.0/0 בכל VPC, כדי לוודא שרק תעבורת TCP/UDP נכנסת ספציפית מותרת

כדי לשנות קבוצת אבטחה, אפשר לעיין במאמר עבודה עם קבוצות אבטחה במדריך למשתמש של Amazon VPC.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.

Both VPC VPN Tunnels Up

שם הקטגוריה ב-API: VPC_VPN_2_TUNNELS_UP

מנהרת VPN היא קישור מוצפן שדרכו יכולים לעבור נתונים מהרשת של הלקוח אל AWS או מ-AWS במסגרת חיבור VPN בין אתרים ב-AWS. כל חיבור VPN כולל שתי מנהרות VPN שבהן אפשר להשתמש בו-זמנית כדי להשיג זמינות גבוהה. חשוב לוודא ששני מנהרות ה-VPN פועלים בחיבור דרך VPN, כדי לאשר חיבור מאובטח ועם זמינות גבוהה בין AWS VPC לבין הרשת המרוחקת.

הבקרה הזו בודקת ששתי מנהרות ה-VPN שסופקו על ידי AWS Site-to-Site VPN נמצאות בסטטוס UP. הבקרה נכשלת אם אחת מהמנהרות או שתיהן במצב DOWN.

המלצה: בדיקה ששתי מנהרות ה-AWS VPN שסופקו על ידי AWS site-to-site נמצאות בסטטוס UP

כדי לשנות את האפשרויות של מנהרת ה-VPN, אפשר לעיין במאמר Modifying Site-to-Site VPN tunnel options (שינוי האפשרויות של מנהרת VPN מסוג Site-to-Site) במדריך למשתמש של AWS Site-to-Site VPN.

מידע על הנכסים הנתמכים והגדרות הסריקה של סוג הממצא הזה.