آیا احراز هویت دو مرحلهای امن است؟ حملات OTP چگونه کار میکنند؟
آیا احراز هویت دو مرحلهای همیشه امن است؟ با روشهای دور زدن 2FA، حملات OTP و فیشینگ آشنا شوید و راههای محافظت از حسابهای خود را یاد بگیرید.
احراز هویت دو مرحلهای (2FA) میتواند از حساب شما در برابر سرقت محافظت کند؛ اما اگر خودتان کد یکبار مصرف (OTP) را در اختیار کلاهبردار قرار دهید، این لایه امنیتی دیگر کارایی چندانی نخواهد داشت.
احراز هویت دو مرحلهای یا 2FA که از کدهای یکبار مصرف (OTP) استفاده میکند، امروزه یکی از مهمترین راهکارهای مقابله با فیشینگ، مهندسی اجتماعی و سرقت حسابهای کاربری محسوب میشود. در این روش، هنگام ورود به حساب علاوه بر نام کاربری و رمز عبور، یک کد تأیید نیز از کاربر درخواست میشود.
این کد میتواند از طریق یک اپلیکیشن احراز هویت روی گوشی تولید شود؛ اما بسیاری از کاربران حوصله نصب و راهاندازی چنین برنامههایی را ندارند. به همین دلیل، سرویسها معمولاً کد تأیید را از طریق پیامک، ایمیل، اعلان، پیامرسان یا تماس صوتی برای کاربر ارسال میکنند.
کدهای OTP معمولاً فقط برای مدت محدودی معتبر هستند و همین موضوع امنیت آنها را افزایش میدهد. با این حال، 2FA یک راهکار شکستناپذیر نیست. مهاجمان میتوانند با استفاده از رباتهای OTP و تکنیکهای مهندسی اجتماعی، کاربران را فریب دهند تا کد یکبار مصرف خود را در اختیار آنها قرار دهند.
در ادامه میبینیم رباتهای OTP چگونه کار میکنند و چه نقشی در حملات فیشینگ دارند.
ربات OTP چیست و چگونه کار میکند؟
رباتهای OTP معمولاً از طریق یک پنل تحت وب یا پیامرسانهایی مانند تلگرام کنترل میشوند. این ابزارها میتوانند خود را به جای سازمانهای معتبر، بانکها یا سایر سرویسها جا بزنند و قربانی را متقاعد کنند که کد ارسالشده را اعلام کند.
فرآیند حمله معمولاً به این شکل است:
- کلاهبردار ابتدا اطلاعات ورود قربانی، از جمله نام کاربری و رمز عبور را به دست میآورد.
- مهاجم با استفاده از این اطلاعات وارد حساب قربانی میشود و سرویس از او درخواست کد OTP میکند.
- کد یکبار مصرف برای تلفن قربانی ارسال میشود.
- ربات OTP با قربانی تماس میگیرد و با استفاده از یک سناریوی از پیش آمادهشده، خود را نماینده بانک یا یک سازمان معتبر معرفی میکند.
- ربات از قربانی میخواهد کدی را که دریافت کرده، وارد کند.
- قربانی کد را روی تلفن خود وارد میکند یا آن را در اختیار تماسگیرنده قرار میدهد.
- کد به مهاجم منتقل میشود.
- مهاجم با استفاده از کد معتبر، به حساب قربانی دسترسی پیدا میکند.
چرا تماس تلفنی برای سرقت OTP مؤثر است؟
مهمترین قابلیت رباتهای OTP، تماس گرفتن با قربانی است. از آنجا که کدهای یکبار مصرف عمر کوتاهی دارند، مهاجم باید در مدت محدودی آنها را به دست آورد. تماس تلفنی میتواند قربانی را سریعتر تحت فشار قرار دهد و احتمال افشای کد را افزایش دهد.
برخی از این ابزارها حتی امکانات مختلفی برای شخصیسازی تماس دارند؛ از جمله انتخاب زبان، نوع صدا، متن مکالمه و شمارهای که روی گوشی قربانی نمایش داده میشود.
برخی رباتهای OTP حتی از صداهای تولیدشده با هوش مصنوعی استفاده میکنند. در نتیجه مهاجم میتواند تماس را با صدایی طبیعی و به زبانهای مختلف برقرار کند.
کلاهبرداران چگونه تماس جعلی را واقعی جلوه میدهند؟
هدف اصلی مهاجم این است که قربانی تصور کند تماس واقعاً از طرف بانک یا یک سرویس معتبر برقرار شده است.
برای این کار، برخی رباتها امکان جعل شماره تماس (Caller ID Spoofing) را فراهم میکنند. مهاجم میتواند شمارهای را تعیین کند که روی صفحه تلفن قربانی نمایش داده شود.
گاهی حتی پیش از تماس، یک پیامک برای قربانی ارسال میشود که از یک تماس «مهم» در چند دقیقه آینده خبر میدهد. این کار میتواند حساسیت قربانی را کاهش دهد.
برای مثال، قربانی ابتدا پیامی دریافت میکند که ظاهراً از طرف بانک است و میگوید بهزودی با او تماس گرفته خواهد شد. چند دقیقه بعد نیز تماس دریافت میکند. همین هماهنگی ظاهری ممکن است باعث شود قربانی تصور کند تماس کاملاً قانونی است.
اما در واقع، تمام این مراحل بخشی از یک حمله مهندسی اجتماعی هستند.
رباتهای OTP فقط کد یکبار مصرف نمیخواهند
در برخی حملات، مهاجم به دریافت OTP بسنده نمیکند. ربات میتواند اطلاعات دیگری نیز از قربانی درخواست کند، مانند:
- شماره کارت بانکی
- تاریخ انقضای کارت
- رمز یا کد امنیتی
- تاریخ تولد
- اطلاعات هویتی
- آدرس ایمیل
- سایر اطلاعات شخصی
هرچه مهاجم اطلاعات بیشتری درباره قربانی داشته باشد، امکان اجرای حملات بعدی نیز بیشتر میشود.
ربات OTP بدون اطلاعات قربانی کارایی چندانی ندارد
ربات OTP بهتنهایی نمیتواند حساب شما را هک کند. مهاجم معمولاً ابتدا به اطلاعاتی مانند نام کاربری، شماره تلفن و رمز عبور نیاز دارد.
اطلاعات بیشتر نیز میتواند حمله را باورپذیرتر کند؛ برای مثال نام کامل، تاریخ تولد، آدرس، ایمیل و اطلاعات مربوط به حساب یا کارت بانکی.
مهاجمان این اطلاعات را معمولاً از چند مسیر به دست میآورند.
۱. اطلاعات سرقتشده در دارکوب
گاهی پایگاههای داده حاوی اطلاعات کاربران در بازارهای غیرقانونی فروخته میشوند. این دادهها ممکن است شامل رمز عبور، اطلاعات ورود، شماره تلفن و سایر اطلاعات شخصی باشند.
حتی اگر یک دیتابیس قدیمی باشد، ممکن است همچنان قابل استفاده باشد؛ زیرا بسیاری از کاربران برای مدت طولانی رمز عبور خود را تغییر نمیدهند.
۲. اطلاعات منتشرشده در اینترنت
گاهی اطلاعات کاربران بهصورت عمومی در اینترنت منتشر میشود. البته پس از افشای اطلاعات، شرکتها ممکن است رمزهای عبور حسابهای آسیبدیده را تغییر دهند و کاربران را مجبور به انتخاب رمز جدید کنند.
با این حال، سایر اطلاعات شخصی ممکن است همچنان برای مهاجمان ارزشمند باشند.
۳. حملات فیشینگ
فیشینگ یکی از مؤثرترین روشها برای جمعآوری اطلاعات بهروز قربانیان است.
در حملات فیشینگ، مهاجم میتواند اطلاعات کاربر را در همان لحظهای که قربانی وارد یک سایت جعلی میشود، جمعآوری کند.
ابزارهایی با نام Phishing Kit نیز وجود دارند که به مجرمان سایبری اجازه میدهند صفحات جعلی مشابه سایتهای واقعی ایجاد کنند و اطلاعات کاربران را بهصورت خودکار جمعآوری کنند.
حمله فیشینگ چندمرحلهای چگونه انجام میشود؟
فرض کنید قربانی پیامکی دریافت میکند که ظاهراً از طرف بانک، فروشگاه یا یک سرویس معتبر ارسال شده است. در پیام از او خواسته میشود اطلاعات حساب خود را بهروزرسانی کند.
پیام حاوی لینکی است که کاربر را به یک سایت جعلی هدایت میکند؛ سایتی که ممکن است از نظر ظاهر تقریباً با وبسایت اصلی یکسان باشد.
قربانی نام کاربری و رمز عبور خود را وارد میکند و این اطلاعات بلافاصله در اختیار مهاجم قرار میگیرد.
اما اگر حساب قربانی به احراز هویت دو مرحلهای مجهز باشد چه اتفاقی میافتد؟
در این مرحله، مهاجم از زیرساخت فیشینگ خود استفاده میکند تا صفحهای برای وارد کردن کد OTP به قربانی نمایش داده شود.
قربانی کد یکبار مصرف را وارد میکند و مهاجم آن را دریافت کرده و از آن برای ورود به حساب واقعی استفاده میکند.
بنابراین، حتی فعال بودن 2FA نیز در صورتی که کاربر کد OTP را در اختیار سایت جعلی قرار دهد، ممکن است مانع ورود مهاجم نشود.
ماجرا به سرقت یک حساب ختم نمیشود
پس از دسترسی به حساب، مهاجمان ممکن است تلاش کنند اطلاعات بیشتری از قربانی جمعآوری کنند.
برای مثال، ممکن است کاربر را مجبور کنند اطلاعات ایمیل، شماره کارت یا سایر دادههای حساس را وارد کند.
این اطلاعات میتوانند برای حمله به حسابهای دیگر نیز استفاده شوند.
یکی از مشکلات رایج، استفاده مجدد از یک رمز عبور در چند حساب مختلف است. اگر مهاجم رمز عبور ایمیل کاربر را به دست آورد، ممکن است بتواند به صندوق ایمیل او نیز دسترسی پیدا کند.
پس از دسترسی به ایمیل، مهاجم میتواند رمز عبور آن را تغییر دهد و حتی با استفاده از گزینه «فراموشی رمز عبور»، برای سایر حسابهایی که به آن ایمیل متصل هستند درخواست بازیابی رمز کند.
به این ترتیب، یک حمله فیشینگ میتواند به زنجیرهای از حملات علیه چندین حساب کاربر تبدیل شود.
چگونه از حسابهای خود در برابر سرقت OTP محافظت کنیم؟
فعال کردن احراز هویت دو مرحلهای همچنان یکی از اقدامات مهم امنیتی است؛ اما باید بدانید 2FA زمانی مؤثر است که کد تأیید را در اختیار دیگران قرار ندهید.
برای افزایش امنیت حسابهای خود این نکات را رعایت کنید:
۱. اگر بدون دلیل کد OTP دریافت کردید، مراقب باشید
اگر ناگهان کدی برای ورود به یک حساب دریافت کردید، اما خودتان درخواست ورود نداده بودید، احتمال دارد فرد دیگری در حال تلاش برای ورود به حساب شما باشد.
کد را برای هیچکس ارسال نکنید و در اختیار تماسگیرنده قرار ندهید.
۲. کد OTP را در تماس تلفنی وارد نکنید
اگر فردی در تماس تلفنی از شما میخواهد کد یکبار مصرفی را که دریافت کردهاید اعلام کنید یا روی صفحهکلید تلفن وارد کنید، بسیار محتاط باشید.
بانکها و سرویسهای معتبر نباید برای دریافت کد یکبار مصرف از شما درخواست کنند.
۳. برای هر حساب یک رمز عبور منحصربهفرد بسازید
اگر یک رمز عبور را در چند سایت استفاده کنید، سرقت آن میتواند امنیت چندین حساب را همزمان به خطر بیندازد.
برای هر حساب از یک رمز عبور قوی و متفاوت استفاده کنید و رمزها را در یک مدیر رمز عبور معتبر نگهداری کنید.
۴. قبل از وارد کردن اطلاعات، آدرس سایت را بررسی کنید
اگر پیام یا ایمیلی حاوی لینک دریافت کردید، قبل از وارد کردن رمز عبور یا OTP، آدرس وبسایت را با دقت بررسی کنید.
مهاجمان گاهی با تغییر یک یا دو حرف در آدرس سایت، دامنهای میسازند که در نگاه اول شبیه سایت اصلی به نظر میرسد.
به ظاهر سایت اعتماد نکنید؛ آدرس دامنه را نیز بررسی کنید.
۵. اطلاعات حساس را تلفنی در اختیار دیگران قرار ندهید
شماره کارت، رمز، کدهای امنیتی، OTP و اطلاعات ورود را حتی اگر تماسگیرنده ادعا کند نماینده بانک یا یک شرکت معتبر است، در اختیار او قرار ندهید.
اگر تماس مشکوک بود، مکالمه را قطع کنید و خودتان از طریق شماره یا وبسایت رسمی سازمان موردنظر با آنها تماس بگیرید.
جمعبندی
احراز هویت دو مرحلهای یک لایه امنیتی بسیار مهم است، اما هیچ سیستم امنیتی بهتنهایی تضمینکننده امنیت حساب نیست.
مهاجمان امروزی میتوانند با ترکیب فیشینگ، مهندسی اجتماعی و رباتهای OTP، کاربر را فریب دهند و حتی از سد احراز هویت دو مرحلهای عبور کنند.
بهترین دفاع این است که علاوه بر فعال کردن 2FA، از رمزهای عبور منحصربهفرد، بررسی دقیق لینکها و دامنهها و مهمتر از همه، عدم افشای کدهای یکبار مصرف استفاده کنید.
به خاطر داشته باشید: کد OTP برای شما ارسال شده است، نه برای کسی که پشت تلفن ادعا میکند از طرف بانک یا یک سرویس معتبر تماس گرفته است.