הבלוג של שקוף מדיה

סניפט קוד: מניעת גישת מנהל דרך קישור התחברות לפאנל MY-ACCOUNT של WOOCOMMERCE

הגנה מתקדמת לאתרי WooCommerce: חסימת התחברות אדמין דרך /my-account

ניסיונות הפריצה לאתרי וורדפרס בכלל ולאתרים מבוססי ווקומרס בפרט מתגברים מאוד בשנים האחרונות והולכים ונהיים מתוחכמים. אחד מהכלים החשובים להתגוננות הוא שינוי כתובת ההתחברות הדיפולטיבית של וורדפרס. במקום להשתמש בכתובת המוכרת /wp-admin, שינוי ה־URL לכתובת מותאמת אישית מקטין דרמטית את כמות ניסיונות ההתחברות, מפחית עומס על השרת, ומסייע להרחיק תוקפים גם כאשר פרטי ההתחברות דלפו או נפרצו.

אבל מה עושים כשהאתר מבוסס WooCommerce, ושם קיימת תמיד האפשרות להתחבר דרך עמוד /my-account? הרי את הכתובת הזו אי אפשר לשנות בקלות, והיא משמשת את כל לקוחות החנות. שינוי מבנה הקישורים עלול לפגוע בתפקוד האתר ובחוויית המשתמש.

מה לגבי האקרים שכן הצליחו להשיג את פרטי הגישה של משתמש אדמין?

אם מתקפת פישינג או דליפה חיצונית הביאה לחשיפת פרטי משתמש עם הרשאות ניהול, כל תוקף יכול להכניס את הפרטים בטופס ההתחברות של /my-account ולהיכנס כ־Admin – בלי לעבור דרך /wp-admin בכלל.

לכן – הסניפט הבא הוא קריטי.
הוא מונע התחברות של משתמשים בעלי הרשאת Administrator דרך טופס ההתחברות של WooCommerce, כלומר דרך /my-account.

הסניפט הבסיסי – חסימת התחברות אדמין דרך WooCommerce

הוסיפו את הקוד הבא ל־functions.php של ערכת העיצוב הפעילה באתר (או בתבנית הבת):

php


add_filter( 'woocommerce_login_redirect', 'shakuf_block_admin_login_from_wc', 10, 2 );
add_action( 'wp_login', 'shakuf_prevent_admin_login_via_wc', 10, 2 );

function shakuf_prevent_admin_login_via_wc( $user_login, $user ) {
    if ( is_admin() || !defined('WOOCOMMERCE_VERSION') ) return;

    if ( in_array( 'administrator', (array) $user->roles ) ) {
        wp_logout();
        wp_redirect( home_url() ); // מעביר לעמוד הבית – ניתן לשנות לכתובת אחרת
        exit;
    }
}
    

מה הקוד הזה עושה בפועל?

  • אם המשתמש שמנסה להתחבר הוא בעל הרשאות administrator
  • ואם הוא עושה זאת לא דרך wp-admin אלא דרך עמוד רגיל (כמו /my-account)
  • הוא ינותק מיד ויופנה לעמוד הבית או לכתובת לבחירתכם

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

פרקטיקה מתקדמת – הגבלת התחברות לפי כתובת IP

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

php


function shakuf_block_admin_login_from_wc( $redirect, $user ) {
    if ( in_array( 'administrator', (array) $user->roles ) ) {
        $allowed_ip = '123.123.123.123'; // כתובת ה-IP המורשית
        if ( $_SERVER['REMOTE_ADDR'] !== $allowed_ip ) {
            wp_logout();
            wp_die('גישה חסומה – התחברות מנהל מכתובת לא מאושרת.');
        }
    }
    return $redirect;
}
add_filter( 'woocommerce_login_redirect', 'shakuf_block_admin_login_from_wc', 10, 2 );
    

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

לסיכום

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

הטמיעו את אחד הקודים שלעיל – והגנו על אתרכם טוב יותר.

תגיות בכתבה: 

שאלות? התקשרו אלינו או

השאירו פרטים ונשמח לעזור

לקוחותינו היקרים

דדליפט פירמה בעמ
דדליפט פירמה בעמ
02/03/2022
משרד רציני , דואג ללקוחות שלו , מקצוענים. ממליץ
שלי ימין
שלי ימין
27/01/2022
שירות מכל הלב! ישב איתנו על אופטימיזציה לאתר יותר משעה והראה תוצאות!
Haim Melman
Haim Melman
24/11/2021
Shakuf Media made for me an evaluation of modification for an old website. Elad of Shakuf Media was very responsive, dedicated time and attention to provide me with useful information and options for the handling of the website. The interaction with Elad was of great value for me as well a pleasant. Thanks Elad.
Yoga Shala Oranit Laura Naccache
Yoga Shala Oranit Laura Naccache
23/11/2021
אלעד אדיב זמין מהיר פשוט תענוג לעבוד איתו. תמורה משתלמת בהחלט על המחיר שלכם. תודה על הכל אלעד
gadi cygler
gadi cygler
14/11/2021
שירות אדיב ויעיל ומעל הכל מקצועי ברמה הכי גבוהה שנתקלתי ממליץ בחום!!!
MorazWEB בניית אתרים
MorazWEB בניית אתרים
22/07/2021
למרות שאנחנו מתחרים שקוף מדיה ראו בקשה לעזרה שלי בקבוצה בפייסבוק ולא היססו להתחבר אל המחשב שלי בשליטה מרחוק ולתת לי עזרה המלווה בהסברים מלאים ואף יצרו עבורי משהו טכני שהייתי צריך. אם זה השירות כקולגה אני רק יכול לדמיין איך יראה השירות ללקוח. אם היה אפשרות לדרג ב 10 כוכבים במקום ב 5 הייתי עושה את זה בלי להסס.
שרון שנרך
שרון שנרך
27/06/2021
אני עובדת עם שקוף כבר יותר משנה ואני ממליצה בחום! שירות מהיר, מקיף, לבבי ומקצועי שמחה שמצאתי אותם
תמר חבורה
תמר חבורה
08/06/2021
תודה ענקית לאלעד ולצוות שקוף מדיה שפעלו עבורי מעל ומעבר ובשעות לא שעות , כשגוגל השעו לי את החשבון הם נלחמו בשבילי מול שעון הזמן כדי להחזיר את החשבון לפעילות , ישר כוח !