לדלג לתוכן

הקשחה (אבטחת מידע)

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

הקשחהאנגלית: Hardening) בתכנות היא תהליך של אבטחת המערכת, על ידי הקטנת שטח הפגיעות של מערכת ממוחשבת, חומרה, תשתית או אפליקציה כלשהי.

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

ישנן מספר שיטות להקשחת מערכות "יוניקס" ו"לינוקס". שיטות אלה כוללות בין השאר התקנת טלאים – דוגמת מגן אקס (Exec shield) או פקס (Pax) – על הליבה, סגירת חיבורי רשת, הקמת מערכות זיהוי\התראה לפריצות, שימוש בחומות אש ושימוש במערכות למניעת פריצות. בנוסף, קיימים וכלים רבים (כמו פקודות ותוכנות שונות) להקשחה – כגון ליניס (Lynis), בסטיל לינוקס (Bastille Lynux) JASS או מקשיח Apache/PHP – עבור מערכות סולריס (Solaris) אשר יכולים לנטרל אפשרויות תוכנה מיותרות בתיקיות קונפיגורציה, ולבצע מספר מהלכים הגנתיים נוספים.

הקשחה בינארית[עריכת קוד מקור | עריכה]

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

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

שיטות הקשחה נפוצות:[עריכת קוד מקור | עריכה]

  • הגנה מפני גלישת חוצצים (buffer overflow)
  • הגנה מפני גלישת מחסנית (stack overflow)
  • רנדומיזציה של מרחב הכתובות
  • פיזור אקראי של כתובות להוראות עם כתובות קבועות (פיזור אקראי ליחידות קוד בסיסיות)
  • מיסוך פוינטרים (הגנה מפני הזרקת שורות קוד)
  • בקרת זרימה אקראית (להגנה מפני הטיה של זרימת השליטה)

דוגמאות נוספות[עריכת קוד מקור | עריכה]

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

קישורים חיצוניים[עריכת קוד מקור | עריכה]