CodeariaAcademy
מאגר GitHubקומיט החודשפיתוחאוטומציה

PHP2Shell Checker

1.4k

בדיקה חינמית של OpenAI: לפי כתובת האתר היא אומרת אם רצה עליו גרסת PHP עם פרצות PHP2Shell ‏(CVE-2026-109618 ו-CVE-2026-109619). היא קוראת רק את כותרות התשובה ולא תוקפת את האתר. מופעלת בפקודה אחת או כמיומנות של Codex. רישיון Apache-2.0.

לא הרצנו בעצמנו: התיאור לפי התיעוד והמאגר.

במספרים

פרצות PHP קריטיות: הרצת קוד בלי התחברות
הגרסה המתוקנת הנמוכה ביותר (ואחריה 8.3.36, ‏8.4.27, ‏8.5.12)
כוכבים ב-GitHub נכון ל-24.10.2026, שלושה ימים אחרי היציאה

מה זה

ב-21 באוקטובר צוות PHP הוציא עדכון דחוף: שתי פרצות קריטיות מאפשרות להריץ קוד זר על השרת בלי שום התחברות. כל התקנת PHP שעונה לבקשות ווב בסיכון, כלומר גם אתרים על WordPress, ‏Drupal, ‏Joomla וכל מערכת אחרת על PHP. הסיכון הגבוה ביותר הוא ב-Apache עם mod_php, שם המתקפה פועלת עוד לפני שהקוד של האתר עצמו מתחיל לרוץ.

הגרסאות המתוקנות הן PHP 8.5.12, ‏8.4.27, ‏8.3.36 ו-8.2.35. כל מה שמתחת צריך עדכון. PHP 8.1 ומטה כבר לא מקבלות עדכונים מצוות PHP: רק תיקונים מהאחסון או מההפצה, אחרת צריך לעבור לגרסה נתמכת.

OpenAI פרסמה כלי קטן שבודק את זה מבחוץ. נותנים לו כתובת אתר, הוא שולח בקשה רגילה אחת וקורא את הכותרות X-Powered-By ו-Server, שבהן שרתים רבים מדווחים על גרסת ה-PHP. יש שלוש תשובות: ‏OK, ‏POTENTIALLY VULNERABLE (הגרסה בטווח המסוכן) או UNKNOWN (הגרסה לא נראית). הכלי לא שולח אקספלויטים.

איך זה בנוי

Проверка одной командой
צריך Node.js מותקן. מורידים את phpcheck.js מהמאגר ומריצים node phpcheck.js "https://your-site.com". לסקריפטים יש דגל --json עם שדה patch_status: ‏ok, ‏potentially_vulnerable או unknown.
Через Codex
אומרים ל-Codex: ‏$skill-installer install both skills from https://github.com/openai/php2shell-checker. אחר כך $phpcheck-url check https://your-site.com אם יש רק כתובת, או $phpcheck-server check the PHP version serving my site אם יש גישה לשרת.
phpcheck-server
בדיקה מתוך השרת מדויקת יותר: המיומנות מוצאת את ה-PHP שבאמת משרת את האתר (ולא את זה של שורת הפקודה) ומשווה את גרסת החבילה להודעות האבטחה של Debian, ‏Ubuntu והפצות אחרות. כך רואים אם תיקון של הספק סגר את הפרצה גם כשמספר הגרסה ישן.
UNKNOWN на WordPress
אם האתר מסתיר את הגרסה, הכלי עונה UNKNOWN. ב-WordPress רואים את הגרסה בניהול: כלים ← בריאות האתר ← מידע ← שרת. משווים לגרסאות המתוקנות למעלה, ואם היא נמוכה יותר, שואלים את האחסון אם התיקון מותקן.

לדעת לפני התקנה

הבדיקה לפי כתובת רואה רק את הגרסה המוצהרת. ‏OK לא מוכיח שהשרת תקין, ו-POTENTIALLY VULNERABLE לא מוכיח פרצה: אחסונים והפצות מתקינים לעיתים קרובות את התיקון בלי לשנות את מספר הגרסה. רק בדיקה בשרת או תשובה מהאחסון מדויקות.
הכלי תמיד מסמן את PHP 5.4–8.1 כמסוכנות, גם עם מספר תיקון גבוה כמו 8.1.35: צוות PHP כבר לא תומך בענפים האלה.
צוות PHP מגדיר הגדרות כמו memory_limit=-1 או session.upload_progress.enabled=0 כפתרון זמני: הן חוסמות נתיבי תקיפה מסוימים אבל לא הופכות את השרת לבטוח. הפתרון המלא היחיד הוא העדכון.
בדקו רק את האתרים שלכם, או אתרים של לקוחות בהסכמתם. ‏OpenAI לא מקבלת שינויי קוד מבחוץ; על באגים אפשר לדווח דרך issues.

תגובות