ההאקרים ממלאים פרויקטים ב‑GitHub שמסתירים בתוכם קוד זדוני.
קיבר-פשענים מסתירים קוד זדוני באמצעות תווים “בלתי נראים” של יוניקוד
מחקרים חדשים מ-Aikido Security הראו שבתחילת מרץ הופיעו ב-GitHub 151 פרויקטים המכילים קוד סיירה מוסתר. חבילות מזיקות משתמשות בתווי יוניקוד שנראים לאדם כמרווחים או שורות ריקות, אך בעת הרצת JavaScript רגילה הם מתורגמים לקוד בינארי מבצעי ונכנסים לפונקציה `eval()`.
איך מתקיימת ההתקפה
1. שמות הספריות
החבילות נקראות כמו פתרונות מסחריים מוכרים (למשל, “React” או “Node.js”). זה גורם למפתחים לחשוב בטעות שהן בטוחות ולהכניס אותן לפרויקטים שלהם.
2. קוד “קריא” + חלקים מוסתרים
רוב הקוד נראה כקוד רגיל וקל לקריאה. בתוך הקוד יש בלוקים מלאים בתווים “בלתי נראים”. בעת צפייה ידנית הם נעלמים, אך בעת הריצה הופכים לפעילים.
3. מאגרי בדיקה
חבילות מזיקות אלו נמצאו לא רק ב-GitHub אלא גם ב-NPM, Open VSX ובשוק Visual Studio Code.
למה קשה לזהות אותן
- השינויים בפרויקטים נראים רגילים: עדכון גרסה, תיקוני באגים, ריפקטורינג.
- לפי מומחים, הפושעים משתמשים במודלים גדולים של בינה מלאכותית כדי לאוטומט את זיוף הקוד. זה מאפשר להכין במהירות מעל 150 פרויקטים ללא עבודה ידנית.
היסטוריה של התווים
תווי יוניקוד המייצגים אותיות לטיניות הוספו למערכת לפני עשורים. מאז 2024 הם משמשים על ידי האקרים להסתיר בקשות זדוניות ל-чат‑בוטים וקוד במאגרי קוד. כלים סטטיים מסורתיים אינם מזהים אותם; רק בעת הרצת JavaScript, דיקטורים קטנים חושפים את הקוד הבינארי האמיתי.
מה לעשות למפתחים
1. בדקו תלויות – לפני חיבור ספריות חיצוניות, בחנו בקפידה את קוד המקור ואת היסטוריית השינויים שלהן.
2. בדיקות אוטומטיות – השתמשו בלינטורים, סריקות לזיהוי “תווים בלתי נראים” וכלי אנליזה דינמית.
3. עדכנו – שמרו על כך שהחבילות לא יימחקו לאחר הורדה; זה עשוי להעיד על איום מוסתר.
הסתכלות לעתיד
אם ההשערות לגבי שימוש ב-AI בתרחיש הזה יתבררו נכונות, יהיה קשה יותר לגלות ולתקן התקפות כאלה. עם זאת, גישה מודעת לבדיקת קוד מקור ותלויות נשארת הגנה הטובה ביותר מפני איומים דומים.
תגובות (0)
שתפו את דעתכם — אנא היו מנומסים והישארו בנושא.
התחברו כדי להגיב