PHP2Shell: שתי פגיעויות קריטיות ב-PHP מאפשרות הרצת קוד בשרתי אינטרנט ללא אימות

ב-21 באוקטובר 2026 פרסם פרויקט PHP גרסאות חירום 8.5.12, ‏8.4.27, ‏8.3.36 ו-8.2.35 לתיקון CVE-2026-109618 ו-CVE-2026-109619, שתי פגיעויות זיכרון המאפשרות לתוקף ללא הרשאות להריץ קוד באמצעות בקשת HTTP מעוצבת. ‏CERT-FR פרסם התרעה: יש לעדכן כל התקנת PHP המשרתת תעבורת אינטרנט, כולל ענפי 7.x ו-8.0–8.1 הישנים.

מה קרה

ב-21 באוקטובר 2026 פרסם פרויקט PHP עדכון אבטחה קריטי, PHP 8.5.12, ‏8.4.27, ‏8.3.36 ו-8.2.35, הסוגר שתי פגיעויות להרצת קוד מרחוק שכונו PHP2Shell, כל אחת בדירוג 9.2 לפי CVSS 4.0. באותו יום פרסם CERT-FR את ההתרעה CERTFR-2026-ALE-014. ‏CVE-2026-109618 נובעת מהטיפול במחסור בזיכרון: בקשה עלולה להיקטע כשהנתונים הפנימיים שלה מאותחלים רק בחלקם, ושלב הניקוי משתמש לאחר מכן בנתונים הלא תקינים. בקשות multipart גדולות במיוחד הן אחת הדרכים להפעיל אותה. ‏CVE-2026-109619 היא שימוש בזיכרון משוחרר: מצב שהשאירה בקשה אחת שורד בתהליך העובד ומשמש בקשה מאוחרת יותר.

מי מושפע

לפי php.net, כל התקנה המשרתת בקשות אינטרנט מושפעת: PHP-FPM, ‏Apache עם mod_php, ‏php-cgi, ‏FrankenPHP ו-LiteSpeed. לפי הודעות צוות PHP, הרצת קוד מלאה ללא אימות הודגמה מול mod_php בתצורת ברירת המחדל, ובפגיעות השנייה גם מול FPM. ‏CERT-FR מונה כפגיעות את כל גרסאות 5.x, ‏6.x, ‏7.x, ‏8.0 ו-8.1; באופן חריג פרסם צוות PHP תיקוני קוד מקור מינימליים לענפים 7.4, ‏8.0 ו-8.1, שאינם נתמכים עוד. בזמן הכתיבה לא דיווחו מקורות רשמיים על ניצול פעיל; לפי ZATAZ, הדגמות מופצות בפורומים. ‏WordPress, ‏Drupal, ‏Joomla ויישומים פנימיים פועלים כולם על PHP.

מה לעשות עכשיו

  1. מפו את גרסאות ה-PHP בכל שרת ומכולה: php -v, ובדקו את הגרסה שבה משתמש בפועל שרת האינטרנט (מאגר FPM, מודול Apache).
  2. עדכנו ל-8.2.35, ‏8.3.36, ‏8.4.27 או 8.5.12, או התקינו את החבילות המתוקנות של ההפצה (apt update && apt upgrade, dnf upgrade 'php*'), ולאחר מכן הפעילו מחדש את PHP-FPM או Apache כדי שלא יישאר תהליך ישן.
  3. אם אי אפשר לעדכן היום: הגדירו session.upload_progress.enabled = Off בקובץ php.ini, כהמלצת CERT-FR, ואת fatal_error_backtraces ל-Off; צוות PHP מזהיר שהגדרות אלה אינן חוסמות את כל נתיבי התקיפה.
  4. בגרסאות 7.4 עד 8.1: החילו מיד את התיקונים המוסבים או את תיקוני הספק, ותכננו מעבר לענף נתמך (גם 8.2 מסתיים ב-31 בדצמבר 2026).
  5. עקבו אחר היומנים: קריסות של תהליכי PHP, שגיאות מחסור בזיכרון וקבצים לא צפויים בתיקיות האתר.

הדעה שלנו

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

מקורות

איך אנחנו בוחרים, מאמתים וכותבים את הניתוחים שלנו ←

האם השרת שלכם חשוף? הריצו בדיקה חינמית — מידע ציבורי בלבד, ללא חדירה:

בדיקת שרת בדיקת אתר

חוששים שהשרתים שלכם חשופים? הצוות שלנו בודק, מעדכן ומנטר תשתיות Linux וענן 24/7.

דברו עם מומחה שירותי ניהול השרתים שלנו ←