אם התקנתם וורדפרס עם ההגדרות ברירת המחדל, כמעט בוודאות טבלאות מסד הנתונים שלכם מתחילות ב-wp_. זה לא באג, זו פשוט ברירת המחדל. אבל זה גם אומר שכל סקריפט תקיפה אוטומטי שם בחוץ כבר יודע בדיוק איך הטבלאות שלכם נקראות. שינוי הקידומת הזו הוא צעד קטן שמסיר בשקט מטרה קלה מהאתר שלכם.
זה לא יעצור בעצמו תוקף נחוש. אבל אבטחה היא לא עניין של פתרון קסם אחד. מדובר בערימת מכשולים קטנים עד שהמאמץ הנדרש לפרוץ עולה על התגמול. זה אחד מהמכשולים האלה.
מה הקידומת של הטבלאות בעצם עושה
כל אתר וורדפרס שומר את הנתונים שלו במסד נתונים MySQL, מחולק לטבלאות כמו wp_posts, wp_users ו-wp_options. הקידומת היא פשוט התווית שמוצמדת לתחילת כל שם טבלה. וורדפרס מאפשרת לכם להגדיר זאת בזמן ההתקנה, או לשנות זאת מאוחר יותר אם אתם עובדים על אתר קיים.
מכיוון ש-wp_ היא ברירת המחדל המקורית, זו הדבר הראשון שהרבה סקריפטים של הזרקת SQL מנסים. חלק מהתקיפות נכתבות במיוחד כדי לנחש שמות טבלאות, והן מתחילות עם הנפוצה ביותר. אם הקידומת שלכם היא משהו בלתי צפוי, הניסיונות העיוורים והאוטומטיים האלה נכשלים עוד לפני שהם מתחילים.
למה זה חשוב יותר ממה שהייתם חושבים
תקיפות הזרקת SQL פועלות על ידי הברחת שאילתות זדוניות לתוך שדות טפסים, פרמטרים בכתובת URL, או קלטים אחרים, בתקווה שהאתר יבצע אותן מול מסד הנתונים. הרבה מהתקיפות האלה לא מותאמות במיוחד לאתר שלכם. אלה סקריפטים גנריים שנורים על אלפי התקנות וורדפרס בבת אחת, והם בדרך כלל מניחים את הקידומת ברירת המחדל.
שינוי הקידומת שלכם לא מתקן פרצה בקוד שלכם. מה שהוא כן עושה זה לשבור את ההנחות המובנות בסקריפטי התקיפה המיוצרים בהמון. זה המקבילה הדיגיטלית של להעביר את המפתח הרזרבי מתחת לשטיח הכניסה, שזה בדיוק המקום הראשון שכל פורץ בודק.
איך לשנות את הקידומת של הטבלאות בבטחה
אם אתם מתקינים וורדפרס מחדש, זה קל. במהלך ההתקנה, תראו שדה עבור קידומת הטבלה. החליפו את wp_ במשהו אקראי, כמו wp7x2_ או מחרוזת ייחודית לאתר שלכם. סיימתם.
שינוי הקידומת באתר חי שכבר פועל מורכב יותר כי צריך לעדכן זאת בשני מקומות באופן עקבי:
- כל שם טבלה במסד הנתונים עצמו
- המשתנה $table_prefix בקובץ wp-config.php
- כל נתון מסודר (serialized) או הפניית תוסף שמשתמשת בקידומת הישנה באופן קשיח
הנה התהליך הכללי אם אתם עושים זאת ידנית:
- קחו גיבוי מלא לפני שאתם נוגעים בכל דבר. השלב הזה אינו ניתן למשא ומתן.
- שנו שם לכל טבלה ב-phpMyAdmin (או באמצעות פקודות SQL) מ-wp_tablename ל-newprefix_tablename.
- עדכנו את טבלת wp_options במקומות שבהם option_name מתחיל בקידומת הישנה.
- עדכנו את טבלת wp_usermeta במקומות שבהם meta_key מתחיל בקידומת הישנה.
- ערכו את wp-config.php כדי לשקף את הערך החדש של $table_prefix.
- נקו כל מטמון ובדקו את האתר ביסודיות, כולל הצד הקדמי, כניסת הניהול ותפקוד התוספים.
זו בדיוק סוג המשימה שבה טעות בפקודת SQL אחת יכולה להפיל את כל האתר, ולכן הרבה בעלי אתרים בצדק נמנעים מלעשות את זה ידנית. תוספים כמו Change DB Prefix או iThemes Security יכולים לבצע את זה אוטומטית ובבטחה, ולהריץ את שינוי השמות ועדכוני ההפניות עבורכם בכמה קליקים.
אם אתם על אירוח שנותן לכם כלי מסד נתונים מובנים בפאנל, אתם יכולים גם להשתמש בכלי חיפוש והחלפה כדי לאתר ולעדכן כל הפניה שנשארה לקידומת הישנה ברחבי מסד הנתונים, וזה לרוב השלב שאנשים שוכחים והסיבה ששינוי קידומת שובר אתר.
מה זה לא מגן מפניו
כדאי להיות כנים לגבי הגבולות כאן. שינוי קידומת הטבלאות לא עושה כלום נגד:
- סיסמאות חלשות או תקיפות credential stuffing
- תוספים מיושנים עם פרצות ידועות
- ניסיונות פישינג שמכוונים לחשבון הניהול שלכם
- תקיפה ממוקדת ומיומנת, שבה מישהו באמת מסתכל על האתר הספציפי שלכם
תחשבו על זה כהסרת פרי נמוך התלוי, לא בניית חומה. זה עובד הכי טוב לצד הרגלים נוספים, כמו לשמור על תוכנה מעודכנת, שימוש בסיסמאות חזקות וייחודיות, והפעלת אימות דו-שלבי בהתחברות לוורדפרס. כיסינו גם ניצחונות מהירים נוספים בלמה רוב האתרים צריכים לבטל את XML-RPC, שעוקב אחרי אותה לוגיקה: להסיר מטרות ברירת מחדל שתקיפות אוטומטיות מסתמכות עליהן.
מילה על גיבויים לפני שנוגעים במסד הנתונים
בכל פעם שאתם עורכים טבלאות מסד נתונים ישירות, יש סיכון אמיתי לשבור משהו, גם כשתוסף עושה את העבודה הקשה. לפני שמתחילים, ודאו שיש לכם גיבוי עדכני שניתן לשחזור. אם משהו משתבש באמצע התהליך, אתם רוצים להיות מסוגלים לחזור אחורה תוך דקות, לא לבזבז אחר צהריים מלחיץ בניסיון להבין מה קרה. אירוח מנוהל שמריץ גיבויים אוטומטיים ברקע נותן לכם את רשת הביטחון הזו בלי מאמץ נוסף. ראו איך גיבויים ושחזורים אוטומטיים עובדים אם אתם רוצים רענון על מה שהגדרת גיבוי טובה צריכה לכלול.
איפה זה משתלב בשגרת האבטחה הרחבה יותר שלכם
שינוי קידומת הטבלאות הוא משימה מסוג "עשו את זה פעם אחת ותשכחו ממנה". תעשו את זה פעם אחת, תוודאו שזה עבד, ותמשיכו הלאה. זה משתלב באופן טבעי עם בדיקה תקופתית של הגדרות אבטחה אחרות שלכם, כמו הגנות התחברות, עדכוני תוספים והרשאות קבצים. אם לא עברתם על הכל בזמן האחרון, רשימת בדיקת האבטחה הרבעונית שלנו לוורדפרס היא מקום טוב לבנות סביבו את הבדיקה הזו.
בסביבת אירוח מנוהל, חלק מהתחזוקה הזו ברמת מסד הנתונים אפשר לטפל בה דרך כלים מובנים במקום עריכת SQL ידנית, מה שמקטין את הסיכוי שטעות הקלדה תפיל את האתר. בכל מקרה, העיקרון הבסיסי נשאר אותו הדבר: שינויים קטנים ומחושבים בהגדרה שלכם גורמים לתקיפות אוטומטיות להיתקל בקיר במקום למצוא דרך קלה פנימה.
לסיכום
שינוי קידומת הטבלאות בוורדפרס לוקח בערך עשרים דקות וגיבוי מוצק. זה לא יעצור כל תוקף, אבל זה ישקט חלק גדול מהרעש האוטומטי שפוגע באתרי וורדפרס כל יום. בשילוב עם שיטות אבטחת וורדפרס מומלצות נוספות, כמו אימות חזק ועדכונים סדירים, זו עוד שכבה שהופכת את האתר שלכם למטרה פחות אטרקטיבית.