محققان موسسه ملی تحقیقات انفورماتیک و اتوماسیون فرانسه (INRIA) و دانشگاه فنی نانیانگ (سنگاپور) یک روش حمله ارائه دادهاند. () که به عنوان اولین پیادهسازی عملی حمله به الگوریتم SHA-1 ارائه شده است، که میتواند برای ایجاد امضاهای دیجیتال جعلی در PGP و GnuPG مورد استفاده قرار گیرد. محققان معتقدند که اکنون میتوان تمام حملات عملی به MD5 را به SHA-1 اعمال کرد، اگرچه هنوز به منابع قابل توجهی برای پیادهسازی نیاز دارند.
این روش مبتنی بر انجام است که به فرد اجازه میدهد تا برای دو مجموعه داده دلخواه، paddingهایی را انتخاب کند که هنگام الحاق، مجموعه دادههای تصادمی را ایجاد میکنند، اما اعمال الگوریتم SHA-1 برای آنها، هش حاصل یکسانی را به همراه خواهد داشت. به عبارت دیگر، میتوان دو padding را برای دو سند موجود محاسبه کرد و اگر یکی به سند اول و دیگری به سند دوم الحاق شود، هشهای SHA-1 حاصل برای این فایلها یکسان خواهد بود.
این روش جدید با بهبود کارایی تشخیص تصادم و نشان دادن کاربرد عملی آن برای حمله به PGP، با تکنیکهای مشابه ارائه شده قبلی متفاوت است. به طور خاص، محققان توانستند دو کلید عمومی PGP با اندازههای مختلف (RSA-8192 و RSA-6144) با شناسههای کاربری و گواهیهای مختلف تولید کنند که باعث تصادم SHA-1 میشوند. شامل کارت شناسایی قربانی بود، و شامل نام و تصویر مهاجم بود. علاوه بر این، به دلیل تشخیص تصادم، گواهی شناسایی کلید، که شامل کلید و تصویر مهاجم بود، همان هش SHA-1 گواهی شناسایی را داشت که شامل کلید و نام قربانی بود.
مهاجم میتواند از یک مرجع صدور گواهی شخص ثالث، امضای دیجیتالی برای کلید و تصویر خود درخواست کند، سپس امضای دیجیتالی را به کلید قربانی منتقل کند. امضای دیجیتالی به دلیل تصادم و تأیید کلید مهاجم توسط مرجع صدور گواهی، معتبر باقی میماند و به مهاجم اجازه میدهد کنترل کلیدی را که به نام قربانی نامگذاری شده است، به دست آورد (زیرا هش SHA-1 برای هر دو کلید مطابقت دارد). در نتیجه، مهاجم میتواند خود را به جای قربانی جا بزند و هر سندی را از طرف او امضا کند.
این حمله همچنان بسیار پرهزینه است، اما اکنون به خوبی در دسترس سازمانهای اطلاعاتی و شرکتهای بزرگ قرار دارد. یک حملهی جستجوی فراگیر ساده با استفاده از یک پردازندهی گرافیکی ارزانتر NVIDIA GTX 970، 11 دلار هزینه داشته است، در حالی که حملهی جستجوی فراگیر با یک پیشوند مشخص، 45 دلار هزینه داشته است (برای مقایسه، هزینهی حملهی جستجوی فراگیر در SHA-1 در سال 2012، 2 میلیون دلار و در سال 2015، 700 دلار تخمین زده شده است). انجام یک حملهی عملی به PGP نیاز به دو ماه محاسبه با استفاده از 900 پردازندهی گرافیکی NVIDIA GTX 1060 داشت که اجارهی آن برای محققان 75 دلار هزینه داشت.
روش تشخیص برخورد پیشنهادی محققان تقریباً 10 برابر کارآمدتر از دستاوردهای قبلی است - آنها پیچیدگی محاسبات برخورد را به جای 264.7 به 261.2 عملیات و برخوردهای با پیشوند مشخص را به جای 267.1 به 263.4 عملیات کاهش دادند. محققان توصیه میکنند که در اسرع وقت از SHA-1 به SHA-256 یا SHA-3 تغییر دهید، زیرا پیشبینی میکنند هزینه یک حمله تا سال 2025 به 10،000 دلار کاهش یابد.
توسعهدهندگان GnuPG در تاریخ ۱ اکتبر از این مشکل (CVE-2019-14855) مطلع شدند و در ۲۵ نوامبر اقداماتی را برای مسدود کردن گواهیهای آسیبدیده در GnuPG 2.2.18 انجام دادند. تمام امضاهای دیجیتال SHA-1 که پس از ۱۹ ژانویه سال گذشته ایجاد شدهاند، اکنون نامعتبر تلقی میشوند. CAcert، یکی از مراجع اصلی صدور گواهی برای کلیدهای PGP، قصد دارد برای صدور گواهی کلید به توابع هش امنتر روی آورد. در پاسخ به اطلاعات مربوط به روش حمله جدید، توسعهدهندگان OpenSSL تصمیم گرفتند SHA-1 را در سطح امنیتی پیشفرض سطح ۱ غیرفعال کنند (SHA-1 دیگر برای گواهیها و امضاهای دیجیتال در طول handshake مجاز نخواهد بود).
منبع: opennet.ru
