Gömülü Sistemde Güvenlik: Cihaz Sahaya Çıkınca Ne Oluyor?

Kurumsal yazılımda güvenlik sunucunun etrafında konuşuluyor. Gömülü tarafta durum farklı: ürün müşterinin sahasında, çoğu zaman kilitli olmayan bir panonun içinde ve isteyen eline alabiliyor.

Buradaki fark fiziksel erişim

Bir sunucuya erişmek için ağdan geçmek gerekiyor. Bir saha cihazına erişmek için çoğu zaman bir tornavida yetiyor.

Bu tek fark, gömülü tarafta güvenlik konusunu baştan başka bir yere taşıyor. Cihazın içindeki her şey, cihazı eline alan biri tarafından incelenebiliyor sayılmalı: kart üzerindeki bağlantı noktaları, hafızadaki yazılım, içine yazılmış ayarlar.

Bu yüzden “kimse cihazı açmaz” varsayımı bir güvenlik kararı değil, bir temenni.

Nereden girilir

Gömülü bir üründe korunması gereken yerler dağınık görünüyor ama sınırlı sayıda.

Cihazın kendisi. Fiziksel olarak eline alan biri ne yapabiliyor. Yazılımı okuyabiliyor mu, değiştirebiliyor mu.

Haberleşme. Cihaz veriyi nasıl gönderiyor, yolda okunabiliyor mu, araya girilebiliyor mu.

Güncelleme kanalı. Uzaktan yazılım yüklenebiliyorsa, yükleyenin kim olduğu nasıl doğrulanıyor: OTA güncelleme.

Ayarlar ve erişim bilgileri. Cihaz bir ağa bağlanıyorsa o bağlantının bilgileri cihazın içinde bir yerde duruyor.

Servis arayüzü. Üretimde ve serviste kullanılan erişim yolları, sahaya çıkan üründe kapatılmış mı yoksa açık mı unutuldu.

Sonuncusu, pratikte en sık karşılaşılanı. Geliştirme sırasında açılan bir erişim, ürün sahaya çıktığında da açık kalıyor. Kimse kötü niyetli değil; sadece kapatma adımı listede yok.

Sonradan kapatılamayan açıklar

Yazılım tarafındaki bir açık genelde bir güncellemeyle kapanıyor. Donanım tarafındaki bazı kararlar ise kapanmıyor.

Cihazın hafızasındaki yazılımın okunabilir olup olmadığı bir donanım kararı. Sahaya çıkmış cihazlarda sonradan değiştirilemiyor.

Kart üzerinde bırakılan erişim noktalarının varlığı da öyle. Kartta duruyorsa duruyor.

Cihazın kimliğinin doğrulanabilir olması, üretim aşamasında kurulmuş olmak zorunda. Üretimde her cihaza tekil bir kimlik yazılmadıysa, sahadaki cihazlar birbirinden ayırt edilemiyor ve sonradan ayırt edilir hale getirilemiyor.

Bu üç başlığın ortak yanı, hepsinin tasarım ve üretim aşamasında ucuz, sonradan imkânsız olması. Donanım ve yazılımın birlikte geliştirilmesi meselesinin en somut karşılığı burada.

Ne kadar güvenlik yeterli

Her ürüne aynı seviye gerekmiyor ve gerekmediğini söylemek satışı zorlaştırsa da doğrusu bu.

Belirleyici olan üç soru var: cihaz ne yapıyor, elinde ne var, ele geçirilirse ne olur.

Bir depo içindeki sıcaklık sensörü ile bir üretim hattını durdurabilen bir kontrol ünitesi aynı sınıfta değil. Birincisinde veri okunması rahatsız edici; ikincisinde cihazın komut alabilmesi üretimi durduruyor.

Kişisel veri taşıyan cihazlarda ise soru teknik olmaktan çıkıp hukuki hale geliyor. Personel hareketi, kart okuma, kamera ya da konum verisi tutan bir cihaz KVKK kapsamına giriyor ve orada “cihaz basit bir cihaz” savunması işlemiyor.

Doğru yaklaşım, her ürüne maksimum koruma koymak değil. Ürünün ne taşıdığına bakıp seviyeyi oraya göre seçmek ve bu seçimi yazılı hale getirmek.

Bir enerji izleme cihazı üreticisinde

Not: Aşağıdaki örnek gerçek bir müşteriye ait değildir; sahada sık karşılaşılan durumlardan oluşturulmuş bir senaryodur.

Sanayi tesislerine enerji izleme cihazı satan bir firma. Cihaz panoya montajlanıyor, tüketim verisini topluyor ve merkezi bir yazılıma gönderiyor.

Müşterilerden biri, kendi bilgi işlem ekibinin cihazı incelemesini istedi. İnceleme üç bulgu çıkardı.

Birincisi servis arayüzüydü. Geliştirme sırasında kullanılan bir erişim yolu ürün sürümünde de açıktı. Panoya erişen biri cihazın ayarlarını değiştirebiliyordu.

İkincisi ortak parola meselesiydi. Tüm cihazlar aynı erişim bilgisiyle geliyordu. Bir cihazda bulunan bilgi, sahadaki tüm cihazlarda geçerliydi.

Üçüncüsü güncelleme tarafındaydı. Cihaz uzaktan yazılım kabul ediyordu ama yazılımın kimden geldiği doğrulanmıyordu.

Üç bulgunun ikisi yazılım güncellemesiyle kapandı. Üçüncüsü, yani cihaz başına farklı kimlik meselesi, üretim sürecine dokunduğu için sahadaki cihazlarda kapanmadı; yalnızca yeni üretilenlerde uygulanabildi.

Firmanın çıkardığı sonuç şuydu: güvenlik kararları ürün tanımının parçası olmadığında, sonradan yalnızca bir kısmı telafi edilebiliyor.

Ürün tanımına yazılması gerekenler

Güvenlik, teknik bir ek değil ürün tanımının bir bölümü. Şu sorular ürün tanımında cevaplanmış olmalı.

Cihaz hangi veriyi taşıyor, kişisel veri var mı.

Cihazın fiziksel olarak eline alınması ne kadar olası, nerede duruyor.

Ele geçirilirse ne olur: veri mi okunur, komut mu verilir, üretim mi durur.

Her cihazın ayrı bir kimliği olacak mı, bu üretimde nasıl yazılacak.

Servis ve üretim erişimleri sahaya çıkan üründe kapatılıyor mu, bunu kim kontrol ediyor.

Güncelleme kanalı doğrulanıyor mu: gömülü yazılım ve firmware.

Cihaz müşterinin mevcut ağına bağlanacaksa, o ağın kuralları neler: mevcut sistem entegrasyonu.

Bu soruların cevabı yoksa ürün güvensiz demek değil. Güvenliğinin ne olduğunun bilinmediği anlamına geliyor ve müşteri sorduğunda cevap verilemiyor.

Codigno tarafında

Elektronik ve gömülü sistemler tarafında güvenlik seviyesi, ürünün taşıdığı veriye ve çalışacağı ortama göre projenin başında konuşuluyor. Cihazın kimliği, erişim yolları ve güncelleme kanalı tasarım kararı olarak ele alınıyor.

Gömülü yazılımın ne olduğu ve donanımla ilişkisi için: gömülü yazılım nedir. Bağlantılı ürünlerde toplanan verinin nereye gittiği tarafı için: IoT çözümleri.

Sık sorulan sorular

Küçük bir sensör cihazında güvenlik gerçekten gerekli mi?

Taşıdığı veriye bağlı. Yalnızca sıcaklık okuyan bir cihazla, bir ekipmanı durdurabilen bir cihaz aynı sınıfta değil. Ama her iki durumda da servis erişiminin açık unutulmaması gerekiyor.

Cihaz internete bağlı değilse risk var mı?

Azalıyor, bitmiyor. Fiziksel erişim ve yerel ağ üzerinden erişim hâlâ mümkün. İnternete bağlı olmamak, panoya erişen birini engellemiyor.

Tüm cihazlarda aynı parolayı kullanmak neden sorun?

Bir cihazda bulunan bilgi sahadaki tüm cihazlarda geçerli hale geliyor. Tek cihazın incelenmesi, tüm kurulumu etkiliyor.

Güvenlik açığı sonradan kapatılabilir mi?

Yazılım kaynaklıysa genelde evet, cihaz güncellenebiliyorsa. Donanım ve üretim kaynaklı olanlar sahadaki cihazlarda kapanmıyor; yalnızca yeni üretimde düzeliyor.

KVKK gömülü cihazları da kapsıyor mu?

Cihaz kişisel veri işliyorsa evet. Personel geçişi, konum, kamera ve benzeri veriyi toplayan bir cihaz için sorumluluk cihazın küçüklüğüne bakmıyor.

Müşterinin bilgi işlem ekibi cihazı incelemek isterse ne yapmalı?

İstemesi iyi. Kurumsal müşterilerde bu inceleme giderek standart hale geliyor ve cevabı hazır olan üretici satın alma sürecinde öne geçiyor.

Cihazınız sahada kimin elinde duruyor? Ürünün ne taşıdığını ve nerede çalıştığını paylaşın; hangi güvenlik kararlarının tasarım aşamasında verilmesi gerektiğini birlikte çıkaralım.

Facebook
Twitter
Email
Print