שלום לכם.
לא מזמן נתקלתי במנהל מערכות חביב, כשזה פנה אליי לייעוץ בדבר חשד לחדירה לרשת הארגון שלו. תוך כדי שיחה, הצלחתי להבין כי המנמ"ר החביב – אינו מבדיל בין חומת-אש (Firewall) לבין מערכות לזיהוי ולהיענות חדירות (IDS/IPS). אמנם, קיים קשר (מאוד קטן, בעיקר בתכליתם) בין השניים אך הם שונים. לכן, חשוב מאוד לדעת את מאפייניהם ואת תפקידם. אקדיש פוסט זה לנושא ה-IDS,IPS וה-Firewall, וכן לתהליך זיהוי החדירה לגבי כל אחד מהם.

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

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

מערכות לזיהוי חדירות | Intrusion Detection System | IDS

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

סוגי מערכות IDS:

  • מבוסס-רשת , Network-Based. נקרא גם NIDS.
  • מבוסס-מארח , Host-Based. נקרא גם HIDS.

שיטות פעולה:

  • התאמת תבניות.
  • זיהוי חריגות.
  • "התנהגות" הפרוטוקול. Protocol Behavior.

הפתרון הנפוץ כיום הינו השמת מערכת NIDS הפועלת ע"פ התאמת תבניות.
IDS מבוסס-רשת, או בשמו NIDS – פועל כרחרחן (Sniffer) היושב ברשת, ומסנן תעבורה החשודה כמתקפה. IDS מבוסס-מארח, או HIDS – רץ על מחשב (מארח) יחיד – ומזהה סממני תקיפה.
שלוש שיטות הפעולה הנפוצות במערכות אלו הן:

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

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

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

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

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

טבלת אפיון – NIDS Vs. HIDS

Host-Based IDS (HIDS) Network-Based IDS (NIDS)
מיקום במערכת עצמה. ברשת הארגון.
אופן פעילות בד"כ, אופן הפעילות היא כזו שה-IDSמנתח את קבצי ה-Log, ומזהה חריגות, "סימנים" של התקפות.

"רואה" מה שהמערכת רואה.

בד"כ מיישמים IDS שכזה להגנה על מערכת ספציפית אחת.

פועל כרחרחן ברשת.

פעילות בשני מישורים:

·        פסיבי: שולח התרעות אך לא עוצר את ההתקפה.

·        אקטיבי: עוצר את ההתקפה – בד"כ ע"י שליחת שאילתות Reset.

 

חומות-אש | Firewalls

בד"כ, הדבר הראשון שאנשי אבטחת המידע עושים לפני הקמת רשת תקשורת כלשהי – הוא תכנון והכנה להשמת חומת-אש. כאשר דואגים לאבטחת מידע בתוך רשת הארגון\עסק, אין כמעט אפשרות להבטיח זאת מבלי ליצור מעין חומה – מסגרת לאותה רשת – אשר תבטיח פעילות פנימית מאובטחת. בהגדרה, עקרון ההגנה לעומק (Defense in-depth) דורש כי תהיה שליטה על כל תעבורה שיוצאת ונכנסת מהרשת ולרשת – בהתאמה.

חומת אש יעילה (או לכל הפחות, נתב בעל יכולת סינון), מונעת סוגים רבים של התקפות. היא מונעת מגורמים חיצוניים לגשת לרשת הפנימית של הארגון, וכן לשירותי הרשת הפנימיים. היא מונעת שימוש בכתובות רשת מזוייפות (Spoofed IP addresses).

חומת האש יושבת בין שתי רשתות ומבקרת(מלשון בקרה) על תעבורת המידע בין שתי הרשתות.
כיום, קיימים כ-3 סוגים עיקריים של חומות אש:

  • סנן-פאקטים (Packet Filtering Firewall)
    • חומת האש הבסיסית ביותר.
    • מנתחת כל פאקט בנפרד (אחד-אחד), וקובעת האם פאקט זה יכול לעבור או לא.
    • אינה תלויה במקור התעבורה. כלומר, חומת האש בודקת כל פאקט בנפרד ולא "זוכרת" את מקורו.
    • מהירה ביותר, אבל לא בטוחה ביותר.
    • במערכות מסוימות, חומת האש הנ"ל מכונה כטבלת גישות – Access Control List.
  • מנתחת מצבים (Stateful Inspection Firewall)
    • יוצרת ושומרת "טבלת מצב" של כל התעבורה העוברת ברשת.
    • משתמשת באותה הטבלה כדי לקבוע האם פאקט יכול לעבור או לא.
    • הכי מאובטחת, עם כי יותר איטית מ- סנן-פאקטים.
  • Proxy Firewall
    • יוצרת שני חיבורי TCP לכל בקשה (request). כלומר, החומה יושבת בין שני מערכות מקושרות.
    • משמרת את חיבור ה-TCP בשני נתיבים – אחד עם הלקוח ואחד עם השרת.
    • לפעמים נקראת גם Application Proxy בגלל ש-עיבוד הפאקטים נעשה בכל השכבות במודל ה-OSI.
  •  Application-Level Firewall
    • מיושם במחשב ופועל בעזרת תוכנה.
    • מסתיר את מקור הפאקט.
    • עובד כ"מתווך" בין שני שרתים – כהגדרת ה-Proxy.
    • פועל בשכבה 7 (Application) של מודל ה-OSI .
  • Circuit-Level Firewall
    • פועל כשרת Proxy לכל דבר.
    • לא עושה שימוש בתוכנה (לפחות לא בשכבת ה-Application של מודל ה-OSI ).
    • יוצר מעין חיבור ווירטואלי בין המקור והיעד.
    • בד"כ מיושם בשכבת ה-Session של מודל ה-OSI.

שלושת הסוגים האחרונים, בשונה משני הסוגים הראשונים – לא מנתחים פאקטים, אלא יושבים כנק' בקרה בין שני צדדים המתקשרים בינהם. ה-Proxy Firewall יוצרת שני חיבורי TCP לכל בקשה – אחד ללקוח והשני לשרת. סוג זה, מתחלק לשני רבדים: ברמת האפליקציה וברמת החיבור (Session).

חומות אש – ארכיטקטורות

כאמור, חומת אש היא בבסיסה נתב או תוכנה – עם יכולת לוגית לסנן פאקטים. כמו כן, לחומת האש 4 סוגי ארכיטקטורות:

  • Packet Filtering
  • Dual-homed host
  • Screened host
  • Screened subnet firewall

Packet Filtering

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

Dual-Homed Firewall

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

 

Dual Homed Firewall

 

Screened host firewall

ארכיטקטורה זו דומה במאפייניה לארכיטקורת Dual-Homed:

  • שימוש בשני ממשקי (כרטיסי) רשת (NIC).
  • ממשק אחד מחובר לרשת מהימנה.
  • ממשק שני מחובר לרשת החיצונית.

עם זאת, כשמה היא, חומת האש הנ"ל דורשת נתב סינון בין הרשתות.

 

Screened subnet firewall

ארכיטקטורה זו גם מבוססת על Dual-Homed וכמעט זהה ל-Screened host firewall , רק שבארכיטקטורה זו יש דרישה לשני נתבי סינון: אחד בשביל התעבורה היוצאת והנכנסת מהרשת החיצונית (האינטרנט), והשני לתעבורת הרשת הפנימית.

Bastion host

נתקלתי רבות בשאלה מה זה בדיוק Bastion host ואיך זה קשור לחומות אש? ובכן, גם זו ארכיטקטורה העונה על הגדרת חומת אש;

  • מחשב הממוקם ברשת המפורזת – DMZ , כלומר, ניתן לגשת אליו מרשת חיצונית – האינטרנט.
  • חשוף להתקפות מרשת האינטרנט.
  • שרתי Web, FTP, mail – עונים על ההגדרה ולכן מוגדרים כ-Bastion Host .
  • חייב להכיל בקרות ופונקציות להגן על עצמו.
  • ולכן, מוגדר כ-Firewall או נתב (Router) .

SOCKS

SOCKS הינו שרת פרוקסי מסוג Circuit-Level כמתואר דלעיל. שימושו, ע"פ הגדרה, הינו לאמת מחשבי-לקוח (Clients), ומטרתו היא היכולת לקשר מחשבים מרשת חיצונית לרשת פנימית – דרך חומת-אש. העקרון המנחה את השרת הוא החלפת קריאות רשת מערכתיות (Network System Calls) בקריאות SOCKS. לדוגמא, שרתי רשת כגון FTP, Telnet – חייבים להיות "Socksified" כדי שיפעלו. עוד על SOCKS תמצאו, כמובן, ב-RFC שלו.

Leave a Reply

האימייל לא יוצג באתר. שדות החובה מסומנים *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>