גלה וסווג אוטומטית נתונים רגישים (PII, PHI, פיננסיים) בכל S3 buckets.
→הפעל את Amazon Macie וקבע תצורת עבודות גילוי נתונים רגישים אוטומטיות. השתמש במזהי נתונים מנוהלים עבור סוגי נתונים נפוצים וצור מזהי נתונים מותאמים אישית עבור פורמטים קנייניים.
למה: Macie מספק פתרון מנוהל וניתן להרחבה לסיווג נתוני S3. כדי לדכא ממצאים עבור נתונים לא רגישים ידועים (למשל, נתוני בדיקה), השתמש ברשימות היתר של Macie.
אכוף בקרות אבטחה מרובות על S3 bucket, כגון דרישת SSE-KMS עם מפתח ספציפי ודחיית בקשות HTTP.
→השתמש במדיניות bucket עם מספר הצהרות `Deny` ומפתחות תנאי: `aws:SecureTransport: false`, `s3:x-amz-server-side-encryption: "aws:kms"`, ו-`s3:x-amz-server-side-encryption-aws-kms-key-id: "key-arn"`.
למה: מדיניות Bucket מספקת בקרת גישה ברמת משאב, עם גרנולריות עדינה. שימוש במפתחות תנאי מרובים בהצהרות Deny הוא הדרך הסטנדרטית לאכוף עמדת אבטחה שכבתית על Bucket.
ודא שכל נפחי EBS חדשים מוצפנים עם מפתח KMS מנוהל לקוח ספציפי, בכל הארגון.
→הפעל הצפנת EBS כברירת מחדל בהגדרות החשבון עבור כל Region, תוך ציון CMK. החל SCP המונע `ec2:CreateVolume` אם הפרמטר `encrypted` הוא `false` כמעקה בטיחות מונע.
למה: הגדרת ברירת המחדל מספקת נוחות, בעוד שה-SCP מספק מעקה בטיחות קשיח לאכיפה, ויוצר גישת הגנה בעומק להצפנת נתונים במנוחה עבור EBS.
הצפן אובייקטי נתונים גדולים (מעל 4KB) באמצעות AWS KMS.
→השתמש בהצפנת מעטפה (envelope encryption). קרא ל-`KMS:GenerateDataKey` כדי לקבל מפתח נתונים בטקסט רגיל ומפתח נתונים מוצפן. השתמש במפתח הטקסט הרגיל כדי להצפין את האובייקט הגדול באופן מקומי. אחסן את האובייקט המוצפן ואת מפתח הנתונים המוצפן יחד. זרוק את מפתח הטקסט הרגיל.
למה: ל-KMS Encrypt API מגבלת 4KB. הצפנת מעטפה מאפשרת הצפנת נתונים בכל גודל בעוד שמפתח הנתונים הקטן מוגן על ידי KMS, ומפחיתה עלות וזמן אחזור בהשוואה להזרמת נתונים דרך KMS.
מקור↗
השתמש באותו מפתח הצפנה במספר AWS Regions עבור DR או עקביות יישומים גלובלית.
→צור מפתח ראשי של KMS מרובה-Region ב-Region אחד וצור מפתחות רפליקה ב-Regions אחרים. נתונים מוצפנים עם מפתח ב-Region אחד ניתנים לפענוח עם הרפליקה ב-Region אחר.
למה: מפתחות מרובי-Region חולקים את אותו חומר מפתח ומזהה מפתח, ומאפשרים ניידות נתונים בין Region-ים ללא קריאות API בין Region-ים לפענוח.
אחסן בצורה מאובטחת וסובב אוטומטית אישורי גישה (לדוגמה, סיסמאות מסד נתונים, מפתחות API) המשמשים יישומים.
→אחסן אישורי גישה ב-AWS Secrets Manager. קבע תצורת סיבוב אוטומטי באמצעות פונקציית סיבוב Lambda מותאמת אישית או מסופקת על ידי AWS. יישומים מאחזרים סודות בזמן ריצה באמצעות תפקיד IAM.
למה: Secrets Manager הוא שירות שנבנה במיוחד עבור מחזור החיים השלם של סודות, כולל אחסון מאובטח, בקרת גישה, ביקורת, וסיבוב אוטומטי, המפחית את הסיכון של אישורי גישה מקודדים קשיח או מיושנים.
נהל גם אישורי TLS ציבוריים לאתרי אינטרנט וגם אישורים פרטיים לתקשורת פנימית של מיקרו-שירותים (mTLS).
→השתמש ב-AWS Certificate Manager (ACM) לאישורי ציבוריים בחינם המשולבים עם ELB/CloudFront. צור רשות אישורים פרטית באמצעות ACM Private CA להנפקה וניהול אישורים פרטיים לשירותים פנימיים.
למה: זה מפריד PKI ציבורי ופרטי, ומשתמש בכלי המתאים לכל מקרה שימוש. ACM מטפל במחזור החיים של אישורים ציבוריים, בעוד ש-ACM Private CA מספק היררכיית PKI פרטית מנוהלת במלואה.
אחסן נתונים באופן בלתי ניתן לשינוי לתקופת שמירה קבועה, כך שאף משתמש root לא יוכל למחוק אותם.
→הפעל S3 Object Lock על ה-bucket. הצב אובייקטים תחת תקופת שמירה עם מצב Compliance.
למה: מצב Compliance הוא בקרת ה-WORM (Write-Once-Read-Many) החזקה ביותר, המונעת מחיקה על ידי כל משתמש. מצב Governance יכול להיעקף על ידי principals מורשים.
הגן על גיבויים מפני מחיקה (לדוגמה, עקב תוכנות כופר או אישורי גישה שנפרצו) לתקופת שמירה חובה.
→הפעל AWS Backup Vault Lock במצב Compliance עם תקופת שמירה מינימלית.
למה: Vault Lock במצב Compliance הופך את כספת הגיבוי לתואמת WORM, ומונע מכל משתמש, כולל root, למחוק נקודות שחזור לפני שתקופת השמירה תפוג.
עבד נתונים רגישים ביותר שבהם הנתונים אסור שייחשפו למערכת ההפעלה, ל-hypervisor או למפעילי AWS.
→השתמש ב-AWS Nitro Enclaves כדי ליצור סביבת חישוב מבודדת קריפטוגרפית. השתמש באימות KMS כדי להבטיח שרק מובלעות מאומתות יכולות לפענח נתונים.
למה: Nitro Enclaves מספקים את רמת ההגנה החזקה ביותר לנתונים בשימוש ב-AWS, ומשתמשים באימות ברמת החומרה כדי ליצור סביבת ביצוע מהימנה.
השתמש בשירותי AWS עם מפתחות הצפנה המאוחסנים ומנוהלים פיזית ב-HSM מקומי, מחוץ ל-AWS.
→קבע תצורת KMS External Key Store (XKS) המתווך פעולות קריפטוגרפיות מ-KMS למנהל מפתחות חיצוני.
למה: XKS מאפשר ללקוחות לשמור על שליטה בחומר המפתח שלהם מחוץ ל-AWS כדי לעמוד בדרישות ריבונות או תאימות, תוך שילוב עם שירותי AWS התומכים ב-KMS.
אכוף מדיניות מחמירה של "אין S3 buckets ציבוריים" בכל הארגון עם בקרות מונעות ובלשיות.
→הפעל S3 Block Public Access ברמת הארגון מחשבון הניהול. השלם עם SCP המונע פעולות כמו `s3:PutBucketPolicy` אם המדיניות מאפשרת גישה ציבורית. השתמש ב-AWS Config כדי לזהות סטייה.
למה: גישה שכבתית זו מספקת חסימה כברירת מחדל (הגדרת ארגון), מעקה בטיחות מונע שעוצר תצורות שגויות (SCP), ובקרת גילוי לניטור מתמשך (Config).