11 מנות זדוניות התגלו ב- PyPI

לפני מספר ימים, הוכרז כי זוהו 11 חבילות המכילות קוד זדוני בספריית PyPI (אינדקס החבילות של Python).

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

החבילות שהתגלו הן הבאות:

  • חבילה חשובה (6305 הורדות) ה חשוב-חבילה (12897): חבילות אלה ליצור חיבור לשרת חיצוני במסווה של חיבור ל-pypi.python.org כדי לספק גישת מעטפת למערכת (קליפה הפוכה) והשתמש בתוכנית trevorc2 כדי להסתיר את ערוץ התקשורת.
  • pptest (10001) ו ipboards (946): השתמש ב-DNS כערוץ תקשורת להעברת מידע על המערכת (בחבילה הראשונה, שם המארח, ספריית העבודה, IP פנימי וחיצוני, בשנייה, שם המשתמש ושם המארח).
  • ינשוף (3285), DiscordSafety (557) y yiffparty (1859) - זהה את אסימון השירות של Discord במערכת ושלח אותו למארח חיצוני.
  • trrfab (287): שולח את המזהה, שם המארח והתוכן של / etc / passwd, / etc / hosts, / הביתה למארח חיצוני.
  • 10 סנט 10 (490) - נוצר חיבור מעטפת הפוך למארח חיצוני.
    yandex-yt (4183): הראה הודעה על המערכת שנפרצה והועברה לדף עם מידע נוסף על פעולות נוספות, שהונפקה דרך nda.ya.ru (api.ya.cc).

לכן, מוזכר כי יש להקדיש תשומת לב מיוחדת לשיטת הגישה למארחים חיצוניים המשמשים בחבילות importantpackage ו-important-package, המשתמשות ברשת אספקת התוכן Fastly המשמשת בקטלוג PyPI כדי להסתיר את פעילותן.

למעשה, הבקשות נשלחו לשרת pypi.python.org (כולל ציון השם של python.org ב-SNI בתוך בקשת ה-HTTPS), אך שם השרת שנשלט על ידי התוקף נקבע בכותרת HTTP "מארח ». רשת אספקת התוכן שלחה בקשה דומה לשרת התוקף, תוך שימוש בפרמטרים של חיבור ה-TLS אל pypi.python.org בעת העברת נתונים.

התשתית של PyPI מופעלת על ידי רשת אספקת התוכן Fastly, המשתמשת בפרוקסי שקוף של Varnish כדי לאחסן בקשות אופייניות במטמון ומשתמשת בעיבוד אישורי TLS ברמת CDN, במקום בשרתי קצה, כדי להעביר בקשות HTTPS דרך הפרוקסי. ללא קשר למארח היעד, הבקשות נשלחות לפרוקסי, שמזהה את המארח הרצוי על ידי כותרת "Host" של HTTP, ושמות מארחי הדומיין קשורים לכתובות IP אופייניות של מאזן עומסים של CDN הנמצאות בכל לקוחות Fastly.

שרת התוקפים רשום גם ב-CDN Fastly , המציע תוכניות חינמיות ואף מאפשר רישום אנונימי. ראוי לציין כי סכימה דומה משמשת לשליחת בקשות לקורבן כאשר נוצר "shell reverse", אך יוזם על ידי המארח של התוקף. מבחוץ, האינטראקציה עם שרת התוקף נראית כהפעלה לגיטימית עם ספריית PyPI, מוצפנת באמצעות תעודת PyPI TLS. טכניקה דומה, המכונה "domain fronting", שימשה בעבר להסתרה פעילה של שם המארח על ידי עקיפת בלוקים. זה כלל שימוש באפשרות HTTPS המסופקת על ידי חלק מ-CDNs, ציון המארח הדמה ב-SNI, והעברת שם המארח המבוקש בכותרת המארח של HTTP בתוך הפעלה של TLS.

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

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

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


הוסף כמקור מועדף בגוגל