elasticsearch · ransomware · extortion · data-exposure · on-chain-analysis · bitcoin · cloud-misconfiguration · census
Elasticsearch חשוף: בתוך כלכלת הכופר-והמחיקה
Kinryū Labs ערכה מפקד של 17,043 מארחי Elasticsearch החשופים לאינטרנט ומצאה שקליפה מחוקה ובתוכה פתק כופר היא המצב הנפוץ ביותר של אשכול חשוף: 5,073 מהם. מעקב אחר כל ארנק שהפתקים פרסמו מניב חמישה שחקנים, אחד-עשר תשלומים וכ-$5,553 בהכנסה כוללת, ומראה שההבטחה להשיב נתונים שנמחקו אינה נתמכת בראיות.
מאת Davis Zheng·
TLP:CLEAR. אושר לפרסום ציבורי. הממצאים מגיעים ממפקד רחב-אינטרנט של Elasticsearch חשוף, שנערך מנקודת תצפית ענן יחידה, ומניתוח על-השרשרת (on-chain) של כל כתובת Bitcoin ו-Ethereum שפורסמה בפתקי הכופר. ארנקי התוקפים, כתובות הקשר, טקסט הפתקים והקישורים הם מחוונים ומתפרסמים כאן; הקישורים ודומייני הקשר מנוטרלים (defanged). ארגונים שנפגעו מטופלים במסגרת גילוי נפרד ואינם מזוהים בשמם.
תקציר מנהלים
- 7,648מארחים פתוחים ללא כל אימות
- 5,073קליפות מחוקות-בכופר
- $5,553סך הכל ששולם, כל השחקנים, כל הזמן
- 1.2%קורבנות שהפעילו אימות בהמשך
כוונו סורק לא-מאומת אל ה-Elasticsearch של האינטרנט, ורוב מה שעונה הוא הריסות: אשכולות שרוקנו ונותרו עם פתק כופר במקום שבו היו הנתונים. ערכנו מפקד של 17,043 מארחי Elasticsearch מנקודת תצפית ענן יחידה; 11,850 ענו. מתוכם, 7,648 היו פתוחים ללא כל אימות, ו-5,073 מן המארחים הפתוחים כבר רוקנו ונותרו עם פתק במקום הנתונים שלהם. קליפה מחוקה ובתוכה פתק היא המצב הנפוץ ביותר של אשכול Elasticsearch חשוף.
קריאת הפתקים האלה במלואם מ-2,500 מארחים מקבצת אותם לשבע תבניות המופעלות בידי חמישה שחקנים. לאחר מכן עקבנו אחר כל ארנק שהפתקים פרסמו. על פני כל חמשת השחקנים, שלוש-עשרה כתובות Bitcoin וכתובת Ethereum אחת, לאורך תקופה של יותר משנה, הקמפיינים קיבלו אחד-עשר תשלומים המסתכמים ב-0.06 BTC, בשווי של כ-$5,553 לפי המחיר ששרר בעת שכל אחד נכנס. שיעור התשלום הכולל על פני הקורבנות הניתנים-לשיוך הוא 0.28%.
מצג המכירה של השחקן הדומיננטי הוא שהנתונים שלכם נמחקו מהשרת שלכם אך נשמרים בבטחה על האשכול שלו, וחוזרים ברגע שתשלמו. הראיות אינן תומכות בכך. קוד השחזור שהפתק נשבע כי הוא ייחודי לבסיס הנתונים שלכם מתגלה כמחרוזת קבועה יחידה, זהה על פני 1,199 קורבנות ב-56 מדינות. הקורבנות, מצדם, ברובם אינם מתקנים את החשיפה הבסיסית. בגישוש חוזר שבעה שבועות לאחר המפקד, 52% מדגם של 2,500 מארחים היו עדיין פתוחים, עדיין מחוקים, עם הפתק עדיין במקומו, ורק 1.2% הפעילו אימות.
- כופר-ומחיקה הוא המצב השכיח של אשכול חשוף. 5,073 מתוך 7,648 מארחים פתוחים וללא-אימות (66%) נמחקו ונדרש עבורם כופר. Elasticsearch חשוף נוטה יותר להיות קליפה בזוזה מאשר בסיס נתונים פעיל. ביטחון גבוה, נמדד ישירות.
- הטענה בדבר שמירת הנתונים אינה נתמכת. השחקן הדומיננטי מנפיק קוד שחזור קבוע על פני 1,199 קורבנות ומשמיד נתונים על ידי מחיקת אינדקסים ולא ייצואם. שום דבר בראיות אינו מצביע על כך שנשמר עותק. ביטחון גבוה.
- מדובר באוטומציה הזדמנותית, לא בחדירה ממוקדת. יותר מתשעה מכל עשרה קורבנות מריצים גרסת Elasticsearch עדכנית; דרך הכניסה היא יציאה פתוחה, ותיקון (patch) לא היה סוגר אותה. ביטחון גבוה.
- הכלכלה שולית. $5,553 על פני אחד-עשר תשלומים ביותר משנה, כאשר 8 מתוך 13 ארנקים מעולם לא קיבלו סאטושי. זה נראה כמו סקריפט זול המורץ בקנה מידה, לא כעסק כופרה מאורגן. ביטחון גבוה.
- קמפיינים קטנים, פר-קורבן, גוברים על הרסס ההמוני. שחקן אחד שסחט שלושה מארחים עם ארנקים פר-קורבן הכניס יותר מהשחקן שפגע ב-3,730 עם ארנק משותף. ביטחון בינוני; המדגם הוא שלושה קורבנות, כך שהכיוון ברור יותר מהעוצמה.
המפקד: כמה, ובאיזה מצב
סריקת masscan העלתה כ-39,900 נקודות קצה מועמדות של Elasticsearch ו-Kibana. פתירת צד ה-Elasticsearch לפסק דין נקי פר-מארח מנקודת התצפית משאירה 17,043 מארחים עם תוצאה קנונית. מתוכם, 11,850 ענו ב-HTTP ו-5,193 לא.
פסקי הדין על מלוא ה-17,043:
| פסק דין | ספירה | משמעות |
|---|---|---|
| פתוח, ללא אימות | 7,648 | GET / מחזיר 200 ללא אישורים; קריא ישירות |
| מוגן | 4,026 | 401/403, וברירות המחדל הידועות נכשלות |
| מת | 5,193 | אין HTTP מנקודת התצפית |
| נדרש אימות | 71 | 401/403, טרם נבדק באישורים |
| אישורי ברירת מחדל | 39 | אישור ברירת מחדל מאמת |
| אחר | 66 | נגיש אך לא-Elasticsearch או סטטוס חריג |
כמעט שני שלישים מהמארחים הנגישים עונים ללא כל אימות. אך המילה “פתוח” דורשת זהירות לפני שמישהו הופך אותה לספירת קורבנות.
מתוך 7,648 המארחים הפתוחים, 5,073 הם כבר קליפות מחוקות-בכופר, ופלח נוסף הם פיתיונות: אשכול של צמתים בעלי שמות אוטומטיים המגישים סכמה משומרת זהה, בתוספת מארחים שמזייפים את רשימות האינדקסים שלהם כדי להיראות מלאים יותר משהם. הסירו את שניהם והשארית של אשכולות פתוחים באמת שעדיין מחזיקים נתונים אמיתיים ולא-כופרים היא כ-2,500. המקרים בעלי הערך הגבוה בתוך אותה שארית מטופלים במסגרת גילוי נפרד ואינם מזוהים בשמם כאן.
מבחינה גאוגרפית, אוכלוסיית הפתוחים-ללא-אימות היא רוב סיני בפער ניכר: CN 2,518, אחר כך US 874, DE 731, FR 518, IN 435, MX 277, RU 256, SG 181, JP 131, KR 125, NL 124, GB 120.
39 המארחים שבהם אישור ברירת מחדל מאמת הם בעיה קטנה יותר וחדה יותר. שישה זוגות ברירת מחדל ידועים נבדקו לקריאה-בלבד (elastic:elastic, changeme, password, bitnami; admin:admin; kibana:kibana), כאשר ההרשאה שכל אחד העניק אוששה פר-מארח. הם מתחלקים לשתי מחלקות: חשבונות kibana_system, הרואים מטא-נתונים אך מקבלים 403 על _search, ומשתמשי-על elastic מלאים עם קריאה, כתיבה ומחיקה. נקודת תצפית ביתית חלשה יותר החמיצה 26 ממקרי משתמש-העל לחלוטין, מה שמהווה הצצה מקדימה לבעיית הטיית-התצפית הנדונה בסוף. המקרה הבודד הגרוע ביותר הוא מחסנית Elastic Defend EDR ו-SIEM עם אישורי ברירת מחדל ועם Fleet מחובר, שבה גישת משתמש-על למוצר אבטחה קונה שיבוש התרעות ונתיב מניהול-לסוכן להרצת קוד על כל מארח שהיא מנהלת.
פתקי הכופר
הקורבנות אינם מי שהייתם מצפים מהסיפור הרגיל של “תיבה לא-מתוקנת באינטרנט”. לפי גרסה ראשית, המארחים המחוקים מריצים v8 (2,535), v7 (1,960), v9 (299), v6 (117), v5 (61) ו-v2 (42). גרסאות עדכניות שולטות: v7, v8 ו-v9 יחד הם 4,794 מהם, יותר מתשעה מכל עשרה. אלה אשכולות מתוחזקים ומעודכנים שבמקרה אין להם סיסמה בדלת הכניסה. החשיפה היא היציאה הפתוחה, ותיקון לא היה סוגר אותה.
האירוח מתרכז בעננים הסיניים הגדולים (Alibaba 730, Tencent 500, Volcano Engine 330, Huawei 84, כ-1,644 בסך הכל) ולאחר מכן ספקי התקציב האירופיים (OVH 324, Contabo 250, Hetzner 236), עם אשכול של ספק יחיד ב-Baja Datacenter במקסיקו (231). גאוגרפיית הקורבנות עוקבת אחר גאוגרפיית החשיפה: CN 1,972, US 527, FR 423, DE 360, MX 235, RU 212, וזנב ארוך.
מה הפתקים אומרים
קריאה מלאה של 2,500 מארחים שחזרה 1,309 פתקים שלמים, אשר מתנרמלים, לאחר שהארנק, הקשר, הסכום והקוד מוצאים מהמשוואה, לשבע תבניות נבדלות. אחת מהן מהווה כמעט הכל. הקישורים ודומייני הקשר להלן מנוטרלים.
שחקן A, התבנית הדומיננטית, 1,199 מתוך 1,309 פתקים (92%), על פני 56 מדינות:
Your database has been deleted from your server, but all the information remains stored on our cluster. The instructions for recovery are as follows: You must send 0.0041 BTC to the following wallet:
bc1q38rjul6gdamfflf6p4ukz0ymtvfgfv2j9saf6r. Then, you must send an email towendy.etabw@gmx[.]comwith the following code: 0SH7HH1Q72JL (it is important that you write it correctly, as it corresponds to your database). You must also attach the txid (the Bitcoin transaction ID) to the message. After following these steps, we will send you a zip file with all your information. You have 48 hours to complete the steps. For More Info - hxxps://tli[.]sh/73x1k
בתוך תבנית יחידה זו הסכום משתנה (0.0016, 0.0035, 0.0041, 0.0061 BTC), וכך גם הארנק, כתובת הקשר (wendy.etabw@gmx[.]com, scandal@onionmail[.]org, bitwezen@cock[.]li) והקוד (0SH7HH1Q72JL או BITWEZEN2026). המועד האחרון הוא תמיד 48 שעות.
תבנית אחת שונה מספיק כדי לצטט אותה במלואה. לבדה מבין השבע היא מאיימת לפרסם את הנתונים במקום למחוק אותם, מציעה אפשרות Ethereum לצד Bitcoin, ומבקשת סכום גדול משמעותית, כפי שנים-עשר בקירוב מדרישתו של שחקן A:
שחקן E, איום-דלף, דו-שרשרתי, 3 פתקים:
Your database was compromised. Pay 0.1 ETH to
0x3C11Cf2974c3Fb4d7ebBfea711a4A0b26989979Dor 0.05 BTC tobc1qu8t03mv2qwjv56gry2ft0qes0xwqhddjhsvkfl. THIS IS A UNIQUE ADDRESS GIVEN TO YOU AND YOUR PAYMENT WILL BE AUTOMATICALLY DETECTED. UPON WHICH WE WILL RESTORE YOUR DATA. IN 48 HOURS IF NO PAYMENT IS MADE WE WILL LEAK YOUR DATA PUBLICLY.
התבניות הנותרות, כולל וריאנט מקולקל של מיזוג-דואר של פתק שחקן A, משוחזרות מילה במילה להלן עבור מגנים שמשווים מולן.
תבניות הפתקים האחרות, מילה במילה (מנוטרל)
שחקן B “sharebot”, 101 פתקים, 15 מדינות:
Your database has been backed up to our secure servers. To recover your data, send exactly 0.0061 BTC to:
bc1quwlw8djc7hfamf3qpspma34uh9dr6w4kudfu8pThen emaildb-recovery@sharebot[.]netwith your server IP and transaction ID. We will reply with a download link within 24 hours. If no payment is received in 48 hours, your data will be permanently deleted.
שחקן B “sharebot”, וריאנט מקודד, 2 פתקים:
Your data has been backed up. To recover it, send 0.0061 BTC to:
bc1qquzg5dg5yfqxlc0fy6pemcwa2xg5mw3l7l2gc4. Then emailes-recovery@sharebot[.]netwith code: 841BEACF110F and attach the transaction ID (txid). You will receive a download link within 24 hours. Do not modify this index.
שחקן D, פתק 1:
Your DB has been back up. The only way of recovery is you must send 0.002 BTC to
127ZBzXyLJFc7ShMmzkYFDhSiXXSnR8Jfr. Once paid please emaildatabaserestore32@onionmail[.]orgwith code: omoRmq and we will recover your database. please read hxxps://cutmyurl[.]com/3caF8EkT for more information
שחקן A, וריאנט מיזוג-דואר מקולקל, 3 פתקים:
Your database has been deleted from your server, but all the information remains stored on our cluster. […] You must send 0.0041 BTC to the following wallet:
bc1qu8t03mv2qwjv56gry2ft0qes0xwqhddjhsvkfl. Then, you must send an email to This is a unique address given to you and your payment will be automatically detected, upon which we will restore your data. with the following code: 0SH7HH1Q72JL […]
משבצת הקשר מולאה במשפט במקום בכתובת אימייל. אותו משפט הוא מילה במילה מתבנית שחקן E, והארנק הוא זה שבו משתמש שחקן E.
קוד השחזור אינו פר-קורבן
פתק שחקן A נשען על הבטחה אחת: הנתונים שלכם בטוחים, והקוד מוכיח שנוכל להחזיר את שלכם באופן ספציפי. על פני 1,199 הקורבנות שנדגמו ב-56 מדינות, קוד זה מקבל בדיוק שני ערכים, 0SH7HH1Q72JL ו-BITWEZEN2026. זהו קבוע המוטמע בתבנית בזמן הבנייה, לא מזהה הקשור לקורבן.
ההשלכה אינה עדינה. מפעיל שאינו יכול להבחין בין קורבן אחד לאחר אינו יכול להחזיר את נתוני קורבן מסוים לפי בקשה. שלבו זאת עם העובדה שהמחיקה היא מחיקת אינדקסים בכמות ולא ייצוא, והשורה “all the information remains stored on our cluster” אין לה תמיכה בשום דבר הנצפה כאן. הוריאנט המקודד של שחקן B אכן נושא מה שנראה כקודים נבדלים פר-קורבן, אך וריאנט זה הגיע ל-2 מארחים מתוך 1,309, ושחקן B מעולם לא קיבל תשלום.
ערכה משותפת קושרת שני “שחקנים” יחד
הוריאנט המקולקל שלמעלה הוא מתנה פורנזית קטנה. הפתק שהשתבש של שחקן A ופתק איום-הדלף של שחקן E חולקים ארנק (bc1qu8t03mv2qwjv56gry2ft0qes0xwqhddjhsvkfl) וחולקים משפט, מילה במילה, היושב בשדה הלא-נכון של פתק שחקן A. הקריאה החסכונית היא ערכת יצירת-פתקים משותפת עם משבצות ניתנות-להגדרה עבור ארנק, קשר, סכום ומועד אחרון, שבה הרצה אחת כתבה את הטקסט של שחקן E לתוך משבצת הקשר של שחקן A. במונחים הערכתיים זה סביר: מפעיל אחד המריץ את שני הסקריפטים, או שני מפעילים החולקים ערכה, שניהם מתאימים, וטקסט הפתק לבדו אינו יכול להפריד ביניהם. מה שהראיות שוללות הוא התייחסות לשני אלה כעצמאיים לחלוטין.
השחקנים
| שחקן | קשר | מוטיב | דרישה | קורבנות | כתובות |
|---|---|---|---|---|---|
| A (דומיננטי) | wendy.etabw@gmx[.]com, scandal@onionmail[.]org, bitwezen@cock[.]li | נמחק מהשרת שלך, מאוחסן על האשכול שלנו; קוד קבוע; קישור tli[.]sh | 0.0016 עד 0.0061 BTC | ~3,730 | 4 |
| B “sharebot” | db-recovery@, es-recovery@sharebot[.]net | גובה על השרתים המאובטחים שלנו; קישור תוך 24 שעות / מחיקה תוך 48 שעות | 0.0061 BTC | ~262 | 5 |
| C “rambler” | rambler+<id>@onionmail[.]org (ייחודי פר-קורבן) | ארנק ואימייל פר-קורבן | ~0.0041 BTC | 3 | 3 |
| D | databaserestore32@onionmail[.]org | ארנק P2PKH מדור קודם; קישור cutmyurl | 0.002 BTC | 1 | 1 |
| E | אין (תשלום-בלבד) | איום דלף; BTC או ETH | 0.05 BTC / 0.1 ETH | 3 | 1 BTC + 1 ETH |
שחקן A מרסס ארנק משותף אחד על פני אלפי קורבנות. שחקן C עושה את ההפך, טובע ארנק חדש ואימייל rambler+<id> עבור כל אחד משלושת שלו. הבדל זה במלאכת-הריגול מתגלה כמכריע מי באמת קיבל תשלום.
מעקב אחר הכסף
כל כתובת שפורסמה נבדקה מול סייר בלוקים ציבורי, לקריאה-בלבד. נתוני ה-USD הם השווי בזמן הבלוק של כל תשלום, לא מחיר הספוט של היום.
| מדד | ערך |
|---|---|
| כתובות BTC שפורסמו | 13 |
| כתובות שאי-פעם קיבלו משהו | 5 |
| סך הכל שהתקבל | 0.05995249 BTC |
| שווי כולל בזמן התשלום | $5,553.21 |
| תשלומים, כל השחקנים, כל הזמן | 11 |
| מארחי קורבן ניתנים-לשיוך | 3,996 |
| המרה כוללת | 0.28% |
| כתובות עם אפס הכנסה | 8 מתוך 13 |
| תשלום ראשון / אחרון | 2025-05-27 / 2026-06-04 |
מפולח לפי שחקן, הסדר הוא הממצא:
| שחקן | כתובות | קורבנות | תשלומים | BTC שהתקבל | USD בזמן |
|---|---|---|---|---|---|
| A | 4 | 3,730 | 5 | 0.02442141 | $1,686.65 |
| C (rambler) | 3 | 3 | 6 | 0.03553108 | $3,866.56 |
| B (sharebot) | 5 | 262 | 0 | 0.00000000 | $0.00 |
| D | 1 | 1 | 0 | 0.00000000 | $0.00 |
| E | 1 BTC + 1 ETH | 3 | 0 (רגל ה-BTC) | 0.00000000 | $0.00 |
שחקן C סחט שלושה מארחים ולקח יותר כסף משלקח שחקן A מ-3,730. שלושת הקורבנות שלו ביצעו שישה תשלומים, כמה מהם בערך כפול מהדרישה, וזה מה שהייתם מצפים מפתקים המאיימים להעלות את המחיר כשמועד אחרון חולף. שחקן B הוא התוצאה השלילית הנקייה ביותר בקבוצה: 262 קורבנות על פני 15 מדינות, פתק בעל מראה מקצועי, כתובת קשר מבוססת-דומיין, ואף לא סאטושי אחד, אי-פעם.
כלל ההכנסה של כל קמפיין כאן היא אחת-עשרה עסקאות. היא נכנסת במסך אחד:
| # | זמן (UTC) | שחקן | כתובת | BTC | USD בזמן | תואם דרישה |
|---|---|---|---|---|---|---|
| 1 | 2025-05-27 16:49 | C | bc1qk2cc4… | 0.00413108 | $455.32 | ~0.0041 |
| 2 | 2025-10-29 12:52 | C | bc1qqmyg9d… | 0.00750000 | $848.68 | לא (~פי 2) |
| 3 | 2025-10-30 18:41 | C | bc1qqmyg9d… | 0.00760000 | $816.67 | לא (~פי 2) |
| 4 | 2025-11-01 20:27 | C | bc1qqmyg9d… | 0.00390000 | $429.99 | ~0.0041 |
| 5 | 2025-11-10 13:42 | C | bc1q5xj2m… | 0.00820000 | $868.57 | לא (~פי 2) |
| 6 | 2025-11-10 14:45 | C | bc1q5xj2m… | 0.00420000 | $447.33 | ~0.0041 |
| 7 | 2026-02-02 05:52 | A | bc1q38rjul… | 0.00410000 | $310.83 | כן |
| 8 | 2026-02-07 00:08 | A | bc1q38rjul… | 0.00372427 | $262.65 | לא |
| 9 | 2026-02-14 09:07 | A | bc1q38rjul… | 0.00608500 | $424.20 | לא (~0.0061) |
| 10 | 2026-04-07 07:25 | A | bc1q38rjul… | 0.00410000 | $281.14 | כן |
| 11 | 2026-06-04 19:18 | A | bc1qvrryy2… | 0.00639778 | $407.83 | לא (~0.0061) |
רק שניים מתוך אחד-עשר תואמים סכום שנדרש בדיוק. ההחטאות הקרובות (0.00372427, 0.006085, 0.00639778) הן איך שנראים “שלח מקסימום” כולל-עמלה או המרת USD-ל-BTC ברגע השליחה, ולא מישהו שמעתיק סכום מדויק. חלון הזמן של שחקן C (מאי עד נובמבר 2025) ושל שחקן A (פברואר עד יוני 2026) אינם חופפים.
איך הכסף עוזב
כל תשלום נגרף החוצה במהירות. הזמן החציוני מתשלום לגריפה הוא כשעתיים וחצי; המהיר ביותר היה אחת-עשרה דקות. כל גריפה היא עסקה בעלת קלט-יחיד, תשלום אחד נכנס והוצאה אחת יוצאת, ללא איחוד, ולכן ניתוח בעלות-קלט-משותף על פני כל שלוש-עשרה הכתובות מחזיר אפס אשכולות. האם זה משקף אבטחה תפעולית מכוונת או פשוט את העובדה ששום ארנק מעולם לא החזיק שני תשלומים לאיחוד, לא ניתן לומר מאחת-עשרה נקודות נתונים.
שני השחקנים שקיבלו תשלום מתנהגים אז בדרכים הפוכות, וההבדל חשוב לכל מי שרוצה להמשיך במעקב. תמורתו של שחקן A זורמת בתוך קפיצה אחת אל תשתית משמורת (custodial) בנפח גבוה, ארנקים עם עשרות או מאות אלפי עסקאות לאורך חייהם, מסוג השירות שסביר שמחזיק רשומות של הכר-את-הלקוח (KYC). שחקן C שולח רק אל כתובות חדשות, לשימוש-יחיד, שמעולם לא נעשה בהן שימוש חוזר. כך ששחקן A הותיר עקבה קצרה, באורך צו-בית-דין, אל צוואר-בקבוק נושא-KYC, בעוד שחקן C לא. אף כתובת פדיון אינה משותפת בין השניים, ואף כתובת במורד הזרם אינה מגיעה לשניהם, כך שהשרשרת אינה ממזגת אותם; הקשר בין ערכת שחקן A לבין שחקן E נשען על טקסט הפתק ועל ארנק משותף שפורסם, לא על זרימת כסף. (כתובות השירות הספציפיות במורד הזרם הן צירי חקירה ולא מחווני רשימת-חסימה, והכתובות בנפח גבוה שייכות לשירותים משותפים, ולכן אינן משוחזרות כאן כדי להימנע מהכפשת גורם משמורת בפעילותו של מפעיל.)
רגל ה-Ethereum
כתובת ה-Ethereum של שחקן E, שפורסמה ב-0.1 ETH, בעלת היסטוריה שאינה תואמת את הדרישה כלל. כל חייה המהותיים הם התפרצות יחידה בת 108 דקות ב-2026-07-27, חמישה שבועות לאחר המפקד: כ-3.97 ETH מגיע ואז עוזב במנות נקיות של 0.5 ו-1.0 ETH לשבעה צדדים נגדיים, פעמיים. שום דבר בה אינו תשלום קורבן של 0.1 ETH, ואף פתק Elasticsearch אינו דורש משהו קרוב ל-~4 ETH שזזו. אנו מעריכים כי סביר שמדובר בקפיצת מעבר או שכבוב (layering), תשתית משויכת-לתוקף ולא ראיה להכנסת כופר. ארבע-עשרה העברות האבק (dust) אליה הן ספאם הרעלת-כתובות של צד שלישי ואינן אומרות דבר על המפעיל.
שבעה שבועות לאחר מכן
הדבר השימושי ביותר במפקד הוא לערוך אותו פעמיים. ב-2026-08-07 גיששנו מחדש דגם אקראי דטרמיניסטי של 2,500 מתוך 5,073 המארחים שנדרש עבורם כופר, מול קו-הבסיס של המפקד:
| תוצאה | מארחים | חלק | משמעות |
|---|---|---|---|
| עדיין עם פתק | 1,309 | 52.4% | עדיין פתוח, עדיין מחוק, הפתק עדיין נוכח |
| לא נגיש | 829 | 33.2% | אין HTTP: הוצא משירות, חסום בחומת-אש, או מוען מחדש |
| הפתק נעלם | 332 | 13.3% | המארח עונה, אך הפתק כבר אינו שם |
| אימות מופעל | 30 | 1.2% | האימות נאכף כעת |
רק 1.2% מהקורבנות סגרו את הדלת שאפשרה לתקרית לקרות. יותר ממחצית לא שינו דבר כלל בשבעה שבועות. אפילו קריאה נדיבה של כל מארח “לא נגיש” כתיקון-דרך-הוצאה-משירות מעמידה את התקרה על כשליש, ו”לא נגיש” מכסה גם מארחים שרק עברו כתובת או שתקלת רשת חולפת הסתירה.
קבוצה אחת שוברת את הדפוס לחלוטין. מתוך 114 מארחים מקסיקניים שנדגמו, 113 חיים כאשר אינדקס הכופר נעלם ואף אחד עדיין אינו נושא פתק, מול קו-בסיס שבו קורבנות מקסיקו רוכזו כמעט לחלוטין בספק יחיד (Baja Datacenter, 231 מארחים). אף מדינה אחרת אינה נראית כך. ניקוי המוני מצד המארח או המפעיל של מצבת ספק אחד הוא ההסבר החסכוני ביותר, אך הנתונים הנוכחיים אינם יכולים לשלול שחקן שני שמחק את הפתקים, ובכל מקרה המארחים נותרים נגישים ולא-מאומתים. סומן למעקב.
סימני פריצה
הארנקים והקודים נכתבו בידי התוקף ונישאים חיים כדי שמגנים יוכלו להשוות ולעקוב אחריהם. דומייני הקשר והקישורים מנוטרלים.
Bitcoin (שחקן A):
bc1q38rjul6gdamfflf6p4ukz0ymtvfgfv2j9saf6r (3,705 victims)
bc1qvrryy2vsq4jekejs8z2elkt3sxmhlyad06ymvr (25 victims)
bc1qzkk2cld734njkds9263udc2wqgncp9e3th66ps
bc1qu8t03mv2qwjv56gry2ft0qes0xwqhddjhsvkfl (shared with Actor E)
Bitcoin (שחקן B, “sharebot”):
bc1quwlw8djc7hfamf3qpspma34uh9dr6w4kudfu8p bc1qvrte050fngjlrmcuptz33259kw3wktkd3uv5hv
bc1qquzg5dg5yfqxlc0fy6pemcwa2xg5mw3l7l2gc4 bc1qt5cq2mnghwyyfl0pkd3086z9cad0m3hspwgl9t
bc1qqy3uegcgqjjncagjnkqgpplyl3k4a00khek5rs
Bitcoin (שחקן C, “rambler”):
bc1qk2cc4ssl9j3d0xu5ljv0prsfzjdulvgvm4u6e7 bc1q5xj2mvtaupy56fff4dsaxwjxm8ftjzxfhw3ylh
bc1qqmyg9d9uj2fm93fjjjfuw2xrq2fwpr53uhf52d
Bitcoin (שחקן D): 127ZBzXyLJFc7ShMmzkYFDhSiXXSnR8Jfr
Ethereum (שחקן E): 0x3C11Cf2974c3Fb4d7ebBfea711a4A0b26989979D
כתובות קשר (מנוטרלות):
wendy.etabw@gmx[.]com scandal@onionmail[.]org bitwezen@cock[.]li
db-recovery@sharebot[.]net es-recovery@sharebot[.]net
rambler+<id>@onionmail[.]org databaserestore32@onionmail[.]org
קודי שחזור: 0SH7HH1Q72JL (שחקן A, קבוע, לא פר-קורבן), BITWEZEN2026, 841BEACF110F, BCA95C11355F (שחקן B), omoRmq (שחקן D).
קישורים (מנוטרלים): hxxps://tli[.]sh/73x1k (מפנה מחדש לפתק paste[.]sh שמפתח הפענוח שלו יושב בפרגמנט של ה-URL, כך שהתוכן מפוענח בדפדפן והמארח לעולם אינו רואה אותו, מה שהופך בקשת הסרה מבוססת-תוכן לחסרת-טעם), hxxps://cutmyurl[.]com/3caF8EkT (מקצר קישורים מסחרי; ערוץ הניצול-לרעה שלו הוא הנתיב לקישור של שחקן D).
התנהגותי: אשכול Elasticsearch המצטמצם לאינדקס יחיד בשם read_me (מספר מסמכים חציוני של אחד, הפתק עצמו); GET /read_me/_search המחזיר כל אחת מהתבניות שלמעלה.
מה לעשות בנדון
- הציבו אימות לפני Elasticsearch ו-Kibana, ושמרו את יציאת ה-HTTP מחוץ לאינטרנט הציבורי. גרסאות Elasticsearch נוכחיות מגיעות עם אבטחה מופעלת כברירת מחדל; כמעט כל מארח כאן כיבה אותה או קשר אותה לממשק ציבורי. אותה בקרה יחידה סוגרת את כל משטח ההתקפה שתואר לעיל.
- אם נפגעתם, אל תשלמו. המפעיל הדומיננטי אינו יכול להבחין בין הנתונים שלכם לבין של כל אחד אחר, ולפי הראיות כאן, לא שמר עותק מהם. התשלום מממן את הגריפה הבאה ואינו קונה דבר בחזרה. שחזרו מהגיבויים שלכם וסגרו את החשיפה.
- הניחו שאשכול מחוק נקרא לפני שנמחק. הוא ישב פתוח לכל אחד, לא רק לשחקן שבסופו של דבר מחק אותו, אז התייחסו לכל מה שהחזיק כמידע שנחשף וסובבו כל סוד שהיה בו.
- בדקו את המצבה שלכם כפי שתוקף היה עושה.
GET /חיצוני, ללא-אישורים, כנגד נקודות הקצה של Elasticsearch שלכם אומר לכם בבקשה אחת האם הן עונות ללא סיסמה. הריצו אותו מחוץ לרשת שלכם, כי בדיקה פנימית לא תראה את מה שהאינטרנט רואה. - אפסו את ברירות המחדל. שישה זוגות אישורים ידועים מאמתים ב-39 מארחים כאן, אחד מהם מוצר אבטחה. שנו את סיסמאות
elasticו-kibanaוכל ברירת מחדל של ספק, ואשרו איזו הרשאה כל חשבון מחזיק בפועל.
מיפוי MITRE ATT&CK
| טקטיקה | טכניקה |
|---|---|
| Initial Access | T1190 Exploit Public-Facing Application (Elasticsearch פתוח, לא-מאומת); T1078.001 Valid Accounts: Default Accounts (39 מארחי אישורי ברירת מחדל) |
| Impact | T1485 Data Destruction (מחיקת אינדקסים בכמות); T1491.001 Internal Defacement (פתק ה-read_me שהושאר במקום); T1657 Financial Theft (סחיטה) |
הפתקים גם טוענים לחילוץ נתונים (exfiltration) (T1567) ובמקרה של שחקן E, מאיימים בסחיטה מבוססת-דלף (T1657). הראיות אינן תומכות באף אחת מהטענות בדבר עותק שנשמר; ההשמדה אמיתית, החילוץ נטען בלבד.
מתודולוגיה והערות אנליסט
- הטיית התצפית גדולה, ומדדנו אותה. נקודת תצפית ביתית או מקומית כינתה 63% מהמארחים “מתים” שבפועל היו חיים מנקודת תצפית ענן נקייה (7,201 מתוך 11,388; 7,113 מהם פתוחים לרווחה). כל מפקד נכסים-חשופים שאינו מבקר לפי המקום שממנו הוא סורק מונה בחסר בפער ניכר. מפקד זה הוא חד-תצפיתי, מיקום ענן אחד, עם תגי תצפית וחותמת-זמן פר-רשומה, וכל הספירות הן נתונים חד-תצפיתיים.
- פיתיונות מנפחים את ספירת ה”פתוח” הגולמית. קבוצה של צמתים בעלי שמות אוטומטיים עם סכמה משומרת זהה, ומארחים שמזייפים את רשימות האינדקסים שלהם, חייבים להיות מוצאים לפני שמארח פתוח נחשב לקורבן. זה כבר נעשה במספרים שלמעלה.
- דגם הפתקים הוא 2,500 מתוך 5,073 מארחים (49%), נזרע דטרמיניסטית כך שהרצות חוזרות ניתנות-להשוואה. פרופורציות התבניות נושאות שגיאת דגימה, והתבניות הנדירות ביותר (פתק אחד עד שלושה) מבססות שדבר-מה קיים, לא כמה הוא נפוץ.
- הסכומים על-השרשרת הם רצפות. הם מכסים רק את הכתובות שפורסמו בפתקים שקראנו בפועל. פתקים שלא נקראו, מארחים שלא נדגמו וכל כתובת שמעולם לא נצפתה אינם בספירה. כתובות במורד הזרם בנפח גבוה שייכות לשירותים משותפים; רק הסכומים הספציפיים שנשלחו מארנקי הכופר ניתנים-לשיוך לשחקן, וסכומי חייהם של השירותים אינם.
- לקריאה-בלבד לכל אורך הדרך. הפתקים נקראו מאשכולות שכבר נמחקו, ללא-אימות, עם
GET /read_me/_searchלא-מאומת אחד לכל מארח. בדיקת האישורים הייתה שש ברירות מחדל,GET /אחד לכל אחת, מווסתת-קצב, לקריאה-בלבד. שאילתות השרשרת פנו לסיירים ציבוריים בלבד. שום תוכן קורבן לא אוחזר, וה-paste המוצפן בצד-הלקוח שקושר בידי שחקן A לא פוענח. - השפה ההערכתית עוקבת אחר ICD 203, והביטחון משקף את הראיות במערך נתונים זה בלבד. ארגונים ספציפיים שנפגעו, כולל האשכולות בעלי הערך הגבוה בשארית שלא-נדרש-עבורה-כופר, מטופלים במסגרת גילוי אחראי נפרד ואינם מזוהים בשמם.
נתוני המפקד הבסיסיים וניתוח הארנקים זמינים לחוקרים ולמגנים אחרים לפי בקשה. כתבו ל-contact@kinryu.sh עם פתק קצר על מי אתם ולמה אתם זקוקים להם.