هک شدن سایت همیشه با صفحه سیاه و پیام مهاجم همراه نیست. ممکن است سایت ظاهراً سالم باشد، اما برای کاربران موبایل Redirect شود، صفحات اسپم در گوگل بسازد، اطلاعات ورود را جمعآوری کند یا از منابع سرور برای حمله به دیگران استفاده کند. به همین دلیل شناخت نشانهها و واکنش درست، از نصب عجولانه یک افزونه امنیتی مهمتر است.
در این راهنما ابتدا مفهوم هک، انواع حمله و هکر را کوتاه توضیح میدهیم. سپس نشانههای عمومی، علامتهای مخصوص وردپرس و سایت اختصاصی، نکات مرتبط با زیرساخت ایران و مراحل اقدام پس از مشاهده نشانه را بررسی میکنیم. یک علامت بهتنهایی همیشه نفوذ را ثابت نمیکند، اما چند نشانه همزمان باید مانند یک رخداد امنیتی جدی مدیریت شوند.
اگر احتمال نفوذ وجود دارد، قبل از حذف فایل یا بازگردانی بکاپ، زمان رخداد، نشانهها و وضعیت فعلی را ثبت کنید. پاکسازی عجولانه ممکن است مدرک علت نفوذ را از بین ببرد و آلودگی دوباره برگردد.
هک سایت یعنی چه؟
هک سایت در این مقاله یعنی دسترسی، تغییر یا استفاده از سایت و دادههای آن بدون مجوز مالک. مهاجم ممکن است از رمز لورفته، نرمافزار آسیبپذیر، تنظیم اشتباه سرور، افزونه ناسالم، حساب پیمانکار یا سرویس ثالث وارد شود. هدف نیز همیشه تخریب نیست؛ سرقت داده، کلاهبرداری، نمایش تبلیغ، دستکاری نتایج گوگل یا استفاده از سرور برای فعالیت دیگر از هدفهای رایجاند.
انواع رایج هک و حمله به سایت
- تصاحب حساب: ورود با رمز یا Session سرقتشده و استفاده از دسترسی مدیر.
- تزریق کد: افزودن JavaScript، iframe، کد سمت سرور یا Query مخرب به سایت.
- SEO Spam: ساخت صفحه و لینک پنهان برای عبارتهای نامرتبط، قمار، دارو یا فروش جعلی.
- Redirect مخرب: انتقال بخشی از کاربران به صفحه تبلیغاتی، بدافزار یا فیشینگ.
- فیشینگ: میزبانی صفحهای شبیه بانک، شبکه اجتماعی یا سرویس دیگر برای گرفتن اطلاعات.
- سرقت یا افشای داده: دسترسی به اطلاعات کاربر، سفارش، فایل خصوصی یا Secretها.
- تخریب یا Defacement: تغییر ظاهر، حذف محتوا یا نمایش پیام مهاجم.
- باجافزار و اخاذی: رمزگذاری، حذف یا تهدید به انتشار داده در برابر پول.
- Supply Chain: ورود از راه افزونه، کتابخانه، ابزار CI/CD یا حساب سرویس ثالث.
- DDoS: ایجاد ترافیک سنگین برای از دسترس خارج کردن سرویس. DDoS الزاماً به معنی نفوذ به داخل سایت نیست.
هکر کیست و آیا هر هکری مجرم است؟
هکر فردی است که رفتار سیستم را عمیق بررسی و از توان فنی برای پیدا کردن یا استفاده از ضعفها بهره میبرد. متخصص امنیت اخلاقی با مجوز و محدوده روشن، آسیبپذیری را برای اصلاح پیدا میکند. مهاجم مخرب بدون مجوز وارد میشود و ممکن است به داده یا سرویس آسیب بزند. گاهی پژوهشگر بدون هماهنگی قبلی ضعفی را گزارش میکند که وضعیت حقوقی و اخلاقی آن به شرایط وابسته است.
برای مدیریت رخداد، انگیزه و برچسب مهاجم در قدم اول مهم نیست. اولویت با حفاظت از کاربران، مهار آسیب، حفظ شواهد و بازیابی امن است.
نشانه قطعی با نشانه مشکوک چه تفاوتی دارد؟
وجود کاربر مدیر ناشناس، کد مخرب تأییدشده، صفحه فیشینگ یا تغییر بدون مجوز، نشانه قوی نفوذ است. اما کندی، خطای ۵۰۰ یا افزایش مصرف CPU میتواند دلیل فنی عادی هم داشته باشد. در رخداد واقعی معمولاً چند داده کنار هم قرار میگیرند: زمان تغییر فایل، IP ورود، درخواست مشکوک، هشدار ابزار و رفتار قابل تکرار.
نشانههای واضح برای بازدیدکننده
- تغییر ناخواسته صفحه اصلی، لوگو، متن یا اطلاعات تماس
- باز شدن سایت قمار، تبلیغ، دانلود یا فروشگاه ناشناس
- Popup و اعلان مرورگر که قبلاً وجود نداشته است
- دانلود خودکار فایل یا درخواست نصب برنامه و افزونه
- نمایش صفحه ورود جعلی یا درخواست دوباره اطلاعات بانکی
- هشدار مرورگر مانند Dangerous یا Deceptive Site
- Redirect فقط در موبایل، از گوگل یا در نخستین بازدید
- نمایش محتوای متفاوت برای کاربر و موتور جستوجو
Redirect شرطی ممکن است برای مالک سایت دیده نشود. صفحه را با دستگاه، شبکه و مرورگر دیگر و از نتیجه گوگل آزمایش کنید. از ورود اطلاعات حساس در سایتی که مشکوک است خودداری کنید.
نشانههای هک در نتایج گوگل و Search Console
- صفحات ناشناس با عنوان زبان دیگر یا موضوع نامرتبط
- عبارتهای عجیب در گزارش Performance
- رشد ناگهانی Indexed Page بدون انتشار محتوا
- هشدار Security Issues یا Manual Actions
- پیام «This site may be hacked» یا هشدار بدافزار
- تغییر Title و Description نتیجه جستوجو
- ایجاد Sitemap، مالک یا کاربر جدید ناشناس در ابزارها
- Redirect کاربران ورودی از گوگل به مقصد متفاوت
با جستوجوی site:example.com میتوان بخشی از URLهای ایندکسشده را دید. پیدا نکردن صفحه مخرب در این جستوجو، سالم بودن سایت را ثابت نمیکند. مهاجم ممکن است Cloaking استفاده کند یا صفحه هنوز ایندکس نشده باشد.
نشانههای مربوط به حساب و دسترسی
- ورود موفق از IP، کشور یا زمان غیرعادی
- ساخته شدن کاربر مدیر، SSH Key یا FTP Account جدید
- تغییر نقش کاربر یا ایمیل بازیابی بدون مجوز
- کار نکردن رمز قبلی یا خارج شدن ناگهانی همه Sessionها
- غیرفعال شدن MFA یا تغییر شماره و ایمیل امنیتی
- ساخته شدن Token، API Key یا OAuth App ناشناس
- تغییر مالک Search Console، CDN، دامنه یا پنل هاست
گاهی این تغییرها نتیجه اقدام همکار قبلی یا خودکارسازی ناقص است. Change Log و فهرست افراد مجاز برای تشخیص لازماند.
نشانههای فایل، کد و پایگاه داده
- فایل تازه با نام شبیه فایل سیستمی یا پسوند غیرمنتظره
- تغییر فایل اصلی بدون Deploy ثبتشده
- کد مبهم، رشته طولانی رمزگذاریشده یا اجرای پویا در محل نامعمول
- تغییر غیرمجاز فایل تنظیمات وبسرور، Cron یا Startup
- ایجاد Scheduled Task و Process ناشناس
- رکورد مدیر، صفحه، Redirect یا Script تازه در دیتابیس
- تغییر Permission برای قابل نوشتن شدن مسیر حساس
- برگشت فایل حذفشده پس از پاکسازی
تغییر فایل همیشه مخرب نیست. بهروزرسانی، کش، Upload و Build نیز فایل میسازند. تفاوت نسخه با Repository معتبر، Hash، زمان تغییر و مالک Process به تحلیل کمک میکند.
نشانههای سرور، شبکه و عملکرد
- مصرف CPU، RAM، Disk I/O یا پهنای باند بدون دلیل کسبوکاری
- ارسال حجم زیاد ایمیل، پیامک یا درخواست خروجی
- اتصال شبکه به مقصد ناشناس یا دامنه تازه ثبتشده
- افزایش خطای ورود، ۴۰۴، ۵۰۰ یا درخواست به مسیر غیرمعمول
- Process یا Container ناشناس و اجرای مداوم Job جدید
- پر شدن ناگهانی دیسک یا حذف و کوتاه شدن Logها
- قرار گرفتن IP سرور در Blacklist یا مسدود شدن حساب هاست
- گزارش میزبان درباره Spam، Malware یا حمله از سمت سرور
کندی بهتنهایی اثبات هک نیست. کمپین تبلیغاتی، Query ضعیف یا خرابی سرویس ثالث نیز همین اثر را دارند. مقایسه Metric، Log و تغییرات اخیر ضروری است.
نشانههای مالی، پرداخت و ارتباط با مشتری
- تغییر شماره کارت، شبا یا مقصد پرداخت در صفحه
- تغییر Merchant، Callback یا تنظیمات درگاه
- سفارش موفق بدون ثبت درست یا ثبت چندباره تراکنش
- ارسال OTP یا پیامک زیاد بدون درخواست واقعی
- ایمیل فیشینگ از دامنه سازمان یا تغییر Forwarding ایمیل
- پیام مشتری درباره برداشت، سفارش یا حساب ناشناس
- خروجی غیرعادی از اطلاعات کاربران یا گزارشها
در سایت ایرانی، پنل درگاه، پیامک و ایمیل را جدا از خود سایت بررسی کنید. ممکن است حساب سرویس جانبی تصاحب شده باشد، در حالی که فایلهای سایت تغییر نکردهاند.
نشانههای هک در سایت وردپرسی
- کاربر Administrator ناشناس یا تغییر نقش مدیر اصلی
- افزونه یا قالبی که نصب نشده یا در پنل دیده نمیشود
- تغییر ناخواسته wp-config.php، .htaccess یا فایلهای Theme
- فایل PHP در مسیر Upload یا Cache که انتظار اجرای کد نداریم
- بازگشت آلودگی پس از حذف یک فایل یا افزونه
- صفحات اسپم زیاد در wp_posts یا گزینههای مشکوک در wp_options
- غیرفعال شدن افزونه امنیتی و بکاپ بدون اقدام مدیر
- ارسال Spam از فرم، Comment یا حسابهای ساختهشده
- تغییر WordPress Salts، Cron و URL اصلی سایت
- تفاوت فایل Core با نسخه رسمی همان Release
وردپرس ذاتاً به معنی ناامن بودن نیست. رمز ضعیف، نسخه قدیمی، افزونه رهاشده، قالب نامعتبر و دسترسی بیش از حد، ریسک را بیشتر میکنند. پاک کردن فقط افزونه مشکوک کافی نیست، چون Backdoor ممکن است در فایل یا دیتابیس دیگری مانده باشد.
نشانههای هک در سایت اختصاصی
- Deploy یا Commit ناشناس در Repository و Pipeline
- تغییر Secret، Environment Variable یا حساب Cloud
- افزوده شدن Dependency ناشناخته یا تغییر Lock File
- Query غیرعادی، Export داده یا دسترسی مستقیم به دیتابیس
- Bypass شدن مجوزها و مشاهده داده کاربر دیگر
- تغییر رفتار API، افزایش Token و درخواست از Client ناشناس
- Container Image یا Artifact متفاوت با نسخه تأییدشده
- غیرفعال شدن Audit Log، WAF Rule یا Alertها
- ایجاد Route، Admin Endpoint یا Webhook بدون Change Request
در سایت اختصاصی باید کد، زیرساخت، CI/CD، حساب Cloud و سرویسهای متصل با هم بررسی شوند. بازگردانی فایل وبسرور بدون چرخاندن Secret لورفته، نفوذ را متوقف نمیکند.
نشانههایی که در شرایط ایران اهمیت بیشتری دارند
- رفتار متفاوت داخل و خارج کشور: Redirect یا تزریق ممکن است بر اساس IP و شبکه فقط به گروهی از کاربران نشان داده شود.
- اختلال سرویس خارجی: خطای CDN، API یا لایسنس محدودشده را با نفوذ اشتباه نگیرید، اما تغییر ناخواسته مسیر جایگزین را بررسی کنید.
- درگاه و پیامک: تغییر Callback، مصرف اعتبار غیرعادی، OTP انبوه و تغییر حساب پذیرندگی سریع بررسی شوند.
- دامنه و DNS: حساب ثبتکننده دامنه ir یا بینالمللی، Name Server و رکوردهای ایمیل کنترل شوند.
- هاست اشتراکی: از میزبان بپرسید آیا سایتهای دیگر سرور یا خود Account نیز درگیر شدهاند.
- دسترسی پیمانکاران: حساب همکار سابق، طراح، سئوکار و پشتیبان قبلی فراموش نشود.
- پایش چندنقطهای: نتیجه را از اینترنت ثابت، موبایل و نقطه خارج ایران مقایسه کنید.
چه چیزهایی ممکن است شبیه هک باشند؟
منقضی شدن SSL، پر شدن هاست، ناسازگاری افزونه، تغییر PHP، خطای DNS، تمام شدن اعتبار پیامک، اختلال درگاه و Deploy ناقص میتوانند نشانههای مشابه بسازند. حتی هشدار آنتیویروس ممکن است False Positive باشد.
بهجای حدس، خط زمانی بسازید: آخرین زمان سلامت، تغییرات اخیر، اولین هشدار، کاربران تحت تأثیر و Log مرتبط. اگر احتمال دسترسی غیرمجاز رد نشد، با احتیاط رخداد امنیتی برخورد کنید.
بعد از دیدن نشانه هک چه کار کنیم؟
مرحله ۱. رخداد را ثبت کنید
اسکرینشات، URL، زمان با منطقه زمانی، دستگاه، شبکه، پیام مرورگر و اقدامهای اخیر را ثبت کنید. لاگها، فهرست Processها، کاربران و فایلهای تغییرکرده را تا حد امکان حفظ کنید. ساعت سیستمها باید قابل تطبیق باشد.
مرحله ۲. دامنه اثر را بسنجید
آیا فقط یک صفحه درگیر است یا حساب، سرور و سرویسهای متصل نیز مشکوکاند؟ آیا داده شخصی، پرداخت یا ایمیل تحت تأثیر است؟ پاسخ، اولویت و افراد درگیر را تعیین میکند.
مرحله ۳. آسیب را مهار کنید
در رخداد جدی، سایت یا بخش آلوده را با هماهنگی تیم فنی محدود کنید. حساب مشکوک، Token و Integration آلوده را موقتاً غیرفعال کنید. اگر حفظ شواهد اهمیت دارد، قبل از خاموش کردن یا حذف، Snapshot مناسب بگیرید. روش مهار به معماری و شدت حادثه وابسته است.
مرحله ۴. از دستگاه سالم دسترسیها را امن کنید
رمز ایمیل اصلی، پنل هاست، دامنه، CDN، SSH، دیتابیس، WordPress و سرویسهای متصل را از یک دستگاه مطمئن تغییر دهید. Sessionهای فعال را باطل، MFA را فعال و Secretها را Rotate کنید. اگر سیستم مدیر آلوده باشد، تغییر رمز روی همان دستگاه ممکن است دوباره آن را افشا کند.
مرحله ۵. با میزبان و تیم پاسخ هماهنگ شوید
هاست میتواند Log، Snapshot، وضعیت سرور اشتراکی و علت تعلیق را بررسی کند. برای سایت درآمدزا، دارای داده حساس یا نفوذ گسترده، از متخصص Incident Response کمک بگیرید. شرح دقیق نشانهها سریعتر از جمله «سایت هک شده» نتیجه میدهد.
مرحله ۶. علت ورود و Persistence را پیدا کنید
فقط فایل ظاهری را حذف نکنید. مسیر ورود، حساب لورفته، آسیبپذیری، Backdoor، Scheduled Task و تغییر سرویس جانبی باید شناسایی شود. اگر علت بسته نشود، سایت پس از چند ساعت یا روز دوباره آلوده میشود.
مرحله ۷. پاکسازی یا بازیابی را انتخاب کنید
در صورت وجود بکاپ سالم پیش از نفوذ، بازیابی میتواند بخشی از راه باشد، اما نسخه بازیابیشده نیز باید وصله و دسترسیهایش امن شود. اگر زمان نفوذ معلوم نیست، بکاپ ممکن است آلوده باشد. در وردپرس، فایلهای Core، افزونه و قالب باید با منبع رسمی و نسخه معتبر مقایسه یا جایگزین شوند. Upload و دیتابیس نیز جدا بررسی شوند.
مرحله ۸. آزمون و بازگشت کنترلشده
قبل از عمومی شدن سایت، Malware، کاربرها، فایلها، دیتابیس، DNS، درگاه، ایمیل و مسیرهای اصلی بررسی شوند. مانیتورینگ شدیدتر موقتاً فعال و هر نشانه بازگشت ثبت شود.
مرحله ۹. اطلاعرسانی و تعهدهای قانونی را بررسی کنید
اگر اطلاعات کاربران، پرداخت یا سرویس مشتری تحت تأثیر است، مدیریت و مشاور حقوقی باید درباره اطلاعرسانی، ثبت شکایت و تعهدهای قراردادی تصمیم بگیرند. در ایران، نوع داده، صنعت، طرفهای قرارداد و ابعاد خسارت میتواند تکلیف متفاوتی ایجاد کند. پیام عمومی باید دقیق، بدون حدس و شامل اقدام حفاظتی لازم برای کاربر باشد.
مرحله ۱۰. هشدارهای گوگل را رفع کنید
پس از پاکسازی کامل، نمونه URLهای Security Issues را دوباره بررسی و در صورت نیاز درخواست Review ارسال کنید. حذف هشدار قبل از رفع علت اصلی، کاربران را در معرض خطر میگذارد.
چه کارهایی را انجام ندهیم؟
- فایلها و Logها را بدون Snapshot یا ثبت وضعیت حذف نکنید.
- فقط صفحه اصلی را سالم نکنید و نفوذ را پایانیافته ندانید.
- بکاپ ناشناخته را مستقیم روی Production برنگردانید.
- رمزها را روی لپتاپ یا موبایل مشکوک تغییر ندهید.
- به مهاجم یا باجخواه بدون هماهنگی تخصصی پاسخ عجولانه ندهید.
- اطلاعات محرمانه رخداد را در گروه عمومی منتشر نکنید.
- همه کاربران را مقصر ندانید و بدون شواهد ادعای قطعی نکنید.
- پس از حذف Malware، علت ورود را فراموش نکنید.
بعد از بازیابی چه کنترلهایی لازم است؟
- بهروزرسانی همه اجزای لازم و حذف نرمافزار بدون استفاده
- اصل حداقل دسترسی و MFA برای حسابهای حساس
- بکاپ مستقل، نسخهبندیشده و آزمون دورهای Restore
- File Integrity، Central Logging و Alertهای قابل اقدام
- ثبت داراییها، Owner حسابها و تاریخ تمدید سرویسها
- محافظت از Secrets و جلوگیری از قرار گرفتن آنها در Repository
- محیط Staging و فرایند Deploy قابل ردگیری
- آزمون امنیت متناسب با ریسک پس از تغییر مهم
- گزارش Post-Incident شامل علت، اثر و اقدام پیشگیرانه
برای تبدیل این موارد به برنامه منظم، از چکلیست ماهانه نگهداری سایت استفاده کنید.
اگر بررسی را به متخصص میسپاریم چه خروجی بخواهیم؟
- خط زمانی رخداد و نشانههای تأییدشده
- دامنه اثر شامل سایت، سرور، حسابها و داده
- نسخه حفظشده شواهد و محل امن آن
- علت ریشهای یا سطح اطمینان درباره علت احتمالی
- فهرست فایل، حساب، Token و تنظیمات تغییرکرده
- اقدام مهار، پاکسازی و بازیابی با زمان اجرا
- مدرک آزمون سلامت پس از بازگشت
- ریسک باقیمانده و برنامه پایش
- اقدام پیشگیرانه با مسئول و مهلت
دامنه مسئولیت، زمان پاسخ و روش مدیریت رخداد باید از قبل روشن باشد. راهنمای خدمات پشتیبانی سایت به شناخت کارهای قابل واگذاری کمک میکند.
جمعبندی
مهمترین نشانههای هک شامل محتوای ناشناس، Redirect شرطی، هشدار مرورگر و گوگل، کاربر مدیر تازه، تغییر فایل و DNS، مصرف غیرعادی منابع، ارسال Spam و رفتار مشکوک در پرداخت یا پیامک هستند. در وردپرس باید افزونه، قالب، wp-config، .htaccess و حسابهای مدیر را جدیتر دید. در سایت اختصاصی، Repository، CI/CD، Secretها، Cloud و APIها نیز جزو دامنه بررسیاند.
پس از مشاهده نشانه، اول ثبت و مهار کنید، سپس از دستگاه سالم دسترسیها را امن کنید. علت ورود و راه ماندگاری مهاجم را پیدا کنید، بازیابی را کنترلشده انجام دهید و پس از بازگشت سایت مدتی پایش شدیدتر داشته باشید. پاک شدن ظاهر آلودگی به معنی پایان نفوذ نیست.



