ב-30 ביולי, בתוך 41 דקות, מישהו רוקן כמעט 1,200 כתובות ביטקוין. בסך הכול נגנבו כ-1,082 ביטקוין, שווי של כ-70 מיליון דולר לפי הדיווחים. התוקף לא ניחש סיסמאות ולא פרץ לאף שרת. הוא פשוט ידע מראש מה המפתחות.

מה קרה

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

כאן בדיוק הייתה הבעיה. חברת Coinkite, שמייצרת את ארנקי Coldcard, אישרה שתקלה בתוכנת המכשיר משנת 2021 גרמה לו לייצר את המספר האקראי הזה בשיטת תוכנה חלשה, במקום להשתמש ברכיב החומרה הייעודי שנועד לספק אקראיות אמיתית. התוצאה: ה-seed לא היה באמת אקראי. תוקף שהכיר את הפגם יכול היה לחשב במחשב שלו את מספר האפשרויות המצומצם, למצוא את המפתחות, ולרוקן את הארנקים. את הקשר בין הגניבה הזאת לחולשה שחזרו חוקרים מניתוח של התנועה בבלוקצ'יין, ולא כל הפרטים אומתו באופן עצמאי.

למה זה חשוב לכם

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

מה עושים?

אם יש לכם Coldcard, עדכנו מיד לגרסת התוכנה המתוקנת שיצאה ב-31 ביולי.

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

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

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

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