درایوهای USB ظاهرا خطرناکتر از آنچه که تا کنون تصور میکردید هستند. این مربوط به بدافزارهایی که از مکانیسم AutoPlay در ویندوز استفاده میکنند، نمیشود – این به خاطر نقص طراحی در پایۀ USB است.در حال حاضر شما واقعا نباید از درایوهای فلش USB مشکوک استفاده کنید. حتی اگر شما مطمئن باشید که فلش درایو عاری از نرم افزارهای مخرب است، آنها میتوانند فریمور مخرب malicious firmware داشته باشند.این بدافزار بعدها ممکن است ریکاوری فلش مموری را کمی پیچیده تر کند.

همۀ دستگاه های USB دارای یک مشکل امنیتی بزرگی هستند!
USB مخفف گذرگاه سری جهانی universal serial bus است. تصور میشود که USB یک نوع جهانی از پورت و پروتکل ارتباطی است که به شما اجازه میدهد تا بسیاری از دستگاههای مختلف به کامپیوترتان متصل شوند. دستگاههای ذخیره سازی مانند درایوهای فلش و هارد درایوهای اکسترنال، ماوس، صفحه کلید، دسته بازی، هدستهای صوتی، کارتهای شبکه، و بسیاری دیگر از انواع دستگاه که تماما از پورت USB استفاده میکنند.

این دستگاه های USB ( و دیگر قطعات در کامپیوتر شما) یک نوع نرم افزار شناخته شده به عنوان فریمور Firmware را اجرا میکنند، هنگامیکه شما یک دستگاه به کامپیوترتان متصل میکنید، فریمور بر روی دستگاه، اجازه میدهد تا دستگاه عمل کند. برای مثال، یک فریمور فلش درایو USB معمولی، ذخیره کردن و یا انتقال داده ها را از درایو فلش و تمامی دیگر عملیات را مدیریت میکند.
فریمور صفحه کلید USB که به کامپیوتر شما متصل شده است، کلید فشرده شده بر روی صفحه کلید را به اطلاعات دیجیتال تبدیل میکند و به کامپیوتر ارسال میکند.
این فریمور در واقع یک قطعۀ عادی از نرمافزاری که کامپیوتر شما دسترسی به آن داشته باشد، نیست. این کد در دستگاه اجرا میشود، و هیچ راهی واقعی برای بررسی و تایید امنیت فریمور دستگاه USB وجود ندارد.
بدافزار مخرب فریموری چه کاری میتواند انجام دهد؟
دستگاه های USB می توانند بسیاری از کارهای مختلف را انجام دهند و کلید این مشکل هدف، طراحی آنها است. بعنوان مثال، یک فلش درایو USB آلوده با فریمورهای مخرب میتواند بعنوان یک صفحه کلید USB عمل کند. هنگامی که شما آن را به کامپیوترتان متصل میکنید، میتواند کاری مانند فشرده شدن صفحه کلید را به کامپیوتر ارسال کند (مانند این که کسی بر سر کامپیوتر بنشیند و کلیدهایی را تایپ کند). به لطف میانبرهای صفحه کلید، فریمورهای مخرب بعنوان یک صفحه کلید میتوانند عمل کنند ( برای مثال – باز کردن پنجره Command Prompt ، دانلود یک برنامه از یک سرور از راه دور و اجرای آن، با یک فوریت User Account Control – (UAC.
به طور حیرت انگیزی شاید به نظر برسد که فلش درایو USB آلوده دارد بصورت معمولی عمل میکند، اما فریمورش میتواند فایلهای را که در حال ترک دستگاه هستند، آلوده کند. یک فلش درایو USB آلوده متصل شده میتواند به عنوان یک آداپتور USB-اترنت عمل کند و مسیر ترافیک را به سمت سرورهای مخرب هدایت کند. برای مثال می تواند از اینترنت یک تلفن و یا هر نوع دستگاه USB که دارای اتصال اینترنت است استفاده کرده و اطلاعات کامپیوتر شما را بازپخش و نشر نماید.
یک فلش درایو USB آلوده به عنوان یک دستگاه ذخیره سازی که فریمور آن تغییریافته شده (برای مقاصد خاص) وقتیکه بوت شدن کامپیوتر را تشخیص میدهد میتواند به عنوان دستگاه بوت عمل کند و در آن هنگام کامپیوتر از طریق آن فلش درایو USB آلوده بوت شده ، یک تکه نرم افزار مخرب ( که به عنوان یک Rootkit شناخته میشود) را بارگذاری میکند و سپس سیستم عامل واقعی را بوت می کند و آن نرم افزار مخرب در زیر سیستم عامل خود را پنهان کرده اجرا می شود.

Rootkit چیست؟
این کلمه از دو بخش تشکیل شده، root و kit. این سادهترین راه معرفی و توضیح برای rootkit است. کلمه root از دنیای لینوکس و یونیکس وارد شده و مترادف administrator در سیستمعامل ویندوز است. Administrator یعنی کسی که به سیستمعامل سطح دسترسی کاملی دارد یا در واقع صاحب اصلی آن سیستمعامل است. اگر یک خدمات دهنده (server) یونیکس هک شود و یک کاربر غیرمجاز بتواند به عنوان صاحب سیستم (root) فرمان صادر کند، گفته میشود که سرور root شده است. در واقع کاربر غیر مجاز با سطح دسترسی کاربر اصلی سیستم (root) مدیریت سیستم را به دست گرفته است.
اما کلمه kit: به برنامهای گفته میشود که برای به دست آوردن سطح دسترسی صاحب سیستم (root / admin) سعی بر انجام پذیری عملیاتی را دارد که فقط دسترسی به صاحب سیستم برایش رضایتبخش است تا بتواند فرامینی را اجرا کند.
علت استفاده از rootkit؟
Rootkitها دو وظیفه اصلی دارند اول اینکه به صورت پنهانی وارد سیستم موردنظر بشوند. این روش ممکن است از طریق یک برنامه که با اراده شما نصب شده اتفاق بیافتد و دوم اینکه پس از ورود خود را پنهان نگاه دارد، در واقع آنها با بهرهگیری از تکنیکهای مختلف خودشان را از نظرها پنهان میکنند و حتی در بسیاری موارد خود را رمزنگاری میکنند تا به هیچ عنوان شناخته نشوند.
با توجه به این دو وظیفه نظر بسیاری از هکرها به استفاده از rootkitها مثبت است. RootKitها از نظر ساختار کاری بسیار شبیه Trojanها و Backdoorها هستند با این تفاوت که آنها اجازه دسترسی Root یا Administrator را به ما نمیدهند و در واقع سیستم از کنترل ما خارج خواهد شد. Rootkit ها نرم افزارهای مخربی هستند که بدون اینکه شناسایی شوند به سیستم هدف وصل می شوند و کارشان را انجام می دهند ، در واقع مهمترین فاکتور یک Rootkit عالی همین بسیار بسیار دشوار بودن شناسایی یا بعضا به هیچ عنوان شناسایی نشدن توسط بسیاری از ضدبدافزارها می باشد. طبیعتا این نوع بدافزار دسترسی های غیرمجازی را بدون اجازه به سیستم هدف از راه دور ایجاد می کنند تا هکر یا مهاجم بتواند از این دسترسی ها سوء استفاده کند. هدف اصلی یک Rootkit همانطور که از نامش هم پیداست ، دست یافتن به بالاترین سطح دسترسی به سیستم یا همان دسترسی root است .
وقتی هکر با استفاده از Rootkit موفق به دستیابی به بالاترین دسترسی سیستمی شد می تواند از راه دور نرم افزارها یا بهتر بگوییم بدافزارهای مورد نظر خودش را نصب کند و هر کاری که لازم باشد را بر روی سیستم قربانی انجام بدهد ، معمولا Rootkit ها از آسیب پذیری هایی که در خود سیستم عامل ها یا نرم افزارهای نصب شده بر روی آنها وجود دارند برای آلوده سازی سیستم عامل استفاده می کنند.
نکتۀ مهم، دستگاههای USB میتواند پروفایلهای متعدد و مرتبط با آنها را داشته باشد. زمانیکه شما یک فلش درایو USB آلوده را به کامپیوتر خود وارد میکنید میتواند به عنوان یک فلش درایو، یک صفحه کلید و یا یک آداپتور USB اترنت مدعی شود. این قطعه می تواند به عنوان یک درایو فلش معمولی عمل کند، در حالی که حق انجام کارهای دیگر را برای خود از پیش رزرو کرده است.
این فقط یک مسئله اساسی با خود یواس بی است. این داستان امکان ایجاد دستگاههای مخربی را فراهم می کند که می توانند وانمود کنند که تنها یک نوع دستگاه باشند و فقط یک کار انجام می دهند، در صورتیکه قابلیت آن را دارند که سایر انواع دستگاه ها باشند.
کامپیوترها میتوانند فریمور فلش درایو USB را آلوده کنند
از این وحشتناک تر تا به حال نداشته ایم، اما نه آنطور که فکر می کنید نیست. بله، ممکن است شخصی یک دستگاه اصلاح شده با فریمورهای مخرب ایجاد کند، اما احتمالا فراگیر نمیشود و شما نیز درگیر نخواهید شد. اما به این فکر کنید که چقدر احتمال دارد که شما نیز در ایجاد یک دستگاه USB مخرب خاص مشارکت کنید؟
اثبات مفهوم بدافزارهای “Bad-USB” به یک سطح جدید و ترسناک تبدیل شده است. محققان آزمایشگاه SR دو ماه وقت صرف مهندسی معکوس کد فریمور USB پایه از دستگاه های مختلف کردند و متوجه شدند که آنها در واقع میتوانند برنامه ریزی، اصلاح و تغییر یافته شوند. به عبارت دیگر، کامپیوتر آلوده میتواند فریمور دستگاه USB متصل شده را دوباره برنامه ریزی و دستگاه USB را به یک دستگاه مخرب تبدیل کند. و آن میتواند دیگر کامپیوترهایی که به آن متصل میشود را آلوده کند، و دستگاه میتواند آلودگی را از یک کامپیوتر به دستگاه USB دیگر پخش کند.
این اتفاق در گذشته میافتاده است که در زمان اتصال فلش درایو USB آلوده که حاوی بدافزارهای وابسته به ویژگی های خودکار ویندوز بودند، بصورت اتوماتیک بدافزارها بر روی کامپیوتر اجرا می شدند. اما در حال حاضر برنامه های آنتی ویروس نمیتوانند آنها را تشخیص داده و یا جلوی این نوع جدید از آلودگی را که میتواند از دستگاه به دستگاه گسترش یابند، را بگیرند. این نوع بد افزار با بد افزار Autorun متفاوت بوده و با نحوه از بین بردن ویروس اتوران در فلش نیز متفاوت است.
این مشکل بطور بالقوه میتواند با حملات “juicejacking” ترکیب شود و یک دستگاه را آلوده کند مثلا بدین صورت که یک دستگاه که دارد از طریق USB شارژ میشود از یک پورت USB مخرب دیگر آلوده شود.
خبر خوب این است که تا اواخر سال ۲۰۱۴ تنها با حدود ۵۰ درصد از دستگاه های USB این کار امکان پذیر بود. خبر بد این است که بدون باز کردن و امتحان کردن مدارات داخلیشان نمی توانید بگویید که چه دستگاه هایی آسیب پذیر هستند و کدام یک نیستند. تولیدکنندگان امیدوارند که دستگاه های USB را ایمن تر کنند تا در مقابل تغییر سیستم عامل خودشان در آینده محافظت شوند. با این حال، تا به حال، مقدار زیادی از دستگاه های USB در دنیای امروز در مقابل برنامه ریزی مجدد آسیب پذیر هستند.
فلش درایو USB آلوده به بدافزار فریمور یک مشکل واقعی است؟
تا کنون، این بصورت یک آسیبپذیری نظری ( تئوری) ثابت شده است. حملات واقعی پس از یک آسیب پذیری واقعی مشخص میشوند. برخی از افراد استدلال میکنند که NSA این مشکل را مدتها است که می شناسد و از آن استفاده میشود. NSA’s COTTONMOUTH به نظر میرسد که شامل استفاده از دستگاههای USB اصلاح شده برای حمله به اهداف خاص باشد، اگرچه به نظر میرسد که NSA سخت افزارهای اختصاصی نیز در این دستگاههای USB آلوده کار گذاشته است.
COTTONMOUTH-I
(TS//SI//REL) COTTONMOUTH-I (CM-I) is a Universal Serial Bus (USB) hardware implant which will provide a wireless bridge into a target network as well as the ability to load exploit software onto target PCs.
با این وجود، این مشکل احتمالا چیزی نیست که به زودی به شما برسد. در امور روزمره شما احتمالا نیازی به مشاهدۀ کنترلر ایکس باکس دوستتان و یا دیگر دستگاههای مشترک با سوءظن زیاد، ندارید. با این حال، این یک عیب اصلی در هسته و استاندارد USB است که باید برطرف شود.
چگونه شما میتوانید از خودتان محافظت کنید
شما باید در هنگام برخورد با دستگاههای USB مشکوک احتیاط کنید. در این روز ها ما راجع به بدافزارهای خودکار ویندوز زیاد میشنویم، ما گاهی دربارۀ درایوهای فلش USB که هدیه می دهند یا بسیار ارزان قیمت هستند و یا در مکانی در نزدیکی شرکت شما رها شده اند نیز میشنویم. امید این است که یک کارمند یک فلش درایو USB آلوده رها شده را بردارد و به کامپیوتر شرکت متصل کند و سپس بدافزارهای آن درایو USB رها شده بطور خودکار اجرا شوند و کامپیوتر را آلوده کنند. کمپین هایی برای بالا بردن آگاهی از این موضوع وجود دارد که مردم را تشویق میکند تا دستگاههای USB را از جایی برندارند و یا درایو های مشکوک را به کامپیوترشان متصل نکنند.
با غیر فعال کردن پخش خودکار AutoPlay ، ما فکر میکنیم که مشکل حل شده است. اما مشکلات فریمور USB نشان میدهد که دستگاههای مشکوک هنوز هم میتواند خطرناک باشند. دستگاههای USB را از محلی مانند کوچه و خیابان برندارید، در زمان خرید برند های اصلی را خریداری کنید و یا هر دستگاه USB را به کامپیوترتان متصل نکنید.
البته اینکه شما چقدر باید نگرانی داشته باشید بستگی دارد به اینکه شما چه کسی هستید و چه کاری انجام می دهید. شرکتها بخاطر داشتن اسرار تجاری حیاتی ویا اطلاعات مالی ممکن است خواستار دقت و مراقبت های ویژه ای برای دستگاه های USB که به کامپیوترشان وصل میشوند، داشته باشند تا از گسترش آلودگی جلوگیری شود.
اگر چه این مشکل تاکنون فقط در اثبات مفهوم حملات دیده شده است، اما یک نقص امنیتی بزرگ در هسته دستگاههایی که هر روز از آنها استفاده میکنیم را نشان می دهد. این چیزی است که باید در ذهن داشته باشیم، و در حالت مطلوب، چیزی است که باید برای بهبود امنیت USB برای خودش حل شود.