הסבר פשוט על הפרצה GravityForms <= 2.9.1.3 – Unauthenticated Stored Cross-Site Scripting
מה קרה כאן?
במערכת וורדפרס (WordPress), יש תוסף פופולרי בשם Gravity Forms, שנועד ליצירת טפסים באתר.
בגרסאות הישנות שלו (עד 2.9.1.3), יש חולשה שגורמת לכך שהתוסף לא מסנן נכון את המידע שמזינים אליו.
איך ההאקר מנצל את זה?
האקר יכול להכניס קוד זדוני (בדרך כלל קוד JavaScript) לתוך אחד מהשדות של הטופס – במקרה הזה, דרך ה-alt parameter (המשמש לתיאור תמונות). בגלל שהתוסף לא מנקה את המידע כמו שצריך, הקוד נשמר במסד הנתונים של האתר.
מה המשמעות של זה?
בכל פעם שמישהו מבקר בעמוד שמכיל את הנתונים הזדוניים, הדפדפן שלו מבצע את הקוד שההאקר שתל.
מה האקר יכול לעשות עם זה?
- לגנוב מידע של משתמשים – למשל, לגנוב סיסמאות, עוגיות (cookies) או מידע שמוזן לטפסים.
- לגרום למשתמשים להפעיל פעולות מסוכנות – למשל, לגרום למשתמש שמחובר כאדמין ללחוץ על קישור שייתן להאקר שליטה באתר.
- להפיץ וירוסים או נוזקות – אם הקוד שההאקר הכניס מפנה את המשתמשים לאתר אחר שמדביק אותם.
מה מסוכן כאן במיוחד?
- התוקף לא צריך להיות מחובר לאתר בכלל – זה נקרא “Unauthenticated”, כלומר כל אחד יכול לנצל את החולשה בלי הרשאות מיוחדות.
- הקוד נשמר במסד הנתונים – ולכן הוא ממשיך לפעול שוב ושוב, עד שמישהו מוחק אותו.
איך מתקנים את זה?
- לעדכן את התוסף לגרסה החדשה שבה כבר תיקנו את החולשה.
- להשתמש בתוסף אבטחה שמזהה ניסיונות כאלה.
- לבדוק אם כבר יש קוד זדוני באתר ולנקות אותו.
איך למצוא ולנקות קוד זדוני בבסיס הנתונים של וורדפרס שנוצר בגלל הפרצה ב-Gravity Forms?
1. להבין איפה הקוד יכול להימצא
מכיוון שהפרצה מאפשרת להזריק קוד JavaScript זדוני לתוך alt parameter של תמונות בטפסי Gravity Forms, הקוד הזדוני יישמר במסד הנתונים של וורדפרס בתוך אחת מהטבלאות הבאות:
- wp_posts – אם הקוד הזדוני הוזרק לפוסטים, דפים, או תוכן אחר שנשמר באתר.
- wp_postmeta – אם הקוד הוזרק לתוך מטא-נתונים של פוסטים (למשל, תיאור תמונה).
- wp_options – אם התוקף הצליח להזריק קוד לאחת מהאפשרויות שנשמרות עבור Gravity Forms או תוספים אחרים.
- wp_gravityforms_entry_meta – אם הקוד הוזרק לתוך תשובות שנשלחו דרך טפסים.
2. איך למצוא את הקוד הזדוני בבסיס הנתונים
שיטה 1: חיפוש ישיר ב-phpMyAdmin
- היכנס ל-phpMyAdmin (או לכלי ניהול מסד נתונים אחר).
- בחר את בסיס הנתונים של האתר.
- השתמש בשאילתת חיפוש כדי למצוא את הקוד הזדוני.
SELECT * FROM wp_posts WHERE post_content LIKE '%
אשמח לקבל כל שאלה או בקשה או אפילו תגובה לתוכן
אנא הקליטו את הבקשה או שאלה בקול רם וברור
ולא לשכוח בבקשה בהקלטת ההודעה להשאיר פרטים שנוכל לחזור אליכם, מייל או טלפון או מסנג'ר
בבקשה לאשר שימוש במיקרופון להקלטה
שגיאת מיקרופון
בבקשה לאשר הרשאת \ אישור שימוש במיקרופון
0
בבקשה להשאיר את ההודעה בקול רם, לא לשכוח להשאיר פרטים לחזרה אליכם
00:00
איפוס ההקלטה מהתחלה
האם למחוק את ההקלטה ולהתחיל מחדש?
אופססס , משהו השתבש
משהו השתבש , בבקשה לנסות שוב וללחוץ על הכפתור ולהקליט מהתחלה
תודה