اگر فرم ورود به وب سایت وردپرس شما درب ورودی آن باشد، به نظر شما درب پشتی یا backdoor وب سایت چیست؟ همانطور که احتمالا حدس میزنید، درب پشتی راهی برای ورود به محلی بدون استفاده از درب ورودی یا اصلی است. متاسفانه، مهاجمان سایبری اغلب در ایجاد دربهای پشتی برای سایت هایی که به آنها نفوذ کرده اند، موفق هستند. این کار به هکرها اجازه میدهد تا پس از مدتی بازگردند و آسیب بیشتری به سایت وارد کنند.
مهاجمان تا زمانی که درب پشتی از بین برود از آن عبور خواهند کرد
تصور کنید که پس از دوازده ماه، وب سایت شما به قدری موفق شده که به سود دو برابری رسیده است. زمانی که هکرها یک درب پشتی را روی وب سایت شما نصب کنند، ناگهان تمام آن سوددهی متوقف میشود.
تصویر(1)
هنگامی که مهاجمان به "فایل سیستم" یک وب سرور دسترسی پیدا میکنند، قبل از انجام هر کاری که ممکن است شما را از حضور آنها آگاه کند، یک درب پشتی نصب خواهند کرد. به همین دلیل است که هر نشانه ای از خطر (IOC) باید صاحبان سایت را به سمت جستجوی دربهای پشتی سوق دهد.
اگر با دربهای پشتی وبسایت و نحوه جلوگیری یا حذف آنها آشنا نباشید، ممکن است هزینه و زمان زیادی را برای جبران آسیبهای ناشی از این نوع هک، صرف کنید. اگر وبسایت هک شده هویت کسب و کارتان را نشان دهد یا به عنوان یک ابزار کلیدی برای فروش و بازاریابی عمل کند، درآمد از دست رفته را نیز باید در نظر بگیرید.
خبر خوب این است که راهکارهایی برای مقابله با درب پشتی یا backdoor وب سایت وجود دارد.
هیچ صاحب وب سایتی نمی خواهد با یک ترس دائمی مبنی بر هک شدن سایت خود زندگی کند. راهکارهای موثری برای ایمنسازی سایت شما وجود دارند، بنابراین هرگز نباید نگران دربهای پشتی باشید.
درب پشتی یا backdoor وب سایت چیست؟
دربپشتی وبسایت یک نقطه ورود پنهان است که دسترسی نامحدود و غیرمجاز به وبسایت شما را برای هر کسی که از اطلاعات آن اطلاع دارد، فراهم میکند.
ممکن است در تعیین اینکه آیا سایت شما یک درب پشتی دارد یا خیر، دچار مشکل شوید. اگر شخصی سایت شما را توسط یک درب پشتی آلوده کرده باشد، بعید است تا زمانی که به طور فعال از آن سوء استفاده کند، متوجه شوید. اگر یک سایت هک شده را پاکسازی کنید و نقصهای امنیتی آن را اصلاح نمایید و خیلی سریع مجددا هک شود، احتمالاً یک دربپشتی وجود دارد.
تصویر(2)
درب پشتی یا backdoor وب سایت به سختی قابل تشخیص است زیرا آنها منحصر به فرد، کوچک و پنهان هستند. برخی از کدهای درب پشتی و نام فایلها، کاملاً عادی به نظر میرسند و گویی همیشه در سایت شما وجود داشتهاند. مهاجمان، دربهای پشتی خود را استتار میکنند تا برای بهره برداری در آینده، باز بمانند. عملکرد آنها مشابه اسبهای تروجان است و تا زمانی که توسط یک مهاجم فعال شوند، به ظاهر بی ضرر هستند.
درب پشتی چگونه بر وب سایت شما تأثیر میگذارد
درب پشتی یا backdoor وب سایت میتواند پیامدهای بدی برای سایت، کاربران و برند یا سازمان داشته باشد. اگر سایت شما به یک درب پشتی آلوده شود، موارد زیر اتفاق خواهد افتاد:
- Clickjacking (ایجاد صفحه مخرب درون صفحه ای دیگر) و ریدایرکتهای مخرب، بازدیدکنندگان شما را به وبسایتهای مخربی میفرستند که برای کلاهبرداری از آنها یا به خطر انداختن دستگاههایشان، طراحی شدهاند.
- پاپآپهای غیرمجاز در صفحات ظاهر میشوند و از کاربران میخواهند تا نرمافزاری را روی دستگاه خود دانلود کنند که ممکن است به آنها آسیب برساند.
- کاربران سایت، ایمیلهای اسپم از سمت شما دریافت میکنند.
- فایلهای حجیم در سرور خود مشاهده خواهید کرد که از سمت شما ایجاد نشدهاند. مانند سریالهای تلویزیونی و فیلمهای غیرقانونی.
- مجرمان سایبری، اطلاعات حساس را از حسابهای کاربران شما به سرقت می برند و آن را در دارک وب توزیع میکنند.
- تبلیغاتی که روی آنها کنترلی ندارید یا فضاهای تبلیغاتی شما را اشغال کرده اند.
- رتبه نتایج جستجوی سایت شما کاهش مییابد زیرا گوگل سایتتان را هک شده و خطرناک میشناسد.
- کندی و لینکها یا کلمات کلیدی اسپمی که به محتوای شما تزریق میشوند نیز موجب کاهش رتبه نتایج جستجوی سایت خواهند شد.
- گوگل سایت شما را در لیست سیاه قرار میدهد و آن را از تمام نتایج جستجو حذف میکند.
- حساب Google Adwords خود را از دست میدهید.
- شرکت میزبانی وب، حساب شما را معلق کرده و سایت را آفلاین میکند.
اگر شک دارید که مهاجمان سایت شما را مورد حمله قرار دادهاند، فرض را بر این بگذارید که آنها یک درب پشتی ایجاد کرده اند. باید یک جستجوی کامل انجام دهید و هر گونه کد مخرب را در سریع ترین زمان ممکن، از سایت خود حذف کنید.
درب پشتی یا backdoor رایج وب سایت ها
تصویر(3)
سه نوع درب پشتی یا backdoor وب سایت وجود دارد:
- دربهای پشتی ساده
- دربهای پشتی پیچیده
- دربهای پشتی مبتنی بر CMS
دربهای پشتی ساده، قطعه کدهای کوتاهی هستند که عادی به نظر می رسند و شناسایی آنها بسیار دشوار است.
دربهای پشتی پیچیده، شامل کدهای تو در تو و احتمالا چندین فایل هستند که یک کاربر آموزش دیده میتواند آنها را تشخیص دهد. عملکرد این نوع دربهای پشتی، تشخیص آنها را نسبت به دربهای پشتی ساده، آسانتر میکند. هکرها، اغلب کدهای درب پشتی پیچیده را به صورت مبهم مینویسند تا تشخیص آنها را برای اسکنرهای بدافزار دشوار نمایند.
در یک درب پشتی مبتنی بر CMS، هکر کدها را مختص سیستم مدیریت محتوای مورد نظر خود طراحی میکند. این نوع از دربهای پشتی، به طور خاص یک سیستم مدیریت محتوا، مانند وردپرس را هدف قرار میدهند.
چگونه یک درب پشتی یا backdoor وب سایت را یافته و حذف نمایید
برای حذف دستی یک درب پشتی یا backdoor وب سایت، باید کدهای آن را به طور کامل تجزیه و تحلیل کنید. در بیشتر موارد، کدهای مخرب در فایل PHP موجود در سرور، پنهان شدهاند.
اگر از وردپرس به عنوان سیستم مدیریت محتوای خود استفاده میکنید، درب پشتی میتواند در هر بخشی از "فایل سیستم" آن ایجاد شود:
- فایلهای اصلی وردپرس
- فایلهای افزونه وردپرس
- فایلهای قالب وردپرس
در برخی موارد، دربهای پشتی حتی میتوانند فایلهای مستقل باشند. کدهای درب پشتی را میتوان در دایرکتوریهایی که از طریق وب در دسترس عموم هستند، قرار داد. این موضوع باعث میشود تا هکرها هر زمان که نیاز به یک درب پشتی یا backdoor وب سایت داشتند، به آنها دسترسی داشته باشند.
1. یک نسخه پشتیبان تهیه کنید
اگر مشکوک هستید که مهاجمان سایت شما را در معرض خطر قرار دادهاند، ابتدا یک نسخه پشتیبان کامل از پایگاه داده و فایلهای آن ایجاد کنید. می توانید از افزونههای پشتیبان گیری وردپرس استفاده نمایید. مطمئن شوید که این نسخه پشتیبان را به عنوان یک فایل مشکوک، برچسب گذاری میکنید. اگر سلامت آنها نامشخص است، به بکاپ تهیه شده یا نسخههای پشتیبان قبلی، اعتماد ننمایید. با این حال، اگر در فرآیند پاکسازی سایت مشکلی ایجاد شود، برای بازگشت به وضعیت قبلی، یک نسخه پشتیبان نیاز دارید.
تصویر(4)
2. به دنبال فایلهای غیر معمول، جدید یا تغییر یافته باشید
چه فایلی ممکن است به عنوان یک گزینه"غیر معمول" در نظر گرفته شود؟ یک مثال خوب searchreplacedb2.php میباشد که بخشی از یک ابزار پرکاربرد پایگاه داده با طراحی ضعیف است. این قابلیت به طور گستردهای در وردپرس و سایر سیستمهای مدیریت محتوا، جهت مهاجرت استفاده میشود. متاسفانه این فایل خارج از وردپرس اجرا میشود که باید در سرور خود آپلود کنید و یک افزونه نیست. این بدان معنا خواهد بود که اگر کسی مسیر این فایل را بداند، می تواند آن را اجرا کند. زیرا هیچ اعتبارسنجی جهت ورود به سیستم نیاز ندارد.
به راحتی میتوان قابلیتهای searchreplacedb2.php را برای اهداف مخربی مانند تزریق کد و محتوای دلخواه به پایگاه داده سایت، مورد استفاده قرار داد. افراد زیادی searchreplacedb2.php را ناخواسته روی سرورهای خود قرار دادهاند. مهاجمان به سادگی میتوانند این فایل را جستجو کرده و از آن برای هک کردن سایت استفاده کنند.
3. صحت فایلهای اصلی خود را بررسی کنید
- نظارت بر تغییرات فایل
اگر از افزونههای امنیتی استفاده مینمایید، میتوانید ویژگی نظارت بر تغییرات فایلها را فعال کنید. در این صورت اگر در فایلهای هسته، قالب یا افزونههای وردپرس تغییری ایجاد شود، هشداری دریافت خواهید کرد.
- مطمئن شوید که فایلهای اصلی وردپرس معتبر هستند
اگر کاربر حرفهای هستید و با WP-CLI آشنایی دارید، میتوانید از دستور "wp core verify-checksums" برای تایید اعتبار تمام فایلهای اصلی وردپرس خود استفاده کنید. کاربران کمتر حرفهای میتوانند از یک افزونه آنتی ویروس رایگان که عملکردهای مشابهی را از طریق یک رابط کاربری ساده در پیشخوان وردپرس ارائه میدهد، بهره ببرند.
- فایلهای هسته، قالب و افزونه را مجددا نصب کنید
اگر هر یک از فایلهای اصلی وردپرس تغییر کردهاند یا صرفا میخواهید همه آنها را جهت اطمینان از سالم بودن بروزرسانی کنید، میتوانید به "پیشخوان" سپس "بهروزرسانیها" در پنل مدیریت وردپرس مراجعه نمایید و روی دکمه "نصب دوباره نگارش…" کلیک کنید. میتوانید از افزونه Force Reinstall برای انجام این کار با افزونهها و قالبهای خود استفاده نمایید.
تصویر(5)
- فایلهای htaccess. و wp-config.php را مورد بازبینی قرار دهید
در صورتی که فایلهای htaccess. و wp-config.php در معرض خطر قرار گرفته باشند، باید آنها را مورد بررسی قرار دهید. این فایلها حاوی تنظیمات سرور HTTP آپاچی و وردپرس هستند. اگر فکر میکنید که این فایلها ممکن است توسط یک مزاحم تغییر کرده باشند، بررسی دقیقی روی آنها انجام دهید.
- رمزگذاری Salt وردپرس را تغییر دهید
در نهایت، رمزگذاری Salt وردپرس را تغییر دهید. وقتی رمزها را تغییر میدهید، همه کاربرانی که وارد سیستم شدهاند (از جمله شما) خارج میشوند. Salt ها کلیدهای رمزنگاری تصادفی هستند که اعتبارسنجی ورود کاربر را سختتر میکنند. این کلیدها در فایل wp-config.php ذخیره میشوند، بنابراین ممکن است یک مزاحم با دسترسی به فایلهای شما، آنها را پیدا کرده باشد. این امکان وجود دارد که از Salt ها برای رمزگشایی اطلاعات ورود کاربران استفاده شود.
4. دسترسی آدرسهای IP به فایلهای مشکوک و دربهای پشتی را بررسی کنید
- گزارشهای دسترسی به سایت را بررسی نمایید
لازم است تا گزارش HTTP دسترسی به سایت خود را بررسی کنید. تا به اینجا میتوانید با کمک ابزارها و رویههایی که ذکر شد، فایلهای مشکوک یا تغییر یافته را شناسایی کرده باشید. در این فایلها، نشانههای رایج بدافزارها مانند تابع eval() را مشاهده خواهید کرد. همچنین ممکن است web shell (یک مدیریت فایل که در مرورگر اجرا میشود) بیابید. یک مثال خوب، WSO Shell است که سالها برای سو استفاده از وبسایتهایی که در معرض خطر قرار گرفتهاند استفاده میشود. هنگامی که کدهای shell در سرور شما آپلود شوند، هکرها میتواند تقریباً هر کاری را با فایلهای سیستم شما و احتمالاً پایگاه داده وردپرس، انجام دهند.
تصویر(6)
- نام فایلها را بیابید و IP آنها را مسدود نمایید
اگر فایلهای بدافزار را یافتید باید آنها را حذف کنید اما ابتدا نام فایلها را ثبت نمایید. اکنون میتوانید نام فایلهای بدافزار را در گزارشهای دسترسی به سرور خود جستجو نموده و IP مربوطه را شناسایی نمایید. گزارشها را در پوشهای با نام مرتبط مانند /logs/، بالاتر از روت اصلی وب سایت در سرور خود، مشاهده خواهید کرد. کنترل پنل هاست شما نیز معمولا آنها را در یک رابط کاربری مناسبتر، در دسترس قرار می دهد. در سرویسهای سی پنل میهن وب هاست، میتوانید این گزارشها را در بخش Visitors هاست خود بیابید.
معمولاً در گزارشهای دسترسی، دربهای پشتی با عنوان درخواست POST HTTP به فایلی خاص که ارتباطی به وبسایت ندارند، قابل شناسایی هستند. هنگامی که یک یا چند مورد از آن فایلها را یافتید، میتوانید تمام درخواستها و آدرسهای IP اصلی آنها را مشاهده کنید. میتوانید در گزارشهای خود به دنبال IP های مرتبط با درب پشتی باشید و کارهای دیگری که مزاحم انجام داده است را بررسی نمایید. با این کار امکان دارد که دربهای پشتی دیگری را نیز بیابید. برای ردیابی همه آنها، فرایندی که ذکر شد را برای همه فایلها تکرار کنید. همچنین جهت انسداد IP های مزاحم، می توانید از آموزش زیر کمک بگیرید:
نحوه جلوگیری از ایجاد در درب پشتی یا backdoor وب سایت و سایر خطرات
تقریباً در تمام مواردی که یک سایت وردپرس هک میشود، بهدلیل نادیده گرفتن بروزرسانیها یا فقدان راهکارهای امنیتی اولیه در مورد دسترسی کاربر و اعتبارسنجی است.
1. سطح دسترسی کاربر را محدود کنید
تصویر(7)
انتخاب افرادی که نقشها و سطح دسترسی بالاتری در سایت وردپرس شما دارند، بسیار اهمیت دارد. از اصل "کمترین امتیاز" پیروی کنید و به هیچ کاربری سطح دسترسی بالاتر از نیازش ارائه ندهید.
وردپرس به شما این امکان را میدهد که شش نقش کاربری مختلف به کاربران خود اختصاص دهید. این نقشها عبارتند از:
- مشترک
- نویسنده
- مشارکت کننده
- ویرایشگر
- مدیر کل
- Superadmin (فقط برای حسابهای چند سایتی اعمال میشود)
قبل از اینکه دسترسی به مدیریت سایت را برای افراد ایجاد کنید، مطمئن شوید که نقش آنها را به درستی در نظر گرفتهاید. کاربران استاندارد سایت مانند مشترک یا نویسنده، باید نقشهایی داشته باشند که قابلیتهای زیادی ندارند.
در صورت امکان، نقشهای مدیریت سایت را حداکثر به دو یا سه نفر محدود کنید. همچنین از مدیران بخواهید که از رمزهای عبور مناسب و احراز هویت دو مرحلهای استفاده کنند.
2. احراز هویت کاربر را دشوار کنید
بعد از قالبها و افزونهها، صفحه ورود سایت شما آسیب پذیرترین بخش است و به همین دلیل بررسی امنیت ورود، بسیار اهمیت دارد. از طریق حملات brute force، رباتها صدها یا حتی هزاران اطلاعات ورود مختلف را در عرض چند دقیقه بررسی میکنند تا به صورت غیرمجاز وارد سایت شوند.
- تنظیم رمزهای عبور قوی
چندین معیار مختلف را میتوان به کار برد تا صفحه ورود سایت شما در برابر رباتها و هکرها محافظت شود. تنظیم رمزهای عبور قوی یکی از راههای جلوگیری از حملات brute force است.
- از احراز هویت دو مرحله ای استفاده کنید
احراز هویت دو مرحلهای (2FA) تضمین میکند که حملات brute force هرگز موفق نخواهند شد. با استفاده از iThemes Security Pro، میتوانید از گروههای کاربری خاص (یا همه کاربران) برای راهاندازی 2FA استفاده کنید.
- از کپچا استفاده کنید
میتوانید از CAPTCHA برای فیلتر کردن رباتهایی استفاده کنید که سعی در ورود به سایت شما یا ارسال سایر اطلاعات از طریق فرمها دارند. آموزش "نحوه افزودن hCaptcha به فرم های وردپرس (جایگزین reCAPTCHA)" میتواند در این مورد به شما کمک کند.
3. سایت خود را همیشه بروز نگه دارید
تصویر(8)
تقریباً تمام آسیبپذیریهایی که در سایتهای وردپرس مشاهده میشوند، مربوط به افزونهها هستند. معمولاً یک بروزرسانی ساده میتواند حمله مهاجمان را خنثی کند. مانند هر نرم افزار دیگری که استفاده میکنید، هسته وردپرس، قالبها و افزونهها در طول زمان دچار آسیبپذیریهایی میشوند. هنگامی که توسعهدهندگان آسیبپذیریهای امنیتی جدیدی را کشف میکنند، سعی خواهند کرد تا به سرعت یک پچ تعمیر را از طریق بروزرسانی منتشر نمایند. اگر اجرای این بروزرسانیها را به تعویق بیندازید یا نتوانید آنها را اجرا کنید، سایت وردپرس شما همچنان آسیبپذیر باقی خواهد ماند. هکرها در یافتن و بهره برداری از این نقاط ضعف، متخصص هستند.
به سادگی با بروز نگه داشتن نرم افزاری که در سایت وردپرس خود اجرا میکنید، مطمئن شوید که سایت شما ایمن خواهد بود. از میان اکوسیستمی با بیش از 60000 افزونه، معمولاً هر هفته حدود 50 آسیبپذیری جدید کشف میشود.
4. دسترسی به فایل سیستم سایت خود را دشوار کنید
هکر تنها در صورتی میتواند یک درب پشتی یا backdoor وب سایت ایجاد کند که به فایلهای سرور شما دسترسی مستقیم داشته باشد. وردپرس به کاربرانی که سطح دسترسی "مدیرکل" دارند، اجازه میدهد تا مستقیماً فایلها را ویرایش و اضافه کنند. افزونههای دیگری که در سایت وردپرس خود نصب میکنید ممکن است امتیازات مشابهی را ارائه دهند. اگر به این نوع افزونهها نیازی ندارید، آنها را غیرفعال کنید.
5. هرگز از قالبها و افزونههای نال شده استفاده نکنید
افزونه یا قالب نال شده، یک محصول premium است که شما بدون پرداخت هزینه لایسنس، آن را دانلود و استفاده میکنید. اگرچه ممکن است استفاده رایگان از قالبها و افزونههای premium وسوسه انگیز به نظر برسد اما در آینده هزینه زیادی خواهند داشت.
تقریباً تمام نرم افزارهای نال شده به دربهای پشتی وب سایت آلوده هستند. هنگامی که این گونه محصولات را در سایت خود نصب میکنید، بلافاصله هکرها را قادر میسازید تا بدون اطلاع یا مجوز شما، به سایت دسترسی پیدا کنند.
عدم استفاده از افزونه و قالب وردپرس نال شده، بسیار اهمیت دارد. اگر در حال حاضر یک یا چند مورد از آنها را نصب کردهاید، سریعا آنها را از سایت خود حذف کنید. سپس توسط یک آنتیویروس، کل سایت خود را اسکن نمایید تا مطمئن شوید که از هیچ قالب یا افزونه مخرب دیگری استفاده نمیکنید.
6. توسعه دهندگان مورد اعتماد را استخدام نمایید
تصویر(9)
اگر نیاز به استخدام توسعهدهنده جهت ایجاد یک بخش اختصاصی در سایت دارید، باید دسترسی کامل مدیریت را در اختیار او قرار دهید. این بدان معنا خواهد بود که فقط باید با توسعه دهندگان مورد اعتماد کار کنید.
توسعه دهندگانی که از این منابع استخدام میکنید هیچ کد درب پشتی را روی سایت شما نصب نخواهند کرد. توسعه دهندگانی که صلاحیت کافی ندارند، ممکن است از کدهای آسیب پذیر که به راحتی در سطح اینترنت یافت میشوند استفاده کنند.
7. از فایروال اپلیکیشن تحت وب استفاده کنید
فایروال یا دیوار آتش تحت وب (WAF) یک مانع هوشمند بین سایت شما و درخواستهای دریافتی از کاربران است که برخی از آنها هکرها و رباتهای مخرب هستند.
جمع بندی
درب پشتی یا backdoor وب سایت میتواند نشانهای از یک مشکل بسیار بزرگتر در وبسایت شما باشد. ممکن است سایت به عنوان میزبان یک حمله فراگیر استفاده شود و مهاجم بخواهد دسترسی را حفظ کند. شاید ترسناک به نظر برسد اما راه حلی برای آن وجود دارد. میتوانید حملات صورت گرفته به وبسایت خود را بررسی کنید یا برای شناسایی آنها از یک حرفهای کمک بگیرید.