Kaspersky Lab ICS CERT, sunucular ile kritik altyapılar şeklinde endüstriyel sistemlerdeki istemciler içinde güvenli veri transferi için tasarlanan OPC UA (Object Linking and Embedding for Process Control Unified Automation) protokolünü çözümleme etti. Analizlerde protokolün uygulanmasında 17 tane sıfır-gün açığı tespit edildi. Bu açıklar hizmet engelleme (Denial of Service) ve uzaktan kod çalıştırma saldırılarına yol açabiliyor. Ek olarak, bu protokol üstüne kurulu ticari ürünlerde de fazlaca sayıda açık bulunmuş oldu. Tüm açıklar geliştiricilere bildirildi ve Mart 2018 sonuna kadar kapatıldı.

OPC UA, endüstriyel bir ağdaki fazlaca sayıda sistem içinde sağlam ve güvenli veri iletimi sağlamak için 2006 senesinde OPC Foundation tarafınca geliştirilip kullanıma sunulan bir endüstriyel protokol. Bu protokol üretim, petrol ve gaz, ilaç ve başka sektörlerde etkinlik gösteren büyük markalar tarafınca endüstriyel tesislerde sıkça kullanılıyor. Protokolün ağ geçitleri; otomatik süreç kontrolü ve uzaktan ölçümde kontakt, takip ve uzaktan denetim sistemleri için her geçen gün artan sayıda endüstriyel kurum tarafınca kullanılıyor. Böylece bu kurumlar yönetim süreçlerini birleştirebiliyor. Protokol ek olarak, siber saldırganların dikkatini çeken Endüstriyel IoT ve akıllı kent bileşenlerinde de kullanılıyor.

Kaspersky Lab ICS CERT uzmanları OPC UA mimarisini ve ürünlerini çözümleme etti. Örnek bir sunucuyla beraber protokolün açık kaynaklı kodlarını (GitHub’da bulunabilir) inceleyen uzmanlar, mevcut uygulamanın kod tasarımında ve yazımında hatalar buldu. Bu hatalar, bu kadar yaygın kullanılan bir kritik altyapı yazılımında bulunmaması ihtiyaç duyulan türde hatalardı. OPC Foundation ürünlerinde toplamda 17 tane sıfır-gün açığı belirlendi ve geliştiricilere bildirildi. Geliştiriciler de peşinden bu açıkları kapattı.

Kaspersky Lab ICS CERT ek olarak bu endüstriyel protokol üstüne kurulu üçüncü taraf yazılımları da inceledi. İncelenen yazılımlar içinde önde gelen sanayi markalarının çözümleri de bulunuyordu. Bir çok durumda açıkların, protokolün bazı uygulama işlevleri muntazam bir halde kullanılmadığı için ortaya çıkmış olduğu tespit edildi. Bazı durumlarda ise açıkların sebebi protokolün altyapısına hatalı değişimler uygulanmasıydı. Bu yüzden, OPC Foundation’ın orijinal uygulamasında hata olmamasına karşın uzmanlar ticari bir üründe güvensiz işlevler keşfetti. Markaların bilinmeyen nedenlerle protokolün mantığında yapmış olduğu bu değişimler riskli işlevlere niçin oluyordu.

OPC UA protokolünün uygulanmasında tespit edilen tüm açıklar endüstriye büyük zarar verebilecek cinstendi. Bir taraftan, endüstriyel süreçleri aksatıp yada durdurup sistemlere ciddi tehdit oluşturabilecek hizmet engelleme (Denial of Service) riski ortaya çıkıyordu. Öteki taraftan ise, saldırganlara endüstriyel süreçleri denetim etmesini yada ağa sızmaya devam etmesini sağlayacak sunucu komutları gönderme imkanı tanıyan, uzaktan kod çalıştırma yöntemi de uygulanabiliyordu.

Kaspersky Lab ICS CERT Kıdemli Güvenlik Araştırmacısı Sergey Temnikov, “Yazılım geliştiriciler çoğu zaman endüstriyel protokollere fazlasıyla güveniyor. Ürün kodlarını güvenlik denetiminden geçirmeden teknolojiyi çözümlerine uyguluyorlar. Böylece, bu örnekteki şeklinde açıklar ürün serilerinin tamamını etkileyebiliyor. Markaların yaygın kullanılan teknolojilere dikkat etmesi büyük ehemmiyet taşıyor. Ek olarak, markaların kendi yazılımlarını tasarlayacabilecekleri fikrine de kapılmamaları gerekiyor. Bir çok bunun mevcut yazılımlardan daha verimli ve güvenli olabileceğini düşünüyor fakat yepyeni bir yazılım bile fazlaca sayıda açığa haiz olabiliyor.” dedi.

Kaspersky Lab kurumlara şunları öneriyor:

  • Uygulama geliştirme sürecinde güvenlik kontrollerini ve testleri mecburi bir adım olarak görün.
  • Protokollere tamamen güvenmeyin.
  • Açıkları keşfetmek için denetimler ve sızma testleri uygulayın.
  • Yazılım geliştirme süreçlerini öteki süreçlerden ayrı tutun.
  • Böylece bir uygulama ele geçirildiğinde saldırganlar tüm ağa erişemez.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

CLOSE
CLOSE