שתף קטע נבחר

מבחן האבטחה: לינוקס מול Windows

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

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

 

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

למעשה, גם אם למשתמשים יש העדפה אישית - הם ממשיכים לבחון את האלטרנטיבה.

 

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

 

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

 

קוד פתוח, קוד משותף

 

הבדל אמיתי בין לינוקס ו-Windows הוא שקיפות קוד המקור. לינוקס מופצת עם רשיון GNU (או General Public License), המתיר למשתמשים להעתיק, לשנות ולהפיץ את קוד המקור. Windows, לעומתה, היא מערכת עם קוד סגור ופרטי לחלוטין, ולכן מודל האבטחה שלה מכונה לעיתים "אבטחה על ידי הסתרה".

 

ב-2001, מיקרוסופט השיקה יוזמה בשם "קוד משותף" - במסגרתה מתאפשרת גישה לקוד המקור של Windows ויישומים אחרים. בתוכנית זו רשומים כיום כמיליון משתמשים (על פי מיקרוסופט), ובמסגרתה זמין קוד מקור של כמה גירסאות Windows, כמו גם חלקים משפות הפיתוח שלה.

 

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

 

הממצאים העיקריים: הבדלי האבטחה

 

  • אבטחה בסיסית - מיקרוסופט ולינוקס מספקות שתיהן תמיכה באימות משתמש (authentication), בבקרת גישה (access control), במעקב אחר שימושים ורישום יומן (audit trail/logging), בפרופיל הגנה על גישה (controlled access protection profile) ובהצפנה (cryptography). 

    ללינוקס יש יתרון מאחר והיא מציעה גם את התכונות של Linux Security Modules ו-SELinux. משתמשי לינוקס יכולים להחליט אם להוסיף מנגנוני אבטחה להפצה באופן עצמאי.  מגנוני בקרת גישה שונים נבנו מעל LSM, כמו סביבות המארחות יישומים מבודדים, ולכן מוגבלת השפעתן של בעיות האבטחה על המערכת. האבטחה הבסיסית בלינוקס מתעצמת גם הודות ליישומים כמו TripWire, המאפשר בדיקה תקופתית של שלמות המערכת, ומספק התרעה כשתוכן הקובץ או מאפייניו השתנו. 

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

  • אבטחת רשתות ופרוטוקולים - תמיכתן של לינוקס ו-Windows באבטחת רשתות ובפרוטוקולים דומה למדי. שתיהן תומכות ב-IPSec, תקן המאפשר אימות המשתמש ואימות התוכן. מערכות האבטחה הפתוחות penSSH,OpenSSL ו-OpenLDAP זמינות בלינוקס, וגירסאות סגורות שלהם,SSH, SSL, LDAP זמינות בסביבת מערכות הפעלה של מיקרוסופט. בסעיף הזה יש תיקו בין המתמודדות.

  • אבטחת יישומים - בגלל בעיות האבטחה הקבועות של IIS ואאוטלוק, ללינוקס יש יתרון קל בתחום. שרתי Apache ו-Postfix נוטים להיות בטוחים יותר ממוצרים מקבילים של מיקרוסופט. אבטחת יישומים בלינוקס מועצמת גם עם פיירוול בליבה, ו-Snort, מערכת לזיהוי וחסימת פרצות אבטחה. תוספת חדשה ובולטת שנכנסה לליבת לינוקס לאחרונה, היא exec-shield, המספקת הגנה מפני גלישות זיכרון - וגם כנגד ניסיונות אחרים לניצול פרצות המתבססות על דריסת מבני נתונים בזיכרון והחלפתם בקוד זדוני.

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

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

  • התקנה וניהול - גם כאן יש ללינוקס יתרון, מכיוון שלעיתים קרובות עבודת הניהול מתבצעת משורת הפקודה. כלים לניהול התקנות וניהול תצורה זמינים בהפצות השונות, למשל up2date, YaST2 או Webmin. וכלי ההקשחה Bastille Linux תומך בהפצות רבות. מנהלני מערכות Windows עובדים עם ממשקים גרפיים בלבד, שקל להשתמש בהם, אבל הם מקלים גם על ביצוע טעויות. 

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

  • הסמכה - מדד רווח לרמת ההסמכה של מערכת ההפעלה הוא Common Criteria, המוכר גם כתקן ISO 15408. ישנן דרגות שונות של הסמכה, וכל תעודת הסמכה תקפה רק בצירוף מסוים של תצורת חומרה ותוכנה.

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

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

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

 

שורת ההמלצות

 

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

 

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

 

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

  

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

 

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