# Donanım Truva atı
Donanım Truva Atı (Hardware Trojan), tümleşik bir devrenin kötü niyetli modifikasyonudur. Truva atı, tamamen fiziksel yapısı ve davranışı ile karakterize edilir. DT'nin yükü (payload), Truva atı tetiklendiğinde çalıştırdığı tüm etkinliktir. Genel olarak, kötü niyetli Truva atı bir sistemin güvenlik duvarını aşmaya veya etkisiz hale getirmeye çalışır: Gizli bilgileri radyo emisyonu ile sızdırılabilir. DT'ler ayrıca bütün çipi veya bileşenlerini devre dışı bırakabilir, yeniden düzenleyebilir veya yok edebilir.
Donanım Truva Atları, bir bilgisayar çipi tasarlanırken fark edilmeden gizli bir "Front-doors" olarak yerleştirilen, tanınmamış bir kaynaktan satın alınmış ve önceden hazırlanmış ASIC IP Core kullanılarak oluşturulabilir ya da kendi başına çalışan, özel saldırgan gruplar veya devlet desteklediği casuslar tarafından yerleştirilebilir.
IEEE'de yayınlanan yeni bir makalede, Truva atı içeren donanım tasarımının, veri sızıntısını etkinleştirmek için doğru "easter egg" tetikleyicisinin uygulanması koşuluyla, anten veya ağ bağlantısı üzerinden sızdırılan şifreleme anahtarının nasıl sızdırdığını açıklanmıştır.
Hükûmetin yüksek güvenlikli bilişim bölümlerinde, donanım aygıtı satın alınırken, Donanım Truva Atları dikkat edilen bir problemdir.Örneğin bu donanımlar KVM anahtarı (switch), klavye, fare, ağ kartları, ağ donanımlarıdır.
Yayınlanan belgelere göre şirketler eBayde, ağındaki tüm anahtarları satmaya zorlanmıştır. Çünkü bilinmeyen bir kaynaktan satın aldıkları donanım aygıtlarında Donanım Truva Atı yerleştirilmiştir ve bu da sorunu kullanılmış ekipmanları satın alan diğer şirketlere yayılıyordur.


## Geçmişi.
Küresel çeşitlilik içeren ekonomide, üretimde dış kaynak kullanımı, ürünün maliyetini düşürmenin yaygın bir yoludur. Gömülü donanım aygıtları, onları tasarlayan veya satan firmalar tarafından imal edilmez. İthal olarak alınmış ürün, bütünlüğü hakkında şüphe uyandırabilir (ürünün orijinal tasarımına kıyasla tasarımın modifikasyon yapılıp yapılmadığı). Üretim sürecine erişimi olan herkes teorik olarak nihai ürüne bazı değişiklikler getirebilir. Karmaşık ürünlerde, büyük etki yaratacak küçük değişiklerin fark edilmesi zordur.
Ciddi ve kötü niyetli bir tasarım değişikliği tehdidi, özellikle devlet daireleriyle bağlantılı olabilir. Donanım bütünlüğü hakkındaki şüpheyi gidermek askeri, finans, enerji ve politik sektördeki teknolojik saldırıya açıklığı azaltmanın bir yoludur. Güvenilir olmayan fabrikalarda tümleşik devrelerin üretilmesi yaygın olduğundan, saldırgan tarafından devre fonksiyonunda ek bileşenlerin saklanması veya başka şekilde sabote edilmesi gelişmiş algılama tekniklerini ortaya çıkarmıştır.


## Donanım Truva Atlarının Karakterize Edilmesi.
Bir DT, fiziksel tasarımı, aktivasyon aşaması ve etki aşaması gibi çeşitli yöntemlerle karakterize edilebilir. Alternatif yöntemler DT 'yi tetikleyicisi (trigger), yükü (payload) ve gizliliği ile karakterize eder.


### Fiziksel özellikler.
Truva atının karakteristiklerinden biri tipidir. Tipi, işlevsel veya parametrik olabilir. Kötü niyetli kişi, orijinal çip tasarımına herhangi bir transistoru veya kapıyı ekler veya silerse Truva atı işlevselleşir. Diğer bir türü ise, parametrik Truva atıdır. Orijinal devreyi modifiye eder. (Örneğin tellerin incelmesi, flip-flopları veya transistorların zayıflaması, çipin radyasyona maruz bırakılması veya çipin güvenilirliğini azaltmak için Focused Ion-Beams (FIB) kullanılması). Truva atının boyutu, fiziksel uzantısı veya oluşturduğu bileşenlerin sayısıdır. Truva atı birçok bileşenden oluşabileceğinden, kötü niyetli kişi çip üzerinde zararlı mantık parçalarını dağıtabilir. Ek mantık ayrıca bir işlevi değiştirmek, eklemek veya kaldırmak için gereken her yerde çipi kaplayabilir. Truva atı işlevine göre öte yandan kötü niyetli bileşenler dağıtılabilir. Buna gevşek dağıtım (loose distribution) denir. Ayrıca, bir Truva atı yalnızca birkaç bileşenden oluşabilir. Bu nedenle kötü niyetli tasarımın çipin üzerindeki kapladığı yer küçüktür. Buna ise sıkı dağıtım (tight distribution) denir. Eğer kötü niyetli kişi herhangi bir çaba göstermezse, düzen üzerinde değişikler yapar. Böylece IC bileşenlerinin yerleri değiştirilir. Çip boyutunun değiştirildiği değişiklikler ise yapısal değişikliklerdir.


### Aksiyon Özellikleri.
Tipik Truva atı koşul temellidir: Sensörler, dahili mantık durumları, belirli bir girdi modeli veya dahili sayaç değeri tarafından tetiklenir. Koşul temelli Truva atları aktif değilken bir dereceye kadar güç izleri ile tespit edilebilir. Bunun nedeni, Truva atı harekete geçiren tetikleyici veya karşı devre tarafından üretilen kaçak akımlardır. Donanım Truva atları farklı şekillerde tetiklenebilir. Bir Truva atı içten olarak etkinleştirilebilir, yani IC içerisinde bir veya daha fazla sinyali izler. Kötü niyetli devre, saldırganın eklediği geri sayım mantığını bekleyebilir, böylece Truva atı belirli bir zaman aralığından sonra uyanır. Ya da dışarıdan aktif edilir. Bir çipin içinde kötü niyetli bir mantık olabilir, bu da saldırganın çipin dışından ulaşabileceği bir sensör veya anten kullanmasıdır. Örneğin, bir seyir füzesinin kontrol sisteminin içinde olabilir. Füzenin sahibi, saldırganın roketleri telsiz ile kapatabileceğinin farkında değildir.
Her zaman açık olan Truva atı indirgenmiş bir tel olabilir. Bu şekilde modifiye edilen bir çip, telin yoğun olarak kullanılmasında hata üretir veya başarısız olur. Her zaman açık olan devrelerin güç izi ile algılamak zordur. Bu bağlamda, birleşik Truva atları ve sıralı Truva atları ayırt edilebilir. Birleşik Truva atları, belirli bir durum gerçekleşene kadar dahili sinyalleri izler. Sıralı Truva atı da dahili olarak aktif duruma dayalı bir devredir, birleşik Truva atları gibi belirli bir durum için izlenemez, dizileri arar.


#### Şifreli Anahtar Çıkarma.
Donanımdaki Truva atı tespit edilemeden, gizli anahtarların çıkarılmasıdır. Rastgele bir sinyal veya kriptografik bir uygulamanın kendisini kullanmasını gerektirir. Truva atında kendisindeki ve indirgenmiş halindeki bir şifrelenmiş anahtarı saklamaktan kaçınmak için fiziksel olarak klonlamayan bir fonksiyon kullanılabilir. Bu fonksiyonlar küçük boyutludur ve kriptografik özellikler farklıyken bile benzer düzende olabilir.


### Eylem özellikleri.
Bir DT çipin işlevini veya çipin parametrik içeriklerini değiştirebilir (Örneğin bir işlem gecikmesini tetikler). Gizli bilgiler de saldırgana iletilebilir (anahtar bilgilerin iletilmesi).


### Periferik Aygıt Donanım Truva Atları.
Ağ bağlantıları ve ağ bağlantılarının uç noktalarına karşı yeni bir tehdit vektörüdür. Onaylanmış iletişim protokolünü kullanarak ağ uç noktası ile etkileşime geçmek üzere tasarlanıp fiziksel periferik aygıt olarak ortaya çıkan bir Donanım Truva atıdır. (Örneğin istenmeyen USB kanallarıyla hedef ağ uç noktası arasında iletişim kurarak eklenmiş hedef ağ uç noktasından bütün kötü niyetli işlem evrelerini saklayan USB klavye).Hassas veriler hedef ağ uç noktasından DT'ye bilgi aktarıldıktan sonra, DT verileri işleyebilir ve bununla ne yapacağına karar verebilir: DT'nin daha sonra fiziksel olarak geri alınması için bellekte saklayabilir, wireless veya güvenliği aşılmış ağ uç noktasını bir eksen olarak kullanan İnternet'ten bilgi çalabilir.


## Tehdit potansiyeli.
Truva atının yaygın kullanımı, değiştirilmiş bir cihazın kullanımda olduğu zaman aralığı boyunca pasiftir. Ancak aktif edildiğinde kurtarılamaz bir hasara neden olabilir. Bir Truva atı aktif hale getirilirse, işlevsellik değiştirilebilir, cihaz imha edilebilir veya devre dışı bırakılabilir, gizli bilgileri sızdırılabilir veya güvenliği aşabilir. Truva atları gizlidir, yani aktivasyonun ön koşulu çok nadir bir olaydır. Geleneksel test teknikleri yeterli değildir. Tespit edilmekten kaçınmak için kötü niyetli değişiklikler iyi yerleştirilirken, bir üretim hatası rastgele bir konumda olur.


## Tespit.
### Fiziksel inceleme.
İlk olarak, kalıplama katmanı devreyi ortaya çıkarmak için kesilir. Daha sonra, mühendis çipin katmanlarını taşırken yüzeyi sürekli olarak tarar. Devreleri taramak için birkaç işlem var. Tipik görsel inceleme yöntemleri: taramalı optik mikroskopi (SOM), taramalı elektron mikroskobu (SEM), pikosan-ikinci görüntüleme devre analizi (PICA), voltaj kontrast görüntüleme (VCI), ışık kaynaklı gerilim değişimi (LIVA) veya yük indüklü voltaj değişimi (CIVA). Çipin taban planını karşılaştırmak için gerçek çipin görüntüsü ile karşılaştırılmalıdır. Bu işlemin yapılması günümüzde halen daha zordur. Farklı olan (kripto) anahtarları içeren Truva atı donanımını tespit etmek için, çip üzerindeki farklı yapıyı ortaya çıkarmak için bir görüntü farkı alınabilir. Truva atı, eşsiz kripto anahtarlarını kullanan ancak aynı yapıya sahip olan tek bilinen donanımdır. Bu özellik, Truva atının saptanamaz olma özelliğini artırmaktadır.


### Fonksiyonel test.
Bu tespit yöntemi bir çipin giriş portlarını uyarır ve üretim hatalarını tespit etmek için çıkışı izler. Çıkışın mantıksal değerleri orijinal modelle uyuşmuyorsa, bir kusur veya bir Truva atı bulunabilir.


### Gömülü testler.
Built-in self-test (BIST) ve Design For Test (DFT) teknikleri, çipin dahili olarak işlevsel özelliklerini yerine getirdiğini doğrulamaya yardımcı olmak için çipe bir devre (mantık) eklemektedir. Ekstra mantık, genel olarak checksumı hesaplanarak veya dâhili yazmaçları özelleştirilmiş bir tarama tekniğine maruz bırakarak giriş uyarısını ve dâhili sinyallerini veya bellek durumlarını izler. DFT'nin genellikle bazı harici test mekanizmaları ile koordine olduğu yerlerde, BIST destekli çipler özel test tipi jeneratörleriyle birleşir. BIST işlevselliği, tarama zincirlerini veya diğer düşük hızlı DFT yeterliliklerinin kullanmanın mümkün olmadığı durumlarda hızlı (yüksek hızda) doğrulamayı gerçekleştirmek için mevcuttur. Her iki yöntem de, başlangıçta üretim hatalarını tespit etmek için geliştirilmiştir. Ayrıca çip üzerindeki kötü amaçlı mantığın bazı etkilerini tespit etmek için çift kenarlı potansiyele sahiptir ya da çip içindeki uzak durumu gizli bir şekilde denetlemek için kötü amaçlı mantık tarafından sömürülmektedir.
DFT'nin istenmeyen mantığı nasıl tanıdığını düşürsek, DFT girişleri tarafından yönlendirildiğinde, orijinal bir çip tanıdık bir imza oluşturur. Ancak hatalı veya değiştirilmiş bir çip beklenmedik bir imzayı gösterir. İmza çipin herhangi bir sayıdaki veri çıkışından oluşabilir: tüm bir tarama zinciri veya orta seviye veri sonucu. Bir Truva atı algılama bağlamında, DFT mantığı bir şifreleme algoritması olarak kabul edilebilir: DFT girişinin, test altındaki tasarımın davranışından kaynaklan bir mesajı imzalamak için anahtar olarak kullanılması. İzinsiz girişlerden kaçınma bağlamında, BIST veya DFT işlevleri genellikle bir üretim ortamının dışında devre dışı bırakılır (donanım-yeniden yapılandırılarak).Çünkü çipin dahili durumuna erişimi onların gözetleme veya yıkıcı saldırıyı gizlemek için fonksiyonu açığa çıkarabilir.


### Kanal Analizleri.
Elektriksel olarak aktif olan her cihaz manyetik ve elektrik alanları gibi farklı sinyaller yayar. Elektriğin aktif olmasından kaynaklanan bu sinyaller, durum ve cihazın işlediği veriler hakkında bilgi edinmek için analiz edilebilir. Yan etkileri ölçmek için yöntemler geliştirilmiştir ve çok hassastırlar (yan kanal saldırısı). Bu nedenle, bu analog sinyallerin ölçülmesi yoluyla sıkıca eşleştirilmiş Truva atlarını tespit etmek mümkündür. Ölçülen değerler analiz edilen cihaz için bir imza olarak kullanılabilir. Ölçüm hataları veya diğer yanlışlıklardan kaçınmak için bir dizi ölçülen değerlerin analiz edilmesi de yaygındır.


## İlave okumalar.
  - Mainak Banga & Michael S. Hsiao: A Region Based Approach for the Identification of Hardware Trojans, Bradley Department of Electrical and Computer Engineering, Virginia Tech., Host'08, 2008
  - A. L. D'Souza & M. Hsiao: Error diagnosis of sequential circuits using region-based model, Proceedings of the IEEE VLSI Design Conference, January, 2001, pp. 103–108.
  - C. Fagot, O. Gascuel, P. Girard & C. Landrault: On Calculating Efficient LFSR Seeds for Built-In Self Test, Proc. Of European Test Workshop, 1999, pp 7–14
  - G. Hetherington, T. Fryars, N. Tamarapalli, M. Kassab, A. Hassan & J. Rajski: Logic BIST for large industrial designs, real issues and case studies, ITC, 1999, pp. 358–367
  - W. T. Cheng, M. Sharma, T. Rinderknecht & C. Hill: Signature Based Diagnosis for Logic BIST, ITC 2006, Oct. 2006, pp. 1–9
  - Rajat Subhra Chakraborty, Somnath Paul & Swarup Bhunia: On-Demand Transparency for Improving Hardware Trojan Detectability, Department of Electrical Engineering and Computer Science, Case Western Reserve University, Cleveland, OH, USA
  - Yier Jin & Yiorgos Makris: Hardware Trojan Detection Using Path Delay Fingerprint, Department of Electrical Engineering Yale University, New Haven
  - Reza Rad, Mohammad Tehranipoor & Jim Plusquellic: Sensitivity Analysis to Hardware Trojans using Power Supply Transient Signals, 1st IEEE International Workshop on Hardware-Oriented Security and Trust (HOST'08), 2008
  - Dakshi Agrawal, Selçuk Baktır, Deniz Karakoyunlu, Pankaj Rohatgi & Berk Sunar: Trojan Detection using IC Fingerprinting, IBM T.J. Watson Research Center, Yorktown Heights, Electrical \& Computer Engineering Worcester Polytechnic Institute, Worcester, Massachusetts, Nov 10, 2006
  - P. Song, F. Stellari, D. Pfeiffer, J. Culp, A. Weger, A. Bonnoit, B. Wisnieff, T. Taubenblatt: MARVEL - Malicious Alteration Recognition and Verification by Emission of Light, IEEE Int. Symp. on Hardware-Oriented Security and Trust (HOST), pp. 117–121, 2011
  - Xiaoxiao Wang, Mohammad Tehranipoor & Jim Plusquellic: Detecting Malicious Inclusions in Secure Hardware, Challenges and Solutions, 1st IEEE International Workshop on Hardware-Oriented Security and Trust (HOST'08), 2008
  - Miron Abramovici and Paul Bradley: Integrated Circuit Security - New Threats and Solutions
  - Zheng Gong and Marc X. Makkes: Hardware Trojan Side-channels Based on Physical Unclonable Functions - Information Security Theory and Practice. Security and Privacy of Mobile Devices in Wireless Communication 2011, Lecture Notes in Computer Science 6633, P294-303.
  - Vasilios Mavroudis, Andrea Cerulli, Petr Svenda, Dan Cvrcek, Dusan Klinec, George Danezis. A Touch of Evil: High-Assurance Cryptographic Hardware from Untrusted Components. 24th ACM Conference on Computer and Communications Security, Dallas, TX, Oct 30th-Nov 3rd 2017.