مشکل امنیتی در استفاده از target=_BLANK

آشنایی با اصول امنیتی در هنگام طراحی سایت سبب می‌شود آسیب‌های احتمالی برای کاربران و صاحبان سایت‌ها به حداقل برسند. یک اشکال امنیتی در هنگام ایجاد پیوندهای خارجی در سایت که ویژگی target=_BLANK داشته باشند می‌تواند سبب ایجاد آسیب‌های قابل توجه به ویژه برای کاربران شبکه‌های اجتماعی شود.

این اشکال در حال حاضر در سایت اینستاگرام برطرف شده است ولی سایر شبکه‌های اجتماعی همچنان این ریسک امنیتی را دارا هستند.

شرح مشکل

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

هنگامی که یک سایت پیوندی به سایت دیگر ایجاد می‌کند و در ایجاد پیوند، ویژگی target=_BLANK را درج می‌کند، سایت باز شده، با استفاده از کدهای جاوااسکریپت، به برخی اطلاعات پنجره‌ی اصلی دسترسی خواهد داشت.

از جمله‌ی این دسترسی‌ها، نشانی صفحه‌ی باز کننده است. با استفاده از کدی شبیه به کد زیر، سایت مقصد پیوند می‌تواند پنجره یا برگه‌ی مبدا را به یک نشانی جدید با هدف Phishing هدایت کند.

وجود کد بالا در یک صفحه‌ی مخرب، بررسی می‌کند که آیا کاربر با کلیک روی پیوندی در سایت دیگر با ویژگی target=_BLANK به این سایت مراجعه کرده است یا خیر و در صورت مثبت بودن پاسخ، سایت مبدا را به نشانی مخرب جدید هدایت می‌کند. نشانی مخرب می‌تواند ظاهری شبیه سایت اصلی ایجاد کند و از کاربر اطلاعات شخصی یا ورود وی را درخواست کند.

راه حل مشکل

برای حل کردن این مشکل، اضافه کردن ویژگی rel="noopener noreferrer"‎ سبب جلوگیری از دسترسی سایت مقصد به پنجره‌ی فعلی و نشانی پنجره‌ی اصلی خواهد شد.

با استفاده از جاوااسکریپت نیز می‌توان به شکل زیر از رخداد این اشکال امنیتی جلوگیری نمود:

منبع: dev.to


مشاهده‌ی تمامی نوشته‌ها در گروه: اخبار دنیای وب. ‏ فهرست برچسب‌ها: , , .

2 نظر در مورد «مشکل امنیتی در استفاده از target=_BLANK»

  • اشکان می‌گوید:

    سلام و خسته نباشید
    در آخرین آپدیت وردپرس 4.7.4 به صورت اتوماتیک rel=”noopener noreferrer” به همه لینک های target=_BLANK اضافه میشه و این مشکل رو حل کرده حالا سوالی دارم اینکه وردپرس حتی به لینک های داخلی هم که از target=_BLANK استفاده شده هم rel=”noopener noreferrer رو اضافه میکنه،لازمه که لینک های داخلی هم این rel رو داشته باشه و اینکه از لحاظ سئو rel=”noopener noreferrer چه تاثییری در لینک های داخلی داره؟

    • روکاوب می‌گوید:

      با سلام
      این دو ویژگی اثری روی سئو سایت نباید داشته باشد، بلکه تنها کاربرد آن برای مرورگر است که دسترسی سایت باز شده به سایتی که آن را باز کرده مسدود می‌کند

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *