האתר בוורדפרס נפרץ ומפנה לאתר אחר? כך מזהים ומנקים, צעד אחר צעד

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

מחשב נייד על שולחן בלילה, עם קוד מטושטש באדום וסגול על המסך וכוס קפה לידו

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

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

הסימנים שמשהו לא בסדר

  • גולשים מדווחים על הפניה לאתר אחר, אבל אתם לא מצליחים לשחזר את זה.
  • ההפניה קורית רק בנייד, רק בכניסה הראשונה, או רק למי שמגיע מגוגל.
  • העיצוב "קופץ" לרגע, למשל אתר בעברית שמתהפך לשמאל-לימין.
  • מופיע מסך מזויף שמבקש לאשר שאתם לא רובוט, או להעתיק ולהריץ פקודה במחשב. זה אף פעם לא אמיתי.
  • Google Search Console מתריע על בעיות אבטחה, או שהדפדפן מציג אזהרה.

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

איך מוצאים את הקוד הזדוני

  • פותחים את האתר בחלון גלישה בסתר, ועדיף גם מהטלפון ברשת סלולרית.
  • פותחים את קוד המקור של העמוד (Ctrl+U) ומחפשים תגיות script שמובילות לדומיינים שאתם לא מכירים, בעיקר ממש לפני הסגירה של head או של body.
  • שמים לב לקוד מוצפן: מחרוזות ארוכות של אותיות ומספרים, base64, או פונקציות כמו eval ו-atob.
  • אם הסקריפט מופיע גם בעמוד ההתחברות (wp-login.php), הוא כנראה לא בתבנית, אלא במקום שנטען לפני וורדפרס.

איפה דלתות אחוריות מתחבאות

  • התיקייה wp-content/mu-plugins: תוספים שנטענים אוטומטית ולא מופיעים ברשימת התוספים הרגילה.
  • הקבצים wp-config.php, .htaccess ו-.user.ini, ובמיוחד ההגדרה auto_prepend_file.
  • קבצי הליבה של וורדפרס ב-wp-includes וב-wp-admin.
  • קבצי PHP בתוך תיקיית התמונות uploads, שבה לא אמורים להיות קבצי קוד בכלל.
  • מסד הנתונים, בעיקר הטבלה wp_options, ומשתמשי מנהל שאתם לא מכירים.
  • מחוץ לוורדפרס: Workers ו-Snippets ב-Cloudflare, משימות Cron בשרת, ואתרים אחרים באותו חשבון אחסון.

לנקות או להתקין מחדש?

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

  1. מגבים את המצב הנוכחי כמו שהוא, לתיעוד.
  2. מייצאים רק תוכן: פוסטים ועמודים (כלים ← ייצוא), ותמונות בלבד מתיקיית uploads.
  3. מתקינים וורדפרס נקי עם מסד נתונים חדש.
  4. מתקינים תוספים ותבנית מהמקור הרשמי, לא מהגיבוי.
  5. לא משחזרים גיבוי מלא של האתר הישן, כי הוא מחזיר את הפריצה.

אחרי הניקוי: שלא יחזור

  • מחליפים את כל הסיסמאות: מנהלי וורדפרס, האחסון, FTP, מסד הנתונים ו-Cloudflare.
  • מחדשים את מפתחות ה-SALT בקובץ wp-config.php, כדי לנתק את כל מי שמחובר.
  • מפעילים אימות דו-שלבי לכל המנהלים.
  • מוחקים תוספים ותבניות שלא בשימוש, ומפעילים עדכונים אוטומטיים.
  • מנקים את המטמון ב-Cloudflare ובכל מערכת מטמון אחרת.
  • בודקים ב-Google Search Console את דוח בעיות האבטחה, ואם יש סימון, מבקשים בדיקה חוזרת.

שאלות נפוצות

אפשר פשוט למחוק את הסקריפט מהעמוד?

אפשר, אבל אם הדלת האחורית שהוסיפה אותו נשארה, הוא יחזור. צריך למצוא את המקור, לא רק את התוצאה.

תוסף אבטחה מספיק כדי לנקות?

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

גוגל יוריד לי את האתר מהתוצאות?

אם גוגל זיהה את הפריצה, תופיע אזהרה ב-Search Console ולפעמים גם בתוצאות. אחרי ניקוי מלא מבקשים שם בדיקה חוזרת, והאזהרה יורדת כשהאתר נמצא נקי.

איך יודעים שהאתר באמת נקי?

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

האתר שלכם מתנהג מוזר? שיחת ייעוץ ללא עלות, ונבדוק אותו יחד.

רוצים שנעשה את זה בשבילכם?

שיחת הייעוץ הראשונה ללא עלות.

לתאם שיחת ייעוץ