بررسی جامع روشهای احراز هویت دو عاملی
امنیت دیجیتال در دنیای امروز به یکی از دغدغههای اصلی سازمانها و کاربران تبدیل شده است. احراز هویت دو عاملی به عنوان یکی از کارآمدترین راهکارها برای محافظت از حسابهای کاربری و اطلاعات حساس شناخته میشود. این روش با افزودن یک لایه امنیتی اضافه بر رمز عبور معمولی، احتمال نفوذ غیرمجاز را به طور چشمگیری کاهش میدهد. انتخاب روش مناسب تأیید هویت دو لایه میتواند تفاوت بزرگی در سطح امنیت شما ایجاد کند.
تصور کنید حساب بانکی، ایمیل کاری یا سامانههای اداری شما فقط با یک رمز عبور محافظت میشوند. حتی اگر رمز عبور پیچیدهای انتخاب کرده باشید، همچنان در معرض خطر حملات فیشینگ، keylogger یا حملات brute force هستید. اما وقتی احراز هویت دو مرحلهای را فعال میکنید، حتی اگر رمز عبور شما افشا شود، مهاجم بدون داشتن عامل دوم نمیتواند وارد حساب شما شود.
مرتضی اسدی، شرکت رهسا
4 دقیقه مطالعه | 7 آبان 1404
فهرست مطالب
درک مفاهیم پایه: چرا ورود دو مرحلهای ضروری است؟
قبل از مقایسه روشهای مختلف، لازم است با مفاهیم پایه آشنا شویم. احراز هویت معمولی که فقط از رمز عبور استفاده میکند، به روش تکعاملی معروف است. در این روش، شما چیزی که میدانید (رمز عبور) را ارائه میدهید. اما تأیید هویت دو عاملی بر پایه این اصل است که باید حداقل دو مورد از سه دسته زیر را داشته باشید.
دسته اول شامل چیزی است که میدانید، مانند رمز عبور یا پین. دسته دوم چیزی که دارید را شامل میشود، مانند گوشی موبایل، توکن سختافزاری یا کارت هوشمند. دسته سوم نیز چیزی که هستید را در بر میگیرد، که شامل ویژگیهای بیومتریک مانند اثر انگشت، تشخیص چهره یا اسکن عنبیه است.
زمانی که سیستم تایید هویت دو لایه را پیادهسازی میکنید، معمولاً از ترکیب دسته اول و دوم استفاده میشود. برای مثال، ابتدا رمز عبور خود را وارد میکنید، سپس کدی که به گوشی موبایل شما ارسال شده یا توسط دستگاه رمزیاب تولید شده را وارد مینمایید. این روش حتی اگر رمز عبور شما سرقت شود، امنیت حساب را حفظ میکند زیرا مهاجم به عامل دوم دسترسی ندارد.
روش اول: رمز یکبار مصرف مبتنی بر زمان (TOTP)
یکی از رایجترین و پرکاربردترین روشهای احراز هویت چند عاملی، استفاده از رمز یکبار مصرف مبتنی بر زمان است. در این روش، یک دستگاه سختافزاری یا اپلیکیشن موبایل هر ۳۰ یا ۶۰ ثانیه یک کد عددی جدید تولید میکند که کاربر باید آن را همراه با رمز عبور خود وارد کند.
مزیت اصلی این روش، امنیت بالا و سادگی استفاده است. چون کدها محدودیت زمانی دارند، حتی اگر کسی بتواند کد را ببیند، پس از گذشت چند ثانیه دیگر قابل استفاده نیست. این ویژگی در برابر حملات replay attack محافظت میکند. همچنین نیازی به اتصال اینترنت برای تولید کد نیست، که این موضوع آن را برای محیطهایی که دسترسی اینترنت محدود دارند، مناسب میسازد.
دستگاههای رمزیاب مانند مدلهای C100، C200 و درسا ۳۰۰ که شرکت رهسا ارائه میدهد، نمونههایی از پیادهسازی TOTP هستند. این دستگاهها کوچک، قابل حمل و دارای باتری بلندمدت هستند که میتوانند برای سالها بدون نیاز به تعویض باتری کار کنند. استفاده از رمزیاب سختافزاری نسبت به اپلیکیشنهای موبایل امنیت بیشتری دارد زیرا احتمال آلودگی به بدافزار یا هک شدن گوشی را حذف میکند.
مقایسه رمزیاب سختافزاری با اپلیکیشن موبایل
رمزیابهای سختافزاری و اپلیکیشنهای موبایل هر دو از الگوریتم TOTP استفاده میکنند، اما تفاوتهای مهمی با هم دارند. رمزیاب سختافزاری یک دستگاه مستقل است که فقط یک کار انجام میدهد، تولید کدهای امنیتی. این تخصصی بودن باعث میشود احتمال آسیبپذیری کمتر باشد. دستگاه نمیتواند آلوده به ویروس شود، هک نمیشود و به اینترنت متصل نیست.
در مقابل، اپلیکیشنهای موبایل در یک دستگاه چندمنظوره نصب میشوند که ممکن است آسیبپذیریهای امنیتی داشته باشد. گوشیهای موبایل ممکن است به بدافزار آلوده شوند، به اینترنت متصل باشند و اطلاعات دیگری روی آنها ذخیره شده که میتواند مورد حمله قرار گیرد. البته اپلیکیشنهای موبایل مزیت راحتی استفاده را دارند زیرا بیشتر افراد همیشه گوشی خود را همراه دارند و نیازی به حمل دستگاه جداگانه نیست.
برای سازمانهایی که امنیت بالا برایشان اولویت است، مانند بانکها، سازمانهای دولتی یا شرکتهایی که با اطلاعات حساس سر و کار دارند، استفاده از رمزیاب سختافزاری توصیه میشود. برای کاربران عادی که به دنبال تعادل بین امنیت و راحتی هستند، اپلیکیشنهای موبایل معتبر مانند Google Authenticator یا Microsoft Authenticator گزینه خوبی محسوب میشوند.
روش دوم: رمز یکبار مصرف مبتنی بر رویداد (HOTP)
روش دیگری که کمتر رایج است اما در برخی موارد خاص مفید میباشد، استفاده از رمز یکبار مصرف مبتنی بر رویداد است. برخلاف TOTP که بر اساس زمان کد جدید تولید میکند، در HOTP هر بار که کاربر دکمهای را فشار میدهد، کد جدیدی تولید میشود. این کد تا زمانی که استفاده شود یا کد بعدی تولید گردد، معتبر باقی میماند.
مزیت اصلی این روش این است که نیازی به هماهنگی ساعت بین سرور و دستگاه کاربر نیست. در TOTP اگر ساعت دستگاه با سرور همگام نباشد، کدهای تولید شده معتبر نخواهند بود و کاربر نمیتواند وارد شود. اما در HOTP این مشکل وجود ندارد زیرا سیستم بر اساس تعداد دفعات تولید کد کار میکند نه زمان.
با این حال، HOTP آسیبپذیری خاص خود را دارد. اگر مهاجمی بتواند کد تولید شده را قبل از استفاده توسط کاربر واقعی ببیند و استفاده کند، میتواند به سیستم دسترسی پیدا کند. همچنین اگر کاربر چندین بار پشت سر هم دکمه را فشار دهد بدون اینکه از کدها استفاده کند، ممکن است سیستم و دستگاه از هماهنگی خارج شوند. به همین دلیل، TOTP در بیشتر موارد ترجیح داده میشود.
روش سوم: پیامک و تماس صوتی
ارسال کد از طریق پیامک یکی از قدیمیترین و شناختهشدهترین روشهای ورود دو مرحلهای است. در این روش، پس از وارد کردن رمز عبور، سیستم کدی را به شماره موبایل ثبت شده کاربر ارسال میکند. کاربر این کد را دریافت و وارد میکند تا هویت خود را تأیید نماید.
ساده بودن و قابل دسترس بودن این روش برای اکثر کاربران، مزیت اصلی آن است. تقریباً همه افراد گوشی موبایل دارند و میتوانند پیامک دریافت کنند، بدون نیاز به نصب اپلیکیشن یا خرید دستگاه جداگانه. همچنین برای کاربرانی که با فناوری آشنایی کمی دارند، استفاده از پیامک ساده و قابل فهم است.
اما متأسفانه این روش آسیبپذیریهای امنیتی قابل توجهی دارد. حمله SIM Swap یکی از رایجترین روشهای دور زدن احراز هویت مبتنی بر پیامک است. در این حمله، مهاجم با جعل هویت و فریب اپراتور تلفن همراه، شماره قربانی را به سیمکارت خود منتقل میکند. پس از آن، تمام پیامکها از جمله کدهای احراز هویت به دستگاه مهاجم ارسال میشوند.
محدودیتها و ریسکهای امنیتی پیامک
علاوه بر حمله SIM Swap، پروتکل SS7 که بستر ارتباطی شبکههای تلفن همراه است، آسیبپذیریهای شناخته شدهای دارد. مهاجمان حرفهای میتوانند با بهرهگیری از این آسیبپذیریها، پیامکها را رهگیری کنند بدون اینکه نیازی به دسترسی فیزیکی به سیمکارت داشته باشند. این موضوع به ویژه برای افراد برجسته، سیاستمداران یا مدیران سازمانها که ممکن است هدف حملات هدفمند باشند، خطرناک است.
مشکل دیگر، وابستگی به پوشش شبکه تلفن همراه است. در مناطقی که پوشش ضعیف است یا در هنگام مسافرت به خارج از کشور، ممکن است کاربر نتواند پیامک را به موقع دریافت کند. این موضوع میتواند منجر به عدم دسترسی به حساب کاربری در زمانهای حساس شود.
سازمانهای امنیتی معتبر مانند NIST (موسسه ملی استانداردها و فناوری آمریکا) توصیه کردهاند که از پیامک به عنوان روش احراز هویت دو عاملی استفاده نشود و به روشهای امنتری مانند TOTP یا کلیدهای سختافزاری روی آورند. با این حال، استفاده از پیامک همچنان بهتر از عدم استفاده از هیچ روش احراز هویت دو مرحلهای است.
روش چهارم: سامانههای احراز هویت یکپارچه
برای سازمانهایی که نیاز به مدیریت متمرکز و کنترل دسترسی چندین سیستم و کاربر دارند، سامانههای احراز هویت دو عاملی مانند فوآس گزینه ایدهآلی هستند. این سامانهها امکان پیادهسازی چندین روش مختلف تأیید هویت دو لایه را به صورت یکپارچه فراهم میکنند.
سامانه فوآس که توسط شرکت رهسا ارائه میشود، از روشهای مختلفی از جمله ارسال رمز یکبار مصرف از طریق پیامک، ایمیل، اپلیکیشن موبایل، دستگاههای رمزیاب سختافزاری و حتی توکنهای امضای دیجیتال پشتیبانی میکند. این انعطافپذیری به سازمانها اجازه میدهد بر اساس نیاز و سطح حساسیت هر کاربر یا سیستم، روش مناسبی را انتخاب کنند.
یکی از مزایای مهم استفاده از یک سامانه متمرکز، گزارشدهی و نظارت جامع است. مدیران میتوانند تمام فعالیتهای احراز هویت را رصد کنند، تلاشهای ناموفق برای ورود را شناسایی نمایند و در صورت مشاهده الگوهای مشکوک، اقدامات لازم را انجام دهند. همچنین امکان تنظیم سیاستهای امنیتی مختلف برای گروههای مختلف کاربران فراهم است.
یکپارچگی با سیستمهای موجود
یکی از چالشهای پیادهسازی احراز هویت چند عاملی، ادغام آن با سیستمها و اپلیکیشنهای موجود در سازمان است. سامانههای پیشرفته مانند فوآس از پروتکلهای استاندارد مانند RADIUS، LDAP و SAML پشتیبانی میکنند که یکپارچگی با انواع سیستمهای قدیمی و جدید را آسان میکند.
این قابلیت به ویژه برای سازمانهایی که زیرساخت IT پیچیدهای دارند و نمیتوانند به راحتی سیستمهای خود را تغییر دهند، بسیار ارزشمند است. سامانه میتواند به عنوان یک لایه امنیتی اضافی در جلوی سیستمهای موجود قرار گیرد بدون اینکه نیاز به تغییرات عمده در برنامهها یا زیرساخت باشد.
روش پنجم: احراز هویت مبتنی بر استاندارد FIDO
پیشرفتهترین و امنترین روش احراز هویت دو عاملی، استفاده از کلیدهای امنیتی مبتنی بر استاندارد FIDO است. این روش که توسط اتحاد FIDO (Fast IDentity Online) توسعه یافته، از رمزنگاری کلید عمومی استفاده میکند و در برابر طیف گستردهای از حملات سایبری از جمله فیشینگ، Man-in-the-Middle و حملات replay مقاوم است.
در این روش، کاربر از یک کلید امنیتی فیزیکی یا دستگاه موبایل خود به عنوان عامل دوم استفاده میکند. زمانی که میخواهید وارد یک سرویس شوید، پس از وارد کردن نام کاربری، سیستم درخواست تأیید هویت از کلید FIDO میکند. کاربر کافی است کلید را به پورت USB وصل کند یا دستگاه را به صورت NFC نزدیک نماید و یک دکمه را فشار دهد.
سامانه احراز هویت نشانه که بر اساس استاندارد FIDO2 کار میکند، یک پیادهسازی پیشرفته از این تکنولوژی است. این سامانه علاوه بر امنیت بالا، تجربه کاربری بسیار راحت و سریعی را ارائه میدهد. کاربران دیگر نیازی به وارد کردن کدهای طولانی یا به خاطر سپردن رمزهای عبور پیچیده ندارند.
چرا FIDO امنترین گزینه است؟
امنیت بالای FIDO به معماری رمزنگاری آن برمیگردد. در این روش، هر سرویس یک جفت کلید عمومی و خصوصی منحصر به فرد دارد. کلید خصوصی هرگز از دستگاه کاربر خارج نمیشود و فقط کلید عمومی با سرور به اشتراک گذاشته میشود. حتی اگر سرور هک شود و کلید عمومی سرقت شود، مهاجم نمیتواند از آن برای جعل هویت کاربر استفاده کند.
همچنین FIDO در برابر حملات فیشینگ کاملاً مقاوم است. چون احراز هویت بر اساس دامنه (domain) سایت انجام میشود، حتی اگر کاربر فریب خورده و به یک سایت جعلی برود، کلید FIDO امضای معتبری تولید نمیکند. این ویژگی یکی از مهمترین مزایای نسبت به روشهای دیگر است که همگی در معرض حملات فیشینگ قرار دارند.
شرکت رهسا انواع توکنهای FIDO را ارائه میدهد که میتوانند با انواع دستگاهها و سیستمعاملها کار کنند. این توکنها در اندازهها و فاکتورهای مختلف از جمله USB-A، USB-C، NFC و Bluetooth موجود هستند تا نیازهای متنوع کاربران را پوشش دهند.
روش ششم: احراز هویت بیومتریک
احراز هویت بیومتریک که شامل استفاده از ویژگیهای فیزیکی منحصر به فرد افراد مانند اثر انگشت، تشخیص چهره، اسکن عنبیه یا تشخیص صدا است، به سرعت در حال گسترش میباشد. این روش راحتی استفاده بالایی دارد زیرا کاربر نیازی به به خاطر سپردن رمز یا حمل دستگاه ندارد و فقط کافی است خود را به سیستم معرفی کند.
مزیت بیومتریک این است که تقلید از آن بسیار دشوار است. اثر انگشت، چهره یا عنبیه هر فرد منحصر به فرد است و کپی کردن آن برای مهاجمان معمولی تقریباً غیرممکن میباشد. همچنین کاربر نمیتواند ویژگیهای بیومتریک خود را فراموش کند یا جایی جا بگذارد، برخلاف رمز عبور یا دستگاه احراز هویت.
با این حال، استفاده از بیومتریک به تنهایی به عنوان تنها عامل احراز هویت، ریسکهایی دارد. اگر دادههای بیومتریک شما سرقت شوند، برخلاف رمز عبور که میتوانید آن را تغییر دهید، امکان تغییر اثر انگشت یا چهره خود را ندارید. به همین دلیل، استفاده از بیومتریک در کنار روشهای دیگر در یک سیستم احراز هویت چند عاملی توصیه میشود.
ترکیب بیومتریک با FIDO برای امنیت مطلق
یکی از قدرتمندترین ترکیبها، استفاده همزمان از بیومتریک و کلیدهای FIDO است. در این روش، کلید FIDO خود دارای سنسور بیومتریک است و قبل از اینکه بتواند برای احراز هویت استفاده شود، باید بیومتریک کاربر تأیید گردد. این ترکیب هر دو عامل “چیزی که دارید” (کلید فیزیکی) و “چیزی که هستید” (بیومتریک) را فراهم میکند.
سامانه نشانه از این ترکیب پشتیبانی میکند و امکان استفاده از گوشیهای هوشمند به عنوان کلید FIDO را فراهم میسازد. در این حالت، کاربر اثر انگشت خود را روی سنسور گوشی قرار میدهد یا با Face ID هویت خود را تأیید میکند، سپس گوشی به عنوان کلید احراز هویت عمل مینماید. این روش امنیت بالا را با راحتی استفاده ترکیب میکند.
مقایسه عملکرد روشها در سناریوهای مختلف
انتخاب بهترین روش احراز هویت دو عاملی بستگی به نیازها، منابع و سطح امنیتی مورد نیاز دارد. برای کاربران خانگی که میخواهند حسابهای شخصی خود مانند ایمیل، شبکههای اجتماعی یا خدمات بانکداری آنلاین را ایمن کنند، استفاده از اپلیکیشنهای TOTP مانند Google Authenticator یا رمزیاب سختافزاری ساده، انتخاب مناسبی است.
برای کسبوکارهای کوچک و متوسط که تعداد محدودی کارمند دارند و میخواهند دسترسی به سیستمهای داخلی را ایمن کنند، ترکیب رمزیابهای سختافزاری برای کارمندانی که به سیستمهای حساس دسترسی دارند و اپلیکیشن موبایل برای سایر کاربران، میتواند تعادل خوبی بین امنیت و هزینه ایجاد کند.
سازمانهای بزرگ، بانکها و نهادهای دولتی که نیاز به بالاترین سطح امنیت دارند و باید از دادههای حساس میلیونها کاربر محافظت کنند، باید به سمت راهکارهای پیشرفتهتر مانند سامانههای یکپارچه احراز هویت و کلیدهای FIDO حرکت نمایند. این سازمانها همچنین باید سیاستهای امنیتی جامع و آموزش مداوم کارکنان را در کنار فناوری پیادهسازی کنند.
هزینه در مقابل امنیت: یافتن تعادل مناسب
یکی از ملاحظات مهم در انتخاب روش مناسب، هزینه پیادهسازی و نگهداری است. روشهای ارزانتر مانند پیامک یا اپلیکیشنهای موبایل رایگان، هزینه اولیه کمی دارند اما ممکن است هزینههای پنهان مانند ریسک نقض امنیتی و خسارات ناشی از آن را به همراه داشته باشند.
در مقابل، سرمایهگذاری در روشهای امنتر مانند رمزیابهای سختافزاری یا کلیدهای FIDO ممکن است هزینه اولیه بیشتری داشته باشد، اما در بلندمدت با کاهش خطر نقض امنیت، کاهش تماسهای پشتیبانی برای بازیابی رمز عبور و افزایش اعتماد کاربران، صرفهجویی قابل توجهی ایجاد میکنند. تحقیقات نشان داده که هزینه میانگین یک نقض امنیتی برای سازمانها میتواند به میلیونها دلار برسد، که در مقایسه با آن، هزینه پیادهسازی احراز هویت قوی ناچیز است.
پیادهسازی موفق: نکات کلیدی
صرف انتخاب یک روش مناسب کافی نیست، بلکه پیادهسازی صحیح و آموزش کاربران نیز بسیار مهم است. بسیاری از سازمانها با شکست در پذیرش سیستم تایید هویت دو لایه توسط کاربران مواجه میشوند زیرا فرآیند پیچیده یا آموزش کافی ارائه نمیشود.
اولین قدم، انتخاب یک روش که با فرهنگ سازمانی و سطح دانش فنی کاربران سازگار باشد، میباشد. برای سازمانی با کاربران مسن یا کمسواد دیجیتال، شاید استفاده از رمزیاب سختافزاری با صفحه نمایش بزرگ و دکمههای ساده، بهتر از اپلیکیشن موبایل پیچیده باشد. در مقابل، برای سازمانی با کارمندان جوان و فناوریپسند، استفاده از گوشی هوشمند به عنوان کلید FIDO میتواند راحتتر و کارآمدتر باشد.
دوم، فراهم کردن آموزش جامع و پشتیبانی مداوم ضروری است. کاربران باید دقیقاً بدانند چگونه از سیستم استفاده کنند، چه کاری انجام دهند اگر دستگاه خود را گم کردند و چگونه میتوانند در صورت بروز مشکل کمک بگیرند. داشتن یک تیم پشتیبانی آماده و فرآیند بازیابی واضح، اعتماد کاربران را افزایش میدهد و مقاومت در برابر تغییر را کاهش میدهد.
آینده احراز هویت: به سمت دنیایی بدون رمز عبور
روند صنعت به سمت حذف کامل رمزهای عبور حرکت میکند. احراز هویت بدون رمز که در آن کاربر فقط از عوامل دوم و سوم (چیزی که دارید و چیزی که هستید) استفاده میکند، آینده امنیت دیجیتال است. استاندارد FIDO2 و پروتکل WebAuthn که توسط W3C استاندارد شده، بستر فنی برای این تحول را فراهم کردهاند.
شرکتهای بزرگ فناوری مانند Google، Microsoft و Apple به طور فعال در حال حمایت و پیادهسازی احراز هویت بدون رمز هستند. سیستمعاملهای مدرن و مرورگرهای وب، پشتیبانی بومی از FIDO را دارند که استفاده از آن را برای کاربران عادی آسان میکند. در آینده نزدیک، احتمالاً شاهد کاهش چشمگیر استفاده از رمزهای عبور خواهیم بود.
برای سازمانهای ایرانی، آمادگی برای این تحول ضروری است. سرمایهگذاری در زیرساختها و راهکارهایی که از استانداردهای جهانی مانند FIDO پشتیبانی میکنند، نه تنها امنیت فعلی را بهبود میبخشد بلکه آمادگی برای آینده را نیز فراهم میکند. سامانههایی مانند نشانه که هم اکنون از این استانداردها پشتیبانی میکنند، گزینههای مناسبی برای این انتقال هستند.
نتیجهگیری: انتخاب هوشمندانه برای امنیت بهتر
احراز هویت دو عاملی دیگر یک انتخاب اختیاری نیست بلکه یک ضرورت برای هر کسی که در دنیای دیجیتال فعالیت میکند، محسوب میشود. با درک تفاوتهای بین روشهای مختلف و انتخاب گزینهای که با نیازها و امکانات شما سازگار است، میتوانید امنیت دیجیتال خود را به طور قابل توجهی افزایش دهید.
برای افراد، شروع با یک اپلیکیشن TOTP معتبر یا خرید یک رمزیاب ساده میتواند گام بزرگی به سمت امنیت بیشتر باشد. برای سازمانها، سرمایهگذاری در سامانههای جامع و پیشرفتهتری مانند فوآس یا نشانه که امکان مدیریت متمرکز، پشتیبانی از روشهای متنوع و یکپارچگی با سیستمهای موجود را فراهم میکنند، توصیه میشود.
به یاد داشته باشید که هیچ روش احراز هویتی صد در صد ایمن نیست، اما استفاده از احراز هویت دو مرحلهای ریسک نفوذ غیرمجاز را به میزان قابل توجهی کاهش میدهد. ترکیب روشهای مختلف در یک استراتژی دفاع عمقی، بهترین حفاظت را ارائه میدهد. امنیت یک سفر است نه یک مقصد، و انتخاب درست در مورد احراز هویت، اولین قدم مهم در این سفر است.