החלפת מפתח VPN שדלף: מה השרת חייב לעשות
מחיקת הקובץ לא משנה דבר בשרת. החלפה משמעה זהות חדשה שעובדת וזהות ישנה שהשער באמת דוחה, בסדר הזה.
מחשב נייד שנשא מפתח לקוח אבד, והפעולה הראשונה היא בדרך כלל למחוק את העותק המקומי. זה לא משנה דבר בשרת, שעדיין מחזיק הרשאה שתקבל את המפתח הזה עד שמישהו יסיר אותה. החלפה היא שתי פעולות, ורק השנייה נוגעת בהרשאה הישנה.
העותק המקומי אינו הסמכות
הרשאת VPN מתקבלת מפני שהתצורה בצד השרת אומרת זאת. בתעודות זה אומר שהתעודה נקשרת למנפיק מהימן ואינה מופיעה ברשימת ביטולים שהשער בודק. ב-WireGuard זה אומר שהמפתח הציבורי של העמית מופיע בתצורת הממשק. מחיקת קובץ בלקוח מסירה עותק אחד של סוד ומשאירה את כלל הקבלה ללא שינוי.
לכן מפתח גנוב ממשיך לעבוד אחרי הניקוי המובן מאליו, וזו הסיבה שהתקרית מרגישה לא פתורה גם לאחר התקנת התצורה החדשה.
התחל בכלל של השרת, ואז התקדם החוצה אל הלקוח.
תעודות: השרת מחזיק בהחלטה
הנפק את ההחלפה דרך התהליך של המנפיק עצמו כדי שהזהות החדשה תירשם, ואז בטל את הישנה עם ביטול חתום. השער חייב להיות מוגדר לבדוק את מקור הביטול הזה, והוא חייב לטעון אותו מחדש, אחרת הקובץ יושב בדיסק והמנהרה ממשיכה לקבל את המספר הסידורי הישן. הפעלות פעילות יכולות גם לשרוד עד למשא ומתן מחדש, לכן תכנן התחברות מחדש.
ודא שההחלפה עובדת עבור היישום המיועד, ואז ודא בתהליך מאושר שהתעודה שהוצאה משימוש אינה מבססת עוד גישה.
אלה שני מבחנים שונים ושניהם נדרשים. RFC 5280 מגדיר את סמנטיקת התעודה והביטול שהשער נשען עליה.
WireGuard: מפתח העמית הוא הזהות
ל-WireGuard אין שכבת תעודות: המפתח הציבורי של העמית הוא הזהות, ורשומת allowed-ips של השרת היא ההרשאה. הסרת העמית הישן מתצורת הממשק היא הביטול, והיא חלה מיד על לחיצות ידיים חדשות.
הפעלות קיימות מסתיימות כשהלחיצה הבאה נכשלת, וזה בדרך כלל בתוך דקות ספורות ולא מיד.
הפץ את התצורה החדשה בערוץ שהיית סומך עליו עם סיסמה, מפני שהמפתח הפרטי הוא ההרשאה. שמור מפתח אחד לכל התקן, כדי שהתקן אבוד אחד לא יכריח כל התקן להשתנות.
מה עוד היה בחבילה
חבילת לקוח נושאת לעתים קרובות יותר מהמפתח הפרטי: מפתח TLS סטטי, שם משתמש וסיסמה, סוד משותף מראש או אסימון הקצאה. צמצם את התקרית למה שנחשף בפועל וסובב גם את הפריטים האלה. סיבוב התעודה בעוד מפתח סטטי משותף נשאר במקום סוגר דלת אחת ומשאיר אחרת פתוחה.
אם החבילה הייתה משותפת בין התקנים, כל התקן שנושא אותה יורש את החשיפה.
רשום מה סובב, מפני שהביקורת הבאה תשאל.
הוכח דחייה, ואז רשום את ההחלפה
ההחלפה שלמה כששני עובדות מתקיימות: הזהות החדשה עובדת עבור השירות המיועד, והישנה נדחית. אמת את השנייה עם ההרשאה שהוצאה משימוש מסביבת בדיקה, או עם ניסיון מבוקר שהארגון מאשר, וקרא את יומני השער כדי לוודא שהדחייה באה ממדיניות ולא משגיאת הקלדה. אז רשום את המזהה הישן, את החדש ואת זמן השינוי, מפני ששלושת הערכים האלה הם מה שמבקר צריך כדי לשחזר אותו. שום דבר אחר בכרטיס לא יסביר את הפער.
הרחק מפתחות פרטיים מכרטיסים ומצ'אט, והסר ייצוא מיושן מאחסון ומגיבויים בהתאם למדיניות.
החלפה בלי מבחן דחייה היא הנחה ולא תיקון.