אבטחת אתרי וורדפרס – אופטימיזציה וטיפים

חיזוק אבטחת אתרי וורדפרס (Hardening WordPress)

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

פגיעות בוורדפרס – WordPress Vulnerabilities

היכן בעצם אתם הכי פגיעים כשמדובר באתר וורדפרס? על פי WP Scan בכל אופן, 52% מכלל הפגיעות שדווחו היה מתוספים של וורדפרס. קבצי הליבה של וורדפרס אחראים ל 37% ותבניות וורדפרס אחראיות ל 11% מכלל הפגיעות. נתון זה אושר גם על ידי Wordfence אשר דיווחו כי 55.9% מכלל הפגיעות מגיעות מתוספי וורדפרס.

פגיעות בוורדפרס על פי מרכיבים

אבטחת אתרי וורדפרס

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

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

1. וודאו כי וורדפרס והתוספים שלה תמיד מעודכנים

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

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

2. השתמשו בשמות משתמש וסיסמאות חזקות

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

3. השתמשו בתוסף אבטחה

ישנם לא מעט תוספי אבטחה לוורדפרס אשר ״יינעלו״ את האתר שלכם ויעזרו לכם למנוע מתקפות Brute-Force. תוספים אלו יאפשר לכם לחסום רשתות זדוניות, לחסום פירצות אבטחה, לחייב בחירת סיסמאות חזקות, לסרוק שינויים בקבצי הליבה של וורדפרס, לראות אילו קבצים השתנו, להטמיע חומת אש (Firewall), לעקוב אחר שינויי DNS ועוד…

הנה מספר תוספי אבטחה שאתם יכולים לבדוק:

4. חסמו בוטים שאינם רצויים (Block Bad Bots)

ישנם תמיד בוטים, תולעים ושטויות אחרות אשר מכות את אתר הוורדפרס שלכם, גונבות רוחב פס ומשבשות את האנליטיקות של האתר שלכם. תוכלו למצוא רשימה של מרביתם בקישור הבא. רוב תוספי האבטחה המוזכרים מעלה עושים עבודה מצויינת בנושא זה. עם זאת, לפעמים תרצו לעשות זאת בעצמכם ברמת השרת. אם תרצו לחסום מספר "User-Agents" במקביל, תוכלו לעשות זאת על ידי הוספת הקוד הבא לקובץ .htaccess:

הנה קוד שניתן להוסיף ל .htaccess על מנת לחסום הרבה מאותם בוטים לא רצויים:

5. תמיד השתמשו בחיבור מאובטח

לא משנה מהיכן אתם מתחברים לשרת שלכם, אתם תמיד צריכים לוודא כי אתם כי החיבור בו אתם משתמשים הוא חיבור מאובטח. רצוי כי תשתמשו בהצפנת SFTP אם חברת האחסון שלכם מאפשרת זאת (או SSH). חברת האחסון בה האתר שלכם מאוחסן צריכה תמיד להיות מאובטחת, כלומר, להשתמש בגירסאות תומכות אך מעודכנות של PHP ו MySQL, לבודד חשבונות ולהשתמש בחומות אש. המנעו מחברות אחסון זולות ושיתופיות מכיוון ואתם יכולים להתקל בבעיות של שרתים עמוסים יתר על המידה וחלוקה של IP's.

6. בדקו הרשאות של תיקיות וקבצים

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

לפי וורדפרס, ההרשאות הבאות הן הנכונות לאתר הוורדפרס שלכם:

  • כל הספריות צריכות להיות 755 או 750
  • כל הקבצים צריכים להיות 644 או 640
  • הקובץ wp-config.php צריך להיות 600

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

7. אבטחת מסד הנתונים

מעבר להרשאות הקבצים שהזכרנו בסעיף הקודם, ניתן ורצוי גם לחזק את האבטחה על מסד הנתונים של אתר הוורדפרס שלכם. הדבר החשוב ביותר הינו לשנות את הקידומת של הטבלאות במסד הנתונים (table prefix). כברירת מחדל וורדפרס משתמשת בקיומת wp_. אם תשנו זאת למשהו כגון sa4vv_יהיה לפולש הרבה יותר קשה לנחש זאת.

ניתן לשנות את קידומת הטבלאות במסך ההתקנה של וורדפרס.

אבטחת מסד הנתונים בוורדפרס

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

על הדרך, הצטרפו לרשימת התפוצה !

8. כבו הודעות שגיאה ב PHP

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

ניתן לעשות זאת על ידי הוספת הקוד הבא לקובץ wp-config.php:

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

9. הסתירו את גירסת הוורדפרס שלכם

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

הסתירו את גירסת הוורדפרס

על מנת להסתיר את גירסת הוורדפרס הוסיפו את הקוד הבא לקובץ functions.php:

ניתן לחילופין להשתמש בקוד הבא:

בנוסף, רצוי כי תמחקו את הקובץ readme.html הנמצא בתיקייה הראשית של התקנת הוורדפרס שלכם מכיוון וגם הוא מכיל את גירסת הוורדפרס שלכם.

10. אבטחו את הקובץ wp-config.php

הקובץ wp-config.php מכיל את כל האינפורמציה הנחוצה לפולשים על מנת לקבל גישה למסד הנתונים שלכם. זהו הקובץ החשוב ביותר בהתקנת הוורדפרס שלכם. אבטחו את הקובץ ומנעו גישה אליו על ידי הוספת ההקוד הבא לקובץ .htaccess:

11. בטלו את הגישה לתיקיית wp-includes

עוד בעיה ידועה היא שבעלי אתרים נוטים להשאיר את הגישה לתיקיית http://www.domain.co.il/wp-includes/ פתוחה. האקרים יכולים לנצל זאת על ידי בדיקה של הקבצים בתיקייה זו ואף לגלות את גירסת הוורדפרס שלכם. הגישה לתיקייה זו צריכה להחזיר הודעת שגיאה 403.

על מנת למנוע גישה לתיקייה זו הוסיפו את הקוד הבא לקובץ .htaccess:

12. בטלו XML-RPC

מגירסת וורדפרס 3.5 ומעלה, אפשרות XML-RPC פתוחה כברירת מחדל. זו מאפשרת לכם להתחבר מרחוק לאתר הוורדפרס שלכם באמצעים שונים. כמו כן היא מאפשרת trackbacks & pingbacks באתר שלכם. לצערינו, האקרים יודעים לנצל זאת על מנת לבצע מתקפות DDoS.

אתם יכולים לבטל XML-RPX על ידי שימוש בתוסף פשוט הנקרא Disable XML-RPC או על ידי הוספת השורות הבאות לקבוץ .htaccess:

13. בטלו JSON Rest API

הפונקציונליות של JSON Rest API הוצגה לראשונה בגירסת וורדפרס 4.4. זאת בשימוש על ידי לא מעט מפתחי תוספים על מנת לקבל מידע באמצעות בקשות GET. נורא נחמד, אך אפשרות זו פותחת את האתר שלכם למתקפות DDoS וצרות אחרות. ניתן בפשטות לבטל פונקציונליות זו על הוספת הקוד הבא לקובץ functions.php:

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

14. בטלו את אפשרות עריכת הקבצים מלוח הבקרה של וורדפרס

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

ביטול אפשרות עריכת קבצים בלוח הבקרה של וורדפרס

על מנת לבטל את האפשרות הוסיפו את השורה הבאה לקובץ wp-config.php :

15. מנעו גישה לתיקיות האתר

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

בנוסף, וודאו כי ישנם קבצי index.php ריקים בתיקיית wp-content/themes ובתיקיית wp-content/plugins על מנת להסתיר את התוכן של תיקיות אלו.

16. בטלו רמזים הקשורים להתחברות משתמשים לאתר

כאשר אתם מנסים להתחבר לאתר וורדפרס עם שם משתמש או סיסמא לא נכונים, וורדפרס תציג הודעה האומרת לכם בין אם שם המשתמש אינו נכון או הסיסמא. זה מרמז לאנשים אשר מנסים לפרוץ לאתר שלכם איזו מהנתונים אינו נכון. ניתן לשנות הודעות אלו להודעה כללית יותר ע״י הוספת הפונקציה הבאה לקובץ functions.php:

17. הגבילו את מספר נסיונות ההתחברות

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

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

18. הסתירו את שם המשתמש שלכם

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

למזלנו ניתן לפתור זאת בקלות על ידי הוספת מעט קוד לאתר. קוד זה יגרום לכך שבמידה ותנסו לגלות את שם המשתמש על ידי הוספת ?author=1 בסוף ה URL, זה לא יציג את שם המשתמש שלכם אלא יבצע הפנייה לדף הבית של אתר הוורדפרס שלכם.

הוסיפו את הקוד הבא לקובץ functions.php:

לסיכום

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

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

רועי יוסף

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

תגובות פייסבוק

{ 7 תגובות… הוסף אחת }
  • רוב 20 באוקטובר 2016, 12:24

    התוסף All In One WP Security & Firewall נחשב לטוב?

  • עופר 19 ביוני 2017, 14:58

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

    האם לדעתך זה יכול לעזור ? האם תוכל לסייע לי ולמי שעוד נפגע בשלבים איך לעשות זאת דרך ה DIRECT ADMIN ? חיפשתי בגוגל וכל המדריכים הם על CPANEL..

    תודה מראש,
    עופר.

    • רועי יוסף 19 ביוני 2017, 15:48

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

      • עופר 19 ביוני 2017, 16:18

        תודה על התגובה המהירה,
        אני לא מקבל הודעת שגיאה אלא מיד מתבצע REDIRECT לעמוד הבית. כאילו נכנסתי מ"בחוץ".

השאירו תגובה

כבר הולכים ? הרשמו לרשימת התפוצה !

הכניסו את האימייל שלכם וקבלו עדכונים חודשיים על מאמרים, טיפים ומדריכים חדשים !

לעולם לא נשתף את הפרטים שלכם...

קראו גם את:
עיצוב התוסף contact form 7 - וורדפרס
משחקים עם עיצוב התוסף Contact Form 7

סגור