بسیاری از کاربران فکر می کنند که زمانی که وب سایت وردپرسی‌شان را از دست هکران نجات دادند و وب سایت را پاکسازی کردند، دیگر وب سایتشان در امان است؛ که درواقع اینطور نیست! پاکسازی به صورت ناصحیح و غلط پس از هک وب سایت، منجر می شود که هکران باز بتوانند پس از پاکسازی، به وب سایت دسترسی پیدا کنند و با استفاده از Backdoor که در وب سایت ساخته بودند، احراز هویت معمولی را دور بزنند و دوباره دسترسی به وب سایت را پیدا کنند.

در ادامه این مقاله از کانی تمز، ما قرار است تا به شما نحوه پیدا کردن و رفع مشکلات مربوط به Backdoor را در وب سایت وردپرسی به صورت کامل توضیح دهیم.

Backdoor چیست؟

Backdoor به روشی برای دور زدن احراز هویت معمولی و همچنین دسترسی به سرور از راه دور بدون ردیابی شدن، می گویند. بسیاری از هکران هوشمند، در ابتدای کارشان Backdoor را در وب سایت هدف، آپلود می کنند. این ویژگی به آن ها این اجازه را می دهد تا حتی پس از اینکه وب سایت خود را پاکسازی کردید و افزونه های مخرب را حذف کردید، باز هم بتوانند به وب سایت دسترسی پیدا کنند. همچنین Backdoor ها معمولاً از آپدیت های وب سایت سالم می مانند و تا زمانی که آن ها را شناسایی و رفع نکنید، وب سایت شما در معرض خطر امنیتی قرار دارد.

برخی از Backdoor ها این اجازه را به هکران می دهند تا بتوانند خیلی ساده و راحت یک نام کاربری ادمین به صورت مخفیانه ایجاد کنند. همچنین Backdoor های پیشرفته تری وجود دارد که به هکران این اجازه را می دهد تا بتوانند کد های PHP را که از طریق مرورگر ارسال کردند، بر روی وب سایت هدف اجرا کنند. همچنین برخی دیگر نیز این قابلیت را در اختیار هکران قرار می دهد تا بتوانند ایمیل هایی را از طرف سرور شما ارسال کرده، کوئری های SQL را اجرا کنند و دیگر چیز هایی که می خواهند انجام دهند.

این کد مخفی شده در کجا قرار دارد؟

Backdoor ها معمولاً در وردپرس نصب شده، در مکان هایی که در ادامه آن ها را ذکر می کنیم، ذخیره می شوند و قرار می گیرند:

1. قالب ها: بدون شک، قالبی که شما درحال استفاده از آن هستید، قالب اصلی و قبلی وب سایت شما نیست! هکران معمولاً می خواهند تا کد هایشان از آپدیت های هسته، سالم بمانند. پس در نتیجه، اگر شما قالبی در دایرکتوری قالب های وب سایت وردپرسی خود دارید که غیرفعال هستند و استفاده ای از آن ها ندارید، حتماً پیشنهاد می کنیم که آن ها را حذف نمایید؛ زیرا بهترین مکان برای قرارگیری کد ها، در قالب های غیرفعال وردپرس می باشد.

2. افزونه ها: افزونه ها نیز مکان خوبی برای ذخیره سازی و قرار دادن کد ها توسط هکران می باشند، به سه دلیل؛ دلیل اول اینکه، کاربران معمولاً به آن ها توجهی نمی کنند، دوم اینکه کاربران معمولاً دوست ندارند تا افزونه هایشان را مدام آپدیت کنند، در نتیجه کد ها از آپدیت های افزونه جان سالم بدر می برند؛ و سوم اینکه برخی از افزونه های وردپرسی وجود دارد که متاسفانه از کدنویسی ضعیفی برخوردار است و همین کدنویسی ضعیف، باعث می شود که در افزونه شکاف های امنیتی بوجود آید و هکران از آن برای قرار دادن کد های خود، استفاده کنند.

3. دایرکتوری آپلود ها: به عنوان یک وبلاگ نویس یا یک مدیر وب سایت، معمولاً هیچ گاه دایرکتوری آپلود های وب سایت خود را چک نمی کنید! حال چرا؟ زیرا شما تنها تصاویر مورد نظر خود را در وردپرس آپلود کرده و آن ها را در مطلب وردپرسی خود قرار می دهید. به احتمال زیاد، شما در دایرکتوری آپلود های وب سایتتان، هزاران تصویر آپلود شده دارید که هر کدام در پوشه های طبقه بندی شده بر اساس سال و ماه آپلود، تقسیم شده اند. در نتیجه، برای هکران بسیار آسان است تا Backdoor های خود را در اینگونه دایرکتوری ها آپلود کنند، زیرا Backdoor های آن ها بین هزاران فایل رسانه ای، قرار می گیرد و معمولاً صاحب وب سایت متوجه آن نمی شود.

4. wp-config.php: فایل wp-config.php نیز یکی از کاربردی ترین فایل های مورد هدف هکران می باشد. همچنین این فایل، یکی از اولین مکان هایی است که متخصصان امنیت وردپرس پیشنهاد می کنند که بررسی شود.

5. پوشه Includes: دایرکتوری wp-includes یکی دیگر از مکان هاییست که معمولاً هکران Backdoor هایشان را در آن نیز آپلود می کنند. برخی از هکران، بیش از یک Backdoor در وب سایت هدف آپلود می کنند، و این کار را به منظور محکم کاری و به عنوان یک بکاپ برای Backdoor اصلی انجام می دهند. در نهایت، پوشه Includes وردپرس، یکی دیگر از مکان هاییست که معمولاً توسط کاربران به ندرت چک می شود.

در تمامی مواردی که دیدیم، Backdoor ها مبدل شده اند تا شبیه به یک فایل وردپرسی بنظر آیند. به طور مثال، در یکی از وب سایت هایی که ما مشغول پاکسازی بودیم، در پوشه wp-includes، یک Backdoor پیدا کردیم که نام آن wp-users.php بود (که درواقع فایل wp-users.php در وردپرس معمولی وجود ندارد). همچنین در پوشه آپلود ها، یک Backdoor دیگری با نام hello.php پیدا کردیم که این فایل سعی بر این داشت که تظاهر کند متعلق به افزونه Hello Dolly می باشد.

همچنین این نوع Backdoor ها می توانند از نام های دیگری مانند wp-content.old.tmp، Data.php، php5.php یا … استفاده کنند. همچنین Backdoor ها همیشه در فرمت php. ظاهر نمی شوند؛ گاهی اوقات دیده شده است که این نوع Backdoor ها در فرمت هایی مانند zip. نیز جایگذاری شده اند. معمولاً این Backdoor ها با کدگذاری base64 رمزگذاری شده اند و می توانند عملیات هایی مانند افزودن لینک های اسپم، صفحات اسپم، ریدایرکت کردن صفحه اصلی به وب سایت های اسپم و… را انجام دهند.

حال شاید شما فکر می کنید چون وردپرس به Backdoor ها اجازه فعالیت می دهد، نا امن است؛ که درواقع شما اشتباه می کنید! در جدیدترین ورژن منتشر شده از وردپرس، هیچ گونه آسیب پذیری شناسایی نشده است! و به همین خاطر، باید بگوییم که استفاده از Backdoor ها، قدم اولیه هکران برای نفوذ به وب سایت نیست، بلکه قدم دوم آن ها پس از دسترسی به وب سایت است. و در قدم اول یعنی نفوذ و دسترسی به وب سایت، اکثراً توسط افزونه ها یا قالب هایی با کدنویسی ضعیف انجام می شود. همچنین اگر سرویس دهنده هاست وب سایت شما، مطلوب نباشد، هکران به سادگی می توانند به وب سایت شما نفوذ کنند.

پیدا کردن و پاکسازی Backdoor در وب سایت وردپرسی

حال که شما متوجه شدید Backdoor چیست و معمولاً در کجاها می توان آن را پیدا کرد؛ باید شروع به ردیابی و شناسایی آن ها کنید! پاکسازی آن ها نیز به اندازه حذف یک فایل یا یک کد، آسان می باشد. با این حال، بخش سخت کار، پیدا کردن آن ها می باشد.

شما می توانید برای پیدا کردن آن ها، از افزونه Exploit Scanner استفاده کنید. اما به یاد داشته باشید که رمزگذاری base64 و eval ها همچنان در افزونه ها می توانند قرار گیرند؛ در نتیجه، استفاده از این افزونه نیز می تواند جواب های مثبت دروغینی به همراه داشته باشد که صحت ندارند. اگر شما یک توسعه دهنده افزونه نیستید، برایتان سخت است که بتوانید خط هایی که با هزاران خط کدنویسی شده در فایل افزونه ها وجود دارد، تطابق ندارد را پیدا کنید. برای همین، بهترین کار این است که پوشه plugins را به طور کامل حذف کرده و مجدداً افزونه ها را از منابع آن، نصب کنید.

پیدا کردن دایرکتوری آپلود ها

بالاخره با استفاده از یکی از افزونه های اسکنر مانند Expoilt Scanner، شما می توانید فایل های نامرتبط را در دایرکتوری آپلود ها پیدا کنید. اگر با SSH آشنا هستید، می توانید از خط دستوری زیر استفاده کنید:

هیچ دلیل موجهی وجود ندارد که یک فایل با فرمت php. در دایرکتوری آپلود ها قرار گرفته باشد. زیرا این دایرکتوری مخصوص فایل های رسانه ای و تصویری است. پس اگر متوجه وجود فایل php در دایرکتوری آپلود ها شدید، باید آن را حذف نمایید.

حذف قالب های غیرفعال

همانطور که در قبل ما اشاره کردیم، قالب های غیرفعال می توانند بهترین هدف برای هکران برای ذخیره سازی Backdoor هایشان باشد. برای همین، ما پیشنهاد می کنیم تا تمامی قالب های غیرفعال وب سایت وردپرسی خود را به طور کامل حذف نمایید. ضمناً آخرین نسخه قالب فعال سایت را نیز دوباره دانلود کرده و جایگزین کنید .

فایل htaccess.

گاهی اوقات ممکن است که کد های ریدایرکت در فایل htaccess. توسط هکران قرار گیرد. برای همین، ما پیشنهاد می کنیم تا فایل htaccess. را حذف کنید؛ اما نگران نباشید، پس از پاکسازی، مجدداً یک فایل دیگر htaccess. به طور خودکار ایجاد می شود. اما اگر به هر دلیلی این فایل مجدداً ایجاد نشد، به بخش پیوند های یکتا در منو تنظیمات رفته و آن صفحه را یکبار ذخیره کنید.

فایل wp-config.php

در اینجا، شما تنها نیاز است که فایل wp-config.php وب سایت وردپرسی خود را با نمونه پیش فرض آن مقایسه کنید. اگر متوجه شدید که کد های اضافی مشکوکی در آن وجود دارد، آن ها را حذف نمایید.

اسکن دیتابیس برای شناسایی اسپم ها

یک هکر هوشمند، تنها یک مکان امن برای انجام کار خود ندارد؛ بلکه مکان های بیشماری ایجاد می کنند. هدف قرار دادن یک دیتابیس حاوی داده های زیاد، می تواند یک ترفند بسیار آسان و کاربردی برای آن ها باشد. آن ها می توانند از این طریق، عملکرد های مخرب PHP را قرار دهند، اکانت مدیر وب سایت جدید ایجاد کنند، لینک های اسپم بوجود بیاورند و… ! گاهی اوقات در وب سایت وردپرسی شما ممکن است 3 اکانت وجود داشته باشد که شما تنها می توانید 2 تا از آن ها را مشاهده کنید، زیرا وب سایت شما هک شده است. اگر شما با محیط SQL آشنایی ندارید و نمی دانید چطور با آن کار کنید، بهتر است که شناسایی اینگونه مورد های هک را بر عهده افزونه هایی مانند Exploit Scanner بگذارید.

اگر وب سایت را پاکسازی کردید؛ آن را مجدداً بررسی کنید

اگر وب سایت وردپرسی خود را از Backdoor ها پاکسازی کردید، هنوز هم باید آن را مورد بررسی قرار دهید. به طور مثال، پس از پاکسازی وب سایت، بهتر است که با استفاده از حالت ناشناس مرورگر (Private Tab) به وب سایت خود رفته و ببینید که آیا هکی در وب سایت شما وجود دارد یا خیر؛ زیرا برخی از هکران هوشمند، هک های خود را تنها برای کاربرانی که وارد اکانت خود در وب سایت نشده اند، نمایش می دهند. در نتیجه، بهتر است که از حساب کاربری خود در وب سایت خارج شده و وب سایت را در یک مرورگر جدید با آی پی جدید مشاهده کنید.

چگونه جلوی هک ها را در آینده بگیریم؟

اولین پیشنهادی که ما در این زمینه می کنیم و الزامی است، تهیه بکاپ های کامل از وب سایت می باشد؛ همچنین باید فعالیت های وب سایت خود را زیر نظر بگیرید یا به اصطلاح مانیتورینگ کنید؛ البته این کار امکان پذیر نیست که بتوانید تمامی فعالیت هایی که بر روی وب سایتتان انجام می شود را زیر نظر بگیرید، زیرا ممکن است شما در وب سایتتان همراه با شُرکای دیگر، هزاران کار بر روی وب سایت انجام دهید.

برخی دیگر از کار هایی که پیشنهاد می شود به آن توجه کنید:

1. از یک پسورد قوی استفاده کنید: کاربران وب سایتتان را مجبور کنید که در هنگام ثبت نام، از پسوردی قوی و طولانی استفاده کنند.

2. محدود سازی تعداد تلاش ها برای ورود: افزونه Limit login attempts به شما این اجازه را می دهد تا محدودیت هایی بر تعداد تلاش های ورود به وب سایت، قرار دهید.

3. غیرفعال سازی ویرایشگر قالب و افزونه: انجام این کار، به شما کمک می کند تا مشکلاتی که در آینده با تعداد افزایش اکانت های کاربرانی که دسترسی به ویرایشگر فایل های وردپرس دارند را کاهش دهید. به طور مثال، اگر کاربری در وب سایت وردپرسی شما، امتیاز این را داشته باشد که بتواند به تمامی نقاط وب سایت دسترسی پیدا کند، می تواند فایل های مربوط به قالب و افزونه های وب سایت را با استفاده از ویرایشگر وردپرس، ویرایش کند؛ به همین خاطر است که پیشنهاد می کنیم، این ویرایشگر را در وب سایت خود غیرفعال سازید.

4. حفاظت از wp-admin با افزودن لایه اضافی پسورد: در این روش، پیشنهاد می شود تا برای دایرکتوری و صفحه wp-admin وب سایت وردپرسی خود، یک لایه امنیتی با افزودن پسورد نیز ایجاد کنید. برای انجام این کار، می توانید مقاله “آموزش افزودن لایه امنیتی محافظ پسورد بر روی دایرکتوری wp-admin” را مطالعه فرمایید.

5. جلوگیری از اجرا فایل های PHP در دایرکتوری های اصلی: انجام این کار، می تواند به امنیت وب سایت وردپرسی شما کمک شایانی کند؛ زیرا در این صورت، کاربرانی که می توانند فایل هایی را بر روی وب سایت آپلود کنند، نمی توانند فایل های PHP آپلود شده‌شان را بر روی وب سایت اجرا کنند.

6. همیشه وب سایت خود را بروزرسانی کنید: در نهایت باید به مهم ترین نکته اشاره کنیم که وب سایت خود را همیشه بروزرسانی کنید؛ برای ورژن های جدید قالب و افزونه های وب سایت خود، پیگیر شوید و همچنین ورژن وردپرس را همیشه بروز نگهدارید.

و همچنین باید بگوییم که در امنیت وب سایتتان، هیچ وقت به صرفه و اقتصادی فکر نکنید؛ زیرا این امنیت وب سایتتان است که اعتماد کاربران را نسبت به کسب و کار آنلاین شما، حفظ می کند. هیچ وقت به بکاپ گیری های روزانه و معمولی اعتنا نکنید و بکاپ هایی کامل از تمامی بخش های وب سایت تهیه کنید.

در پایان پیشنهاد می کنیم جهت افزایش چند برابری امنیت وب سایت وردپرسی خود افزونه iThemes Security Pro را تهیه کرده و بر روی سایت تان نصب کنید .

پیشنهاد می کنیم برای دریافت آخرین مطالب کانال تلگرام کانی تمزرا دنبال کنید .