تروجان سخت‌افزاری
تروجان سخت‌افزاری یک تغییر مخرب در یک است. یک تروجان سخت‌افزاری کاملاً از طریق ویژگی‌های فیزیکی و ظاهری یا رفتاری مشخص می‌شود. یک تروجان سخت‌افزاری، کل فعالیتی است که تروجان هنگام اجرای آن انجام می‌دهد. به‌طور کلی، تروجان‌های مخرب سعی در دور زدن یا غیرفعال کردن مکانیزم‌های امنیتی یک سیستم دارند: این امر می‌تواند اطلاعات محرمانه را به بیرون درز دهد. تروجان سخت‌افزاری همچنین می‌تواند کل تراشه یا اجزای آن را غیرفعال، مختل یا نابود کند.
تروجان‌های سخت‌افزاری ممکن است به صورت ناخواسته در هنگام طراحی مدار کامپیوتری ایجاد شوند. از طریق استفاده از یا که از منبع غیر معتبر خریداری شده‌اند. یا کارمند شرکت سازنده، به علت انگیزهٔ شخصی، یا عضویت در گروهی مشخص یا جاسوسی برای دولتی خاص، به صورت بدخواهانه و از عمد این کار را انجام دهد.
یکی از مقاله‌های اخیر که در IEEE منتشر شده‌است، توضیح می‌دهد که چگونه یک طراحی سخت‌افزاری حاوی یک تروجان، می‌تواند یک کلید رمزنگاری را بوسیلهٔ آنتن یا ارتباطه شبکه‌ای، به بیرون درز دهد. این کار از طریق اعمال فعال‌ساز «تخم‌مرغ عید پاک» اتفاق می‌افتد.
در بخش‌های فناوری اطلاعات دولتی که نسبت به مسایل امنیتی حساس هستند، تروجان‌های سخت‌افزاری یک مشکل شناخته‌شده هنگام خرید سخت‌افزارهایی مانند: ، صفحه کلید، موشواره، کارت شبکه یا سایر تجهیزات شبکه هستند. این مسیله به ویژه وقتی مهم می‌شود که قصد داشته باشیم این تجهیزات را از منابع غیرمعتبر خریداری کینم. این منابع می‌توانند تروجان‌هایی را قرار دهند که از طریق آن بتوان گذرواژه‌های صفحه کلید را به بیرون انتشار داد یا ورودی غیرمجاز از راه دور ایجاد کرد.
در یک اقتصاد جهانی متنوع، وظایف تولید، روشی متداول برای کاهش هزینه محصول است. دستگاه‌های سخت‌افزاری نهفته، همیشه توسط بنگاه‌هایی که آنها را طراحی یا می‌فروشند تولید نمی‌شوند و همچنین لزومی ندارد که در همان کشور سازنده مورد استفاده قرار گیرند. برون‌سپاری تولید می‌تواند باعث ایجاد شک و تردید در تغییر طراحی مشتری توسط شرکت سازنده شود. هر کسی که به فرایند تولید دسترسی داشته باشد، می‌تواند عملاً تغییراتی را در محصول نهایی وارد کند. برای محصولات پیچیده، تشخیص تغییرات کوچک اما با تأثیرات بزرگ، می‌تواند مشکل باشد.
برای سازمان‌های دولتی تغییر طراحی به صورت بدخواهانه، و مخرب یک تهدید محسوب می‌شود. یکی از راه‌های کاهش آسیب‌پذیری در بخش‌های نظامی، مالی، انرژی و اقتصادی، رفع شک در مورد صحت سخت‌افزار است. از آنجا که ساخت در کارخانجات غیرقابل اعتماد رایج است، روش‌های تشخیص پیشرفته‌ای معرفی شده‌اند که می‌توانند اجزایی که مهاجم آنها را در سخت‌افزار پنهان کرده، یا قصد خرابکاری در عملکرد مدار دارند، تشخیص دهند.
تروجان‌های سخت‌افزاری را می‌توان با مشخصات فیزیکی، مرحلهٔ فعال سازی و مرحلهٔ عمل آن دسته‌بندی کرد. روش‌های دیگر تروجان‌های سخت‌افزاری را از طریق عامل فعال‌ساز، عامل مخرب و نحوه مخفی‌سازی دسته‌بندی می‌کنند.
بر اساس خصوصیات فیزیکی می‌توان تروجان‌ها را به دو دسته عملکردی یا پارامتری دسته‌بندی کرد. تروجان از نوع عملکردی است اگر حمله‌کننده یا طراحی را اضافه یا کم کند. نوع دیگر تروجان، تروجان پارامتری است که در آن مدار اصلی را تغییر می‌دهند، مثلاً نازک کردن سیم‌ها، تضعیف فلیپ فلاپ‌ها یا ترانزیستورها، قرار دادن تراشه در معرض تشعشع، یا استفاده از (Focused Ion-Beams(FIB برای کاهش قابلیت اطمینان یک تراشه.
اندازه تروجان گستره فیزیکی آن یا تعداد اجزای سازنده آن تعریف می‌شود. از آنجا که یک تروجان می‌تواند از اجزای زیادی تشکیل شود، طراح می‌تواند قسمت‌های یک منطق مخرب را روی تراشه توزیع کند. منطق اضافی می‌تواند هر کجا از تراشه که نیاز برای تغییر، اضافه کردن یا حذف یک عملکرد باشد قرار گیرد. اگر عملکرد تروجان به آن نیاز داشته باشد، اجزای مخرب می‌توانند پراکنده شوند. به این توزیع بی‌قاعده گفته می‌شود. از طرف دیگر، یک تروجان می‌تواند تنها از اجزای کمی تشکیل شده باشد، درنتیجه فضای کمی از تراشه را اشغال می‌کند و به آن توزیع قاعده‌مند می‌گویند.
اگر طرف مقابل نخواهد هیچ تلاشی به خرج دهد، می‌تواند فقط طرح را بازسازی کند، بنابراین محل قرارگیری اجزای تراشه تغییر می‌کند. در موارد نادر ابعاد تراشه تغییر می‌یابد. این تغییرات به عنوان تغییرات ساختاری شناخته می‌شوند.
تروجان‌ها به‌طور معمول شرط محور هستند: توسط ، منطق داخلی، الگوی ورودی خاص یا مقدار یک شمارنده داخلی فعال می‌شوند. تروجان‌های شرط محور از طریق اثرات توانی وقتی که غیرفعال هستند تا حدودی قابل تشخیص هستند. علت آن، کسر جریان توسط عامل فعال‌ساز یا مدار شمارنده‌ای است که تروجان را فعال می‌کند.
تروجان‌های سخت‌افزاری را می‌توان با روش‌های مختلفی فعال کرد. یک تروجان می‌تواند به صورت داخلی فعال شود، به این معنی که یک یا چند سیگنال را درون تراشه پایش می‌کند. مدار مخرب می‌تواند منتظر یک منطق شمارش معکوس باشد که یک مهاجم به تراشه اضافه کرده‌است، به طوری که تروجان پس از یک بازه زمانی خاص فعال می‌شود. همچینین یک تروجان می‌تواند به صورت خارجی فعال شود. ممکن است داخل مدار، منطق بدخواهانه‌ای باشد که حمله‌کننده با استفاده از یا دیگر حسگرها می‌تواند به تراشه دسترسی پیدا کند. به عنوان مثال، یک تروجان می‌تواند در داخل سیستم کنترل موشک کروز قرار داشته باشد. صاحب موشک نمی‌داند که دشمن قادر خواهد بود موشک‌ها را از طریق خاموش کند.
تروجانی که همیشه روشن است می‌تواند یک سیم کاهش یافته باشد. تراشه‌ای که به این روش تغییر یافته‌است، هر زمان به شدت از آن سیم استفاده شود، ایجاد خطا می‌کند یا از کار می‌افتد. روشن از طریق اثرات توانی به سختی قابل تشخیص هستند.
در این زمینه تروجان‌های و تروجان‌های ازهم متمایز می‌شوند. یک تروجان ترکیبی سیگنالهای داخلی را کنترل می‌کند تا اینکه یک شرط خاص رخ دهد. تروجان ترتیبی نیز یک مدار شرط محور است که به صورت داخلی فعال می‌شود، اما بر خلاف تروجان‌های ترکیبی، سیگنال‌های داخلی و دنباله‌ها را برای وضعیت یا شرطی خاص، کنترل و جستجو نمی‌کند.
استخراج کلیدهای سری به وسیله تروجان سخت‌افزاری بدون شناسایی تروجان، مستلزم این است که تروجان از یک سیگنال تصادفی یا استفاده کند.
برای جلوگیری از ذخیره شدن کلید رمزنگاری در تروجان و کاهش آن، می‌توان از یک تابع کپی‌ناپذیر فیزیکی استفاده کرد. تابع کپی‌ناپذیر فیزیکی از نظر اندازه کوچک هستند و در حالی که خصوصیات رمزنگاری آنها می‌تواند متفاوت باشد، ممکن است دارای طرح یکسان باشند
تروجان سخت‌افزاری می‌تواند عملکرد تراشه را تغییر داده یا خصوصیات پارامتری تراشه را تغییر دهد (به عنوان مثال باعث برانگیخته شدن تأخیر فرایند می‌شود). اطلاعات محرمانه نیز می‌توانند به حمله‌کننده (انتقال اطلاعات کلیدی) منتقل شوند.
یک عامل تهدید جدید برای شبکه‌ها و نقاط انتهایی شبکه، تروجان سخت‌افزاری است که به عنوان یک دستگاه فیزیکی که به منظور تعامل با نقطهٔ انتهایی شبکه با استفاده از پروتکل ارتباطی دستگاه جانبی تأیید شده، ظاهر می‌شود. به عنوان مثال، یک صفحه کلید تمام چرخه‌های پردازش مخرب را با برقراری ارتباط با نقطه انتهایی شبکه هدف با استفاده از کانالهای USB ناخواسته، از نقطه انتهایی شبکه هدف که به آن وصل شده‌است مخفی می‌کند. هنگامی که داده‌های حساس از نقطه انتهایی شبکه مورد نظر به تروجان‌های سخت‌افزاری منتقل می‌شوند، تروجان‌های سخت‌افزاری می‌تواند داده‌ها را پردازش کرده و تصمیم بگیرد که با آنچه کاری انجام دهد: ذخیره آن در حافظه برای بازیابی در آینده یا فیلترکردن آن به اینترنت با استفاده از شبکه بی‌سیم یا استفاده از نقطهٔ انتهایی تحت نفوذ قرار گرفته.
یک تروجان معمولاً در بیشتر بازهٔ زمانی استفاده از دستگاه تغییریافته، منفعل است اما فعال شدن آن می‌تواند خسارت مهلکی ایجاد کند. اگر تروجان فعال شود، عملکرد آن می‌تواند تغییر کند، دستگاه می‌تواند نابود یا غیرفعال شود، می‌تواند اطلاعات محرمانه را به بیرون درز دهد یا امنیت و ایمنی را خراب کند. تروجان‌ها مخفی هستند، به این معنی که پیش شرط فعال سازی آنها یک اتفاق بسیار نادر است. تکنیک‌های آزمایش سنتی کافی نیستند. یک خطای تولید در یک موقعیت تصادفی اتفاق می‌افتد در حالی که تغییرات بدخواهانه در جایی قرار داده می‌شوند که از شناسایی آنها جلوگیری شود.
ابتدا برای ظاهر شدن مدار، روکش آن برش داده می‌شود. سپس، مهندس در حالی که لایه‌های تراشه را خرد می‌کند، مرتباً سطح مدار را اسکن می‌کند. چندین عملیات برای اسکن مدار وجود دارد. روشهای معمول بازرسی بصری عبارتند از: اسکن میکروسکوپ نوری(SOM) (SEM) , تجزیه و تحلیل مدار تصویربرداری پیکو دوم (PICA)، تصویربرداری کنتراست ولتاژ (VCI) , (LIVA) یا (CIVA). برای مقایسه طرح کف تراشه باید با تصویر تراشه واقعی مقایسه شود. این هنوز هم بسیار چالش‌برانگیز است. برای تشخیص تروجان سخت‌افزاری که شامل کلیدهای (رمزنگاری) متفاوت است، با استفاده از تصویری که تفاوت را نشان می‌دهد می‌توان به ساختار متفاوت روی تراشه پی برد. تنها تروجان سخت‌افزاری شناخته شده با استفاده از کلیدهای رمزنگاری منحصر به فرد اما دارای همان ساختار است. این خاصیت غیرقابل کشف بودن تروجان را افزایش می‌دهد.
این روش تشخیصی، درگاه‌های ورودی یک تراشه را تحریک می‌کند و بر خروجی نظارت می‌کند تا خطاهای ساخت را تشخیص دهد. اگر مقادیر منطقی خروجی با الگوی اصلی مطابقت نداشته باشد، می‌توان نقص یا تروجان را پیدا کرد.
(BIST) و (DFT) روش‌هایی هستند برای اضافه کردن مدار و منطقی به تراشه به منظور تأیید این که مدار مشخصات عملکردی خود را پیاده‌سازی می‌کند. منطق دیگری بر برانگیخته شدن ورودی و سیگنال‌های داخلی یا وضعیت‌های حافظه نظارت می‌کند. این کار به‌طور کلی با محاسبه یا با نمایش دادن رجیسترهای داخلی از طریق ، انجام می‌شود. در جایی که معمولاً DFT با برخی سازوکارهای تست خارجی هماهنگ می‌شود، تراشه‌های دارای BIST مولدهای الگوی تست را با یکدیگر ترکیب می‌کنند. عملکرد BIST اغلب برای انجام تأیید سرعت (سرعت بالا) است. در جایی که امکان استفاده از زنجیره‌های اسکن یا سایر قابلیت‌های DFT با سرعت کم امکان‌پذیر نیست، هر دو روش در ابتدا برای تشخیص خطاهای هنگام تولید ساخته شده بودند، اما همچنین دارای پتانسیل استفادهٔ خوب و بد هستند به این صورت که می‌توان از آنها برای تشخیص برخی از اثرات منطق مخرب بر روی تراشه استفاده کرد، یا منطق مخرب بوسیلهٔ آنها به صورت پنهانی وضعیت چیپ را از راه دور بازرسی کند.
در نظر بگیرید که چگونه DFT منطق ناخواسته را تشخیص می‌دهد. هنگامی که توسط ورودی‌های DFT هدایت می‌شود، تراشه اصلی یک امضای آشنا تولید می‌کند، اما یک تراشه معیوب یا تغییر یافته یک امضای غیرمنتظره را نشان می‌دهد. امضا ممکن است از تعداد مختلفی از داده‌های خروجی تراشه تشکیل شود: یک زنجیره اسکن کامل یا نتیجهٔ دادهٔ واسط. در زمینه شناسایی تروجان، منطق DFT ممکن است به عنوان یک الگوریتم رمزنگاری در نظر گرفته شود: استفاده از ورودی DFT به عنوان کلید برای امضای پیام برگرفته از رفتار طرح مورد آزمایش. در زمینهٔ جلوگیری از نفوذ، عملکردهای BIST یا DFT به‌طور معمول در خارج از محیط تولید، غیرفعال (از طریق پیکربندی سخت‌افزار) هستند زیرا دسترسی آنها به وضعیت داخلی تراشه می‌تواند عملکرد آن را در معرض کنترل مخفی یا حملهٔ خرابکارانه قرار دهد.
هر وسیله فعال الکتریکی سیگنالهای مختلفی مانند میدان مغناطیسی و الکتریکی را منتشر می‌کند. این سیگنال‌ها که ناشی از فعالیت الکتریکی هستند، برای بدست آوردن اطلاعاتی در مورد وضعیت و داده‌هایی که دستگاه پردازش می‌کند، می‌توان مورد تجزیه و تحلیل قرار داد. روشهای پیشرفته‌ای برای اندازه‌گیری این اثرات جانبی ایجاد شده و بسیار حساس هستند (). از این رو، می‌توان از طریق اندازه‌گیری این سیگنال‌های آنالوگ، تروجان‌های به‌هم‌پیوسته را تشخیص داد. مقادیر اندازه‌گیری شده را می‌توان به عنوان امضای دستگاه مورد نظر استفاده کرد. همچنین معمول است که مجموعه‌ای از مقادیر قابل اندازه‌گیری برای جلوگیری از خطاهای اندازه‌گیری یا دیگر بی‌دقتی‌ها مورد ارزیابی قرار گیرند.