گوگل در وبلاگ رسمی خود نوشته است که هفتهٔ گذشته متوجه یک رشته حمله به سه دامنهٔ کشوری شده است: .gh متعلق به غنا، .sl متعلق به سیرالئون و .as متعلق به ساموآی آمریکا. این حملهها از راه نفوذ به سیستمهای گوگل انجام نشده بود. مهاجمان مستقیماً سراغ زیرساخت این سه پسوند رفته بودند.
ماجرا چطور شروع شد؛ ربودن سه دامنهٔ کشوری
هر کشور پسوند دامنهٔ مخصوص خودش را دارد؛ مثل .ir برای ایران. نهادی که همهٔ دامنههای یک پسوند را ثبت و مدیریت میکند «رجیستری» (Registry) نام دارد. طبق گزارش گوگل، مهاجمان رجیستری این سه پسوند را در اختیار گرفتند. به این ترتیب، هر دامنهای که به .gh، .sl یا .as ختم میشد در معرض خطر قرار گرفت.
در قدم بعد، مهاجمان رکوردهای اصلی چند دامنهٔ منتخب را تغییر دادند. این رکوردها مشخص میکنند یک دامنه به کدام سرور اشاره کند. به گزارش آرستکنیکا، مهاجمان با این کار آدرس IP فهرستی از سایتها را عوض کردند و توانستند ترافیک آنها را دریافت و ارسال کنند. گوگل تأکید میکند که در این ماجرا زیرساخت خود صاحبان دامنهها هک نشده بود.
گواهی HTTPS معتبر چطور به دست مهاجمان افتاد
مرکز صدور گواهی (Certificate Authority یا CA) پیش از صدور گواهی، بهطور خودکار بررسی میکند که درخواستدهنده واقعاً کنترل دامنه را در دست دارد. چون رکوردهای دامنه در اختیار مهاجمان بود، آنها از این آزمون گذشتند و برای چند دامنهٔ گوگل و دامنههای چند سازمان دیگر گواهی گرفتند. گوگل میگوید دلیلی ندارد که فکر کند مراکز صدور گواهی در این ماجرا خطایی کردهاند.
گواهی TLS پشتوانهٔ همان قفلی است که مرورگر کنار نشانی سایت نشان میدهد. این گواهی نام دامنه را به یک کلید عمومی گره میزند و کلید خصوصی فقط نزد صاحب سایت است. اگر کسی برای یک دامنه گواهی غیرمجاز داشته باشد، میتواند خودش را جای آن سایت جا بزند، بیآنکه مرورگر هشداری نشان دهد. خطر اصلی این حمله همین است.
این اولین بار نیست که چنین اتفاقی میافتد. آرستکنیکا یادآوری میکند که در سال ۲۰۱۱ هک شرکت هلندی DigiNotar باعث صدور گواهی جعلی برای google.com و بیش از ۲۰۰ دامنهٔ پربازدید دیگر شد. به نوشتهٔ همین گزارش، آن گواهیها علیه دستکم ۳۰۰ هزار نفر مرتبط با ایران به کار رفت.
واکنش گوگل؛ مسدود کردن گواهیها در کروم
گوگل میگوید بلافاصله استفاده از گواهیهای غیرمجاز دامنههای خود را در مرورگر کروم مسدود کرده است. این کار با سازوکاری به نام CRLSets انجام شد. گوگل همچنین با مراکز صادرکننده همکاری کرد تا این گواهیها باطل شوند و کاربران مرورگرها و برنامههای دیگر هم در امان بمانند.
بعد از این مرحله، دادههای لاگهای شفافیت گواهی (Certificate Transparency یا CT) نشان داد که چند سازمان دیگر هم هدف همین حملهها بودهاند؛ از جمله به گفتهٔ گوگل «چند برند بزرگ جهانی و سرویسهای آنلاین پرکاربرد». کروم گواهیهای این سازمانها را هم مسدود کرد. گوگل نام هیچکدام از این دامنهها را اعلام نکرده و تعداد گواهیهای صادرشده هم هنوز روشن نیست.
طبق صفحهٔ رسمی پروژهٔ کرومیوم، CRLSets روش اصلی کروم برای مسدود کردن سریع گواهیها در شرایط اضطراری است. کروم معمولاً وضعیت باطل شدن گواهیها را بهصورت آنلاین از مراکز صدور نمیپرسد. نسخهٔ CRLSet فعلی مرورگر را میتوانید با باز کردن صفحهٔ chrome://components ببینید.
به گفتهٔ گوگل، کاربران کروم برای در امان ماندن لازم نیست کاری انجام دهند. با این حال، گوگل هشدار داده است که نمیتواند تضمین کند همهٔ دامنههای آسیبدیده را پیدا کرده باشد. اقدام کروم هم محافظت مطمئنی برای کاربران مرورگرهای دیگر نیست.
این ماجرا برای کاربر و مدیر سایت در ایران چه معنایی دارد
اگر کاربر معمولی هستید، کروم و هر مرورگر دیگری را که استفاده میکنید بهروز نگه دارید. هشدار خطای گواهی را هم هیچوقت دستکم نگیرید. اگر مرورگر روی سایتی آشنا مثل جیمیل یا بانک خطای گواهی نشان داد، روی گزینهٔ ادامه نزنید و صفحه را ببندید.
اگر مدیر سایت هستید، گوگل دو توصیهٔ مشخص دارد. اول، لاگهای شفافیت گواهی را برای همهٔ دامنههایتان مدام زیر نظر بگیرید؛ حتی دامنههای پارکشده و نسخههای کشوری. هر گواهی معتبر از نگاه کروم باید در این لاگهای عمومی ثبت شود. پس با پایش آنها تقریباً بلافاصله از صدور هر گواهی تازه برای دامنهتان باخبر میشوید. ابزارهای جستوجوی عمومی مثل crt.sh برای شروع کافی است.
دوم، رکورد CAA سختگیرانه منتشر کنید. با این رکورد اعلام میکنید فقط کدام مراکز صدور گواهی اجازه دارند برای دامنهٔ شما گواهی صادر کنند. گوگل میگوید CAA جلوی صدور گواهی در حین یک حملهٔ فعال را نمیگیرد. اما بعد از پس گرفتن کنترل دامنه، مانع میشود مهاجم با نتیجهٔ اعتبارسنجی قبلی که مراکز صدور ذخیره کردهاند، گواهی تازه بگیرد.
گوگل همچنین میگوید در بلندمدت، از راه برنامهٔ ریشهٔ کروم (Chrome Root Program) و برنامهٔ تازهٔ ریشههای مقاوم در برابر کوانتوم، مدت اعتبار گواهیها و استفادهٔ دوباره از اعتبارسنجی دامنه را کاهش میدهد.
شما برای پایش گواهیهای دامنهتان از چه ابزاری استفاده میکنید؟ تجربهتان را در بخش دیدگاهها بنویسید.
این ماجرا نشان میدهد امنیت یک سایت فقط به سرور خودش بستگی ندارد و به زیرساخت پسوند دامنه هم وابسته است. شما وقتی مرورگر روی یک سایت آشنا خطای گواهی نشان میدهد، چه میکنید: صفحه را میبندید یا روی ادامه میزنید؟















نظرات کاربران