תכנון מערכות זמינות ומאובטחות של כלי טיס בלתי מאוישים

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

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

כולות האבטחה של VxWorks

אבטחה מקצה לקצה

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

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

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

אימות חתימה דיגיטלית – בדרך כלל שימוש בתקן הצפנת מפתח ציבורי כמו X.509ITO-T, כדי להבטיח שרק קוד מורשה יוכל לרוץ. ההצפנה מספקת מפתחות שורש ואישורים עבור אימות.

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

תמיכה נוספת עבור ממשקים כמו IPsec ו- Internet Key Exchange יכולה לספק אבטחת תקשורת רשת מתקדמת, בעוד קונטיינרים עם הצפנה חזקה המשתמשים ב- AES יכולים לספק אבטחה עבור נתונים במנוחה. צריכה להיות גם מערכת ניהול משתמשים מרכזית ומאוחדת, המתחזקת פעילות שוטפת ע”י הגבלת גישה לאזורים של המערכת למשתמשים מורשים בלבד. את זה ישלימו תכונות כמו כניסת משתמש ובקרה, שמאפשרות למנהלי מערכת לראות לאיזה חלקים שלה ניגשו משתמשים בכל עת, ומי הם היו.

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

מערכת הפעלה מאובטחת

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

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

Grsecurity פותח ומתוחזק ע”י חברת Open Source Security, ומספק שיפורי אבטחה עבור גרעין הלינוקס. שיפורים אלה מספקים הגנות נגד איומים ע”י אכיפת בקרת גישה ומניעת השחתת זיכרון. Grsecurity גם כולל את תיקון האבטחה PaX, אשר מספק הגנה עבור נתונים וקוד שמוחזקים במרחבי זיכרון, בעיקר דרך תיוג נתונים כבלתי ניתנים לביצוע, ותכניות כבלתי ניתנות לכתיבה בהן.

סימולציית מערכת עם Simic

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

כמו כן, ההוספה של אפשרויות ליבה/פלטפורמה מאובטחות שמשתמשות בהגנת גודש (overflow) באוגר זמן ריצה, יכולה לשמש לנעילה, ניטור ובקרה של מערכת, מה שנותן למנהלי מערכת רמה גבוהה יותר של בקרה. צעדים אלה מוטמעים ב- Wind River Linux.

בחינת מחזור חיים

עם עליית העוצמה והחומרה של תקיפות, החל מנוזקות כלליות ועד לניצול של פגיעויות ופרצות יום אפס, ששיאן ב- Advanced Persistent Threats, ברור שלבחינה מתמשכת של צעדי אבטחה בכטב”מים, יש חשיבות לא פחות מאשר להפעלה שלהם.

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

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

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

סיכום

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

 

אלכס ווילסון, ווינד ריבר

תגובות סגורות