یک محقق چینی در شرکت infosec در مورد یک حمله phishing غیرقابلشناسایی گزارش داده است که میتواند حتی محتاطترین کاربران را نیز بر روی اینترنت گول بزند.
او هشدار داده است که مهاجمان میتوانند از یک آسیبپذیری شناختهشده در مرورگرهای Chrome، فایرفاکس و اُپرا استفاده کنند تا نامهای دامنه قلابی خود را بهعنوان وبسایتهای متعلق به سرویسهای قانونی مانند اپل، گوگل یا آمازون نمایش دهند. مهاجمان از این طریق میتوانند اطلاعات کاربری یا دادههای مالی و دیگر اطلاعات حساس کاربران را بدزدند.
بهترین کار در برابر حمله phishing چیست؟ عموماً، چک کردن نوار آدرس بعد از لود شدن صفحه موردنظر و بررسی اینکه آیا از یک ارتباط HTTPS ایمن استفاده میکند، یا خیر. آیا واقعاً این بهترین کار است؟
حال قبل از ورود به جزئیات دقیقتر، در ابتدا بیایید نگاهی به این وبسایت[۱] آزمایشی بیندازیم. (توجه کنید که شما ممکن است به علت ترافیک بالای موجود بر روی این سرور آزمایشی، کمی معطل شوید.) این وبسایت آزمایشی توسط محقق امنیتی چینی به نام Xudong Zheng که این حمله را کشف کرده است، راهاندازی شده است.
Xudong Zheng در گزارش خود میگوید[۲]: “این غیرممکن است تا بشود این سایت را بهعنوان یک سایت جعلی تشخیص داد مگر اینکه بهطور دقیق URL سایت موردنظر یا گواهینامه SSL آن بررسی شود.”
اگر مرورگر شما در نوار آدرس apple.com را نمایش میدهد که توسط SSL ایمن شده است، اما محتوای این صفحه از سرور دیگری آمده است (همانطور که در شکل بالا نمایش داده شده است.)، درنتیجه مرورگر شما به حمله homograph آسیبپذیر است.
یک وبسایت[۳] اثبات ادعای دیگر که توسط متخصصان امنیتی شرکت Wordfence ساخته شده است[۴] نیز این آسیبپذیری مربوط به مرورگرها را ثابت میکند. این وبسایت، دامنه epic.com را بهعنوان کلاهبرداری انتخاب کرده است.
حمله Homograph از سال ۲۰۰۱ شناخته شده است اما سازندگان مرورگرها در تلاش برای برطرف کردن آن هستند. این یک نوع حمله spoofing است که در حقیقت آدرس یک وبسایت به نظر قانونی میآید اما درواقع اینطور نیست چراکه یک کاراکتر یا چند کاراکتر بهصورت فریبکارانهای توسط کاراکترهای Unicode جایگزین شدهاند.
بسیاری از کاراکترهای Unicode که در نامهای دامنه بینالمللی نمایشگر حروف الفبای یونانی، سیریلیک یا ارمنی هستند در نگاه عادی مانند حروف لاتین به نظر میرسند اما توسط کامپیوترها بهگونهای دیگر شناختهشده و آدرسهای وبِ آنها کاملاً متفاوت است.
برای مثال، حرف سیریلیک “а” (U+0430) و حرف لاتین “a” (U+0041) هر دو به طور متفاوتی توسط مرورگرها شناخته میشوند اما در نوار آدرس مرورگرها بهصورت “a” نمایش داده میشوند.
حملات Phishing از نوع Punycode
بهطور پیشفرض، بسیاری از مرورگرها از رمزگذاری(۱) Punycode برای نمایش دادن کاراکترهای Unicode در URL استفاده میکنند تا در مقابل حملات phishing از نوع Homograph از خود دفاع کنند. Punycode یک نوع رمزگذاری خاص است که توسط مرورگر وب برای تبدیل کاراکترهای Unicode به مجموعهای از کاراکترهای محدود از ASCII که شامل A تا Z و ۰ تا ۹ هستند، استفاده میشود. این کاراکترهای محدود توسط سیستم نامهای دامنه بینالمللی(۲) پشتیبانی میشوند.
برای مثال، دامنه چینی短.co درPunycode بهصورت xn--s7y.co نمایش داده میشود.
بر طبق گفته Zheng، این راه گریز بر پایه این حقیقت است که اگر کسی تمام کاراکترهای نام یک دامنه را از یک مجموعه کاراکتر زبان خارجی واحد انتخاب کند که دقیقاً مشابه دامنه مورد هدف قرار داده شده است، در مرحله بعد مرورگرها آن را به یک زبان مشابه ترجمه(۳) میکنند بهجای آنکه به فرمت Punycode تبدیل کنند.
این راه گریز به این محقق اجازه داده است تا یک دامنه بانام xn--80ak6aa92e.com ثبت کند و لایه محافظتی را دور بزند، که توسط تمام مرورگرهای آسیبپذیر شامل Chrome، فایرفاکس و اپرا به شکل apple.com نمایش داده خواهد شد. توجه داشته باشید که مرورگرهای اینترنت اکسپلورر، Microsoft Edge، Apple Safari، Brave و Vivaldi آسیبپذیر نیستند.
در اینجا پیشوند xn-- بهعنوان یک پیشوند رمزنگاریشده سازگار با ASCII شناخته میشود که نشاندهنده این است که مرورگرِ وب از رمزنگاری punycode برای نمایش دادن دامنه بهصورت کاراکترهای Unicode استفاده کرده است و ازآنجاکه Zheng از کاراکتر سیریلیک “а” (U+0430) بهجای کاراکتر ASCII یعنی “a” (U+0041) استفاده کرده است، رویکرد دفاعی اجرا شده توسط مرورگر نتوانسته جلوی آن را بگیرد.
Zheng این مشکل را به سازندگان این مرورگرها شامل Chome و موزیلا در ماه ژانویه ۲۰۱۷ گزارش داده است.
درحالیکه موزیلا همچنان در حال بحث در ارتباط با انتشار وصله مناسب است، گوگل در حال حاضر این آسیبپذیری را در نسخه آزمایشی Chrome Canary 59 برطرف کرده است و وصله دائمی آن با انتشار نسخه Chrome Stable 58 در انتهای این ماه در دسترس عموم قرار میگیرد.
درعینحال، به میلیونها کاربر که در معرض این حمله پیچیده و غیرقابل تشخیص قرار دارند توصیه میشود تا گزینه پشتیبانی از Punycode را در مرورگرهایشان غیرفعال کنند تا بهطور موقت از این حمله در امان باشند و چنین دامنههای phishing را شناسایی کنند.
چگونه از حملات Phishing نوع Homograph در امان باشیم؟
کاربران فایرفاکس میتوانند مراحل زیر را جهت جلوگیری موقت از این حمله دنبال کنند:
- در نوار آدرس مرورگر عبارت about:config را تایپ کنید و Enter را فشار دهید.
- در نوار جستجو عبارت Punycode را تایپ کنید.
- تنظیمات مرورگر پارامتری با نام IDN_show_punycode را نمایش میدهد، بر روی آن دو بار کلیک کرده و یا کلیک راست کنید و Toggle را انتخاب کنید تا مقدار آن از false به True تغییر پیدا کند.
متأسفانه هیچگونه تنظیمات مشابهی در Chrome یا اپرا بهمنظور غیرفعال کردن دستی تبدیل URL از نوع Punycode وجود ندارد، بنابراین کاربران Chrome باید صبر کنند تا در هفته بعد نسخه ۵۸ و اصلاحشده این مرورگر منتشر شود.
اگرچه، بعضی از افزونههای مربوط به Chrome که توسط منابع شخص ثالث در دسترس هستند[۵] بر روی App Store وجود دارند که کاربران میتوانند آنها را نصب کنند تا هر بار که وارد وبسایتی میشوند که در دامنه آن از کاراکترهای Unicode استفاده نشده، به آنها اخطار دهد.
در همین حال، یکی از بهترین راهها جهت محافظت از خود در برابر حملات homograph استفاده از یک برنامه مدیریت کلمات عبور مناسب[۶] است که بهعنوان یک افزونه به مرورگر اضافهشده و بهصورت خودکار لینکهای قانونی را تشخیص میدهد و اطلاعات کاربری شما را وارد میکند.
بنابراین، هر بار که شما وارد دامنهای شوید که شبیه دامنههای قانونی مانند apple.com یا amazon.com است ولی در عمل اینگونه نباشد، نرمافزار مدیریت کلمه عبور شما این دامنه را شناسایی کرده و از وارد شدن اطلاعات کاربری شما در این سایت بهصورت خودکار جلوگیری میکند.
علاوه بر این، همیشه به کاربران اینترنت توصیه میشود تا URLهای وبسایتهای مهم نظیر جیمیل، فیسبوک، توییتر، یاهو و یا وبسایتهای مربوط به بانکها را بهصورت دستی بهجای کلیک کردن بر روی لینک گذاشته شده بر روی بعضی وبسایتها یا پستهای الکترونیک، در نوار آدرس مرورگر وارد کنند تا از چنین حملاتی در امان باشند.
منابع
[۲] https://www.xudongz.com/blog/2017/idn-phishing
[۴] https://www.wordfence.com/blog/2017/04/chrome-firefox-unicode-phishing
[۵] https://chrome.google.com/webstore/detail/punycode-alert/djghjigfghekidjibckjmhbhhjeomlda
[۶] http://thehackernews.com/2016/07/best-password-manager.html
[۷] http://thehackernews.com/2017/04/unicode-Punycode-phishing-attack.html
(۱) encoding
(۲) International Domain Names (IDNs)
(۳) render
ثبت ديدگاه