İçeriğe atla
Otomasyon parçaları, dünya çapında tedarik
How to Harden PLCs Against Cyber Threats in Factories?

Fabrikalarda PLC'leri Siber Tehditlere Karşı Nasıl Güçlendirilir?

Bu teknik makale, bir mühendisin bakış açısından PLC ve DCS güvenliğini inceleyerek protokol düzeyindeki zayıflıkları (Modbus, Profinet), adım adım sertleştirme prosedürlerini, güvenli programlama uygulamalarını ve otomotiv ile su arıtma tesislerinden gerçek dünya vaka verilerini detaylandırmaktadır. Ağ segmentasyonu, güvenlik duvarı yapılandırması, donanım yazılımı güncelleme iş akışları ve uzaktan erişim sertleştirme için uygulanabilir rehberlik sunmaktadır.

Modern PLC'ler ve DCS'lerin Saldırı Yüzeyini Anlamak

Programlanabilir mantık kontrolörleri ve dağıtık kontrol sistemleri, endüstriyel otomasyonun sinir sistemini oluşturur. Kurumsal BT sunucularının aksine, bu cihazlar güvenlik özelliklerinden çok deterministik zamanlama ve yüksek kullanılabilirliği önceliklendirir. Sonuç olarak, çoğu kontrolör şifreli iletişim, bütünlük kontrolleri veya rol tabanlı erişim kontrolü gibi temel korumalardan yoksundur. Üretim ağları kurumsal BT veya bulut platformlarına bağlandığında, saldırı yüzeyi dramatik şekilde genişler. Bir PLC üzerindeki tek bir korumasız Ethernet portu, tüm üretim hattını uzaktan ele geçirmeye açık hale getirebilir.

Derinlemesine İnceleme: Mühendislerin Bilmesi Gereken Protokol Seviyesi Zayıflıklar

Endüstriyel protokoller onlarca yıl önce basitlik ve hız için tasarlandı. Güvenlik asla tasarım hedefi olmadı. Bu teknik zayıflıkları anlamak, mühendislerin uygun telafi edici kontrolleri seçmesine yardımcı olur.

Modbus TCP: Kimlik Doğrulama Yok, Şifreleme Yok

Modbus TCP, okuma ve yazma işlemleri için 01-06 fonksiyon kodlarını kullanır. Port 502'ye erişebilen herhangi bir cihaz rastgele yazma komutları gönderebilir. Oturum kavramı, kullanıcı kimliği veya mesaj bütünlüğü kontrolü yoktur. Ağa erişim sağlayan bir saldırgan motoru durdurabilir, vanayı açabilir veya ayar noktasını değiştirebilir ve kimlik doğrulama kayıtları bırakmaz. Tek koruma, ağ katmanı izolasyonu veya fonksiyon kodlarını filtreleyen uygulama katmanı geçitleridir.

Profinet ve EtherNet/IP: Enjeksiyon Saldırılarına Karşı Savunmasız

Bu gerçek zamanlı protokoller döngüsel veri alışverişine dayanır. IO verisinin kaynağını doğrulamazlar. IO kontrolörüymüş gibi davranan kötü niyetli bir cihaz yanlış sensör verileri enjekte edebilir. Tersine, bir saldırgan güvenlik telegramını taklit ederek acil durdurmaları tetikleyebilir. Segmentasyon veya derin paket incelemesi olmadan bu saldırılar tespit edilemez.

OPC Classic: DCOM Güvenlik Açıklarına Bağlı

Birçok eski DCS sistemi, Microsoft DCOM'a bağlı olan OPC DA (Veri Erişimi) kullanır. DCOM, uzaktan kod yürütme açıklarıyla uzun bir geçmişe sahiptir. Ayrıca, OPC Classic yerel olarak şifrelemeyi desteklemez. Bir OPC sunucusunu ele geçiren saldırganlar herhangi bir proses etiketini okuyabilir veya yazabilir. Güvenlik etkinleştirilmiş OPC UA'ya geçiş önerilen yoldur.

Teknik Sertleştirme Rehberi: Saha Mühendisleri için Adım Adım

Aşağıdaki prosedürler, kontrolöre fiziksel veya güvenli uzaktan erişiminiz olduğunu varsayar. Bu değişiklikleri her zaman planlanmış bir bakım penceresinde yapın ve sonrasında çalışmayı doğrulayın.

Adım 1: Bir Güvenlik Temel Denetimi Yapın

Her PLC'ye mühendislik yazılımı ile bağlanın. Aşağıdakileri kaydedin: firmware sürümü, etkin protokoller (HTTP, FTP, SNMP, Telnet), açık TCP/UDP portları, yapılandırılmış kullanıcı hesapları ve son parola değişikliği tarihi. Güvenlik standardınızdan sapmaları takip etmek için bir elektronik tablo kullanın. Siemens S7 kontrolörlerde donanım özelliklerinde yapılandırılmış erişim seviyesini kontrol edin. Rockwell kontrolörlerde Studio 5000'de kontrolör koruma ayarlarını gözden geçirin.

Adım 2: Kontrolör Yapılandırmasını Sertleştirme

Kullanılmayan tüm protokol yığınlarını devre dışı bırakın. Tipik bir PLC'de web sunucusu, FTP, SNMP ve herhangi bir özel bakım portunu kapatın. Ethernet portlarında kullanılmayan hizmetlerin otomatik müzakeresini devre dışı bırakın. Protokol numaralandırmayı destekliyorsa varsayılan raf/yuva adreslemesini değiştirin. Rockwell Logix kontrolörlerinde kullanılmayan portları "Devre Dışı" moda ayarlayın ve benzersiz bir anahtarla "Sistem Koruması"nı etkinleştirin.

Adım 3: Güçlü Erişim Kontrolü Uygulama

Her mühendis için ayrı kullanıcı hesapları oluşturun. Varsayılan "admin" veya "engineer" hesaplarını kullanmaktan kaçının. Rol tabanlı erişimi destekleyen sistemlerde en az üç rol tanımlayın: operatör (yalnızca okuma), teknisyen (okuma ve manuel komutlar) ve mühendis (tam program erişimi). Parola karmaşıklığı kuralları belirleyin: en az 12 karakter, büyük harf, küçük harf, rakam ve semboller. PLC'yi herhangi bir ağa bağlamadan önce varsayılan fabrika parolalarını değiştirin.

Adım 4: Ağ Düzeyinde Koruma Uygulama

Her PLC'yi protokol içeriğini denetleyen endüstriyel bir güvenlik duvarının arkasına yerleştirin. Her trafik türü için yalnızca belirli kaynak IP adreslerine izin veren güvenlik duvarı kuralları oluşturun. Örneğin, HMI'dan PLC'ye trafiğe protokol portu 44818 (EtherNet/IP) üzerinden izin verin ancak programlama yazılımı trafiğini (port 2222) yalnızca bir özel mühendislik iş istasyonundan engelleyin. Güvenlik PLC'lerini standart kontrol PLC'lerinden ayırmak için VLAN kullanın. Sahte cihaz bağlantısını önlemek için anahtar portlarında 802.1X port kimlik doğrulaması uygulayın.

Adım 5: Güvenli Firmware Güncelleme İş Akışı Oluşturma

Firmware'i doğrudan internet üzerinden satıcı sitesinden güncellemeyin. Firmware ikili dosyasını güvenilir, çevrimdışı bir bilgisayara indirin. Dosyanın dijital imzasını doğrulayın. Güncellemeyi, en az 40 saat simüle edilmiş çalışma süresiyle laboratuvar ortamında aynı model bir kontrolörde test edin. Güncelleme başarısız olursa geri alma prosedürünü belgeleyin. Güncellemeleri yalnızca planlı duruş zamanlarında uygulayın, çalışan bir süreçte asla yapmayın.

Adım 6: Kayıt ve Uyarı Yapılandırması

PLC destekliyorsa syslog iletimini etkinleştirin. Yerel kayıt özelliği olmayan kontrolörler için, trafiği izlemek ve belirli olaylar için uyarılar oluşturmak amacıyla bir ağ tapı kullanın: program indirme, çalışma modundan programa geçiş, zorunlu IO veya tekrarlayan başarısız giriş denemeleri. Kayıtları OT'ye özgü korelasyon kuralları olan merkezi bir SIEM'e iletin. Uyarı şiddet seviyelerini, mesai dışı saatlerde program değişikliği durumunda derhal inceleme başlatacak şekilde ayarlayın.

Gelişmiş Teknik Rehber: Güvenli PLC Programlama Uygulamaları

Güvenlik mantığın içine kadar uzanmalıdır. Bu programlama teknikleri, kontrol cihazının içinde derinlemesine savunma katmanı ekler.

  • Sağlamlık doğrulaması uygulayın: Başlangıçta kritik mantık bloklarının döngüsel fazlalık kontrolünü hesaplayın. Bilinen iyi değeri kalıcı bellekte saklayın. Sağlamlık doğrulaması uyuşmazsa, güvenli durumu tetikleyin ve operatörleri uyarın.
  • İletişim kaybı için bekçi zamanlayıcıları kullanın: Herhangi bir uzak IO veya HMI iletişimi için bir bekçi zamanlayıcı ayarlayın. Beklenen döngüsel mesaj zaman aşımı içinde gelmezse, çıkışları önceden tanımlanmış güvenli pozisyonlara taşıyın. Bu, eski veya sahte verilerin tehlikeli hareketlere neden olmasını önler.
  • Tüm HMI girişlerini PLC’de doğrulayın: Bir HMI’nin geçerli değerler gönderdiğine asla güvenmeyin. PLC mantığında analog set noktalarının güvenli minimum ve maksimum aralıkta kalıp kalmadığını kontrol edin. Ayrık komutlar için, sıra düzeninin geçerli olduğunu doğrulayın. Aralık dışı veya sıra dışı komutları reddedin.
  • Güvenlik mantığını standart mantıktan ayırın: Acil durdurma ve koruyucu fonksiyonlar için özel güvenlik PLC’leri veya güvenlik sertifikalı IO kullanın. Standart PLC’lerin güvenlik çıkışlarına yazma erişimi olmamalıdır. Bu izolasyon, tamamen ele geçirilmiş bir standart PLC’nin bile güvenlik fonksiyonlarını geçersiz kılmasını engeller.

Gerçek Dünya Teknik Vaka: Otomotiv Tesisi 320 PLC’yi Güvence Altına Aldı

320 PLC’ye (Siemens S7-1200 ve S7-1500) sahip büyük bir otomotiv güç aktarma organı tesisi, ele geçirilmiş yüklenici dizüstü bilgisayarlarından tekrar eden yetkisiz erişim girişimleriyle karşılaştı. Tesis mühendislik ekibi aşağıdaki teknik adımlarla sistematik bir güvenlik programı uyguladı.

  • Envanter yapıldı ve 47 PLC’de varsayılan parolaların hala aktif olduğu keşfedildi.
  • Tüm varsayılan kimlik bilgileri değiştirildi ve parola yaşlandırması 90 gün olarak yapılandırıldı.
  • TIA Portal toplu işlemi ile tüm kontrol cihazlarında web sunucusu ve FTP devre dışı bırakıldı.
  • Ağ segmentasyonu uygulandı: Siemens Scalance güvenlik duvarları ile beş OT bölgesi ayrıldı.
  • Katı güvenlik duvarı kuralları oluşturuldu: PLC ile uzak IO arasında sadece Profinet IO trafiğine (portlar 34962-34964) izin verildi; belirli HMI ve SCADA’dan sadece S7 iletişimine (port 102) izin verildi; diğer tüm trafik engellendi.
  • Tüm 320 PLC’nin donanım yazılımı laboratuvar testinden sonra 2.6 sürümünden 3.0 sürümüne güncellendi.
  • Program indirme olayları için uyarılarla merkezi bir SIEM’e syslog iletimi etkinleştirildi.

90 gün sonra ölçülen sonuçlar: Yetkisiz giriş denemeleri ayda 487’den 39’a düştü (%92 azalma). Siber kaynaklı olaylar nedeniyle üretim duruşları 6 olaydan 0’a indi. Anormal program indirmelerini tespit süresi 14 saatten 12 dakikaya düştü. Toplam proje maliyeti 180.000 $ oldu ve haftalık 4,2 milyon $ tahmini maliyeti olan potansiyel bir fidye yazılımı saldırısını önledi.

Teknik Vaka: Su Arıtma Tesisi Modbus Enjeksiyonunu Önledi

Bir belediye su arıtma tesisi, düz bir ağda Modbus TCP kullanan 85 PLC işletiyordu. Operatörler, HMI'dan komut olmadan aralıklı vana hareketleri ve pompa başlatma olayları gözlemledi. Araştırma, ağda yetkisiz bir cihazın Fonksiyon Kodu 05 (tek bobin yazma) ve Fonksiyon Kodu 16 (çoklu kayıt yazma) enjekte ettiğini ortaya çıkardı.

Mühendislik ekibi aşağıdaki teknik karşı önlemleri uyguladı:

  • Ana anahtar ile PLC alt ağı arasında şeffaf modda endüstriyel bir güvenlik duvarı (Tofino) kuruldu.
  • İzin verilen Modbus işlemlerinin beyaz listesi oluşturuldu: sadece HMI ve SCADA IP adreslerinden okuma istekleri (Fonksiyon Kodları 01,02,03,04).
  • Yazma isteklerine (Fonksiyon Kodları 05,06,15,16) sadece belirlenmiş bakım pencerelerinde ve tek bir özel mühendislik iş istasyonu IP'sinden izin verildi; zaman bazlı ACL kullanıldı.
  • Kayıt adreslerinin yapılandırılmış aralıklar içinde kalmasını doğrulamak için derin paket inceleme etkinleştirildi.

Sonuçlar: İlk ayda güvenlik duvarı 1.200 kötü amaçlı Modbus fonksiyon kodunu engelledi. Kritik pompa PLC'lerine yetkisiz yazma komutları tamamen durdu. Operatörler kontrol bütünlüğüne tam güven kazandı. Çözüm 25.000 $ maliyetle çevresel cezalar ve hizmet kesintileri önlendi.

Mühendisler için Güvenli Uzaktan Erişim Yapılandırma Rehberi

PLC'ler için uzaktan destek operasyonel olarak gerekli ancak teknik olarak risklidir. Bu kesin yapılandırma modelini izleyin.

  • Özel bir OT VPN konsantratörü kurun: IPsec veya OpenVPN destekleyen bir güvenlik duvarı cihazı kullanın. Bunu IT ve OT arasında bir DMZ'ye yerleştirin. OT erişimi için kurumsal IT VPN'ini kullanmayın.
  • Her kullanıcı için MFA yapılandırın: Hem sertifika veya donanım belirteci hem de şifre gerektirin. OT'ye özgü bir LDAP dizini ile entegre edin.
  • Zaman ve kaynak bazlı kısıtlamalar uygulayın: Uzaktan erişime sadece önceden onaylanmış saatlerde ve tedarikçi ofisinin belirli genel IP adreslerinden izin verin.
  • Oturum kaydı olan bir atlama sunucusu kullanın: Uzaktan kullanıcıların önce OT bölgesindeki kilitli bir Windows makinesine bağlanmasını zorunlu kılın. Tüm PLC programlama yazılımları sadece bu atlama sunucusunda çalışır. Tam video ve tuş vuruşu kayıtlarını tutun.
  • Tek kullanımlık kimlik bilgilerini zorunlu kılın: Her oturum için benzersiz VPN şifreleri oluşturun. Bunları 8 saat sonra otomatik olarak iptal edin. Her tedarikçi ziyareti sonrası atlama sunucusunun yerel yönetici kimlik bilgilerini değiştirin.

Yaygın PLC Güvenlik Uygulama Sorunlarının Giderilmesi

Mühendisler, güvenlik kontrolleri uygularken sıkça belirli sorunlarla karşılaşırlar. İşte teknik çözümler.

  • Sorun: Varsayılan şifre değiştirildikten sonra mühendislik yazılımı çevrimiçi olamıyor.
    Çözüm: Mühendislik iş istasyonu kayıt defteri veya kimlik bilgisi yöneticisinde saklanan kimlik bilgilerini temizleyin. Bazı platformlar (Rockwell) yeni şifrenin tüm oturumlarda geçerli olması için PLC'nin güç döngüsünü gerektirir.
  • Sorun: Segmentasyondan sonra güvenlik duvarı meşru IO trafiğini engelliyor.
    Çözüm: Üretim sırasında trafiği yakalamak için port aynalamayı kullanın. Paket yakalamayı analiz ederek tüm gerekli kaynak/hedef çiftlerini ve protokol portlarını belirleyin. Gözlemlenen trafiğe dayalı izin kuralları oluşturun, sonra engelleme moduna geçin.
  • Sorun: Firmware güncellemesi başarısız oluyor ve PLC durdurma moduna geçiyor.
    Çözüm: Her güncellemeden önce yeni donanım revizyonunu tam olarak desteklediğinden emin olun. Satıcının kurtarma aracını (örneğin Siemens SIMATIC Field PG) kullanarak önceki firmware sürümüne geri dönün. Orijinal firmware ikili dosyasının yedeğini her zaman çevrimdışı bir USB sürücüde saklayın.

Saha Mühendislerinden Sıkça Sorulan Sorular

Bir PLC'nin müdahale edilip edilmediğini nasıl doğrulayabilirim?

Çalışan mevcut mantığı, çevrimdışı saklanan bilinen iyi bir yedekle karşılaştırın. Mühendislik yazılımındaki karşılaştırma araçlarını kullanın (örneğin TIA Portal'da "Çevrimiçi/Çevrimdışı Karşılaştır" veya Studio 5000'de "Mantık Karşılaştır"). Son program indirme tarih ve saat damgasını kontrol edin. Mevcutsa PLC'nin dahili günlüklerini inceleyin. Kritik uygulamalarda mantık içinde çalışma zamanı toplam doğrulaması uygulayın.

Üretimi aksatmadan güvenlik duvarı kurallarını test etmenin en güvenli yolu nedir?

İlk hafta sadece kayıt tutmak için şeffaf köprü modunda güvenlik duvarını kurun. Engellenecek tüm trafiği kaydedin. Yanlış pozitifleri belirlemek için günlükleri inceleyin. Sonra bakım penceresinde engelleme moduna geçin. Kritik iletişim yolu yanlışlıkla engellenirse atlanabilmesi için yedekli iki güvenlik duvarı kullanın.

PLC ağlarında standart bir BT zafiyet tarayıcısı kullanabilir miyim?

No. Bozuk paketler gönderen veya varsayılan giriş denemeleri yapan aktif tarayıcılar eski PLC'leri çökertir. Probe üretmeden mevcut trafiği analiz eden pasif OT izleme araçları kullanın. Aktif tarama gerekiyorsa, endüstriyel protokol sınırlamalarını anlayan satıcıya özel araçları (örneğin Rockwell Safety Assurance Tool veya Siemens Sinema Remote Connect) tercih edin.

Kontrol Mühendisleri için Nihai Teknik Öneriler

Modern endüstriyel otomasyonda PLC'ler ve DCS için güvenlik zorunludur. Pilot olarak tek bir üretim hücresiyle başlayın. Parola güçlendirme, port kilitleme ve ağ segmentasyonu uygulayın. Anormal olaylardaki azalmayı ölçün. Tesisin tamamına kademeli olarak genişletin. Her yapılandırma değişikliğini sürüm kontrolü yapılan bir güvenlik temelinde belgeleyin. Her kontrol cihazının sorumluluğunu belirli bir mühendise atayın. Güvenliği tek seferlik bir uyum çalışması değil, sürekli bir mühendislik disiplini olarak ele alın. Bu teknik uygulamaları entegre eden fabrikalar hem siber riski hem de plansız duruş sürelerini azaltır.

Bloga dön