כמה מילים לגבי הפריצה לאתר של בנק ישראל

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

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

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

  1. בדיקה דרך Netcraft מראה תוצאה מעניינת לגבי אתר בנק ישראל: בפברואר 2007, גירסת ה-APACHE שהיתה מותקנת ובה השתמש הבנק באתרו החיצוני הינה גירסה 2.0.40, כלומר גירסה שהיתה קיימת עוד מ-2004 ומה שחמור הוא שהגירסה לא שודרגה עם עדכוני האבטחה!. הגירסה הנוכחית שיש היום ל-Apache בגירסה 2.0 היא גירסה 2.0.63 שקיימת עוד מינואר, אך מישהו כלל לא טרח במשך 4 שנים לא לשדרג את הגירסה? הרי בשביל לשדרג, מספיקות 2 פקודות, אבל חוסר השדרוג מראה חוסר מקצועיות מופלא למתחזק האתר, מה שמשאיר את האתר פתוח לפריצות במשך 4 שנים. הפלא היחיד שאני מוצא הוא – איך הוא לא נפרץ.
  2. לפי אותו דו"ח, מישהו החליט להחליף את ה-Apache בתוכנת nginx, ויחסית לאתר שיש לו המון כניסות, זו החלטה תמוהה לחלוטין. זה לא שתוכנת nginx יותר טובה מ-Apache (להגיש דפים), זה לא שהוא יותר יעיל, הוא אפילו לא הגיע לגירסה 1.0, ובטוחני שהאפליקציה לא עברה שום Auditing של הקוד או בדיקה ע"י חברה מקצועית אחרת. מדוע בכלל מישהו אישר להתקין את אתר הבנק שיקבל שרות מאפליקציה זו? האפליקציה הזו מתאימה אולי להגיש דפים מהשרת שלי בבית, אבל על שרתי Production עם כמות ענקית של בקשות להחליף Apache ב-nginx? החלטה תמוהה שבסופו של דבר גם התבררה כאומללה. הפריצה נעשה לאחר שעברו מ-Apache ל-nginx וקבוצת אלגור צריכה לשלם על כך.
  3. מדוע אתר בנק ישראל משאיר את אתרו חשוף אצל ספקי אינטרנט חיצוניים במקום תהיל"ה? כאחד שמכיר את המערכות של תהיל"ה, אני בהחלט יכול לציין את רמת הידע, המקצועיות והרצינות של המנהל (יובל? אתה עדיין שם?) ואנשי ה-System בתהיל"ה. הם מומחים בהגנות, במיוחד שהם חווים מאות אלפי נסיונות פריצה כל חודש למגוון אתרים ממשלתיים שמתארחים אצלם, אז מדוע הבנק לא שם את השרתים שם ונותן להם את אפשרות התחזוקה? האם זה עניין של כסף? כי אם זה כך, אז כאחד שזהו התחום העיקרי שלו אני יכול לאמר שהם שווים כל אגורה.

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

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

תודה,
חץ

Comments

comments

16 תגובות בנושא “כמה מילים לגבי הפריצה לאתר של בנק ישראל

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

  2. יופי
    ברשותך שאלה בנושא מיסטיקה, על אף שזה לא ממש קשור למאמר הנוכחי.

    ** הודעה נערכה ע"י – חץ **

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

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

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

    אתה יודע שה- 2.0.40 לא כולל עדכוני אבטחה של רדהאט? או שזו בכלל לא גרסה של רדהאט?

    – אורן

    • אורן,

      אתה צודק בעניין ה-Back Porting.
      רד האט משחררת גירסאות בצמוד לגירסאות הרשמיות שיוצאות (למעט שהם מוציאים משהו שהוא עבודה שלהם כמו ה-GCC 2.96 הישן).

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

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

        • אורן,
          האם אתה באמת חושב שמישהו באמת פותח את קבצי ה-SPEC, לוקח את הטלאים, משנה ידנית חלק מהקבצים (מבלי לשנות את הקובץ המזהה את ה-APACHE),מלביש על ה-APACHE, מקמפל ומפעיל? אני בספק.
          רוב אלו שאני מכיר מנהלי רשת, פשוט מתקינים את ה-RPMS, בודקים שקבצי ה-CONF עדיין נשארו במקומם ולא שונו, בודקים שההגדרות נשארו תקינות ומעלים את ה-SERVICE מחדש, משהו שאני בטוח ב-95% שלא נעשה שם.

          • או במילים אחרות, אתה אומר שע"פ הזיהוי של האפאצ'י אתה רואה שזו לא גרסה מוטלאת של רדהאט.
            fair enough.

  4. מספר הערות:

    עדכוני אבטחה

    הגסרה לא אומרת כלום. למשל, בדביאן יש גרסת lighttpd 1.4.13 שכוללת את *כל* עדכוני האבטחה של גרסת 1.4.19 אבל לא כוללת "שינויי ושיפורים" שאינם רלוונטיים לאבטחה.

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

    שרת nginx הוא שרת שקצת פחות פופולרי מ-lighttpd (כ-0.6% המשוק לפי נתוני netcraft). הוא שרת מצויין שעובד במקרה של דפים סטטיים הרבה יותר מהר מ-apache. כך שתאמין לי שיש סיבה להשתמש בשרתים כאלה. במיוחד ש-Apache הוא ממש לא השרת שיודע לעמוד בעומסים גבוהים במיוחד.

    כך שדווקא החלפת apache ב-nginex מאוד ברורה במקרה של אתר עמוס.

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

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

    • שלום ארתיום,

      ראשית, כדאי שתבדוק את הדברים. גם בדביאן, שגירסה כוללת תיקונים מעבר לגירסה הרגילה, יש ציון על כך בשם הגירסה, כלומר אפליקציה כמו lighttpd תופיעה כגירסה 1.4.13-15 לדוגמא ולא 1.4.13. זה חובה כחלק מההוראות לבניית חבילות DEB ו-RPM.

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

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

  5. יש לי הרגשה כי הכותב לא יודע בדיוק על מה הוא כותב ועושה את זה רק כדי להכניס את 2C שלו.
    האם אתה יודע בכלל מה זה nginx ולמה הוא נועד?
    האם ידו לך כי אתרים הכי פופולריים ברשת משתמשים ב-nginx לשרת proxy, כשרת web או כ-load balancer?
    לדעתי מישהו לימד אותך לפני כמה שנים טובות שכל תוכנה שמספר גרסתה מתחיל מ-0 היא לא בשלה, פרוצה וצריך להתרחק ממנה. אז הגיע זמן לצאת מהקופסא!
    חבל שבגלל אנשים כמוך בארץ הזאת מיקרוסופט חוגגת על חשבון הצרכנים.

  6. אלכס, אני מבין שהחלטת "להתפרק "קצת..

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

  7. ציטוט:
    "האפליקציה הזו מתאימה אולי להגיש דפים מהשרת שלי בבית, אבל על שרתי Production עם כמות ענקית של בקשות להחליף Apache ב-nginx? "
    אתה לא קולט שכתבת שטות?

    ציטוט:
    "מישהו החליט להחליף את ה-Apache בתוכנת nginx, ויחסית לאתר שיש לו המון כניסות, זו החלטה תמוהה לחלוטין."
    סלח לי, האם אתה יודע בכלל מלה נועד nginx?

    ציטוט:
    "זה לא שתוכנת nginx יותר טובה מ-Apache (להגיש דפים), זה לא שהוא יותר יעיל…"
    הוא הרבה יותר יעיל מ-Apache

    ציטוט:
    "הוא אפילו לא הגיע לגירסה 1.0"
    וואו! אז מה?

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

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

    תקרא קצת עיתונות, תשאל קצת אנשים ותבין למה בכלל הוקמה ועדת בדיקה על העניין אולי?

  9. אני לא מכיר את הנהלים הבירוקרטיים וזה לא מעניין אותי כרגע.
    הגעתי במקרה לאתר הזה בחיפוש אחר מידע על nginx בארץ.
    מסתבר שאף אחד בארץ לא שמע על השרת הנפלא הזה. כנראה כולם מתנהלים על פי  הנהלים משנת 1947 וברגע שמישהו מחליט להעיף מבט ימינה או שמאלה יורים לו בגב עם צעקה "הצמד לנהלים!"
    לא נורא..

  10. אני מניח שרבים שמעו, אבל נהלים זה נהלים והשרתים היחידים המורשים לשימוש באתרים ממשלתיים הם IIS ו-APACHE בגלל כל מיני סיבות.

סגור לתגובות.