ניהול עדכוני תוכנה (Patch Management)

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

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

את התקפת הכופרה (Ransomware) האחרונה Wannacry, שפגעה במחשבים וברשתות ביותר מ-150 מדינות, היה אפשר למנוע! היא התאפשרה בעקבות פגיעות במערכות ההפעלה של Microsoft Windows, שהתגלו על ידי הסוכנות לביטחון לאומי ולאחר מכן נוצלו על ידי פצחנים (האקרים).

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

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

כיום נדרש שפתרון לעדכוני תוכנה עבור מערכות ההפעלה והיישומים השונים יהיה תהליך אוטומטי אך מבוקר. בשוק קיימים כיום יישומים רבים לניהול עדכוני תוכנה. להלן מספר סיבות מדוע מומלץ ליישם תהליך ממוכן ומרכזי לניהול עדכוני תוכנה:

  • ציות – בין אם קיימת מדיניות פנימית ובין אם יש דרישות חיצוניות כמו PCI (תקן אבטחה של חברות כרטיסי האשראי), פתרון טוב לניהול עדכוני תוכנה מקל על עמידה בתקנים ומבטיח שכל המערכות נשמרות מעודכנות.
  • דיווח – יישומי ניהול עדכוני תוכנה טובים מספקים דיווחים מקיפים, כך שבכל נקודת זמן ניתן לדעת אילו גרסאות תוכנה מותקנות.
  • יכולת תמיכה – חברות רבות מגלות כי הרשת שלהם כבר אינה נתמכת כאשר לא בוצעו בה עדכוני תוכנה זמן רב. ניהול נכון של עדכוני תוכנה מסייע להבטיח תמיכה שוטפת ברשת.
  • בחינת פגיעויות (Vulnerability Scanning) ואיומים – אחת הסיבות החשובות ביותר לניהול עדכוני תוכנה היא לשמור על רמת אבטחה נאותה במערכות. יישומים טובים לניהול עדכוני תוכנה יכולים לסרוק ולדווח על פגיעויות וכן להמליץ על טלאי האבטחה הרלוונטיים. לאחר מכן יוכלו מנהלי המערכת לבדוק את העדכונים הללו ולחולל אותם במהירות.
  • עדכוני אפליקציות צד שלישי – אחד האתגרים העיקריים עבור IT הוא כיצד ליישם עדכוני תוכנה עבור יישומי צד שלישי במערכות שלהם. יישומים לניהול עדכוני תוכנה יכולים לטפל באפליקציות של צד שלישי באותה קלות שבה הם מעדכנים מערכות הפעלה.
  • ניהול עדכוני תוכנה חשוב מאוד בעידן החדש של ניידות מוגברת ועבודה מרחוק. ניהול ממוכן של עדכוני תוכנה יכול לוודא שכל המכשירים הארגוניים יישארו מעודכנים, ללא תלות במקום שבו הם נמצאים.

דגשים ליישום מוצלח של התהליך:

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

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

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