Zephyrnet Logosu

IoT Cihazlarının Güvenliği

Tarih:

IoT Cihazlarının Güvenliği
İllüstrasyon: © Herkes İçin IoT

IoT cihazlarının güvenliği, cihazların çalıştığı ortamı ve gerçek cihaz işlevselliğinin üzerine kurulduğu temelleri oluşturan donanım platformlarını ve işletim sistemlerini kapsayan geniş bir uzmanlık alanıdır. Her alan farklı teknolojiler ve beceriler gerektirir ancak tüm alanların birlikte güvenli bir birim oluşturması gerekir. Gerçek şu ki, diğer tüm alanlar mükemmel olsa bile tek bir alanı ihmal etmenin ölümcül sonuçları olabilir.

Ancak işini yapan güvenli bir cihaza sahip olmak sadece bir başlangıçtır. Yalnızca tek bir cihazı değil tüm filoyu güvenli bir şekilde dağıtmak ve çalıştırmak, provizyon, kimlik doğrulama ve kimlik yönetimi açısından başka bir zorluğu da beraberinde getirir.

Bu makalede

IoT güvenliği alanındaki birkaç önemli alanı keşfedeceğiz. IoT cihazları birçok şekil ve boyutta mevcuttur, ancak aşağıdaki güvenlikle ilgili hususlar hepsi için ortaktır:

  • IoT cihazlarının fiziksel güvenlik çevresi
  • donanım
  • İşletim sistemi
  • Software
  • IoT cihazlarının kimliği ve sağlanması
  • IoT cihazlarının kimlik doğrulaması

IoT Cihazlarının Fiziksel Güvenlik Çevresi

IoT cihazları tipik olarak, örneğin veri merkezlerinde çalışan bilgisayar sistemlerinden çok farklı, öngörülemeyen, istikrarsız ve güvensiz ortamlarda bulunur.

Yeterli fiziksel güvenlik garanti edilemiyorsa, IoT cihazlarını fiziksel erişime sahip potansiyel olarak kötü niyetli aktörlerin tehditleriyle yüzleşmeye hazırlamak çok önemlidir. Donanım ve yazılım tasarımcılarının bu riski azaltmak için alabilecekleri çeşitli önlemler vardır. Bu önlemler, depolama cihazlarındaki verilerin şifrelenmesi gibi genel teknikleri ve makalenin geri kalanında inceleyeceğimiz IoT'ye özgü bazı teknikleri içerebilir.

donanım

Donanım, IoT cihazlarının güvenliğinin temelidir. Donanım tehlikeye girdiğinde IoT cihazlarının sahip olabileceği yazılım düzeyindeki korumaların çoğu saldırganlar tarafından aşılabilir.

Geçmişte, bir saldırgan bir bilgisayar sistemine fiziksel erişim sağladığında güvenlik açısından oyun sona eriyordu. Neyse ki, giderek artan sayıda IoT cihazı ve diğer mobil cihaz türlerinin etkisiyle bu alanda birçok ilerleme kaydedildi. Bu tür donanım düzeyinde korumaların örnekleri şunlar olabilir:

  • Güvenilir Yürütme Ortamları Intel SGX gibi (TEE), yalnızca anında CPU tarafından şifresi çözülebilen belleğin belirli bölümlerinin (bölgelerin) şifrelenmesine izin vererek, bölgeden kaynaklanmayan kodun (işletim sistemi ve hipervizörler dahil) bunları okumasını ve değiştirmesini etkili bir şekilde önler. herhangi biri var).
  • Fiziksel Olarak Klonlanamayan Fonksiyonlar (PUF) benzersiz, taklit edilemez ve değiştirilemez cihaz tanımlayıcıları olarak kullanılabilir.
  • A Güvenilir Platform Modülü (TPM), şifreleme anahtarları gibi kritik veriler için özel bir kripto işlemci ve güvenli depolamadır. Şifreleme açısından güvenli rastgele sayılar oluşturabilir ve depolanan anahtarları TPM'nin dışına çıkarmadan veya donanım yapılandırmasını doğrulamadan kullanarak şifreleme işlemleri gerçekleştirebilir.

Her ne kadar bu teknikler uzun yıllardır araştırılıp uygulanıyor olsa da, PUF'lar geniş çapta yayılmadı ve TEE'ler daha yeni yeni ilgi görmeye başladı. Öte yandan TPM'ler uzun süredir standart olarak kabul ediliyor, çoğu bilgisayarda bulunabiliyor ve IoT cihazlarının güvenliğini şüphesiz önemli ölçüde artırabiliyor.

Ayrıca, bir IoT cihazının kötü niyetli bir aktör tarafından kasıtlı olarak ele geçirilmesinin tek tehdit olmadığını da unutmamalıyız. Pek çok cihaz dış mekana yerleştiriliyor ve bu da donanımlarının hava koşullarına dayanıklı olmasını zorunlu kılıyor.

İşletim sistemi

İşletim sistemi (OS) olmayan kısıtlı IoT cihazları yaygın olsa da birçok cihaz daha karmaşıktır ve bir işletim sistemi gereklidir.

İşletim sisteminin, üzerinde çalışan herhangi bir bilgisayar işlemine/programına müdahale edebilmesi (yukarıda bahsedilen TEE gibi bazı gelişmiş mekanizmalar kullanılmadığı sürece), onu IoT cihaz güvenliğinin donanım kadar benzer şekilde önemli bir parçası haline getirir.

İlk olarak, önyükleme sırasında bir işletim sisteminin kötü amaçla değiştirilmemiş bir sürümünün yüklendiğini garanti etmenin bir yolu olması gerekir. Böyle bir garanti, işletim sisteminin dijital olarak imzalanması ve imzanın kontrol edilmesiyle sağlanabilir. çizme. Bunun gibi standartlar var Güvenli Başlatma .

Son olarak, tüm işletim sistemlerinde güvenlik açıkları bulunur. Dışında sıfırıncı gün saldırılara karşı bu tür güvenlik açıkları, yazılım yamalarının zamanında teslim edilmesi ve uygulanması yoluyla etkili bir şekilde çözülebilir.

Yazılım uygulamaları

Tek bir uygulamanın tehlikeye atılması, tüm işletim sisteminin veya donanımın tehlikeye atılmasından çok daha küçük bir etkiye sahip gibi görünebilir. Ancak saldırganın başarılı olması için ihtiyaç duyduğu tek şey bu olabilir. Üstelik birçok uygulama, işletim sistemlerinden farklı olarak hassas iş verileriyle doğrudan ilgilenir ve kullanıcılarla etkileşime girer.

İşletim sistemlerine yönelik benzer önlemler, işletim sistemi üzerinde çalışan çeşitli yazılım paketlerine ve uygulamalara da uygulanabilir. Yürütülebilir dosyaların bütünlüğünün ve zamanında güvenlik güncellemelerinin doğrulanması dikkate alınmalıdır.

Geliştiriciler, özel uygulamalar yazarken kodlarının çalışacağı ortamın güvenilmez olduğunu dikkate almalıdır. Örnekler:

  • Hassas verileri yüklerken RAM, hassas verilerin zorla bellek dökümü yoluyla açığa çıkması riskini azaltmak için tahsis edilen belleği mümkün olan en kısa sürede serbest bırakın ve sıfırlayın.
  • Hassas verileri diske yazmadan önce iki kez düşünün. Disk şifrelemesi uygulansa bile veriler dışarı sızdırılacaktır. Hassas verilerin diske yazılması gerektiğinde, önceki bölümde bahsedilen Güvenilir Platform Modülünde (TPM) saklanan bir anahtarla şifrelemeyi düşünün.

IoT Cihazlarının Tanımlanması ve Hazırlanması

IoT cihazlarından oluşan bir filoyu anlamlı bir şekilde yönetmek için her cihazın kendi kimliğine sahip olması ve yeni cihazlara güvenli bir şekilde kimlik atamanın ve gerekirse mevcut cihazların kimliğini değiştirmenin bir yolu olması gerekir. Bu işleme “cihaz provizyonu” diyebiliriz. IoT çözümleri için kimlik, örneğin bireysel cihazlardan gelen verilerin güvenli bir şekilde ayırt edilebilmesi veya güvenliği ihlal edilmiş cihazların bağlantısının kesilebilmesi açısından önemlidir.

Bir IoT cihazının “kimliği” tam olarak nedir? Bu koşullara bağlıdır. Ancak cihazın, kimliğinin meşru olduğunu kanıtlayacak (kimlik doğrulama) bir yola ihtiyacı vardır. Fiziksel ve mantıksal cihaz kimliğini birbirinden ayırabiliriz.

Fiziksel Kimlik

Fiziksel kimlik, cihazın yaşam döngüsünün tamamı boyunca taklit edilemez, benzersiz, değiştirilemez ve aktarılamaz olması gereken ve genellikle iş alanıyla ilgili olmayan, donanım düzeyinde bir kimliktir. İdeal bir dünyada, fiziksel kimlik tam olarak cihaz üretimi tamamlandıktan sonra atanır. Bu, örneğin tüm donanım bileşenlerinin seri numaralarının birleştirilmesiyle başarılabilir. Ancak gerçekte bu yaklaşım çok daha karmaşıktır:

  • Donanım bileşenleri bozulabilir ve yenileriyle değiştirilebilir. Durumu daha da karmaşık hale getirmek için bileşen başka bir cihazın onarılan bileşeniyle değiştirilebilir.
  • Tüm donanım bileşenlerinin bir seri numarası yoktur veya seri numarası kolayca okunamaz.
  • Seri numaraları genellikle kriptografik olarak güvenli tanımlayıcılar değildir.

Bu nedenle fiziksel kimlik genellikle üretim sırasında tanımlayıcılar oluşturularak veya birincil kabul edilen bazı bileşenlerin seri numarası kullanılarak "yaklaştırılır".

Mantıksal Kimlik

Öte yandan mantıksal kimlik, genellikle iş alanına veya cihazın konumu gibi teknik olmayan diğer yönlere sıkı sıkıya bağlıdır. Fiziksel kimliğe benzer şekilde, mantıksal kimlik de taklit edilemez ve benzersiz olmalıdır, ancak değiştirilebilir ve aktarılabilir olabilir.

Fiziksel ve mantıksal kimlik arasındaki farkı göstermek için aşağıdaki örnek kullanım durumunu göz önünde bulundurun: Araba montaj hattındaki robotik kol, belirli bir işlevi yerine getirir. Sabit bir IoT cihazıdır.

Bu robotun fiziksel kimliği, kriptografik olarak güvenli bir veri oluşturularak doğrudan fabrikada atanır. UUID (e.g., c2c38155-b0d2-48b6-82fd-22fe3b316224).

Bu cihaz, verileri bulut tabanlı bir IoT çözümü arka ucuna gönderir ve aynı arka uçtan geri bildirim alır. Bu robotun gönderdiği iki tür veri vardır:

  • Gerçekleştirilen işlevselliğe ilişkin teşhis verileri (örneğin, bu robot tarafından her saat başı montaj hattında kaç araba parçasının işlendiği).
  • Dahili telemetri verileri (örneğin, her bağlantı tarafından uygulanan tork miktarı).

Robotun arızalanması ve değiştirilmesi gerekiyorsa fiziksel kimliği değişecektir.

Robotun mantıksal bir kimliğe sahip olmadığını varsayalım. Bu durumda buluttaki mevcut verileri yeni robotun kimliğiyle ilişkilendirmek kolay değildir. Dahili telemetri verileri yalnızca orijinal robotla ilgili olduğundan bu bir sorun olmayabilir. Ancak gerçekleştirilen işlevlerle ilgili tanılama verileri yeni robotla ilgili olabilir. Ayrıca, arızalanmadan önce orijinal robotla iletişim kuran diğer sistemlere artık robotun değiştirildiğinin bildirilmesi gerekiyor.

Bunu, orijinal robotun aynı zamanda araba montaj hattının organizasyonuyla ilgili mantıksal bir kimliğe sahip olduğu bir durumla karşılaştıralım (örneğin, hat-03-sol-kaynak-12). Bu mantıksal kimlik, teşhis verilerinin saklanması ve diğer sistemlerle iletişim için kullanılırsa robotun değiştirilmesi çok daha kolay olabilir.

IoT Cihazlarının Kimlik Doğrulaması

IoT cihazları hangi tanımlayıcıları kullanırsa kullansın ve nasıl üretilirse üretilsin, cihazların kullandıkları tanımlayıcıların meşru olduğunu kanıtlaması gerekir. Bir tanımlayıcının meşru olduğundan ve doğru bir cihaz tarafından kullanıldığından emin olma sürecine kimlik doğrulama denir.

IoT cihazlarının kimlik doğrulaması her zaman aşağıdakilere dayanır: simetrik or asimetrik (genel) anahtar kriptografi algoritmaları ve karma algoritmaları. Bu algoritmalar her zaman cihazın bir yerinde saklanan gizli bir anahtara ihtiyaç duyar.

Kimlik doğrulamanın tam olarak nasıl çalıştığı belirli algoritmaya bağlıdır. Ancak her zaman aşağıdaki iki varsayım vardır:

  • Cihazın kimliği gizli anahtarla bağlanır.
  • Gizli anahtar gerçekten gizlidir.
  • Asimetrik algoritmalarda yalnızca cihaz tarafından bilinir.
  • Simetrik algoritmalar için, yalnızca cihaz ve kimlik doğrulaması yapan taraf tarafından bilinir (örn. IoT çözümü destekli).

Gizli Anahtarların Kullanımı

Gizli anahtarların nerede ve ne kadar kesin olarak saklanacağı cihazın yeteneklerine ve özel kimlik doğrulama algoritmasına bağlıdır. En son teknoloji yaklaşım, anahtarları Güvenilir Platform Modüllerinde (TPM'ler) tutmaktır. TPM'ler, gizli anahtarları açığa çıkarmadan şifreleme işlemlerini doğrudan yürütebilir ve anahtar sızmasına karşı koruma sağlar.

Birincil anahtarın açığa çıkmasını en aza indirmek ve ileri gizlilik.

Örnekler

En yaygın kullanılan algoritmalar, standartlar ve protokoller şunlardır:

  • RSA, Eliptik Eğriler, SHA2: Temel asimetrik (genel) anahtar şifreleme ve karma algoritmaları.
  • X.509 sertifikaları: Sertifika adı verilen nesneler aracılığıyla asimetrik anahtarların kimlikle nasıl birleştirileceğini tanımlayan standart.
  • mTLS: TCP bağlantılarının güvenliğini sağlamaya yönelik protokol. Düz TLS'den farklı olarak bağlantının her iki tarafı da doğrulanır. Yukarıda belirtilen temel şifreleme ve karma algoritmalar ile X.509 sertifikaları üzerine kurulmuştur.
  • HMAC: Cihazların kimliklerini kanıtlamak için kullanabileceği imzalı bir cihaz tanımlayıcısı oluşturabilen simetrik anahtar tabanlı algoritma.

Önemli Noktalar

IoT güvenliğinin doğası çok yönlüdür. Birçok çeşit IoT cihazı mevcut olmasına rağmen, herhangi bir IoT çözüm tasarımcısının dikkate alması gereken bazı ortak güvenlik hususları vardır:

  • Cihazın çalıştığı ortam (fiziksel güvenlik çevresi).
  • Cihazın üzerine kurulduğu temeller (donanım, işletim sistemi).
  • Cihazı kullanışlı kılan asıl kod (yazılım).
  • Yazılımın güvenli, kontrol edilebilir ve ölçeklenebilir bir şekilde çalışması için gereken süreçler (kimlik, provizyon ve kimlik doğrulama).

Öte yandan bu makaledeki tüm önerileri körü körüne takip edip uygulamak da iyi bir fikir değildir. Çeşitli IoT çözümleri için bazı önlemler diğerlerinden daha önemlidir ve bazıları belirli bağlamlarda alakalı veya uygulanabilir bile olmayabilir. Ancak rahatlatıcı güvenlik önlemleri her zaman bilinçli olarak ve uygun şekilde değerlendirildikten sonra yapılmalıdır.

spot_img

En Son İstihbarat

spot_img