حملهای جدید به نام RAMBO ( مخفف Radiation of Air-gapped Memory Bus for Offense ) بهعنوان یک حمله جانبی ( side-channel attack ) معرفی شده است. در این نوع حمله، از تابش الکترومغناطیسی (EM) تولید شده توسط حافظه RAM دستگاه استفاده میشود تا دادهها را از کامپیوترهای ایزوله (air-gapped) ارسال کند.
سیستمهای ایزوله ( air-gapped ) ، که معمولاً در محیطهای حساس و بسیار حیاتی (مانند دولتها، سیستمهای تسلیحاتی و نیروگاههای هستهای) مورد استفاده قرار میگیرند، از اینترنت عمومی و دیگر شبکهها به منظور جلوگیری از آلوده شدن به بدافزارها و سرقت دادهها ایزوله شدهاند.
این سیستمها حتی با وجود اینکه به شبکهها متصل نیستند، از طریق روشهای فیزیکی یا حملات زنجیره تأمین در معرض خطر آلودگی و نفوذ قرار دارند.
بدافزار میتواند بهطور پنهانی عمل کند و اجزای حافظه RAM سیستم ایزوله را به شکلی دستکاری یا تغییر دهد که امکان انتقال اطلاعات محرمانه از کامپیوتر به گیرندهای که در نزدیکی قرار دارد، فراهم شود.
روش جدیدی که به این دسته از حملات تعلق دارد، توسط محققان یک دانشگاه در اسرائیل به رهبری Mordechai Guri ارائه شده است. Guri یک کارشناس باتجربه در کانالهای حمله پنهانی است و پیش از این نیز روشهایی برای نشت اطلاعات با استفاده از موارد زیر توسعه داده بود:
- LEDهای کارت شبکه
- سیگنالهای فرکانس رادیویی (RF) دستگاههای USB
- کابلهای SATA
- منابع تغذیه (پاور)
نحوه عملکرد حمله RAMBO
برای انجام حمله RAMBO، مهاجم ابتدا بدافزاری را روی کامپیوتر ایزوله نصب میکند تا اطلاعات حساس را جمعآوری کرده و برای ارسال آماده کند. سپس، این بدافزار با دستکاری الگوهای دسترسی به حافظه )عملیات خواندن/نوشتن روی گذرگاه حافظه) باعث تولید تابش الکترومغناطیسی کنترلشده از RAM دستگاه میشود و از طریق این تابش، دادهها را منتقل میکند.
بدافزار با استفاده از تغییرات سریع سیگنالهای الکتریکی در RAM، تابشهایی ایجاد میکند که توسط سیستمهای امنیتی شناسایی نشده و به عنوان یک راه مخفی برای انتقال دادهها عمل میکند.
دادههای ارسالشده بهصورت کدهای باینری “۱” و “۰” رمزگذاری میشوند و این اعداد در سیگنالهای رادیویی به ترتیب بهعنوان روشن و خاموش نمایش داده میشوند. محققان از کد (Manchester code) استفاده کردهاند تا:
- تشخیص خطا را بهبود بخشند.
- همگامسازی سیگنال را تضمین کنند.
این کار باعث میشود احتمال تفسیر نادرست دادهها در سمت گیرنده کاهش یابد.
با استفاده از تجهیزات نسبتاً ارزانقیمت و در دسترس، مهاجم قادر است تابشهای الکترومغناطیسی که اطلاعات را منتقل میکنند، دریافت کرده و به فرم اطلاعات باینری بازگرداند.
عملکرد و محدودیتها
این حمله میتواند دادهها را با سرعتی معادل ۱۲۸ بایت در ثانیه منتقل کند، که برای کاربردهای خاص یا انتقال دادههای حساس بهصورت پنهانی، ممکن است قابل توجه باشد.
با نرخ انتقال داده ذکرشده، تقریباً ۲.۲ ساعت طول میکشد تا ۱ مگابایت داده را از سیستم خارج کنید. بنابراین، حمله RAMBO برای سرقت مقادیر کم دادهها مانند متنها، ضربات کلید (keystrokes) و فایلهای کوچک مناسبتر است.
محققان دریافتند که keylogging میتواند بهصورت لحظهای هنگام آزمایش حمله انجام شود. با این حال، زمان لازم برای سرقت انواع مختلف دادهها به شرح زیر است:
- سرقت یک رمز عبور: ۰.۱ تا ۱.۲۸ ثانیه طول میکشد.
- یک کلید RSA با طول ۴۰۹۶ بیت: بین ۴ تا ۴۲ ثانیه زمان نیاز دارد.
- یک تصویر کوچک: بین ۲۵ تا ۲۵۰ ثانیه (بسته به سرعت انتقال) زمان میبرد.
Fast transmissions انتقال دادهها با سرعت بالا که به دلیل محدودیتهای فنی دارای برد کمتری هستند.
Medium-speed transmissions انتقال دادهها با سرعت متوسط که به برد بیشتری دست مییابند.
Slow transmissions انتقال دادهها با سرعت پایین که به دلیل نرخ خطای بسیار کم، میتوانند در فواصل بیشتری مؤثر عمل کنند.
Bit error rate درصد خطاهایی که در حین انتقال دادهها به وجود میآید.
سرعتهای انتقال داده بالاتر از ۵,۰۰۰ bps باعث کاهش کیفیت سیگنال و کارایی کمتر در انتقال دادهها میشود.
متوقف کردن RAMBO
مقاله فنی به ارائه راهکارهایی برای مقابله با حملات RAMBO و حملات مشابه میپردازد، اما این راهکارها ممکن است مشکلات یا هزینههای اضافی را به همراه داشته باشند.
محققان دریافتند که حمله RAMBO حتی در محیطهای مجازی که بهطور معمول برای تست امنیتی استفاده میشود، همچنان قادر به نفوذ و عملکرد مؤثر است.
بهدلیل تعاملات مکرر حافظه میزبان با سایر فرآیندها و ماشینهای مجازی، حملات RAMBO ممکن است به سرعت تحت تأثیر قرار گرفته و مختل شوند.