התקנת חבילות קוד הפכה למלכודת שקטה. מתקפות שרשרת אספקה כבר מזמן לא ממתינות שהקוד שלכם יעלה לסביבת הייצור כדי לגנוב מפתחות וסודות. לפי GitHub, תוקפים שואבים כיום אישורי גישה ישירות מתוך שרתי הבנייה בענן או מתחנות העבודה של מפתחים, עוד לפני שהקוד של החבילה עצמה בכלל מתחיל לפעול. אתמול, 20 באוקטובר 2026, GitHub הכריזה על השקת Package Firewall בגרסת Public Preview כדי לעצור את הנזק בדיוק ברגע הזה.
מי שמריץ פקודת התקנה עיוורת מסתכן בחשיפת כל המפתחות של הארגון.
מחסום ישיר בעת ההתקנה
חומת האש החדשה מתפקדת כפרוקסי יזום בין סביבות הריצה המקומיות או שרתי הענן לבין מאגרי החבילות הציבוריים. במקום שרצי Actions או סוכני קידוד אוטונומיים יפנו ישירות לרשת הפתוחה, כל בקשת רשת מנותבת דרך השער של GitHub. המערכת בודקת הן את בקשות המטא-דאטה לקבלת רשימות החבילות והן את קובצי ההורדה עצמם מול מאגר האבטחה של החברה, במטרה לחסום נוזקות לפני שהן נוחתות בתוך צינור ה-CI/CD שלכם.
חומת האש של החבילות יושבת בין נקודות קצה כמו רצי Actions או סוכני קידוד לבין מאגרי החבילות במעלה הזרם, ובודקת הן בקשות מטא-דאטה והן הורדות חבילות לאיתור סימנים לפעילות זדונית.מתוך הודעת העדכון של GitHub
תקופת צינון ואישורי חריגים
מנהלי ארגונים מקבלים לוח בקרה שמאפשר להגדיר פוליסות אבטחה מותאמות אישית לכלל הארגון. המערכת סורקת בקשות מול GitHub Advisory Database לאיתור נוזקות מוכרות או התרעות פגיעות פעילות, ומבצעת בדיקות שרשרת אספקה מתקדמות כמו אימות חתימות ובלימת ניסיונות לשנמוך אישורים (attestation downgrades). בנוסף, מנהלים יכולים לקבוע תקופת צינון (cooldown period) מוגדרת מראש, שמונעת הורדה אוטומטית של חבילות שפורסמו ברשת זה עתה.
אם חבילה תקינה נחסמת בטעות ומעכבת את העבודה, מפתחים לא נתקעים מול קיר אטום. לפי החברה, המערכת כוללת מנגנון מובנה להגשת בקשות חריג שפועל בדומה לכלים של GitHub Advanced Security, כך שהפיירוול עוצר ספריות בעת ההתקנה בלי לחסום מפתחים לחלוטין.
במקום מוצר ייעודי חיצוני, GitHub מציעה ללקוחותיה לחסום את ההתקפה ישירות מתוך הפלטפורמה שבה הקוד שלהם כבר יושב.
התמחור שיגיע בסוף הבטא
בשלב התצוגה המקדימה הנוכחי, השימוש בפיירוול ניתן ללא עלות נוספת. עם זאת, בהודעת ההשקה נכתב מפורשות כי כאשר המוצר יגיע לזמינות מלאה (General Availability), המודל ישתנה לחיוב מבוסס צריכה בפועל (metered usage), בדיוק כמו תשלום על דקות ריצה של שרתי Actions. לא הייתי ממהר לבנות על החינמיות הזאת לאורך זמן: מודל כזה עלול להקפיץ במפתיע את העלויות של צוותים שמריצים עשרות בילדים ביום, לעומת מנויים שנתיים קבועים שחברות רגילות לשלם. המחיר המדויק לכל בקשה או מגה-בייט של תעבורה עדיין לא פורסם, וזה בדרך כלל אומר שכדאי להתכונן להוצאה נוספת.
מישהו יצטרך לשלם על כל משיכת חבילה.
| מאפיין | בגרסת Public Preview (היום) | בהשקה מלאה (GA) |
|---|---|---|
| תמחור וחיוב | ללא עלות נוספת | תשלום לפי צריכה (Metered billing) |
| תמיכה במערכות חבילות | npm בלבד | לא פורסם |
| זכאות לשימוש | GitHub Enterprise Cloud (תצוגה מקדימה) | לא פורסם |
| מנגנון אישור חריגים | זמין דרך ממשק האבטחה | לא פורסם |
רק npm ורק באנטרפרייז
ההודעה הרשמית מציבה שתי מגבלות טכניות בולטות שחשוב להכיר לפני שמתכננים פריסה רחבה. ראשית, הפיירוול תומך כרגע בחבילות npm בלבד. שפות פיתוח פופולריות אחרות אינן נתמכות, כך שפרויקטים שמסתמכים על מנהלי חבילות אחרים לא יכולים ליהנות מההגנה הזאת בשלב הנוכחי.
שנית, הגישה לשירות חסומה לחלוטין עבור מנויי Team רגילים או פרויקטים ציבוריים. לפי דוקומנטציית המוצר של GitHub, היכולת פתוחה כעת אך ורק ללקוחות GitHub Enterprise Cloud, כולל ארגונים העושים שימוש באפשרות שמירת הנתונים המקומית (data residency). מי שמריץ שרתי GitHub פנימיים בהתקנה עצמאית נשאר בחוץ.
איך לבדוק בלי להסתכן
אם הארגון שלכם מחזיק ברישיון המתאים ומפתח ספריות צד-לקוח או שירותי Node.js, כדאי להתנהל בזהירות. במקום לחבר את כל צינורות הבנייה בבת אחת ולהסתכן בהשבתת צוותי הפיתוח, הגדירו תחילה סביבת בדיקה מבודדת אחת בלבד מול הפרוקסי החדש.
התחילו עם תקופת צינון קצרה ושמרנית של שעות בודדות, כדי לוודא שעדכוני תלויות שגרתיים לא נשברים בגלל כללי האכיפה. כמו כן, בדקו האם בדיקת המטא-דאטה בזמן אמת מוסיפה השהיה משמעותית לזמני ההתקנה בשרתי ה-CI שלכם. רק אחרי שתוודאו שזרימת העבודה יציבה ושהחריגים מאושרים במהירות, תוכלו להחליט אם המנגנון הזה שווה את התשלום שיגיע בהמשך. בינתיים, רוב המפתחים ימשיכו להוריד חבילות ישר מהרשת ולקוות לטוב.
מקורות
- GitHub package firewall in public previewhttps://github.blog/changelog/2026-10-20-github-package-firewall-in-public-preview
- Dependabot alerts REST API now includes dependency versions - GitHub Changeloghttps://github.blog/changelog/2026-10-20-dependabot-alerts-rest-api-now-includes-dependency-versions
- Dependabot now supports npm 12, pnpm 11 and 12, and Bun 1.4 - GitHub Changeloghttps://github.blog/changelog/2026-10-20-dependabot-now-supports-npm-12-pnpm-11-and-12-and-bun-1-4
- npm staged publishing now supports creating new packages - GitHub Changeloghttps://github.blog/changelog/2026-10-02-npm-staged-publishing-now-supports-creating-new-packages
- Protecting endpoints with package firewallhttps://docs.github.com/enterprise-cloud@latest/code-security/how-tos/secure-your-supply-chain/secure-your-dependencies/protecting-endpoints-with-package-firewall
- CI/CDhttps://weba.co.il/glossary/ci-cd/
הידיעה נכתבה מהמקורות שלמעלה בתאריך הפרסום, וכל טענה בה נבדקה מולם. מצאתם טעות? כתבו.