رمز یکبار مصرف پیامکی (SMS OTP) و مشکلات امنیتی آن چیست؟
رمز یکبار مصرف پیامکی (SMS OTP) روشی رایج برای احراز هویت دو مرحلهای (2FA) است. در این روش، کاربران یک پیامک حاوی رمز عبور یکبار مصرف دریافت میکنند. اگرچه TOTP (رمز عبور یکبار مصرف زماندار) نیز از روشهای رایج احراز هویت دو مرحلهای است و میتواند از طریق پیامک (SMS) ارسال شود، اما نباید SMS OTP را با TOTP یکی دانست. TOTP الگوریتمی برای تولید رمزهای عبور یکبار مصرف زماندار است، در حالی که SMS OTP صرفاً به ارسال رمز از طریق SMS اشاره دارد و ممکن است مبتنی بر TOTP باشد یا نباشد.
حامد عالمی، شرکت رهسا
3 دقیقه مطالعه | 16 آبان 1403
فهرست مطالب
احراز هویت دو مرحلهای از طریق پیامک (SMS) دیگر ایمن تلقی نمیشود. موسسه ملی استاندارد و فنآوری (NIST) در خصوص خطرات استفاده از این روش هشدار داده و گوگل نیز عدم امنیت رمز یکبار مصرف پیامکی (SMS OTP) را اعلام کرده است. برای آشنایی با دلایل این موضوع و جایگزینهای ایمنتر برای احراز هویت دو مرحلهای مبتنی بر رمز یکبار مصرف پیامکی در میان محصولات شرکت رهآورد سامانههای امن، تا انتهای مقاله با ما همراه باشید.
احراز هویت با رمز یکبارمصرف پیامکی SMS OTP چیست؟
این روش احراز هویت بسیار ساده و راحت است. کاربران برای ورود به سیستم، یک پیامک حاوی کد احراز هویت دریافت میکنند. کافی است این کد را در وبسایت یا سامانهی مورد نظر وارد کنند. از آنجا که تلفن همراه در مالکیت شماست، احراز هویت با رمز یکبار مصرف پیامکی (SMS OTP) عامل «تملک» (چیزی که به شما تعلق دارد) را به عنوان یک لایه امنیتی اضافی به فرآیند ورود به سیستم اضافه میکند.
حتی اگر تلفن همراه شما دزدیده شود، سارق برای دسترسی به حساب کاربری شما، همچنان باید گذرواژهی شما را نیز در اختیار داشته باشد.
مزایای احراز هویت با رمز یکبار مصرف پیامکی
احراز هویت از طریق پیامک (SMS OTP) گرچه سادهتر از به خاطر سپردن رمزهای عبور پیچیده و راحتتر از سایر روشهای احراز هویت دو مرحلهای است. همچنین به دلیل در دسترس بودن گسترده و پیادهسازی مقرونبهصرفه، مورد استفادهی بسیاری قرار میگیرد، اما تکیهی صرف بر آن برای کاربران و سازمانهای امنیتی آگاه، روشی ایدهآل نیست. این روش در عین حال که از نداشتن هیچ گونه احراز هویت دو مرحلهای بهتر است، آسیبپذیریهایی دارد. برخی از مزایای احراز هویت مبتنی بر رمز یکبار مصرف پیامکی عبارتاند از:
سادگی استفاده، اما ریسک امنیتی: مدیریت رمزهای عبور پیچیده دشوار است و کاربران اغلب به رمزهای عبور ضعیف یا تکراری متوسل میشوند. SMS OTP جایگزین سادهتری را، بهویژه برای افراد کماطلاع از فناوری، ارائه میدهد. با این حال، این سادگی، آن را در برابر خطرات امنیتی آسیبپذیر میکند
- راحتی در استفاده، اما آسیبپذیری در برابر حملات: در مقایسه با اپلیکیشنهای احراز هویت یا کلیدهای امنیتی، SMS OTP به نرمافزار یا سختافزار اضافی نیاز ندارد. با این وجود، این سادگی، آن را در برابر تعویض سیمکارت و سایر حملات آسیبپذیر میکند
- بهتر از عدم احراز هویت دو مرحلهای، اما ناامنتر از سایر روشها: SMS OTP لایهی امنیتی مضاعفی ایجاد میکند که دسترسی مهاجمان را حتی در صورت دستیابی به رمز عبور، دشوارتر میسازد. با این حال، آگاهی از محدودیتها و آسیبپذیریهای آن و در نظر گرفتن جایگزینهای قویتر در صورت امکان، ضروری است
- دسترسی گسترده، اما نقاط ضعف بالقوه: دریافت پیامک بر روی تقریباً هر تلفن همراهی امکانپذیر است و این روش را بهطور جهانی در دسترس قرار میدهد. این دسترسی گسترده، پیادهسازی آن را برای مشاغل آسان و برای کاربران در سراسر جهان قابل دسترس میکند. اما، اتکا به شبکههای تلفن همراه، نقاط ضعف بالقوهای ایجاد میکند
- پیادهسازی ارزان، اما ریسک هزینههای بالای امنیتی: پیادهسازی SMS OTP برای مشاغل نسبتاً ارزان و با حداقل سرمایهگذاری در زیرساخت همراه است. با این وجود، هزینههای بالای نقض امنیتی ناشی از آسیبپذیریهای SMS OTP میتواند بسیار بیشتر از هرگونه صرفهجویی اولیه باشد
معایب احراز هویت با رمز یکبار مصرف پیامکی SMS OTP
احراز هویت مبتنی بر رمز یکبار مصرف پیامکی (SMS OTP) در مواجهه با روشهای پیچیده و رو به تکامل نفوذگران، به طور فزایندهای در معرض خطر قرار گرفته است. با وجود سهولت استفاده، کاستیهای ذاتی این روش، کفایت آن را در حفاظت از کاربران و سازمانها زیر سوال میبرد. لذا ارزیابی مجدد کارآمدی این مکانیزم امنیتی برای حفاظت از دادهها ضروری است. برخی از آسیبپذیریهای کلیدی این روش عبارتاند از:
- تعویض سیمکارت (SIM Swap): نفوذگران با جعل هویت دارندهی سیمکارت و تماس با اپراتور تلفن همراه، سیمکارت جدیدی درخواست میکنند. با دسترسی به سیمکارت جدید، کنترل پیامکهای حاوی OTP را به دست گرفته و به حسابهای کاربر دسترسی پیدا میکنند
- آسیبپذیریهای پروتکل SS7 (Signaling System No. 7): پروتکل SS7 ستون فقرات شبکهی تلفن همراه است. با وجود نقش حیاتی آن در برقراری ارتباطات، آسیبپذیریهای امنیتی در این پروتکل به نفوذگران اجازه میدهد پیامکها، از جمله OTPها را رهگیری کنند. این نقص در طراحی پروتکل، امنیت رمز یکبار مصرف پیامکی را به خطر میاندازد
- مهندسی اجتماعی: نفوذگران با استفاده از تکنیکهای مهندسی اجتماعی، کاربران را فریب داده و آنها را به افشای کدهای OTP ترغیب میکنند. برای مثال، ارسال لینکهای مخرب از طریق پیامک و القای حس فوریت یا ترس، میتواند کاربر را به کلیک بر روی لینک و افشای اطلاعات حساس، از جمله OTP وادار کند
- هزینه: ارسال OTP از طریق پیامک برای کسبوکارها میتواند هزینهبر باشد، به خصوص در حجم بالا
- تجربه کاربری: تاخیر در دریافت رمز یکبار مصرف پیامکی میتواند منجر به سردرگمی و تجربه کاربری نامطلوب شود
- آسیبپذیری پورتالهای آنلاین اپراتورها: برخی اپراتورها امکان مشاهدهی پیامکها را از طریق پورتالهای آنلاین فراهم میکنند. نفوذ به این پورتالها میتواند منجر به افشای کدهای OTP کاربران شود
- گم شدن یا سرقت دستگاه: در صورت گم شدن یا سرقت تلفن همراه، پیامک ارسال شده به دستگاه قابل دسترسی برای فرد سارق خواهد بود
آیا احراز هویت پیامکی امن است؟
نفوذگران با بهرهگیری از روشهای پیشرفته و با حداقل اطلاعات، قادر به جعل هویت کاربران و دسترسی به حسابهای آنان هستند. بنابراین، اتکا صرف به رمز یکبار مصرف پیامکی برای احراز هویت، روشی ناامن تلقی میشود. موسسهی ملی استاندارد و فناوری NIST (National Institute of Standards and Technology) در پیشنویس ویرایش دوم راهنمای احراز هویت دیجیتال خود (Digital Identity Guidelines) که در جولای ۲۰۱۶ منتشر شد (و نسخه نهایی آن در ژوئن ۲۰۱۷ منتشر شد – NIST Special Publication 800-63B)، به طور رسمی اعلام کرد که استفاده از SMS OTP به عنوان یک عامل احراز هویت out-of-band دیگر توصیه نمیشود. به طور خاص، در بخش 5.1.3.2 این سند، تحت عنوان “Deprecation of SMS for Out-of-Band Authentication” به این موضوع پرداخته شده است.
دلایل NIST برای منسوخ اعلام کردن SMS OTP
NIST چند دلیل اصلی برای این تصمیم خود ارائه کرده است:
- آسیبپذیری در برابر حملات SIM Swap: همانطور که قبلاً توضیح داده شد، این حمله به نفوذگر اجازه میدهد کنترل سیمکارت قربانی را به دست گرفته و SMS های حاوی OTP را دریافت کند. NIST این آسیبپذیری را یک تهدید جدی دانسته و به دلیل افزایش موارد گزارش شده از این نوع حمله، استفاده از SMS OTP را ناامن دانست
- آسیبپذیری پروتکل SS7: موسسه NIST آسیبپذیریهای موجود در پروتکل SS7 که برای ارتباط بین اپراتورهای تلفن همراه استفاده میشود، اشاره کرد. این آسیبپذیریها به نفوذگران امکان رهگیری SMS ها، حتی بدون نیاز به دسترسی فیزیکی به سیمکارت، را میدهد
- امکان رهگیری SMS از طریق بدافزارها: NIST به وجود بدافزارهایی که میتوانند SMS های دریافتی را بخوانند و اطلاعات حساس مانند OTP ها را برای نفوذگران ارسال کنند، اشاره کرد
بیانیه NIST
NIST در سند خود به صراحت اعلام کرد:
Due to the risk that SMS messages may be intercepted or redirected, implementers of new systems SHOULD consider alternative authenticators. If out-of-band verification is required, implementers SHOULD consider using alternative channels, such as voice or e-mail
“با توجه به خطر رهگیری یا تغییر مسیر پیامهای SMS، پیادهسازان سیستمهای جدید باید احراز هویتکنندههای جایگزین را در نظر بگیرند. اگر تأیید out-of-band ضروری است، آنها باید استفاده از کانالهای جایگزین مانند صدا یا ایمیل را در نظر بگیرند.”
در واقع NIST به طور مستقیم استفاده از SMS OTP را ممنوع نکرده، بلکه با توجه به ریسکهای موجود، آن را منسوخ اعلام نموده و استفاده از روشهای جایگزین و امنتر را قویاً توصیه مینماید. این توصیه NIST تاثیر زیادی در صنعت امنیت سایبری داشته و بسیاری از سازمانها و شرکتها به سمت استفاده از روشهای احراز هویت قویتر مانند اپلیکیشنهای احراز هویت و کلیدهای امنیتی سختافزاری حرکت کردهاند.
جایگزینهای احراز هویت رمز یکبار مصرف پیامکی SMS OTP
روشهای احراز هویت ایمنتر و کارآمدتری نسبت به رمز یکبار مصرف پیامکی برای حفاظت از دادهها وجود دارند. برخی از این روشها عبارتند از:
- برنامههای رمزساز (Authenticator Apps) مبتنی بر TOTP (Time-based One-Time Password): این برنامهها بر روی گوشی هوشمند نصب میشوند و رمزهای یکبار مصرف مبتنی بر زمان تولید میکنند. این رمزها برای مدت کوتاهی (معمولاً ۳۰ ثانیه) معتبر هستند و پس از آن منقضی میشوند
- احراز هویت مبتنی بر اعلان فشاری (Push Notification): پس از وارد کردن نام کاربری و رمز عبور، یک اعلان فشاری بر روی گوشی هوشمند کاربر ظاهر میشود. کاربر میتواند با تأیید یا رد اعلان، هویت خود را تأیید یا رد کند
مزیت هر دو روش فوق نسبت به SMS OTP، عدم وابستگی به شبکهی تلفن همراه است که آنها را در برابر حملاتی مانند تعویض سیمکارت و رهگیری SS7 ایمنتر میکند. علاوه بر روشهای نرمافزاری، توکنهای سختافزاری نیز برای احراز هویت مورد استفاده قرار میگیرند:
- توکنهای رمزساز سختافزاری: این توکنها به صورت فیزیکی رمزهای یکبار مصرف تولید میکنند
- احراز هویتکنندههای FIDO (Fast Identity Online): این روش، استاندارد جدید و بسیار امنی برای احراز هویت است. احراز هویتکنندههای FIDO میتوانند از ویژگیهای امنیتی دستگاه، مانند اثر انگشت یا تشخیص چهره، برای تأیید هویت استفاده کنند. این روش امنیت بسیار بالاتری نسبت به سایر روشهای ذکر شده ارائه میدهد
چالشهای عبور از احراز هویت رمز یکبار مصرف پیامکی
حذف پیامک به عنوان عامل احراز هویت و جایگزینی آن با روشهای امنتر، در عمل میتواند به راحتی انجام شود، اما چالش اصلی، عادت دادن کاربران به استفاده از این جایگزینها است. اگر تلفن همراه هوشمند شما عامل زیستسنجی (مثلا اثر انگشت) را پشتیبانی میکند، میتوانید خیلی ساده و بی دردسر احراز هویت امنتری را داشته باشید. در ادامه به بررسی چالشهای این انتقال میپردازیم:
- مقاومت در برابر تغییر: بسیاری از کاربران به استفاده از SMS OTP عادت کردهاند و ممکن است در برابر یادگیری و استفاده از روشهای جدید مقاومت نشان دهند
- نیاز به آموزش: برای استفاده موثر از روشهای جدید، کاربران نیاز به آموزش و راهنمایی دارند. این آموزش باید به زبانی ساده و قابل فهم ارائه شود
- سازگاری پلتفرمها: همه پلتفرمها و سرویسها از روشهای احراز هویت جدید پشتیبانی نمیکنند. این موضوع میتواند باعث سردرگمی کاربران شود
- نگرانیهای حریم خصوصی: برخی کاربران ممکن است نگرانیهایی در مورد حریم خصوصی خود در رابطه با استفاده از روشهایی مانند احراز هویت بیومتریک داشته باشند
به طور کلی، با وجود چالشهای موجود، انتقال به روشهای احراز هویت امنتر یک ضرورت است و با اجرای راهکارهای مناسب، میتوان این انتقال را به شکلی موثر و کارآمد انجام داد. استفاده از استاندارد FIDO2 که هم امنیت بالایی دارد و هم تجربه کاربری راحتتری ارائه میدهد، میتواند گزینه بسیار مناسبی برای آینده احراز هویت باشد.
جمع بندی
با افزایش پیچیدگی و فراگیری حملات سایبری، سازمانها باید سطح امنیت خود را بالاتر ببرند و به سمت روشهای احراز هویت قویتر حرکت کنند. اتکا به گذرواژه به تنهایی، بهویژه گذرواژههای ضعیف یا تکراری، دیگر کافی نیست و سازمانها باید از روشهای احراز هویت چندعاملی (MFA) و ترجیحاً بدون گذرواژه (Passwordless) استفاده کنند. رمز یکبار مصرف پیامکی (SMS OTP) در گذشته گامی به سمت MFA بود، اما همانطور که در این مقاله بحث شد، آسیبپذیریهای آن باعث شده تا روشهای امنتری از قبیل توکنهای رمزیاب سختافزاری/نرمافزاری و احراز هویتکنندههای FIDO جایگزین آن شوند. شرکت رهآورد سامانههای امن محصولات متنوع سختافزاری و نرمافزاری را در این زمینه به کاربران پیشنهاد میدهد.
با پیادهسازی این راهکارها، سازمانها میتوانند سطح امنیت خود را به طور قابل توجهی افزایش داده و از دادهها و منابع خود در برابر تهدیدات سایبری محافظت کنند. استفاده از روشهای بدون گذرواژه و استاندارد FIDO2 به عنوان بهترین روش برای احراز هویت امن توصیه میشود.