על Ransomware והתגוננות מפניהם

cryptolockerעדכון 1: כשהכופרה מעיפה את VSS (בסוף הפוסט)

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

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

כל הדברים שכתבתי היו נכונים עד שלשום. מאז קרו 2 דברים חמורים:

  1. פריצה חמורה אירעה בשרתי צד ג' שנותנים שרותי פרסום לאתרים גדולים ודרך פירצה זו הופצו סקריפטים שרצים בדפדפן שמחפשים כל סוג פריצה שקיים לדפדפנים שונים, ל-Flash, ל-Java ו-JS ושאר דרכים – כדי להוריד אוטומטית Ransomware למשתמש וכדי לגרום לו להריץ אותו. כל מה שהמשתמש היה צריך לעשות זה פשוט לגלוש לאתרים הגדולים (כמו New York Times, BBC, AOL, MSN ועוד) והסקריפט שהיה נטען לדפדפן המשתמש היה כבר רץ ומחפש פירצה.
  2. עד כה רוב תוכנות ה-Ransomware היו משתמשות במפתח פרטי קבוע שהיה חלק מחבילת ה-Ransomware, ולאחר זמן מה יצרני האנטיוירוס ידעו לזהות את המפתח ולהציע ללקוחותיהם דרך לחילוץ הקבצים מבלי לשלם כופר. לאחרונה הדבר שונה ובחלק מתוכנות ה-Ransomware המפתח הפרטי נוצר כל פעם מחדש ומועלה מיד לשרת של התוקף ונמחק מהמחשב, כך שלא ניתן אם הותקן Ransomware כזה לחלץ את הקבצים משום שמדובר במפתח 256 ביט שכיום עדיין אף אחד לא פיצח (אולי ה-NSA הצליחו אבל הם לא מפרסמים כלום בנידון כמובן), כך שמחשב פרטי או מחשב בעסק שחוטף Ransomware כזה, הדרך היחידה לחלץ את המידע – היא לשלם את הכופר לתוקף..

בחברות הפתרון לבעיית הכופרה (Ransomware) הוא פתרון הגיבוי. אחרי הכל, בחברה שיש לה כמה מאות או אלפי מחשבים, ה-Winows לא הותקן ידנית בכל מחשב, אלא השתמשו בכלי Deployment להתקנה אוטומטית של Windows כך שבמקרה של התקפת כופרה על מחשב, מפרמטים ומתקינים דרך כלי ה-Deployment את ה-Windows והאפליקציות ואם יש צורך משחזרים דרך הגיבוי את קבצי התוכן.

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

ניתן לעומת זאת להשתמש בשיטה ותיקה שמיקרוסופט המציאה ממזמן (והורידה חלק מהפונקציונאליות בחלונות 8/8.1 אך החזירה ב-10) והיא ה-Volume Shadow Copy (בקיצור: VSS). בשיטה זו המערכת שומרת Snapshot על כל הקבצים המקומיים (לא ב-XP, שם יש שמירה על קבצי מערכת, לא על תכנים כמו מסמכים וכו')

במידה ובמחשבים מותקנים דיסקים קשיחים, ניתן ליצור Partition נוסף שעליו ישבו ה-snapshots (כדאי לעיין במאמר הזה כדי לבצע את הדברים) או שניתן לבצע Snapshot למערכת NAS (על כך בהמשך) וכך ניתן גם לשחזר קבצים את Snapshot של ה-Volume (עוד פרטים כיצד לבצע mount ל-snapshots ולחלץ מידע – ניתן לקרוא כאן).

אם התכנים נשמרים ב-SAN או NAS, כדאי להפעיל את תכונת ה-Snapshot ב-Storage עצמו (חפשו Volume shadow או VSS) ואז את השחזור ניתן לבצע ישירות מתחנת המשתמש (או ב-Storage, לפי הצרכים). יש לוודא ששרות ה-VSS נראה בתחנת המשתמש (בתחנות מבוססות חלונות 7 ובגרסאות חלונות 8 PRO וכו' אפשר להשתמש בכלי כמו Shadow Explorer לשם כך).

שרתי לינוקס שמשרתים תחנות Windows דרך SAMBA: אם הנכם משתמשים ב-LVM אז תוכלו לבצע Snapshots ולשקף אותם דרך smb.conf בשרת כך שניתן יהיה לשחזר קבצים. ניתן לראות איך לבצע זאת כאן. אם הינכם משתמשים בשרותי ZFS על לינוקס/BSD או סולאריס, אין שום בעיה להשתמש ב-Snapshots שמיוצרים ע"י ZFS ל-SAMBA ואפשר לקחת סקריפט מוכן עם הוראות בקישור כאן.

לסיכום: נזקי כופרה יכולים ליצור כאב ראש לא קטן, במיוחד שאין גיבוי עדכני, אז כמובן שצריך לוודא שגיבויים מבוצעים תדיר (ונבדקים תדיר – הדבר האחרון שאתם צריכים זה גיבוי לא קריא בעת חרום). מומלץ לבדוק ולהשתמש בשרות VSS. נכון, השרות די מוגבל (לא ניתן לבצע את גיבוי ה-VSS לרשת) אבל הוא יכול לשמש כפתרון זול על מנת למגר נזק מכופרות. אם אתם מציעים למשתמשים אחסון תוכן בכונני רשת, ודאו כי ל-storage יש snapshots שניתן לגשת אליהם דרך אפשרות ה-Restore to Previous Versions (אם אין, אפשר לתת למשתמשים Shadow Explorer או לכתוב סקריפט ב-PS שיאפשר שחזור).

כשהכופרה מעיפה את ה-VSS: כפי שציין הגולש גיא אדרי בפורום, רוב הכופרות עוצרות את שרות ה-VSS ומוחקות גיבויים (בהנחה וביטלתם את ה-UAC). במקרים כאלו מאוד מומלץ לחשוב לעבור לכונני רשת שיאחסנו את התכנים (לא את האפליקציות וכמובן לא את ה-SWAP). במידה ואין תקציב לסטורג' לדבר כזה, ניתן לבנות סטורג' זול שיארח כונני רשת (יש לדאוג ל-2 כונני SSD ב-RAID-1 שישמשו כ-Cache קריאה/כתיבה ל-RAID פנימי שיורכבי מדיסקים SATA או NL-SAS). אותו שרת יכול להריץ שרות SAMBA, להתחבר ל-AD ועל השרת הזה ניתן ליצור כונני רשת ולבצע Snapshots לכונני הרשת עם LVM או עם ZFS. במקרה התקפה של כופרה, היא לא יכולה למחוק את ה-Snapshots של כונני הרשת, ניתן גם לבצע Snapshots בתדירות גבוהה (עם ZFS בלינוקס או סולאריס או BSD אפשר גם כל 10-15 דקות וניתן להשאיר כמות גדולה של Snapshots מבלי לחשוש לבעיות ביצועים), כך שבסופו של דבר אם כופרה תוקפת, אפשר לשחזר את המחשב מ-IMAGE, למפות את כונן הרשת, ולשחזר מה-snapshot את כל התוכן אל ה-share של כונן הרשת.

Comments

comments

12 תגובות בנושא “על Ransomware והתגוננות מפניהם”

  1. אחלה מאמר

    רק הערה, רוב הRansomware החדשים דואגים להרוס את הVSS במחשב המקומי כך שאין להסתמך על זה אלא על גיבוי

    כמובן שהם לא יכולים לפגוע בShadow Copy שנמצא בשיתוף רשת אחר, שם זה באמת עוזר

    1. היי מתניה,
      תודה על תגובתך,
      לא ראיתי היכן שהוא איך לאכסן את ה-VSS לדיסק אחר (הכוונה בזמן הגיבוי עצמו, לא אחר כך). יש לך לינק?

      1. היי
        התכוונתי שאם במחשב הנגוע יש מיפוי כונן רשת לשיתוף בשרת אחר, (שזו צורת העבודה המקובלת) הוא יכול להצפין את הקבצים שלמשתמש הזה יש הרשאות כתיבה אליהם אבל כמובן הוא לא יכול לפגוע בVSS על השרת המרוחק

        אגב, שמעתי על אנשים שהפסיקו להשתמש בכונני רשת ושמים למשתמשים את השיתופי UNC בQuick Access
        הבעיה היא שלא כל התוכנות תומכות בצורת העבודה הזו

        1. לא הבנתי.
          אם הוא לא יכול לגעת ב VSS (שהרי ניתן רק לקרוא מהם ולא לכתוב אליהם) היכן כאן הבעיה? מה שכן אני נתקלתי בתופעה אחרת שRansomware מסויימים פשוט מוחקים את ה VSS בכדי למנוע אופציה של שחזור. כמובן שגם לזה יש פתרון פשוט שה VSS לא יוגדר ברמה של מ"ה אלה ברמה של האחסון כמו snapshot של netapp..

      2. נכתב על ידי ווריטאס לצורך פתירת תקלה שלהם, אבל זה אפשרי
        https://www.veritas.com/support/en_US/article.TECH153955
        ומאתר מיקרוסופט:
        https://social.technet.microsoft.com/Forums/en-US/7cf055e6-d6a9-42c2-8bff-7f1893b13619/vss-snapshot-location?forum=dpmhypervbackup

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

      3. לגבי ביצועים, VSS ומערכות snapshot נוספות(כולל אני חושב LVM וגם ZFS) משתמשים בשיטה שנקראת Copy on write שבה ברגע שיש כתיבה על בלוק ששמור כסנאפשוט, המידע הישן יועתק הצידה(למקום שנקבע מראש) והחדש יכתב במקומו, וככה נגמרת פגיעה לא זניחה כל כך בביצועים שכן צריך 2 כתיבות וגם קריאה או שתיים(לא סגור על זה) בכל rewrite. לכן במערכות שביצועי האחסון חשובים אני לא כל כך ממליץ להשתמש בשיטה זו באופן קבוע אלא רק או זמנית או כחלק מגיבוי הצידה(כמו שתוכנות גיבוי רבות משתמשות בvss כדי להביא למצב hot backup mode).
        מערכות אחסון/קבצים מסוימות כמו Netapp, חלק ממערכות EMC החדשות יותר ועוד כמה משתמשים בשיטה שנקראת redirect on write שלא גורמת לפגיעה בביצועים כמעט, החיסרון שאי להגדיר את השינויים שישמרו "בצד" ושלא קל ליצור כזה דבר. בשיטה זו אפשר בשקט להשתמש באופן קבוע.
        לגבי Vmware snapshot(שמוזר לי שלא הזכרת), הם משתמשים בשיטה מוזרה קצת שדומה לcopy on write עם משהו שמזכיר redo files. שם ספציפית יש "שרשרת" של סנאפשוטים תלויים זה בזה שבשרשרת גדולה מידי פוגעת בביצועים לפי VMWARE ולא מומלץ להשתמש בזה כשיטה קבועה, אלא רק זמנית או שוב, כשימוש בתוכנות גיבוי אחרות שנעזרות בזה עבורן כמו veeam.
        https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1025279

  2. אם אפשר להוסיף:

    כל מנגנוני ההפצה דרך Mail של תוכנות הכופר שאני פגשתי לא מפיצים את ה-EXE עצמו של תוכנת הכופר אלא רק Downloader. זה חשוב כי בארגון שמפעיל סנן תוכן אפשר לנקוט בכל מיני טקטיקות כמו להשתמש ב-PROXY מסנן תוכן שימנע הורדת תכני הרצה (גם אם הם מסווים את עצמם) וכמובן יסרוק את התוכן המורד. הדבר החשוב ביותר כאן הוא לסגור את יציאות 80,443.

  3. הסבר שגוי לחלוטין!
    מיקרוסופט לא הסירו שום דבר שקשור לVSS, הם רק הסירו את האפשרות שנקראת windows backup ובעבר ntbackup ומאפשר לקחת גיבוי ולשמור בצד.
    הVSS הוא "כולה" כלי שמקפיא את מערכת הקבצים לרגע(למעשה גורם לכך שלא יהיה שום מידע בbufferים אם אני הבנתי נכון את החלק הזה) כדי שגיבוי יהיה קונסטינטי ללא בעיות בקבצים, במערכת הקבצים או במערכות(למשל SQL או EXCH). הVSS כולל כמה שרק אחד מהם הוא מה שלוקח את הגיבוי עצמו(ואגב אי אפשר לשמור אותו על כונן רשת), האחרים מביניהם מבצעים את ההקפאה בהתאם לאפליקציה שזה נשמר בכל הגרסאות(ובשימוש כל תוכנות הגיבוי הקיימות בשוק) ואת התזמון.
    למעשה VSS זה מה שנקרא previous versions וזה באמת מקביל לsnapshot באחסון, ולא תופס שום נפח למעט delta(זה עובר בcopy on write).
    הwindows backup משתמש בVSS כדי ליצור קובץ גיבוי, שכולל את כל המידע(אפשר בincremental) ולשמור אותו בצד. זה יותר דומה ליצירת clone בVMWARE והעתקת המידע הצידה מאשר לsnapshot באחסון.
    מקווה שהעניין הובן… VSS(כמגבה, לא כ"מקפיא") משמש בעיקר לתיקון טעויות או תקלות לוגיות, ולא לשחזור מערכת שלמה שאובדת-לזה יש כלים אחרים.

    1. הם הסירו מספר חלקים, כמו האפשרות לעשות Restore from previous version ואפשרו אותה רק בגירסת Ultimate, ועוד כמה גרסאות כך שזה לא קיים בכל הגרסאות.

כתיבת תגובה

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