זכוכית מגדלת לצד מחשב נייד, המחשה לבדיקת קוד ואיתור ממצאי אבטחה ב-CodeQL 2.27.4
צילום: MJ Duford / Unsplash

CodeQL 2.27.4 מצמצמת התראות שווא ומקשיחה חבילות

GitHub פרסמה ב־4 בנובמבר 2026 את CodeQL 2.27.4, גרסה שמכוונת פחות ליכולות חדשות ויותר לאיכות הסריקה: צמצום התראות שווא, זיהוי מדויק יותר של פעולות חיטוי קלט ותיקון מטא־דאטה של שאילתות אבטחה. במקביל נוספה ל־CLI בדיקה שמונעת מחבילת CodeQL לכלול קבצים שמצביעים מחוץ לתיקיית החבילה באמצעות symbolic links.

מה השתנה בזיהוי חולשות

בשאילתת java/log-injection נוספה הכרה במנגנוני חיטוי ובדיקות guard מספריות נפוצות יותר מתוך JDK,‏ Apache Commons Lang ו־Text,‏ Guava,‏ OWASP Java Encoder ו־Spring Framework. המשמעות היא שקוד שכבר מנקה קלט בדרך תקינה אמור לייצר פחות התרעות מיותרות.

גם שאילתות Path Injection ב־Java וב־Kotlin מזהות כעת בדיקות substring ופעולות החלפה או הסרה של מחרוזות מספריות נוספות. ב־Rust הופחתו false positives בשאילתות העוסקות בהקצאת זיכרון בלתי מבוקרת, Log Injection ורישום טקסט גלוי. ב־C וב־C++ לא תדווח עוד אריתמטיקת מצביעים מכוונת על buffers מסוג std::byte*, ומשתנים שסומנו [[maybe_unused]] לא יסומנו כבלתי מנוצלים.

הקשחה בעת פרסום CodeQL Pack

בעת bundle או publish של חבילה, CodeQL CLI בודקת כעת כל קובץ לאחר פתרון symbolic links. אם היעד נמצא מחוץ לשורש החבילה, הקובץ מושמט ומוצגת אזהרה. זוהי שכבת הגנה חשובה בשרשרת האספקה: היא מצמצמת את הסיכון שחבילה תאסוף בטעות — או במכוון — קובץ שאינו אמור להיות חלק ממנה.

שינוי נוסף נוגע לאוטומציה: אזהרות JVM ושגיאות אתחול נכתבות מעתה ל־standard error ולא ל־standard output. כך הן אינן מזהמות JSON או פלט אחר שמכונות וכלי CI אמורים לנתח.

תיקוני CWE שכדאי להכיר

GitHub הסירה את התג CWE‑730 ממספר שאילתות ReDoS ו־Regex Injection בשפות C#,‏ Java/Kotlin,‏ JavaScript/TypeScript,‏ Python,‏ Ruby ו־Swift. מדובר בתיקון סיווג, לא בהסרת השאילתות עצמן. ארגונים שממפים ממצאים לפי CWE צריכים לבדוק אם דוחות או מדדים פנימיים נשענים על התג הישן.

מה מנהלי AppSec צריכים לעשות

  • להריץ מחדש סריקות במאגרים שסבלו מריבוי false positives ב־Rust, Java או C++ ולבדוק את השינוי בכמות הממצאים.
  • לוודא ש־pipelines המנתחים פלט JSON אינם תלויים באזהרות שנכתבו בעבר ל־stdout.
  • לבדוק חבילות CodeQL פנימיות המשתמשות ב־symbolic links ולוודא שכל היעדים נמצאים בתוך שורש החבילה.
  • לעדכן מיפויי CWE בדשבורדים, SIEM או מערכות ניהול חולשות.

ב־github.com הגרסה נפרסת אוטומטית למשתמשי code scanning. היא צפויה להיכלל גם ב־GitHub Enterprise Server 3.24; משתמשי גרסאות ישנות יותר יכולים לשדרג את CodeQL ידנית.

מקור: GitHub Changelog — CodeQL 2.27.4

תמונה: MJ Duford / Unsplash. דף המקור. התמונה משמשת להמחשה ואינה מעידה על חסות מצד GitHub.

דילוג לתוכן