שיעור 03: אבטחת מידע¶
מעבדה מעשית (תרגול לתלמיד)
דרישות קדם¶
- Mac מריץ macOS 26 (Tahoe).
- הרשאות Administrator.
- אפליקציית צד-שלישי כלשהי (כמו Google Chrome או Zoom) מותקנת במערכת.
תרגיל 1: חקירת מנגנון ה-Gatekeeper ומקורות חתימה דרך ה-GUI¶
במקום להשתמש בשורת הפקודה, נשתמש בכלים המובנים של המערכת כדי להבין מאיפה כל אפליקציה הגיעה ואם היא מאושרת על ידי ה-Gatekeeper. נדגים זאת על ידי הורדת אפליקציית Zoom.
שלב 1: העלאת רמת האבטחה (App Store בלבד)¶
- פתח את ה-System Settings.
- נווט אל Privacy & Security.
- גלול מטה עד לאזור Security.
- שנה את ההגדרה תחת "Allow applications downloaded from:" למצב המחמיר ביותר: App Store (במקום "App Store and known developers"). פעולה זו מנחה את ה-Gatekeeper למנוע הפעלת כל אפליקציה שלא הורדה ישירות מחנות האפליקציות של אפל.
שלב 2: הורדה והתקנה של Zoom¶
- פתח את הדפדפן (Safari) והיכנס לאתר הרשמי של Zoom.
- הורד את חבילת ההתקנה (קובץ
.pkg) של אפליקציית Zoom. - הפעל את חבילת ההתקנה והשלם את התהליך (שים לב: ההתקנה עצמה עשויה להצליח מכיוון שהיא מתבצעת על ידי תהליך התקנה מורשה של המערכת, אך תלוי בגרסת המערכת, לעיתים נראה חסימה כבר בשלב זה).
שלב 3: חסימת ההפעלה על ידי ה-Gatekeeper¶
- היכנס לתיקיית Applications (יישומים) ונסה להפעיל את אפליקציית Zoom.
- תקפוץ הודעת שגיאה מטעם ה-Gatekeeper המציינת שלא ניתן לפתוח את האפליקציה מכיוון שהיא לא הורדה מה-App Store.
- חזור אל System Settings -> Privacy & Security ושנה חזרה את ההגדרה תחת Security למצב התקין: App Store and known developers.
- נסה להפעיל שוב את Zoom - כעת האפליקציה תופעל בהצלחה מכיוון שהיא עברה נוטריזציה ונחתמה על ידי מפתח מוכר (Identified Developer).
שלב 4: זיהוי מקור חתימת האפליקציה (System Information)¶
- החזק את מקש ה-
Option(⌥) במקלדת, ולחץ על תפריט התפוח () בפינה השמאלית העליונה של המסך. - בחר ב-System Information (האפשרות הראשונה).
- בתפריט הצדדי, גלול מטה אל קטגוריית Software ולחץ על Applications (הטעינה עשויה לקחת מספר שניות).
- מצא ברשימה את Zoom. בחלק התחתון של החלון, תחת "Obtained from", תוכל לראות שכתוב
Identified Developer. נתון זה מוכיח שהאפליקציה עברה נוטריזציה ונבדקה על ידי ה-Gatekeeper.
תרגיל 2: הצצה אל מאחורי הקלעים של XProtect¶
מנוע ה-XProtect עובד בצורה שקופה למשתמש. נשתמש ב-Finder וב-System Information כדי לראות את העדכונים שלו ואת הקבצים המנהלים אותו.
שלב 1: איתור גרסת ה-XProtect הנוכחית במערכת¶
- חזור לחלון ה-System Information (או פתח אותו מחדש דרך תפריט התפוח +
Option). - תחת קטגוריית Software, לחץ על Installations.
- לחץ על כותרת העמודה "Software Name" כדי לסדר את הרשימה לפי הא"ב.
- גלול עד לסוף הרשימה וחפש את הפריטים XProtectPlistConfigData או XProtectPayloads.
- הסתכל על עמודת ה-Version ועל תאריך ההתקנה (Install Date) כדי לראות מתי המערכת קיבלה את עדכון האבטחה השקט האחרון מאפל.
שלב 2: חקירת קבצי ה-XProtect ב-Finder¶
- פתח חלון Finder חדש.
- בתפריט העליון, לחץ על Go ואז בחר ב-Go to Folder... (או השתמש בקיצור
Cmd+Shift+G). -
הקלד את הנתיב הבא ולחץ Enter:
/var/protected/xprotect/XProtect.bundle(הערה: אם התיקייה ריקה לאחר התקנה חדשה, בדוק בנתיב הישן:/Library/Apple/System/Library/CoreServices/XProtect.bundle/Contents/Resources/) -
בתיקייה שתיפתח, חפש קבצי מידע כגון
XProtect.meta.plistאו קבצי הגדרות אחרים (בהתאם לזמינות ב-Tahoe). - בחר קובץ זמין ולחץ על מקש הרווח (Spacebar) כדי להפעיל את ה-Quick Look ולראות את התוכן הפנימי של מנוע האבטחה.
תרגיל 3: ניהול ואיפוס הרשאות TCC (Transparency, Consent, and Control)¶
נשתמש באפליקציית Zoom (שהורדנו בחלק 1) כדי להדגים כיצד פועלות בקשות להרשאה (Camera, Microphone) מנקודת המבט של משתמש הקצה, ולאחר מכן נלמד כיצד לאפס אותן לצורך פתרון תקלות (Troubleshooting).
שלב 1: בקשת הרשאות מנקודת המבט של משתמש קצה¶
- פתח את אפליקציית Zoom.
- התחל פגישה חדשה (New Meeting).
- מיד עם פתיחת הפגישה, Zoom תנסה לגשת למצלמה ולמיקרופון שלך. המערכת (macOS) תקפיץ חלוניות בקשה מיוחדות לאישור גישה למצלמה (Camera) ולמיקרופון (Microphone).
- לחץ על Allow (אשר) בשתי הבקשות.
- כעת, נסה לשתף מסך (Share Screen). המערכת תקפיץ בקשת הרשאה נוספת עבור Screen Recording. עקוב אחר ההוראות להענקת ההרשאה (פעולה הדורשת הזנת סיסמת מנהל מערכת ופתיחת חלון ההגדרות).
שלב 2: צפייה בהרשאות שניתנו ב-System Settings¶
- פתח את System Settings ונווט אל Privacy & Security.
- היכנס אל הקטגוריה Camera או Microphone.
- כאן תראה את אפליקציית Zoom שהתווספה לרשימה. מתג כחול דולק אומר שהגישה אושרה (Consent), מתג אפור כבוי אומר שהגישה נשללה.
שלב 3: איפוס הרשאות לחלוטין דרך הטרמינל (Troubleshooting)¶
לעתים אפליקציה קורסת או לא מזהה את ההרשאה שניתנה לה (תופעה נפוצה בתוכנות שיחות וידאו). במקרה כזה, נרצה לאפס (Reset) את ההרשאה לחלוטין ממאגר ה-TCC כדי להכריח את המערכת לשאול את המשתמש שוב מאפס. נבצע זאת דרך ה-Terminal, שכן זו הדרך היסודית ביותר לפתרון תקלות:
- סגור לחלוטין את אפליקציית Zoom (Quit).
- פתח את ה-Terminal (ניתן למצוא ב-Applications/Utilities).
- כדי לאפס את כל הרשאות ה-TCC של אפליקציית Zoom במכה אחת, הקלד את הפקודה הבאה ולחץ Enter:
(הערה: ניתן גם לאפס הרשאה ספציפית בלבד, למשל:
tccutil reset All us.zoom.xostccutil reset Microphone us.zoom.xos) - כעת, פתח את Zoom מחדש והתחל פגישה. שים לב שחלוניות הבקשה לגישה למצלמה ולמיקרופון מופיעות מחדש, כאילו זו הפעם הראשונה שהאפליקציה מופעלת!
תרגיל 4: תיבול ארגוני - זיהוי פרופיל PPPC¶
בסביבה ארגונית מנוהלת, ה-IT מתקין פרופילים שמעניקים הרשאות TCC באופן אוטומטי (PPPC).
- ב-System Settings, חזור אחורה ולאחר מכן גלול למטה ובחר ב-Profiles או Device Management (אם מופיע - אם המחשב אינו מנוהל, תפריט זה עשוי להיות חסר).
- אם מותקנים פרופילים, חפש פרופיל המכיל את השם Privacy Preferences Policy Control או System Policy All Files.
- כניסה לפרטי הפרופיל תראה אילו אפליקציות קיבלו אישור אוטומטי.
- אם תחזור ל-Privacy & Security -> Full Disk Access, תוכל לראות שאפליקציות שנוהלו על ידי הפרופיל מציגות מתג אפור שאינו ניתן לשינוי, לעתים עם הכיתוב "Managed by your organization".
סיכום¶
במעבדה זו תרגלנו את היסודות של מנגנוני ההגנה של macOS דרך הממשק הגרפי. בדקנו את הגדרות ה-Gatekeeper, וידאנו מקורות חתימה בעזרת System Information, עקבנו אחר עדכוני XProtect השקטים, ולמדנו כיצד לנהל ולאפס הרשאות פרטיות של מערכת ה-TCC באמצעות כפתורי ההוספה וההסרה.
תרגיל בונוס לאנשי IT: שורת הפקודה (Terminal)¶
לאנשי תמיכה מתקדמים, הנה כמה פקודות Terminal שמבצעות את הפעולות שראינו ב-GUI בצורה מהירה ומעמיקה יותר:
- ניהול מנוע ה-XProtect העדכני:
במקום לחפש ב-System Information, ניתן להשתמש בכלי המובנה לניהול עדכוני XProtect:
xprotect version
sudo xprotect update
- בדיקת מצב Gatekeeper ואימות אפליקציה:
במקום לפתוח System Information, ניתן לבדוק הערכת Gatekeeper מלאה על אפליקציה:
spctl -a -vv /Applications/Safari.app
- איפוס מסד נתונים TCC:
במקום ללחוץ על סימן המינוס (-) בהגדרות, ניתן לאפס לחלוטין את הרשאת המיקרופון לכל המערכת בשורת פקודה אחת:
tccutil reset Microphone
- חקר XProtect Remediator:
במקום להסתכל על קבצי plist ב-Finder, כך שואבים את דיווחי הסריקה השקטים של XProtect מתוך לוג המערכת של 24 השעות האחרונות:
log show --predicate 'subsystem == "com.apple.XProtectFramework.PluginAPI"' --info --last 24h