این راهنما به طور خاص برای یک نوع هک ایجاد شده است که صفحاتی با کلمات کلیدی سنگین را به سایت شما اضافه می کند، که ما از آن به عنوان هک کلمات کلیدی و لینک های پنهان شده یاد می کنیم. این راهنما برای کاربران سیستمهای مدیریت محتوای محبوب (CMS) طراحی شده است، اما حتی اگر از CMS استفاده نکنید، این راهنما برای شما مفید خواهد بود.
ما می خواهیم مطمئن شویم که این راهنما واقعاً برای شما مفید است. برای کمک به بهبود ما ، بازخورد خود را ارسال کنید !
این نوع هک را شناسایی کنید
کلمات کلیدی پنهان شده و هک پیوند به طور خودکار صفحات زیادی را با متن، پیوندها و تصاویر بی معنی ایجاد می کند. این صفحات گاهی اوقات حاوی عناصر اولیه قالب از سایت اصلی هستند، بنابراین در نگاه اول، ممکن است تا زمانی که محتوا را مطالعه نکنید، صفحات مانند بخش های عادی سایت شما به نظر می رسند.
صفحات هک شده برای دستکاری فاکتورهای رتبه بندی گوگل ایجاد شده اند. هکرها اغلب سعی می کنند با فروش لینک های موجود در صفحات هک شده به اشخاص ثالث مختلف، از این موضوع کسب درآمد کنند. اغلب صفحات هک شده بازدیدکنندگان را به یک صفحه نامرتبط هدایت می کنند که در آن هکرها می توانند درآمد کسب کنند.
با بررسی ابزار مسائل امنیتی در کنسول جستجو شروع کنید تا ببینید آیا گوگل هر یک از این صفحات هک شده را در سایت شما کشف کرده است یا خیر. گاهی اوقات میتوانید صفحاتی مانند این را با باز کردن یک پنجره جستجوی Google و تایپ site:_your site url_
با نشانی اینترنتی سطح ریشه سایت خود کشف کنید. با این کار صفحاتی که گوگل برای سایت شما ایندکس کرده است، از جمله صفحات هک شده را به شما نشان می دهد. چند صفحه از نتایج جستجو را ورق بزنید تا ببینید آیا URL های غیرعادی را مشاهده می کنید. اگر محتوای هک شده ای در جستجوی گوگل نمی بینید، از همان عبارات جستجو با موتور جستجوی دیگری استفاده کنید. در اینجا یک مثال از آنچه که به نظر می رسد آورده شده است:
معمولاً، وقتی روی پیوندی به یک صفحه هک شده کلیک میکنید، یا به سایت دیگری هدایت میشوید یا صفحهای پر از محتوای هک میبینید. با این حال، ممکن است پیامی نیز ببینید که نشان می دهد صفحه وجود ندارد (به عنوان مثال، خطای 404). گول نخورید! هکرها سعی می کنند شما را فریب دهند و فکر کنید که صفحه از بین رفته یا درست شده است، در حالی که هنوز هک شده است. آنها این کار را با پنهان کردن محتوا انجام می دهند. با وارد کردن نشانیهای اینترنتی سایت خود در ابزار بازرسی URL ، پنهانسازی را بررسی کنید. ابزار Fetch as Google به شما امکان می دهد محتوای پنهان زیرین را ببینید.
اگر این مشکلات را مشاهده کردید، به احتمال زیاد سایت شما تحت تأثیر این نوع هک قرار گرفته است.
هک را برطرف کنید
قبل از شروع، یک کپی آفلاین از هر فایلی قبل از حذف آنها تهیه کنید، در صورتی که بعداً نیاز به بازیابی آنها داشتید. بهتر است قبل از شروع فرآیند پاکسازی، از کل سایت خود نسخه پشتیبان تهیه کنید. می توانید این کار را با ذخیره تمام فایل هایی که در سرور شما هستند در مکانی خارج از سرور خود یا جستجوی بهترین گزینه های پشتیبان برای سیستم مدیریت محتوای خاص خود (CMS) انجام دهید. اگر از CMS استفاده می کنید، از پایگاه داده نیز نسخه پشتیبان تهیه کنید.
فایل .htaccess
خود را بررسی کنید (3 مرحله)
کلمات کلیدی پنهان شده و هک لینک از فایل .htaccess
شما برای ایجاد خودکار صفحات پنهان شده در سایت شما استفاده می کند. آشنایی با اصول .htaccess
در سایت رسمی آپاچی می تواند به شما کمک کند تا درک بهتری از تاثیر هک روی سایت شما داشته باشید، اما این کار ضروری نیست.
مرحله 1
فایل .htaccess
خود را در سایت خود پیدا کنید. اگر مطمئن نیستید کجا آن را پیدا کنید و از یک سیستم مدیریت محتوای مدیریت محتوا مانند وردپرس، جوملا یا دروپال استفاده میکنید، ".htaccess. location file location" را همراه با نام CMS خود در موتور جستجو جستجو کنید. بسته به سایت خود، ممکن است چندین فایل .htaccess
را مشاهده کنید. فهرستی از تمام مکانهای فایل .htaccess
تهیه کنید.
مرحله 2
برای مشاهده محتویات فایل، فایل .htaccess
باز کنید. به دنبال خطی از کد بگردید که چیزی شبیه به زیر باشد:
RewriteRule (.*cj2fa.*|^tobeornottobe$) /injected_file.php?q=$1 [L]
متغیرهای این خط می توانند تغییر کنند. هر دو cj2fa
و tobeornottobe
می توانند هر ترکیبی از حروف یا کلمات باشند. آنچه مهم است شناسایی .php
است که در این خط به آن اشاره شده است.
فایل .php
ذکر شده در فایل .htaccess
را یادداشت کنید. در مثال، فایل .php
injected_file.php
نامگذاری شده است، اما در واقع نام فایل آنقدر واضح نخواهد بود. معمولاً مجموعهای تصادفی از کلمات بیضرر مانند horsekeys.php
یا potatolake.php
است. این احتمالاً یک فایل .php
مخرب است که باید بعداً آن را ردیابی و حذف کنیم.
مرحله 3
همه فایلهای .htaccess
را با نسخه تمیز یا پیشفرض فایل .htaccess
جایگزین کنید. معمولاً می توانید نسخه پیش فرض یک فایل .htaccess
را با جستجوی "default .htaccess
file" و نام CMS خود بیابید. برای سایت هایی با چندین فایل .htaccess
، یک نسخه تمیز از هر یک را پیدا کنید و جایگزینی را انجام دهید.
اگر هیچ .htaccess
پیشفرضی وجود نداشته باشد و هرگز فایل .htaccess
را در سایت خود پیکربندی نکرده باشید، فایل .htaccess
که در سایت خود پیدا میکنید احتمالاً مخرب است. یک کپی از فایل(های) .htaccess
را به صورت آفلاین ذخیره کنید و آن را از سایت خود ذخیره کنید.
یافتن و حذف سایر فایل های مخرب (5 مرحله)
شناسایی فایل های مخرب می تواند مشکل و زمان بر باشد. هنگام بررسی فایل های خود وقت بگذارید. اگر هنوز این کار را نکرده اید، زمان خوبی برای پشتیبان گیری از فایل های سایتتان است. برای یافتن دستورالعملهایی در مورد نحوه پشتیبانگیری از سایت خود، عبارت «سایت پشتیبانگیری» و نام CMS خود را در گوگل جستجو کنید.
مرحله 1
اگر از CMS استفاده میکنید، تمام فایلهای اصلی (پیشفرض) را که در توزیع پیشفرض CMS شما آمده و همچنین هر چیزی که ممکن است اضافه کردهاید (مانند تمها، ماژولها، افزونهها) را دوباره نصب کنید. این کمک می کند تا اطمینان حاصل شود که این فایل ها از محتوای هک شده پاک هستند. برای یافتن دستورالعملهای نصب مجدد، میتوانید عبارت "reinstall" و نام CMS خود را در گوگل جستجو کنید. اگر افزونهها، ماژولها، برنامههای افزودنی یا تم دارید، حتماً آنها را نیز دوباره نصب کنید.
مرحله 2
با جستجوی فایل .php
که قبلاً در فایل .htaccess
شناسایی کرده اید، شروع کنید. بسته به نحوه دسترسی شما به فایل های سرور خود، باید برخی از قابلیت های جستجو را داشته باشید. نام فایل مخرب را جستجو کنید. اگر آن را پیدا کردید، ابتدا یک نسخه پشتیبان تهیه کنید و فقط در صورت نیاز به بازیابی آن را در مکان دیگری ذخیره کنید، سپس آن را از سایت خود حذف کنید.
مرحله 3
به دنبال فایل های مخرب یا در معرض خطر باقی مانده باشید. ممکن است قبلاً همه فایلهای مخرب را در دو مرحله قبلی حذف کرده باشید، اما بهتر است در صورتی که فایلهای در معرض خطر بیشتری در سایت شما وجود داشته باشد، مراحل بعدی را طی کنید.
با این فکر که باید هر فایل PHP را باز کنید و نگاهی بیندازید غرق نشوید. با ایجاد لیستی از فایل های PHP مشکوک که می خواهید بررسی کنید، شروع کنید. در اینجا چند راه برای تعیین اینکه کدام فایل های PHP مشکوک هستند وجود دارد:
- اگر قبلاً فایلهای CMS خود را بارگیری مجدد کردهاید، فقط به فایلهایی نگاه کنید که بخشی از فایلها یا پوشههای CMS پیشفرض شما نیستند. این باید بسیاری از فایلهای PHP را رد کند و شما را با تعداد انگشت شماری از فایلها برای بررسی باقی بگذارد.
- فایل های موجود در سایت خود را بر اساس تاریخ آخرین تغییر مرتب کنید. به دنبال فایل هایی باشید که در عرض چند ماه از زمانی که برای اولین بار متوجه هک شدن سایت خود شده اید، اصلاح شده اند.
- فایل های سایت خود را بر اساس اندازه مرتب کنید. به دنبال هر فایل غیرعادی بزرگ باشید.
مرحله 4
هنگامی که لیستی از فایل های PHP مشکوک را دارید، بررسی کنید که آیا آنها مخرب هستند یا خیر. اگر با PHP آشنا نیستید، این فرآیند ممکن است زمانبرتر باشد، بنابراین برخی از اسناد PHP را بررسی کنید. اگر در زمینه کدنویسی کاملاً تازه کار هستید، توصیه میکنیم کمک بگیرید . در این میان، برخی از الگوهای اساسی وجود دارد که می توانید برای شناسایی فایل های مخرب به دنبال آنها باشید.
اگر از CMS استفاده میکنید و عادت به ویرایش مستقیم آن فایلها ندارید، فایلهای روی سرور خود را با لیستی از فایلهای پیشفرض بستهبندی شده با CMS و هر پلاگین و تم مقایسه کنید. به دنبال فایلهایی باشید که به آنها تعلق ندارند، و همچنین فایلهایی که بزرگتر از نسخه پیشفرضشان هستند.
ابتدا فایل های مشکوکی را که قبلا شناسایی کرده اید اسکن کنید تا به دنبال بلوک های بزرگ متن با ترکیبی از حروف و اعداد به ظاهر درهم ریخته بگردید. قبل از بلوک بزرگ متن، ترکیبی از توابع PHP مانند base64_decode
، rot13
، eval
، strrev
یا gzinflate
وجود دارد. در اینجا مثالی از این است که آن بلوک کد ممکن است شبیه باشد. گاهی اوقات همه این کدها در یک خط طولانی متن قرار می گیرند و آن را کوچکتر از آنچه هست نشان می دهند.
// Hackers try to confuse webmasters by encoding malicious code into
// blocks of text. Be wary of unfamiliar code blocks like this.
base64_decode(strrev("hMXZpRXaslmYhJXZuxWd2BSZ0l2cgknbhByZul2czVmckRWYgknYgM3ajFGd0FGIlJXd0Vn
ZgknbhBSbvJnZgUGdpNHIyV3b5BSZyV3YlNHIvRHI0V2Zy9mZgQ3Ju9GRg4SZ0l2cgIXdvlHI4lmZg4WYjBSdvlHIsU2c
hVmcnBydvJGblBiZvBCdpJGIhBCZuFGIl1Wa0BCa0l2dgQXdCBiLkJXYoBSZiBibhNGIlR2bjBycphGdgcmbpRXYjNXdmJ2b
lRGI5xWZ0Fmb1RncvZmbVBiLn5WauVGcwFGagM3J0FGa3BCZuFGdzJXZk5Wdg8GdgU3b5BicvZGI0xWdjlmZmlGZgQXagU2ah
1GIvRHIzlGa0BSZrlGbgUGZvNGIlRWaoByb0BSZrlGbgMnclt2YhhEIuUGZvNGIlxmYhRWYlJnb1BychByZulGZhJXZ1F3ch
1GIlR2bjBCZlRXYjNXdmJ2bgMXdvl2YpxWYtBiZvBSZjVWawBSYgMXagMXaoRFIskGS"));
گاهی اوقات کد به هم ریخته نیست و مانند اسکریپت عادی به نظر می رسد. اگر مطمئن نیستید که کد بد است، به تالارهای گفتگوی راهنمای وبمستر ما مراجعه کنید، جایی که گروهی از مدیران وب با تجربه می توانند به شما کمک کنند تا فایل ها را بررسی کنید.
مرحله 5
اکنون که می دانید کدام فایل ها مشکوک هستند، یک نسخه پشتیبان یا یک نسخه محلی با ذخیره آن ها در رایانه خود ایجاد کنید، فقط در صورتی که هیچ یک از فایل ها مخرب نبود، و فایل های مشکوک را از سایت خود حذف کنید.
بررسی کنید که آیا سایت شما تمیز است یا خیر
پس از خلاص شدن از شر فایل های هک شده، بررسی کنید که آیا کار سخت شما نتیجه داده است یا خیر. آن صفحات بیهوده ای را که قبلاً شناسایی کردید به خاطر دارید؟ دوباره از ابزار Fetch as Google روی آنها استفاده کنید تا ببینید آیا هنوز وجود دارند یا خیر. اگر در Fetch as Google به عنوان "Not Found" پاسخ دهند، به احتمال زیاد در وضعیت خوبی هستید و می توانید به رفع آسیب پذیری های سایت خود ادامه دهید.
چگونه از هک شدن مجدد جلوگیری کنم؟
رفع آسیب پذیری ها در سایت شما آخرین مرحله ضروری برای تعمیر سایت شما است. یک مطالعه اخیر نشان داد که 20 درصد از سایت های هک شده در عرض یک روز دوباره هک می شوند. دانستن اینکه سایت شما دقیقا چگونه هک شده است مفید است. راهنمای ما را بخوانید که چگونه وب سایت ها توسط هرزنامه ها هک می شوند تا تحقیقات خود را شروع کنید. با این حال، اگر نمی توانید بفهمید که سایت شما چگونه هک شده است، چک لیستی از کارهایی است که می توانید برای کاهش آسیب پذیری های سایت خود انجام دهید:
- به طور منظم رایانه خود را اسکن کنید: از هر اسکنر ویروسی محبوب برای بررسی ویروس ها یا آسیب پذیری ها استفاده کنید.
- گذرواژههای خود را به طور منظم تغییر دهید: تغییر منظم رمزهای عبور تمام حسابهای وبسایت خود مانند ارائهدهنده میزبانی، FTP و CMS میتواند از دسترسی غیرمجاز به سایت شما جلوگیری کند. ایجاد یک رمز عبور قوی و منحصر به فرد برای هر حساب بسیار مهم است.
- استفاده از احراز هویت دو مرحله ای (2FA) : فعال کردن 2FA در هر سرویسی که نیاز به ورود به سیستم دارد را در نظر بگیرید. 2FA ورود به سیستم را برای هکرها دشوارتر می کند حتی اگر با موفقیت رمز عبور شما را بدزدند.
- CMS، افزونهها، افزونهها و ماژولهای خود را مرتباً بهروزرسانی کنید: امیدواریم قبلاً این مرحله را انجام داده باشید. بسیاری از سایت ها به دلیل استفاده از نرم افزارهای قدیمی هک می شوند. برخی از CMS ها از به روز رسانی خودکار پشتیبانی می کنند.
- اشتراک یک سرویس امنیتی برای نظارت بر سایت خود را در نظر بگیرید: بسیاری از خدمات عالی وجود دارند که می توانند با پرداخت هزینه ای ناچیز به شما در نظارت بر سایت خود کمک کنند. برای حفظ امنیت سایت خود، ثبت نام در آنها را در نظر بگیرید.
منابع اضافی
اگر هنوز در تعمیر سایت خود مشکل دارید، چند منبع دیگر وجود دارد که ممکن است به شما کمک کند.
این ابزارها سایت شما را اسکن می کنند و ممکن است بتوانند محتوای مشکل دار را پیدا کنند. به غیر از VirusTotal، Google آنها را اجرا یا پشتیبانی نمی کند.
اینها فقط برخی از ابزارهایی هستند که ممکن است بتوانند سایت شما را برای محتوای مشکل دار اسکن کنند. به خاطر داشته باشید که این اسکنرها نمی توانند تضمین کنند که هر نوع محتوای مشکل دار را شناسایی می کنند.
در اینجا منابع اضافی از Google وجود دارد که می تواند به شما کمک کند: