شرکت Rootkit Labs یک فلش USB متنباز به نام Phantom Drive ساخته است که پارتیشن رمزگذاریشده خود را پشت یک حافظه جعلی ۸ گیگابایتی پنهان میکند.
به گزارش سرویس امنیت سایبری تکناک، این دستگاه در حالت عادی مانند یک فلش USB ارزانقیمت دیده میشود و کاربر تنها با ایجاد یک فایل متنی مخصوص و وارد کردن رمز عبور میتواند پارتیشن مخفی آن را فعال کند.
فلش متنباز Phantom Drive در ظاهر ویژگی خاصی ندارد و پس از اتصال به کامپیوتر، سیستمعامل آن را به عنوان یک حافظه USB معمولی با ظرفیت ۸ گیگابایت شناسایی میکند. شرکت Rootkit Labs این دستگاه را برای شرایطی طراحی کرده که ممکن است کاربر مجبور به نمایش محتویات حافظه خود شود. اطلاعات اصلی در بخش دیگری از حافظه قرار میگیرند که با رمزگذاری AES-256 محافظت میشود.
پارتیشن مخفی چگونه باز میشود؟
شرکت Rootkit Labs برای ساخت Phantom Drive از میکروکنترلر CH569 استفاده کرده است. این پروژه از بخشهای USB 3، رابط SD/eMMC و واحد سختافزاری AES این میکروکنترلر بهره میبرد. با وجود این، دستگاه به دلیل شرایط فعلی بازار قطعات از تراشه NAND داخلی استفاده نمیکند و فضای ذخیرهسازی آن را یک کارت microSD تأمین میکند.
خریدار باید کارت microSD را جداگانه تهیه کند. فلش متنباز Phantom Drive هم پارتیشن جعلی ۸ گیگابایتی و هم فضای مخفی را روی همین کارت ایجاد میکند. سازنده اعلام کرده است که در صورت کاهش قیمت قطعات، نسخهای مجهز به ماژولهای eMMC را نیز خواهد ساخت.
نکته اصلی Phantom Drive در Firmware سفارشی آن قرار دارد. Firmware دستگاه بهجای مدیریت مستقیم فایلها، بستههای خام دادهای را بررسی میکند که از گذرگاه USB عبور میکنند و بهطور مداوم در جستوجوی رشته مربوط به رمز عبور است.
فهرست مطالب


کاربر برای بازکردن پارتیشن مخفی باید فایلی با نام unlock.txt بسازد و عبارتی مانند password:xyz را داخل آن قرار دهد. Firmware بخش مربوط به رمز را هنگام انتقال داده شناسایی و آن را در حافظه SRAM کپی میکند. سپس داده خام مربوط به رمز عبور را پیش از ذخیره شدن روی کارت microSD با صفر جایگزین مینماید.
سیستمعامل در این شرایط تصور میکند که فایل موردنظر را ایجاد کرده است، اما اطلاعات حساس مربوط به رمز عبور عملا روی سلولهای حافظه ذخیره نمیشوند. این روش احتمال استخراج مستقیم رمز عبور از کارت حافظه را کاهش میدهد.
فلش متنباز Phantom Drive برای ساخت کلید رمزگذاری، شناسه سختافزاری منحصربهفرد میکروکنترلر را به عنوان Salt با رمز عبور کاربر ترکیب میکند. سپس دستگاه این اطلاعات را با الگوریتم PBKDF2-HMAC-SHA-256 به تعداد ۱۰۰ هزار بار پردازش میکند. کاربر در صورت نیاز میتواند تعداد این مراحل را به ۶۰۰ هزار بار افزایش دهد.
این پردازش عمداً بین دو تا سه ثانیه زمان میبرد. تأخیر ایجادشده تلاش را برای آزمایش تعداد زیادی رمز عبور در حملات جستوجوی فراگیر کندتر میکند. سپس Phantom Drive از کلید تولیدشده برای باز و بسته کردن پارتیشن رمزگذاریشده استفاده مینماید.
کلید رمزگذاری به سختافزار همان Phantom Drive وابسته است. بنابراین، فرد نمیتواند کارت microSD را از دستگاه خارج کند و با قرار دادن آن داخل Phantom Drive دیگری به اطلاعات دسترسی پیدا نماید. اتصال مستقیم کارت به کامپیوتر نیز پارتیشن مخفی را آشکار نمیکند و پارتیشن جعلی ۸ گیگابایتی ممکن است در این حالت مانند یک پارتیشن خراب نمایش داده شود.
01
از 01امکان تغییر هویت فلش متنباز Phantom Drive
استفاده از کارت microSD یک ضعف فیزیکی نیز ایجاد میکند. فردی که بدنه Phantom Drive را باز کند، میتواند کارت حافظه را خارج نماید. با وجود این، وجود کارت microSD الزاما ماهیت دستگاه را آشکار نمیکند، چرا که برخی فلشهای USB ارزانقیمت نیز از چنین روشی برای ذخیره اطلاعات استفاده میکنند.
ساختار داخلی این دستگاه شامل درگاه USB، دو مبدل کاهنده ولتاژ، دکمه بهروزرسانی Firmware، کارت microSD، نقاط آزمایش UART و چند قطعه جانبی است. همچنین شرکت Rootkit Labs امکان کامپایل مجدد Firmware را در اختیار کاربران قرار داده است.

کاربران میتوانند با تغییر Firmware، شناسههای سختافزاری دستگاه را دستکاری کنند تا Phantom Drive در سطح پروتکل USB شبیه محصولات برندهای دیگر دیده شود. برای نمونه، امکان تنظیم دستگاه بهگونهای وجود دارد که خود را مانند یک فلش ۱۶ گیگابایتی Kingston DataTraveler معرفی کند. در چنین حالتی، نرمافزارهای اسکن ممکن است آن را تنها به عنوان یک حافظه USB معمولی شناسایی نمایند.
سازنده برای شرایط اضطراری نیز ابزارهایی مبتنی بر لینوکس و نوشتهشده با زبان C ارائه کرده است. این ابزارها برای بازیابی اطلاعات در شرایطی مانند آسیب فیزیکی برد در نظر گرفته شدهاند.
براساس گزارش تامز هادرور، یکی از محدودیتهای مهم فلش متنباز Phantom Drive سرعت انتقال اطلاعات است. این پروژه در عمل بر پایه USB 2 کار میکند و در حالت رمزگذاری AES-CTR سرعت خواندن آن حدود ۲۰ مگابایتبرثانیه و سرعت نوشتن حدود ۹ مگابایتبرثانیه است.
عملکرد دستگاه در حالت AES-XTS کمتر میشود و سرعت خواندن و نوشتن به ترتیب به حدود ۱۰ و ۶ مگابایتبرثانیه میرسد. کاربر میتواند براساس نیاز خود یکی از این دو حالت رمزگذاری را انتخاب کند. فلش Phantom Drive در مجموع بهجای تمرکز بر سرعت، بر مخفی کردن وجود دادههای رمزگذاریشده پشت ظاهر یک فلش USB عادی تمرکز دارد.


کاربر برای بازکردن پارتیشن مخفی باید فایلی با نام unlock.txt بسازد و عبارتی مانند password:xyz را داخل آن قرار دهد. Firmware بخش مربوط به رمز را هنگام انتقال داده شناسایی و آن را در حافظه SRAM کپی میکند. سپس داده خام مربوط به رمز عبور را پیش از ذخیره شدن روی کارت microSD با صفر جایگزین مینماید.
سیستمعامل در این شرایط تصور میکند که فایل موردنظر را ایجاد کرده است، اما اطلاعات حساس مربوط به رمز عبور عملا روی سلولهای حافظه ذخیره نمیشوند. این روش احتمال استخراج مستقیم رمز عبور از کارت حافظه را کاهش میدهد.
فلش متنباز Phantom Drive برای ساخت کلید رمزگذاری، شناسه سختافزاری منحصربهفرد میکروکنترلر را به عنوان Salt با رمز عبور کاربر ترکیب میکند. سپس دستگاه این اطلاعات را با الگوریتم PBKDF2-HMAC-SHA-256 به تعداد ۱۰۰ هزار بار پردازش میکند. کاربر در صورت نیاز میتواند تعداد این مراحل را به ۶۰۰ هزار بار افزایش دهد.
این پردازش عمداً بین دو تا سه ثانیه زمان میبرد. تأخیر ایجادشده تلاش را برای آزمایش تعداد زیادی رمز عبور در حملات جستوجوی فراگیر کندتر میکند. سپس Phantom Drive از کلید تولیدشده برای باز و بسته کردن پارتیشن رمزگذاریشده استفاده مینماید.
کلید رمزگذاری به سختافزار همان Phantom Drive وابسته است. بنابراین، فرد نمیتواند کارت microSD را از دستگاه خارج کند و با قرار دادن آن داخل Phantom Drive دیگری به اطلاعات دسترسی پیدا نماید. اتصال مستقیم کارت به کامپیوتر نیز پارتیشن مخفی را آشکار نمیکند و پارتیشن جعلی ۸ گیگابایتی ممکن است در این حالت مانند یک پارتیشن خراب نمایش داده شود.
امکان تغییر هویت فلش متنباز Phantom Drive
استفاده از کارت microSD یک ضعف فیزیکی نیز ایجاد میکند. فردی که بدنه Phantom Drive را باز کند، میتواند کارت حافظه را خارج نماید. با وجود این، وجود کارت microSD الزاما ماهیت دستگاه را آشکار نمیکند، چرا که برخی فلشهای USB ارزانقیمت نیز از چنین روشی برای ذخیره اطلاعات استفاده میکنند.
ساختار داخلی این دستگاه شامل درگاه USB، دو مبدل کاهنده ولتاژ، دکمه بهروزرسانی Firmware، کارت microSD، نقاط آزمایش UART و چند قطعه جانبی است. همچنین شرکت Rootkit Labs امکان کامپایل مجدد Firmware را در اختیار کاربران قرار داده است.

کاربران میتوانند با تغییر Firmware، شناسههای سختافزاری دستگاه را دستکاری کنند تا Phantom Drive در سطح پروتکل USB شبیه محصولات برندهای دیگر دیده شود. برای نمونه، امکان تنظیم دستگاه بهگونهای وجود دارد که خود را مانند یک فلش ۱۶ گیگابایتی Kingston DataTraveler معرفی کند. در چنین حالتی، نرمافزارهای اسکن ممکن است آن را تنها به عنوان یک حافظه USB معمولی شناسایی نمایند.
سازنده برای شرایط اضطراری نیز ابزارهایی مبتنی بر لینوکس و نوشتهشده با زبان C ارائه کرده است. این ابزارها برای بازیابی اطلاعات در شرایطی مانند آسیب فیزیکی برد در نظر گرفته شدهاند.
براساس گزارش تامز هادرور، یکی از محدودیتهای مهم فلش متنباز Phantom Drive سرعت انتقال اطلاعات است. این پروژه در عمل بر پایه USB 2 کار میکند و در حالت رمزگذاری AES-CTR سرعت خواندن آن حدود ۲۰ مگابایتبرثانیه و سرعت نوشتن حدود ۹ مگابایتبرثانیه است.
عملکرد دستگاه در حالت AES-XTS کمتر میشود و سرعت خواندن و نوشتن به ترتیب به حدود ۱۰ و ۶ مگابایتبرثانیه میرسد. کاربر میتواند براساس نیاز خود یکی از این دو حالت رمزگذاری را انتخاب کند. فلش Phantom Drive در مجموع بهجای تمرکز بر سرعت، بر مخفی کردن وجود دادههای رمزگذاریشده پشت ظاهر یک فلش USB عادی تمرکز دارد.

















