Czy mikroprocesory są bezpieczne?

Wiele elementów krytycznej infrastruktury polega na niezawodnej pracy procesorów. Gdy urządzenia sterujące działają na bazie zwykłych układów scalonych, pojawiają się pytania o niezawodność tej technologii.

Czy mikroprocesory są bezpieczne?
W systemach automatyki i kontroli przeważnie wykorzystuje się architekturę x86, x86-64, w niektórych urządzeniach także ARM. Zazwyczaj stosowane są powszechnie dostępne układy scalone (commercial of-the-shelf), ze względu na niskie koszty produkcji i niezawodność w typowych zadaniach, sprawdzoną przez licznych odbiorców. Są to zazwyczaj starsze wersje procesorów, gdyż takie rozwiązania rzadko wymagają bardzo wysokiej wydajności właściwej dla najnowszych konstrukcji. Ponadto wybierane są procesory, które generują mniej ciepła, a zatem nie wymagają aż tak intensywnego chłodzenia. Sprawą nadal otwartą pozostaje możliwość celowego wprowadzenia modyfikacji, które w określonych warunkach sprawiłyby, że urządzenie kontrolujące zadziałałoby w nieprzewidziany w dokumentacji sposób.

Koń trojański w procesorze

Najtrudniejszym elementem do zbadania jest sam procesor i układy scalone wykorzystywane do jego pracy, związane z urządzeniami wejścia/wyjścia, stabilizacją i kontrolą zasilania. Procesor składa się z miliardów tranzystorów, zatem audyt jego konstrukcji przez firmy trzecie, które go nie wyprodukowały, jest trudny, praktycznie niemożliwy. W samym przedsiębiorstwie także jest to trudne, niemniej stosowanie odpowiednich procedur produkcji minimalizuje ryzyko. Z kolei przygotowanie specjalnych procesorów, z celowo umieszczonym koniem trojańskim specjalnie pod kątem zablokowania krytycznej infrastruktury, jest bardzo kosztowne i przez to mało prawdopodobne. "Wprowadzenie konia trojańskiego do samych mikroprocesorów, chociaż możliwe, wymagałoby bardzo dużych nakładów i musiałoby być przeprowadzone ze znacznym wyprzedzeniem. Ponieważ koszty opracowania mikroprocesora są liczone w wielu milionach dolarów, a układ jest kierowany na szeroki rynek odbiorców, przygotowanie zawierającego konia trojańskiego procesora pod kątem konkretnego zastosowania jest bardzo mało prawdopodobne" - mówi Robert Kępczyński, senior consultant GTS w IBM Polska.

Niepublikowane instrukcje

Jednym ze sposobów mogłoby być umieszczenie w mikrokodzie urządzenia niepublikowanych instrukcji, których nie ma w oficjalnej specyfikacji. Istnienie niepublikowanych instrukcji wielu mikroprocesorów jest faktem od dawna, nawet w erze ośmiobitowych komputerów domowych poznano i wykorzystywano takie instrukcje procesorów MOS Technology 6502/65C02 i Zilog Z80.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200