لو رفتن کلید ۸ گواهی TLS؛ اینترنت در حالت آمادهباش
خلاصهٔ کاملتر
طبق گزارش Ars Technica، هشت گواهی میانی TLS (یعنی گواهیهایی که بین گواهی ریشهٔ مورد اعتماد و گواهی سایتها قرار میگیرن و میتونن گواهی جدید امضا کنن) پیدا شدن که کلید خصوصیشون بهطرز باورنکردنی ضعیف بوده. این گواهیها مال eMudhra Limited، یه مرجع صدور گواهی (CA) هندی، هستن. یعنی هر کسی کلید رو پیدا میکرد، میتونست برای هر سایتی تو اینترنت گواهی بسازه که مرورگرها و اپها بهش اعتماد کنن.
ماجرا با یه هشدار غیررسمی روی سایت emudhra.we-have-a-problem.com شروع شد که فقط نوشته بود «We have a problem here – Wayne». این پیام با کلید خصوصی یکی از همین گواهیها امضا شده بود، یعنی گزارشدهنده ثابت کرده بود کلید دستشه. تا ظهر سهشنبه مرورگرها و چند اپ و زبان برنامهنویسی بزرگ هر هشت گواهی رو بلاک کردن. فعلاً تو certificate transparency logs (لاگهای عمومی که صدور همهٔ گواهیهای معتبر رو ثبت میکنن) نشونهای از سوءاستفاده دیده نشده.
ضعف کلیدها مهندسها رو شوکه کرده. یه کلید معمولی NIST P-384 حدود ۳۸۴ بیت آنتروپی داره، یعنی تعداد حالتهای ممکنش یه عدد ۱۱۶ رقمیه. ولی کلیدهای لو رفته فقط بین ۳ تا ۸ بیت بودن؛ مقدار کلیدها بهترتیب ۴، ۵۶، ۶۶، ۱۱۵، ۱۵۵، ۱۵۶، ۲۳۰ و ۲۳۷ بوده. فیلیپو والسوردا، از نگهدارندههای بخش رمزنگاری Go، حدس میزنه یه رابط تولید کلید پارامتر size داشته و اشتباهی ۱ گذاشتنش. بن کارترایت-کاکس از BGP.tools هم فکر میکنه کد نمونه به محیط production نشت کرده.
والسوردا میگه این پاکسازی از Heartbleed (باگ معروف OpenSSL در ۲۰۱۴ که بازیابی ازش سالها طول کشید) هم بزرگتره. دلیلش دم درازی از سیستمهاست که باید بهروز بشن: دستگاههای IoT، کانتینرهای Docker، سرورهای لینوکسی فراموششده و ابزارهای CLI که کپی خودشون از گواهیهای ریشه رو همراه دارن (چیزی که مثلاً تو اکوسیستم Python رایجه). بعضی توزیعهای لینوکس هنوز آپدیت رو آماده نکردن.
فعلاً بیشترین خطر برای کاربرهای VPN هست، مخصوصاً تو کشورهایی که دولتشون ممکنه ترافیک رو شنود کنه. از مرورگرها فقط Edge روی ویندوز ۱۰ هنوز به ۱۲ میزبان آسیبپذیر وصل میشد. اپهایی مثل Signal، WhatsApp و WireGuard که برای محرمانگی به TLS تکیه نمیکنن درگیر نیستن. یه نکته هم هست: سوءاستفاده از این گواهیها حملهای از نوع adversary-in-the-middle لازم داره، یعنی مهاجم باید وسط ارتباط بشینه. این کار برای کسی که شبکهٔ محلی مثل کافیشاپ یا دانشگاه رو کنترل میکنه خیلی راحتتره.
نکات کلیدی:
- هشت گواهی میانی متعلق به CA هندی eMudhra با کلید خصوصی ۳ تا ۸ بیتی پیدا شدن.
- کلید عادی NIST P-384 حدود ۳۸۴ بیت آنتروپی داره.
- مرورگرها گواهیها رو بلاک کردن، بهجز Edge روی ویندوز ۱۰ در زمان انتشار گزارش.
- تو certificate transparency logs هنوز سوءاستفادهای دیده نشده.
- دستگاههای IoT، کانتینرها و ابزارهایی که گواهی ریشهٔ خودشون رو دارن بیشترین مشکل رو برای پاکسازی دارن.
- Signal، WhatsApp و WireGuard تحت تأثیر نیستن.




