شاید تاکنون بارها از مدیر شبکه خود و یا کارشناسان شبکههای وایرلس شنیده باشید که برای در امان ماندن و جلوگیری از هک وایفای سعی کنید که از پروتکل WPA2 استفاده و برای آن یک پسورد قوی انتخاب کنید. این توصیه به علت ضعف الگوریتمهای رمزنگاری در پروتکلهای قدیمیتر مثل WEP و WPA مطرح میشد. WPA2 اما از الگوریتمهای رمزنگاری پیچیدهتری برخوردار است و حدوداً ۱۳ سال بود که کسی موفق به شکستن این الگوها نشده بود. اما اخیراً اشکال کشف شده در آن یک آسیبپذیری جدی را مطرح میکند که میتواند بسیار پر ریسک و خطرناک باشد.
چه کسی آسیبپذیری پروتکل WPA2 را کشف کرد؟
سال ۲۰۱۶، Mathy Vanhoef محقق بلژیکی از دانشگاه کاتولیک لون این آسیبپذیری جدی را در استاندارد WPA2 کشف کرد. او به همراه همکارش اطلاعیههایی برای آگاهسازی شرکتهای ذیربط و همچنین تیم آمادگی اظطراری کامپیوتری ایالات متحده (US-CERT) از این اشکال فرستادند. US-CERT هم بعد از آن،در آگوست ۲۰۱۷، یک هشدار عمومی برای صدها شرکت فرستاد. این محقق بعد از آن در اکتبر ۲۰۱۷ یعنی حدود یک هفته قبل این اطلاعات را به صورت عمومی منتشر کرد.
حملهی «نصب مجدد کلید» یا «Key Reinstallation AttaCK» یا به اختصار KRACK باعث میشود هر محصول نرمافزاری یا سختافزاری که از استاندارد وایرلس WPA2 استفاده میکند در معرض خطر استراق سمع و سرقت اطلاعات قرار گیرد. اما چگونه؟
KRACK چیست و چطور کار میکند؟
تنها محدودیت این روش این است که حمله کننده باید در محددهی امواج وایفای شما باشد. حملهی اصلی علیه مکانیزم ۴way handshake پرتکل WPA2 صورت میگیرد. این handshake یا دست دادن زمانی صورت میگیرد که یک کلاینت(کاربر) بخواهد به یک شبکه وایرلس از طریق یک اکسسپوینت (AP) وصل شود. در این پروسه، کلاینت و اکسسپوینت هر دو روی یک گواهی مثل رمز وایفای توافق میکنند. این دو در همان زمان، توسط ۴way handshake روی یک کلید رمزنگاری دیگر که برای رمزنگاری کل ترافیک عبوری شبکه استفاده میشود مذاکره میکنند.
در حملهی KRACK، دشمن قربانی را فریب میدهد که یک کلید از قبل استفاده شده را دوباره نصب کند. این کار از طریق دستکاری پیامهای رمزنگاری handshake و ارسال مجدد آنها صورت میگیرد. وقتی قربانی این کلید را دوباره نصب میکند، پارامترهای وابسته مثل شمارهی افزایشی بستهی ارسالی ( یعنی nonce) و شماره بستهی دریافتی( یعنی شمارندهی replay ) به مقدار اولیهی خود ریست میشوند. در واقع، برای تضمین امنیت، یک کلید باید فقط یک بار نصب و یک بار استفاده شود؛ اما، در پروتکل WPA2 این اتفاق نمیافتد و این کلید محدودیت یک بار نصب و استفاده را ندارد. بنابراین با دستکاری handshake های رمزنگاری میتوان در عمل از این ضعف سو استفاده کرد.
بعد از حملهی KRACK چه اتفاقی میافتد؟
بعد از حملهی موفق KRACK، حمله کننده میتواند تمام ترافیک بین شما و اکسسپوینت را ضبط کرده و رمزگشایی کند. در این روش حمله، پسورد وایفای شما لو نمیرود و حمله کننده به روتر یا اکسسپوینت شما وصل نمیشود. پس عوض کردن پسورد چیزی را عوض نمیکند. اتفاقی که رخ میدهد این است که ترافیک عبوری شما استراق سمع میشود. بنابراین تمام اطلاعات شما از جمله اسناد، اطلاعات حساب بانکی، فیلمها، عکسها و … میتواند دزدیده شود.
همچنین اگر کاربر سازمانی باشید، بسته به پیکربندی شبکه، امکان تزریق کد و دستکاری دادهها مثل تزریق باجافزارها و بدافزارها به سادگی وجود دارد. برای جلوگیری از این اتفاق، یک آنتی ویروس قوی باید نصب کنید.
آیا وایفای من هم آسیبپذیر است؟
همانطور که گفته شد، این ضعف در خود استاندار WPA2 وجود دارد نه در محصول نرمافزاری یا سختافزاری خاصی؛ پس بله. دستگاه شما و هر دیوایسی که از وایفای استفاده میکند، امکان دارد آسیبپذیر باشد. در واقع، ضعف مذکور تمام پلتفرمهای نرمافزاری مثل ویندوز، مکاواس، لینوکس، آیاواس، اندروید و ویندوزفون را شامل میشود.
چطور باید از هک وایفای به روش KRACK جلوگیری کرد؟
عوض کردن پسورد وایفای، غیرفعال کردن مکانیزم WPS وحتا تغییر شیوهی رمزنگاری WPA2 به AES نمیتواند از حملهی KRACK جلوگیری کند. در عوض شما باید بلافاصله تمام دیوایسهای خود را آپدیت و به روزرسانی کنید.
KRACK باعث نمیشود که کل استاندارد WPA2 بلااستفاده شود؛ درواقع شرکتهای نرمافزاری و سختافزاری با وصله (Patch) کردن این مشکل میتوانند این آسیبپذیری را رفع کنند.
پس تنها کاری که باید بکنید این است که گوش به زنگ باشید تا به محض ارائهی به روزرسانی برای دیوایسهایتان آنها را دانلود و نصب کنید تا آپدیت شوند. همیشه به روز باشید.