GUIDE

سایت ناامن چیست؟ چطور بفهمیم یک سایت امن است یا نه

محمدرضا مقدم
محمدرضا مقدم
توسعه‌دهنده ابزاربازبینی: ۲۵ مرداد ۱۴۰۵
۲۶ اردیبهشت ۱۴۰۵ ۱۲ دقیقه مطالعه

«سایت ناامن» دو معنای کاملاً متفاوت دارد و همین باعث سوءتفاهم می‌شود: سایتی که برای بازدیدکننده خطرناک است (فیشینگ، بدافزار، کلاهبرداری) و سایتی که خودش در برابر مهاجم آسیب‌پذیر است. این مقاله برای خواننده‌ی عمومی نوشته شده و به هر دو می‌پردازد: هشدارهای مرورگر واقعاً چه می‌گویند و چه نمی‌گویند، چرا وجود قفل و HTTPS هیچ چیزی درباره‌ی قابل اعتماد بودن صاحب سایت نمی‌گوید، خطاهای گواهی از کجا می‌آیند، نشانه‌های فیشینگ چیست، و اگر سایت خودتان علامت‌گذاری شد چه باید کرد.

در یک نگاه

  • HTTPS فقط یعنی اتصال رمزنگاری شده است — نه اینکه صاحب سایت قابل اعتماد است. این بزرگ‌ترین باور غلط در این موضوع است.
  • بسیاری از سایت‌های فیشینگ HTTPS و قفل سبز دارند، چون گواهی اعتبارسنجی دامنه رایگان و خودکار صادر می‌شود.
  • هشدار «اتصال شما خصوصی نیست» با هشدار «سایت پیشِ‌رو فریب‌دهنده است» دو چیز کاملاً متفاوت‌اند: اولی مشکل گواهی، دومی هشدار محتوای خطرناک.
  • بدون HTTPS، هر کسی در مسیر شبکه می‌تواند محتوا را بخواند و تغییر دهد؛ TLS 1.0 و 1.1 هم رسماً منسوخ‌اند.
  • اگر سایت خودتان علامت‌گذاری شد، ترتیب درست این است: یافتن و رفع علت ← پاک‌سازی ← درخواست بازبینی. حذف نشانه‌ها بدون رفع علت، دوباره برمی‌گردد.

«سایت ناامن» یعنی چه؟ دو معنای متفاوت

وقتی می‌گوییم یک سایت ناامن است، ممکن است یکی از این دو را منظور داشته باشیم:

  • ناامن برای بازدیدکننده: سایت عمداً یا در اثر آلودگی به شما آسیب می‌زند — صفحه‌ی جعلی ورود بانک، فایل آلوده، تغییر مسیر به تبلیغات مخرب، یا کلاهبرداری فروش.
  • ناامن در برابر مهاجم: سایت خودش آسیب‌پذیر است و داده‌ی مشتریانش در خطر است، حتی اگر ظاهرش کاملاً عادی و بی‌خطر باشد.

این تفکیک مهم است چون ابزارهای تشخیص این دو فرق دارند. مرورگر شما می‌تواند نوع اول را تا حدی تشخیص دهد (فهرست‌های سایت‌های خطرناک، هشدار گواهی)، اما نوع دوم را هیچ مرورگری نمی‌بیند: سایتی با قفل سبز، طراحی حرفه‌ای و بدون هیچ هشدار، می‌تواند در همان لحظه یک آسیب‌پذیری بحرانی کنترل دسترسی داشته باشد که داده‌ی همه‌ی مشتریانش را در معرض دید گذاشته. سنجش نوع دوم کار تست نفوذ وب است، نه چشم بازدیدکننده.

HTTPS چه چیزی را تضمین می‌کند و چه چیزی را نه

باور غلط رایج

«قفل را می‌بینم و آدرس با https شروع می‌شود، پس سایت امن و معتبر است.» این تنها بزرگ‌ترین سوءتفاهم در این موضوع است. HTTPS سه چیز را تأمین می‌کند: محتوا در مسیر رمزنگاری شده است، در مسیر تغییر نکرده است، و شما به همان دامنه‌ای وصل شده‌اید که در نوار آدرس نوشته شده. HTTPS هیچ چیزی درباره‌ی صداقت صاحب سایت، کیفیت محصول، یا ایمن بودن فایل‌هایی که ارائه می‌دهد نمی‌گوید. یک سایت کلاهبرداری با HTTPS، یک سایت کلاهبرداری رمزنگاری‌شده است.

دلیل فنی‌اش هم روشن است: گواهی‌های نوع اعتبارسنجی دامنه (DV) به‌صورت رایگان و کاملاً خودکار صادر می‌شوند و تنها چیزی که ثابت می‌کنند این است که متقاضی، کنترل آن دامنه را در اختیار دارد. هیچ بررسی هویتی درباره‌ی سازمان یا کسب‌وکار انجام نمی‌شود. پس هر مهاجمی می‌تواند در چند دقیقه برای دامنه‌ی جعلی خودش گواهی معتبر بگیرد.

در جهت مخالف، نبود HTTPS واقعاً یک مشکل است و بی‌اهمیت نیست: در اتصال ساده‌ی HTTP، هر کسی که در مسیر شبکه باشد — از اپراتور وای‌فای عمومی تا واسطه‌های شبکه — می‌تواند محتوا را بخواند و مهم‌تر از آن، تغییر دهد: تزریق تبلیغ، تغییر شماره حساب در صفحه، یا اضافه کردن کد مخرب. به همین دلیل مرورگرها صفحاتی با فرم ورود روی HTTP را با برچسب «ناامن» علامت می‌زنند.

و برای صاحبان سایت: داشتن HTTPS کافی نیست، پیکربندی درست آن هم لازم است. نسخه‌های TLS 1.0 و 1.1 رسماً منسوخ شده‌اند و طبق سند رسمی IETF نباید مذاکره شوند؛ باید TLS 1.3 فعال باشد و TLS 1.2 اگر برای سازگاری می‌ماند، محدود به مجموعه‌رمزهای مدرن. جزئیات فنی در دانشنامه‌ی TLS آمده است.

هشدارهای مرورگر: هر کدام دقیقاً چه می‌گویند

مرورگرها چند نوع هشدار کاملاً متفاوت نشان می‌دهند و بیشتر کاربران همه را یکی می‌بینند:

هشدارمعنای واقعیچه کاری درست است
برچسب «ناامن» در نوار آدرساتصال بدون HTTPS است؛ محتوا رمزنگاری نشدههیچ داده‌ی حساسی وارد نکنید؛ برای مطالعه‌ی محتوای عمومی خطر مستقیمی نیست
«اتصال شما خصوصی نیست» / خطای گواهیمرورگر نتوانست گواهی را معتبر تأیید کند — ممکن است اشکال فنی باشد یا شنود واقعیهرگز از صفحه‌ی هشدار عبور نکنید، به‌ویژه روی وای‌فای عمومی
«سایت پیشِ‌رو فریب‌دهنده است»سایت در فهرست فیشینگ گزارش شدهبازگردید؛ هیچ اطلاعاتی وارد نکنید
«سایت پیشِ‌رو حاوی بدافزار است»سایت در حال سرو فایل یا کد مخرب گزارش شدهبازگردید؛ فایل دانلودشده را اجرا نکنید
هشدار «محتوای مختلط»صفحه HTTPS است اما بخشی از منابع از HTTP بارگذاری می‌شودمعمولاً اشکال پیکربندی سایت است؛ برای فرم‌های حساس اعتماد نکنید
هشدار روی فایل دانلودیفایل نامتعارف یا کم‌سابقه استمنبع را مستقل بررسی کنید؛ نصب‌کننده‌های ناشناس را اجرا نکنید

یک نکته‌ی مهم: نبود هشدار به معنای امن بودن نیست. فهرست‌های سایت خطرناک بر پایه‌ی گزارش و تحلیل ساخته می‌شوند و همیشه تأخیر دارند. یک سایت فیشینگِ تازه‌ساخته می‌تواند ساعت‌ها بدون هیچ هشداری فعال باشد. مرورگر یک لایه‌ی کمکی است، نه داور نهایی.

خطاهای گواهی و علت واقعی هرکدام

خطای گواهی همیشه به‌معنای حمله نیست؛ در بیشتر موارد یک اشکال پیکربندی یا حتی مشکلی در دستگاه خودِ کاربر است. علت‌های واقعی به ترتیب فراوانی:

  • گواهی منقضی‌شده (ERR_CERT_DATE_INVALID). رایج‌ترین علت، و تقریباً همیشه فراموشی تمدید یا شکست تمدید خودکار.
  • ناهمخوانی نام دامنه (ERR_CERT_COMMON_NAME_INVALID). گواهی برای example.com صادر شده و شما www.example.com را باز کرده‌اید، یا برعکس.
  • گواهی خودامضا یا صادرکننده‌ی نامعتبر (ERR_CERT_AUTHORITY_INVALID). معمول در محیط‌های داخلی و سرورهای آزمایشی.
  • زنجیره‌ی ناقص. سرور گواهی میانی را ارسال نمی‌کند؛ نکته‌ی گمراه‌کننده این است که در بعضی مرورگرها کار می‌کند و در بعضی نه.
  • ساعت اشتباه دستگاه کاربر. اگر تاریخ سیستم غلط باشد، همه‌ی گواهی‌ها نامعتبر به‌نظر می‌رسند. اگر خطا را در همه‌ی سایت‌ها می‌بینید، اول ساعت و تاریخ دستگاه را بررسی کنید.
  • واسطه‌ی بازرسی ترافیک. در بعضی شبکه‌های سازمانی یا نرم‌افزارهای امنیتی، ترافیک TLS باز و دوباره امضا می‌شود. این حالت با شنود واقعی تفاوت فنی چندانی ندارد و به همین دلیل باید بدانید در چه شبکه‌ای هستید.

قاعده‌ی کاربر: از صفحه‌ی هشدار گواهی عبور نکنید، مخصوصاً روی شبکه‌ی عمومی و مخصوصاً برای سایتی که می‌خواهید در آن وارد شوید یا پرداخت کنید. قاعده‌ی صاحب سایت: پایش انقضای گواهی را خودکار کنید. راهنمای رفع هر یک از این خطاها در خطای گواهی SSL آمده است.

نشانه‌های فیشینگ: چطور یک سایت جعلی را تشخیص دهیم

فیشینگ متکی بر شبیه‌سازی است، و تقریباً همیشه یک نشانه در آدرس یا در جریان کار باقی می‌گذارد:

  • دامنه‌ی شبیه اما نه یکسان: جای‌گذاری حرف مشابه، افزودن خط تیره، تغییر پسوند دامنه، یا استفاده از حروف الفبای دیگر که ظاهراً شبیه حروف لاتین‌اند.
  • ترفند زیردامنه — مهم‌ترین موردی که کاربران را فریب می‌دهد: در آدرسی مثل bank.example.com.evil.ir دامنه‌ی واقعی evil.ir است، نه bank.example.com. همیشه دو بخش آخرِ پیش از اولین اسلش را بخوانید.
  • ورود به صفحه از راه لینک، نه از راه تایپ آدرس. برای بانک و درگاه پرداخت، آدرس را دستی وارد کنید یا از نشانک استفاده کنید.
  • فوریت مصنوعی: «حساب شما تا یک ساعت دیگر بسته می‌شود»، «جایزه‌ی شما در انتظار تأیید است».
  • درخواست پرداخت خارج از مسیر رسمی: کارت‌به‌کارت، تغییر شماره حساب در آخرین لحظه، یا انتقال گفت‌وگو به پیام‌رسان.
  • درخواست کد یک‌بارمصرف پیامکی. هیچ سازمان معتبری کد OTP شما را تلفنی یا در چت نمی‌پرسد. این کد به‌تنهایی کلید حساب شماست.
  • لینک کوتاه‌شده در پیام‌های مالی؛ مقصد واقعی پنهان است.

سه بررسی سریع که در چند ثانیه انجام می‌شود: آدرس را کامل بخوانید (نه فقط ابتدای آن)؛ برای سایت‌های فروش، وجود اطلاعات تماس واقعی و مجوز کسب‌وکار را ببینید؛ و اگر قرار است پرداخت کنید، مطمئن شوید صفحه‌ی پرداخت روی دامنه‌ی درگاه رسمی است، نه فرمی داخل خودِ سایت فروشنده.

نشانه‌های سایت آلوده یا هک‌شده از دید بازدیدکننده

گاهی سایت کلاهبردار نیست؛ سایت معتبری است که در معرض خطر قرار گرفته. نشانه‌های قابل مشاهده:

  • تغییر مسیر خودکار به سایت دیگر، به‌ویژه زمانی که از نتایج جست‌وجو وارد می‌شوید و نه با تایپ مستقیم آدرس.
  • تبلیغات یا پنجره‌های بازشوی نامتناسب با محتوای سایت.
  • پیشنهاد نصب افزونه یا «به‌روزرسانی پلیر» برای دیدن محتوا — الگوی کلاسیک توزیع بدافزار.
  • دانلود ناخواسته‌ی فایل بدون آنکه چیزی درخواست کرده باشید.
  • محتوای بی‌ربط، اغلب اسپم دارویی یا شرط‌بندی، که در انتهای صفحات یا در نتایج جست‌وجوی سایت ظاهر می‌شود.
  • در نتایج جست‌وجو، عنوان یا توضیحات صفحه به زبان و موضوعی بی‌ارتباط تغییر کرده باشد.

اگر چنین نشانه‌ای دیدید، از سایت خارج شوید و در آن اطلاعاتی وارد نکنید. اگر مدیر آن سایت هستید، فهرست کامل نشانه‌ها و روش تشخیص در نشانه‌های هک شدن سایت آمده است.

اگر سایت خودتان «ناامن» علامت‌گذاری شد

ترتیب کار اهمیت دارد و اشتباه رایج، معکوس انجام دادن آن است — یعنی درخواست حذف هشدار پیش از رفع علت. مسیر درست:

  1. تشخیص دقیق نوع مشکل. برچسب «ناامن» به‌خاطر نبود HTTPS، خطای گواهی، و علامت‌گذاری به‌خاطر بدافزار یا فیشینگ سه چیز متفاوت‌اند و سه راه‌حل متفاوت دارند. پیام دقیق مرورگر و گزارش مسائل امنیتی در ابزار وب‌مستر موتور جست‌وجو، نقطه‌ی شروع است.
  2. شواهد را پیش از پاک‌سازی نگه دارید. لاگ وب‌سرور، زمان تغییر فایل‌ها، و نسخه‌ی فعلی سایت. اگر لاگ‌ها را پاک کنید، مسیر ورود مهاجم دیگر قابل تشخیص نیست و همان مسیر بعد از بازیابی باز می‌ماند.
  3. یافتن و بستن علت. افزونه یا کتابخانه‌ی وصله‌نشده، رمز ضعیف پنل، فایل آپلودشده‌ی مخرب، یا آسیب‌پذیری کد. بدون این گام، هر پاک‌سازی موقتی است.
  4. پاک‌سازی و بازگردانی. با فرض اینکه مهاجم ماندگاری ایجاد کرده — کاربر ادمین جدید، وب‌شل، کار زمان‌بندی‌شده، کلید SSH — و ممکن است این‌ها در نسخه‌ی پشتیبان هم باشند. روال کامل در پاک‌سازی بدافزار و بازیابی سایت هک‌شده.
  5. چرخش همه‌ی اعتبارنامه‌ها: رمز پنل مدیریت، پایگاه‌داده، FTP/SSH، توکن‌های API و کلیدهای سرویس‌های متصل.
  6. درخواست بازبینی. تنها پس از رفع کامل. درخواست بازبینی روی سایتی که هنوز آلوده است، فقط زمان را تلف می‌کند. مراحل در بلک‌لیست گوگل توضیح داده شده.
  7. پیشگیری از تکرار. به‌روزرسانی منظم، حذف افزونه‌های بلااستفاده، رمز قوی و MFA برای پنل، پشتیبان‌گیری خارج از سرور، و پایش تغییر فایل. جمع‌بندی عملی در پیشگیری از هک شدن سایت و چک‌لیست امنیتی.
حذف هشدار، رفع مشکل نیست

هشدار مرورگر و علامت موتور جست‌وجو نشانه هستند، نه بیماری. اگر تنها هدف شما برداشتن هشدار باشد، در بیشتر موارد چند روز بعد برمی‌گردد — و بار دوم، بازگرداندن اعتماد کاربران و رتبه‌ی جست‌وجو سخت‌تر است.

دو چک‌لیست کوتاه

برای کاربر: پیش از وارد کردن اطلاعات

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

برای صاحب سایت: حداقل‌هایی که سایت را از «ناامن» بیرون می‌آورد

  • HTTPS روی کل سایت، با تمدید خودکار گواهی و پایش انقضا.
  • هدایت کامل HTTP به HTTPS و فعال‌سازی HSTS.
  • حذف محتوای مختلط (منابع HTTP در صفحه‌ی HTTPS).
  • به‌روزرسانی هسته، افزونه‌ها و کتابخانه‌ها، و حذف کامل مواردی که استفاده نمی‌شوند.
  • رمز قوی و MFA برای پنل مدیریت، و محدودسازی نرخ تلاش ورود.
  • حذف فایل‌های رهاشده از ریشه‌ی وب: پشتیبان پایگاه‌داده، آرشیو، و دایرکتوری .git.
  • پشتیبان‌گیری منظم بیرون از سرور و آزمون بازگردانی.
  • و برای سنجش واقعی وضعیت — چیزی که هیچ مرورگری نشانتان نمی‌دهد — بررسی امنیت سایت و در گام بعد تست نفوذ وب.

پرسش‌های متداول

چطور بفهمم یک سایت امن است یا نه؟

سه بررسی: آدرس دامنه را کامل بخوانید و دو بخش آخر آن را با دامنه‌ی رسمی مقایسه کنید؛ هشدارهای مرورگر را جدی بگیرید، به‌ویژه هشدار گواهی و هشدار سایت فریب‌دهنده؛ و مسیر پرداخت را بررسی کنید که روی دامنه‌ی درگاه رسمی باشد. توجه کنید نبود هشدار به‌معنای امن بودن نیست، چون فهرست‌های سایت خطرناک همیشه تأخیر دارند.

آیا وجود HTTPS و قفل یعنی سایت امن است؟

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

چرا مرورگر می‌گوید «اتصال شما خصوصی نیست»؟

یعنی مرورگر نتوانست گواهی سایت را معتبر تأیید کند. رایج‌ترین علت‌ها: انقضای گواهی، ناهمخوانی نام دامنه، گواهی خودامضا، زنجیره‌ی ناقص گواهی، اشتباه بودن ساعت و تاریخ دستگاه خودتان، و واسطه‌ای که ترافیک TLS را باز و دوباره امضا می‌کند. اگر این خطا را در همه‌ی سایت‌ها می‌بینید، اول ساعت دستگاه را بررسی کنید.

سایت من ناامن نشان داده می‌شود، چه کنم؟

ابتدا مشخص کنید مشکل چیست: نبود HTTPS، خطای گواهی، یا علامت‌گذاری به‌خاطر بدافزار — هر سه راه‌حل متفاوتی دارند. برای دو مورد اول، نصب و پیکربندی درست گواهی و هدایت کامل به HTTPS کافی است. برای مورد سوم، ترتیب درست این است: نگه‌داشتن شواهد، یافتن و بستن علت، پاک‌سازی، چرخش اعتبارنامه‌ها، و در آخر درخواست بازبینی.

آیا مرورگر می‌تواند بگوید سایتی هک شده است؟

فقط بخشی را. مرورگر می‌تواند سایتی را که در حال سرو بدافزار یا فیشینگ گزارش شده علامت بزند، اما آسیب‌پذیری‌های خودِ سایت — مثل نقص کنترل دسترسی که داده‌ی مشتریان را افشا می‌کند — هیچ نشانه‌ی ظاهری ندارند و هیچ مرورگری آن‌ها را نمی‌بیند. سنجش این موارد کار تست نفوذ است.

خطرناک‌ترین کاری که کاربر عادی می‌تواند بکند چیست؟

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

محمدرضا مقدم
WRITTEN BY

محمدرضا مقدم

توسعه‌دهنده ابزار

مغز خودکارسازی تیم؛ ابزارها و زیرساخت داخلی پی‌هانتر را می‌سازد تا اسکن و گزارش‌گیری سریع‌تر و دقیق‌تر انجام شود.

WEB

مشکل گواهی امنیتی سایت: علت و رفع خطای SSL

ادامه مطلب ←
WEB

امنیت سایت: راهنمای جامع برای مدیران

ادامه مطلب ←
THREATS

حمله یا حملات سایبری چیست؟ انواع و راه‌های مقابله

ادامه مطلب ←