הסבר על מצב האבטחה

הערך securityPosture הוא הערכת האבטחה של המכשיר, שנקבע לפי הסטטוס הנוכחי של המכשיר. הסטטוס הנוכחי של המכשיר נקבע על סמך גורמים כמו אם המכשיר עבר תהליך רוט (Root), אם פועל בו ROM בהתאמה אישית ועוד.

התשובה securityPosture מחולקת לפי devicePosture ורשימה נוספת של postureDetails שמכילה את השדה securityRisk.

השדה securityRisk מסביר למה המכשיר לא נחשב במצב המאובטח ביותר, ואילו הרשימה advice יכולה לעזור בביצוע פעולות לשיפור מצב האבטחה של המכשיר. לדוגמה:

 {
  "devicePosture": "POTENTIALLY_COMPROMISED",
  "postureDetails": [
    {
      "securityRisk": "UNKNOWN_OS",
      "advice": [
        {
          "defaultMessage": "The user should lock their device's bootloader."
        }
      ]
    },
    {
      "securityRisk": "HARDWARE_BACKED_EVALUATION_FAILED"
    }
  ]
}

הערכת מצב האבטחה

כברירת מחדל, מתבצעת הערכה של securityPosture באמצעות אימות (attestation) מפתח, ובמיוחד אימות מפתחות בגיבוי חומרה (HBKA) אם רלוונטי, כדי לספק קביעת אבטחה מהימנה בזמן היצירה והחתימה של האימות בחומרה מאובטחת.

במקרים מסוימים לא ניתן להשתמש ב-HBKA לצורך ההערכה הזו. כדי לשקף זאת, הפונקציה securityRisk תחזיר את הערך "HARDWARE_BACKED_EVALUATION_FAILED". כלומר, אפשר להעריך את securityPosture אבל לא באמצעות HBKA. כלומר, יכול להיות שמצב תקינות ההפעלה של המכשיר נפגע (למשל, יכול להיות שהמכשיר עבר תהליך רוט (Root) והזיהוי באמצעות תוכנה לא יזוהה.

הסבר על קביעות התקינות של מצב האבטחה

אפשר לפרש שילובים שונים של devicePosture ו-securityRisk כדי להבין את רמת האבטחה הכוללת של המכשיר. לתשומת ליבכם, הרשימה שבהמשך היא חלקית בלבד:

  • אם הפונקציה devicePosture מחזירה SECURE ו-securityRisk מחזירה HARDWARE_BACKED_EVALUATION_FAILED התקינות של המכשיר מאובטחת, אבל לא ניתן לאמת זאת על ידי HBKA.
  • אם devicePosture מחזירה 'POTENTIALLY_COMPROMISED' ולא מוחזרת תוצאה securityRisk, נעשה שימוש ב-HBKA בהערכה ומחשיב את המכשיר כפרוץ.
  • אם devicePosture מחזירה 'POTENTIALLY_COMPROMISED' ו-securityRisk מחזירה HARDWARE_BACKED_EVALUATION_FAILED אז אפשר לבצע רק בדיקות מבוססות תוכנה, אבל האותות של איום התקינות חזקים מספיק כדי להחשיב את המכשיר כפרוץ.
  • אם הפונקציה devicePosture מחזירה POSTURE_UNSPECIFIED אז לא ניתן להשלים את הערכת האבטחה. מומלץ להמתין להנפקה מחדש של ה-HBKA, שמתרחשת כשמוחזרת תוצאה חדשה, כדי לראות אם הוא יכול להחזיר ערך ספציפי. עם זאת, הדבר צפוי עבור "POSTURE_UNSPECIFIED" יתרחשו בהתקנה הראשונית למשך פרק זמן קצר.