چیست؟
WPS که مخفف Wi-Fi Protected Setup است و در گذشته WSC و در بعضی از محصولات شبکه، QSS نیز خوانده میشود.. WPS توسط گروه Wi-Fi Alliance در سال ۲۰۰۶ معرفی شد و هدف از آن ارائه قابلیتی بود که کاربران خانگی که از تنظیمات و امنیت مودم یا اکسس پوینت شان آگاهی چندانی نداشتند، بتوانند بدون وارد کردن رمز (PSK) و تنها با استفاده از یک کد ۸ رقمی یا حتی بدون وارد کردن کد، بتوانند به شبکه متصل شوند.
ابتدا به روشهایی که با استفاده از آن میتوان از طریق WPS کانکت شد اشاره کنیم:
روشهایی نیز وجود دارد که با استفاده از NFC یا USB کاربر میتواند به شبکه وارد شود ولی روشهای بالا رایج تر هستند.
پس از این که کاربر از طریق پروتکل WPS وارد شبکه شد، کلیدهای رمزگذاری که اکسس پوینت پکت دادهها را با استفاده از آن رمزگذاری خواهد کرد، به دستگاه کاربر ارسال میشود. این کلید رمزگذاری از رمز WPA/WPA2 شبکه بدست میآید. یعنی پروتکل WPS پس از برقراری نشست، رمز را در اختیار کاربر قرار میدهد.
حال دستگاه با استفاده از این رمز اقدام به رمزگذاری دادههای ارسالی و رمزنگاری دادههای دریافتی میکند.
WPS (یا QSS) قابلیتی بسیار آسیب پذیر و نا امن است یعنی افرادی که حتی اطلاعی از هک و امنیت ندارند میتوانند به سادگی شبکه وای فای شما را هک کرده و رمز آن را بدست بیاورند. با توجه به این که در بسیاری از اکسس پوینتها و مودمها قابلیت WPS به صورت پیشفرض فعال گردیده و در برخی دیگر حتی آن را نمیتوان غیرفعال هم کرد، شبکههای بسیاری را در معرض هک شدن در عرض چند دقیقه قرار میدهد. اما چرا WPS تا این قدر نا امن است؟
آسیب پذیریهای WPS عبارت اند از:
در بســـیاری از مودمها، پین کد اولیه یا پیشفرضی که کاربران حتی آنها را هم عوض نمیکنند، طبق یک الگوریتم ثابت و آدرس مک مودم ساخته میشود. این الگوریتم معمولاً در محصولات یک شرکت ثابت بوده و همانطور که میدانید، مک آدرس هم چیزی است که همیشه با پکتهای مودم انتشار میگردد. پس به راحتی میتوان پین دبلیو پی اس پیشفرض رنج وسیعی از مودمها را یافت.
حتی اگر نتوانیم پین کد پیشفرض را بیابیم، میتوانیم اقدام به بروت فورس کردن پین کد کنیم. همانطور که میدانید پین کد WPS یک مقدار ۸ کاراکتری تهیه شده از اعداد است. عدد آخر پین به عنوان چک سام استفاده میشود پس ما عملا باید ۷ رقم را بروت فورس کنیم. بروت فورس کردن یک مقدار ۷ کاراکتری با ۱۰ عدد مختلف میشود ۱۰ به توان ۷ یعنی ۱۰۰۰۰۰۰۰ (ده میلیون) ترکیب مختلف. با در نظر گرفتن کرک کردن ۴ ترکیب در هر ثانیه (چون سخت افزار مودمها محدود و کم سرعت است)، ما پین کد یک شبکه را باید در حدود یک ماه کرک کنیم!!!!
اما آسیب پذیریای که در پین کد WPS کشف شد، به ما این امکان را میدهد که ۴ کاراکتر اول و ۳ کاراکتر دوم را به صورت جداگانه مورد حمله قرار بدهیم. اگر حساب کنیم برای بخش اول تنها ۱۰ هزار ترکیب و برای بخش دوم تنها ۱ هزار ترکیب وجود دارد و این یعنی برای کرک کردن پین کد WPS فقط ۱۱۰۰۰ ترکیب را باید چک کنیم و این پروسه در مقابل ۱۰۰۰۰۰۰۰ ترکیب بسیار بسیار سریع تر اتفاق خواهد افتاد. بنابراین با فرق ۴ پین در هر ثانیه، طی کمتر از ۱ ساعت WPS ما کرک خواهد شد!
حتی اگر سرعت پردازشی مودم / اکسس پوینت ما کم باشد یا مانع کرک کردن پشت سر هم شود، طی کمتر از نیم روز WPS ما کرک خواهد شد. البته بعضی از مودم یا اکسس پوینتها بعد از یک تعداد درخواست نا موفق، اقدام به قفل کردن کل پروسه مقایسه پین میکنند و حتی با تغییر دادن آدرس مک هم کرک کردن کرک کردن فقط با سرعت بسیار کم امکان خواهد داشت.
روش دیگری که در سال گذشته کشف شد، به هکر این امکان را میدهد که بدون کرک کردن پین کدهای زیاد و فقط با استفاده از پاسخ درخواست در پروتکل، اقدام به جداسازی پین کد از پیام رمزگذاری شده میکند. البته این رخنه تنها در چیپهای ساخت Ralink و Realtek و Broadcom مشاهده شده است. در این روش از پیام حاوی اطلاعات هش شده برای دقیق کردن حدس استفاده میشود و پین طی یک ثانیه تا نام ساعت هک خواهد شد.
همه ما با خطراتی که به صورت فیزیکی کامپیوتر، مودم، گوشی و ... ما را تحدید میکند، آشنا هستیم. اما موضوع برای WPS کمی تفاوت دارد زیرا تنها با فشردن یک کلید (روش Push Button) روی مودم یا اکسس پوینت یا خواندن پین پیشفرض در پشت مودم، هکر به سادگی خواهد توانست به شبکه ما وارد شود.