Benny Czarny’nin “Cybersecurity Upside Down” adlı kitabı hakkında daha fazla bilgi edinin

Daha Fazla Bilgi
Site çevirileri için yapay zeka kullanıyoruz ve doğruluk için çaba göstersek de her zaman %100 kesin olmayabilir. Anlayışınız için teşekkür ederiz.

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™ Micrologix™ 1400 Kontrolörünü CVE-2021-22659'dan Nasıl Korur?

Yazan OPSWAT
OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?
OPSWAT Burs Programı Katılımcıları

Endüstriyel kontrol sistemlerini ve OT ortamlarını uzaktan saldırılara karşı korumak, özellikle Rockwell Automation'ın yaygın olarak kullanılan Micrologix 1400 Kontrolörünü hedef alan CVE-2017-14469 ve şimdi CVE-2021-22659 gibi güvenlik açıkları nedeniyle her zamankinden daha kritiktir. OPSWAT Burs Programı öğrencileri bu güvenlik açığını kontrollü bir ortamda test ederek güvenlik ihtiyacını vurguladılar.

Bu blogda, öğrencilerin saldırganların sistemlerin çökmesine neden olmak için güvenlik açığından nasıl yararlanabileceklerini ve PLC işlemlerini bozmak için uygun girdi doğrulama eksikliğinden nasıl yararlanılabileceğini nasıl gösterdiklerini keşfediyoruz.

PLC nedir? Rockwell Automation Micrologix 1400 Açıklaması

PLC (Programlanabilir Mantık Denetleyicisi), makineleri ve diğer endüstriyel işlemleri kontrol ederek süreçleri otomatikleştirmek için tasarlanmış endüstriyel bir bilgisayardır. Zorlu ortamlarda çalışır ve sensör girişine dayalı olarak belirli görevleri yerine getirmek üzere programlanır. Rockwell Automation'ın MicroLogix 1400 Kontrolörü, küçük ve orta ölçekli uygulamalarda yaygın olarak kullanılan kompakt ve modüler bir PLC'dir. Maliyet etkinliği ve esnekliği ile bilinen bu ürün, çeşitli iletişim protokollerini destekler ve cihazlarla arayüz oluşturmak için dijital ve analog I/O seçenekleri sunar.

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Programlama tipik olarak Rockwell Automation'ın yazılımı kullanılarak merdiven mantığı aracılığıyla yapılır ve kullanıcıların kontrol dizileri oluşturmasına olanak tanır. MicroLogix 1400 çok yönlüdür, makine kontrolü ve proses otomasyonu gibi görevler için uygundur. Modülerliği, kullanıcıların sistemi belirli uygulama gereksinimlerine göre genişletmesine ve özelleştirmesine olanak tanır.

CVE-2021-22659'a Giriş

Ocak 2021’de Rockwell Automation, Hindistan’daki Veermata Jijabai Teknoloji Enstitüsü’nün (VJTI) COE-CNDS biriminden Parul Sindhwad ve Dr. Faruk Kazi’den MicroLogix™ 1400 kontrol cihazındaki bir güvenlik açığına ilişkin bir rapor aldı. Araştırmacılar, 21.6 ve önceki sürümlerde, kimliği doğrulanmamış bir saldırganın uzaktan özel olarak hazırlanmış bir Modbus paketi göndermesine ve bu sayede kayıt defterindeki rastgele değerleri almasına veya değiştirmesine olanak tanıyan bir güvenlik açığı tespit ettiler. Bu güvenlik açığı başarılı bir şekilde istismar edilirse, tampon taşmasına yol açarak hizmet reddi durumuna neden olabilir. FAULT LED'i KIRMIZI renkte yanıp sönecek ve iletişim kesilebilir. Hizmet reddi durumundan kurtulmak için kullanıcının arızayı gidermesi gerekir.

NVD bu güvenlik açığını Yüksek önem derecesi olarak değerlendirmiştir.

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Saldırı Aşamaları

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Savunmasız MicroLogix 1400 PLC'ye ağ erişimi olan uzak, kimliği doğrulanmamış bir saldırgan, kayıttaki değerleri değiştirmek için özel olarak hazırlanmış bir paket gönderebilir. Bu durum potansiyel olarak cihaz için bir hizmet reddi durumuna neden olarak sistemin bozulmasına ve çalışmama süresine yol açabilir. Böyle bir olay, kuruluşun üretim operasyonlarını ve diğer iş faaliyetlerini önemli ölçüde kesintiye uğratabilir.

Modbus Protokolü

Modicon tarafından 1979 yılında geliştirilen Modbus protokolü, akıllı cihazlar arasında istemci-sunucu iletişimi kurmak için tasarlanmış bir mesajlaşma yapısıdır. Başlangıçta Modicon'un PLC'leri ile kullanılmak üzere tasarlanmış, o zamandan beri endüstriyel elektronik cihazlar arasındaki iletişim için standart bir iletişim protokolü haline gelmiştir.

Ethernet (Modbus TCP) ve seri hatlar (Modbus RTU ve Modbus ASCII) için Modbus protokolleri vardır. Modbus RTU (Uzak Terminal Birimi), verileri seri iletişim yoluyla doğrudan ikili biçimde iletir ve Modbus TCP (İletim Kontrol Protokolü), Modbus protokol verilerini TCP/IP ağları üzerinden iletim için TCP paketlerine yerleştirir.

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Modbus Mesaj Yapısı

Modbus, istemcinin bir Modbus cihazına bir istek ilettiği ve cihazın daha sonra bir yanıt verdiği bir istek-yanıt protokolüdür.

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Birincilden ikincile gönderilen bir Modbus mesajı ikincilin adresini, "komutu " (örn. "kayıt oku" veya "kayıt yaz"), verileri ve bir kontrol toplamını (LRC veya CRC) içerir.

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Veri adresleri, verileri okurken veya değiştirirken Modbus sorgu mesajlarında kullanılır. Modbus dört Veri Tipi tanımlar: Bobin, Giriş Durumu, Giriş Kaydı ve Tutma Kaydı. Bunlardan ikisi Bobinler ve Ayrık Girişler olarak adlandırılan açma-kapama (1 bit) değerlerini depolar ve ikisi de Kayıtlar olarak adlandırılan 16 bitlik kelimeler olarak sayısal değerleri depolar. Her biri ya salt okunur ya da okuma/yazma özelliğine sahiptir.

Veri Tipi

Erişim

Tanım

Bobin

Okuma-yazma

Tek bit çıkışlar.

Ayrık Giriş

Salt okunur

Tek bit girişler.

Giriş Kaydı

Salt okunur

16 bit giriş kayıtları.

Holding Kaydı

Okuma-yazma

16 bit çıkış kayıtları.

Modbus fonksiyon kodlarının üç kategorisi vardır:

  • Genel Fonksiyon Kodları - Kullanıcı tanımlı kodlar hariç 1'den 127'ye kadar.
  • Kullanıcı Tanımlı Fonksiyon Kodları - 65 ila 72 ve 100 ila 110 arasında iki aralıkta.
  • Ayrılmış Fonksiyon Kodları - Bazı şirketler tarafından eski ürünler için kullanılır ve genel kullanıma açık değildir.

Fonksiyon tipi

İşlev adı

Fonksiyon kodu

Veri Erişimi

Bit erişimi

Fiziksel Ayrık Girişler

Ayrık Girişleri Okuma

2

Dahili Bitler veya Fiziksel Bobinler

Bobinleri Okuyun

Tek Bobin Yaz

Çoklu Bobin Yazma

1

5

15

16 bit erişim

Fiziksel Giriş Kayıtları

Giriş Kayıtlarını Okuma

4

Dahili Kayıtlar veya Fiziksel Çıkış Kayıtları

Çoklu Tutma Kayıtlarını Okuma

Tek Tutma Kaydı Yaz

Birden Fazla Tutma Kaydı Yazma

Çoklu Kayıtları Okuma/Yazma

Maske Yazma Kaydı

Okuma FIFO Kuyruğu

3

6

16

23

22

24

Dosya Kayıt Erişimi

Dosya Kaydını Oku

Dosya Kaydı Yaz

20

21

Teşhis

İstisna Durumunu Oku

Teşhis

Com Olay Sayacını Al

Com Olay Günlüğünü Al

Slave Kimliğini Bildir

Cihaz Tanımlamasını Oku

7

8

11

12

17

43

Diğer

Kapsüllenmiş Arayüz Aktarımı

43

İşlev türü: Veri Erişimi
Alt tür: Bit erişimi
Kategori: Fiziksel Ayrık Girişler
İşlev adı: Ayrık Girişleri Oku
İşlev kodu: 2

İşlev türü: Veri Erişimi
Alt tür: Bit erişimi
Kategori: Dahili Bitler veya Fiziksel Bobinler
İşlev adı: Bobinleri Oku
İşlev kodu: 1

İşlev türü: Veri Erişimi
Alt tür: Bit erişimi
Kategori: Dahili Bitler veya Fiziksel Bobinler
İşlev adı: Tek Bobine Yazma
İşlev kodu: 5

İşlev türü: Veri Erişimi
Alt tür: Bit erişimi
Kategori: Dahili Bitler veya Fiziksel Bobinler
İşlev adı: Birden Fazla Bobine Yazma
İşlev kodu: 15

İşlev türü: Veri Erişimi
Alt tür: 16 bit erişim
Kategori: Fiziksel Giriş Kayıtları
İşlev adı: Giriş Kayıtlarını Oku
İşlev kodu: 4

İşlev türü: Veri Erişimi
Alt tür: 16 bit erişim
Kategori: Dahili Kayıtlar veya Fiziksel Çıkış Kayıtları
İşlev adı: Birden Çok Tutma Kaydını Okuma
İşlev kodu: 3

İşlev türü: Veri Erişimi
Alt tür: 16 bit erişim
Kategori: Dahili Kayıtlar veya Fiziksel Çıkış Kayıtları
İşlev adı: Tekli Tutma Kaydına Yazma
İşlev kodu: 6

İşlev türü: Veri Erişimi
Alt tür: 16 bit erişim
Kategori: Dahili Kayıtlar veya Fiziksel Çıkış Kayıtları
İşlev adı: Birden Çok Tutma Kaydına Yazma
İşlev kodu: 16

İşlev türü: Veri Erişimi
Alt tür: 16 bit erişim
Kategori: Dahili Kayıtlar veya Fiziksel Çıkış Kayıtları
İşlev adı: Birden Fazla Kaydı Okuma/Yazma
İşlev kodu: 23

İşlev türü: Veri Erişimi
Alt tür: 16 bit erişim
Kategori: Dahili Kayıtlar veya Fiziksel Çıkış Kayıtları
İşlev adı: Maske Yazma Kaydı
İşlev kodu: 22

İşlev türü: Veri Erişimi
Alt tür: 16 bit erişim
Kategori: Dahili Kayıtlar veya Fiziksel Çıkış Kayıtları
İşlev adı: FIFO Kuyruğunu Oku
İşlev kodu: 24

İşlev türü: Veri Erişimi
Alt tür: Dosya Kaydı Erişimi
İşlev adı: Dosya Kaydını Oku
İşlev kodu: 20

İşlev türü: Veri Erişimi
Alt tür: Dosya Kaydı Erişimi
İşlev adı: Dosya Kaydı Yazma
İşlev kodu: 21

İşlev türü: Teşhis
İşlev adı: İstisna Durumunu Oku
İşlev kodu: 7

İşlev türü: Teşhis
İşlev adı: Teşhis
İşlev kodu: 8

İşlev türü: Teşhis
İşlev adı: Com Olay Sayacını Al
İşlev kodu: 11

İşlev türü: Teşhis
İşlev adı: Com Olay Günlüğünü Al
İşlev kodu: 12

İşlev türü: Teşhis
İşlev adı: Slave Kimliğini Bildir
İşlev kodu: 17

İşlev türü: Teşhis
İşlev adı: Aygıt Kimliğini Oku
İşlev kodu: 43

İşlev türü: Diğer
İşlev adı: Kapsüllenmiş Arayüz Aktarımı
İşlev kodu: 43

İstismar

Güvenlik Açığı Analizi

OPSWAT Yüksek Lisans Bursiyerlerimiz, analiz yoluyla Modbus TCP iletişimi sırasında protokolün iletilen paketler için kimlik doğrulama ve şifrelemeden yoksun olduğunu keşfetti. Ayrıca, MicroLogix 1400 PLC'de girdi doğrulaması düzgün bir şekilde uygulanmamaktadır. Sonuç olarak, uzaktaki bir saldırgan Modbus TCP paketini paket koklama yoluyla analiz edebilir ve Modbus TCP protokolü aracılığıyla kimlik doğrulaması olmadan PLC'ye herhangi bir istek gönderebilir. MicroLogix 1400 PLC cihazının giriş doğrulama eksikliği nedeniyle, uzaktan kimliği doğrulanmış bir saldırgan rastgele değerlere sahip çok sayıda paket gönderebilir ve bu da PLC'nin çökmesine neden olabilir.

Kayıt Üzerine Yazma

Başlangıçta, PLC'deki kayıtları okumak veya yazmak için kullanılan Modbus TCP paketlerini yakalamaya çalıştık. Bunu başarmak için, MicroLogix 1400 PLC'deki kayıtların okunmasını ve yazılmasını kolaylaştıran Modbus Poll adlı bir uygulama tarafından oluşturulan paketleri inceledik.

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Ağ arayüzünden gelen tüm paketleri yakalamak için Wireshark kullanarak, tek bir kayıt yazmak için Modbus TCP paketini tanımlayabiliriz:

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?
OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Koklanan paketlerin yapısına dayanarak, hedef PLC'de bir kaydın yazılmasını talep eden TCP paketleri göndermek için basit bir Python betiği geliştirdik. Bu senaryoda PLC'nin IP adresi 192.168.93.89'dur.

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Kötü niyetli kimliği doğrulanmamış paketimizi aldıktan sonra PLC'nin kaydı değiştirildi.

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?
OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Micro Logix 1400'de çoğu matematik talimatı üç parametre kullanır: Kaynak A, Kaynak B ve Hedef

Kaynak A ve Kaynak B için değerler N13:3 ve N13:4 adlı iki 16 bitlik kayıttan gelebilir. Ayrıca, N13:3 ve N13:4 gibi bu 16 bitlik kayıtlardaki değerler -32,768 ila +32,767 aralığında sınırlandırılmıştır. N13:3 ve N13:4 değerleri büyükse, eşleştirme komutunun sonucu veri tipinin maksimum aralığını aşarak PLC'nin çökmesine neden olabilir. Sonuç olarak, PLC'de bir çökmeye neden olmak için, N13:3 ve N13:4 dahil olmak üzere tüm kayıtlara büyük rastgele değerler yazmak gerekir. Bunu başarmak için Python betiğimizi aşağıdaki gibi değiştirdik:

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Saldırıyı Simüle Edin

Gerçek dünyadan bir saldırıyı simüle etmek için, OPSWAT Mezun Bursiyerlerimiz, hem saldırganın hem de PLC'nin aynı ağ üzerinde olduğu ve birbirleriyle iletişim kurabildiği varsayımı altında, OPSWAT CIP Laboratuvarlarında bulunan MicroLogix 1400 PLC'de bir çökmeye neden olmaya çalıştılar.

OPSWAT Laboratuvarlarındaki MicroLogix 1400 PLC'nin normal çalışma durumunda, PLC UZAKTAN ÇALIŞTIRMA modundayken, tüm kayıt değerleri geçerlidir ve veri türleri için belirlenen aralıkta yer alır, bu da kullanıcı programının doğru çalıştığını gösterir.

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Python betiğimizin çalıştırılmasının ardından, PLC'ye çok sayıda Modbus TCP paketi gönderilecek ve kimlik doğrulaması olmadan tüm kayıtlara büyük rastgele değerlerin yazılması istenecektir:

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

Bu kötü niyetli paket istekleri alındıktan sonra, N13:3 ve N13:4 dahil olmak üzere tüm kayıtların değerleri 16,990'a ayarlanır. N13:3 ve N13:4 kayıtlarındaki ADD işleminin sonucu 16 bitlik bir kaydın geçerli aralığını aşar. Bu sorun bir tamsayı taşmasına neden olarak bir hataya yol açar ve PLC'nin çalışmasını FAULTED (ARIZALI) durumuyla gösterildiği gibi kesintiye uğratır.

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

OPSWAT Mezun Arkadaşlarımız CVE-2021-22659'dan yararlanarak MicroLogix 1400 PLC'yi başarılı bir şekilde çökerttiler.

İyileştirme

OT Sistemlerini Uzaktan Saldırılara Karşı Koruma: MetaDefender OT Security™, Micrologix™ 1400 Kontrol Cihazını CVE-20'den Nasıl Korur?

CVE-2021-22659 gibi güvenlik açıkları karşısında, OT ve siber-fiziksel sistemlerin korunması için kapsamlı iyileştirme çok önemlidir. Aşağıda, saldırıların yayılmasını önlemek için kullanılabilecek bazı temel stratejiler verilmiştir:

  1. Bilinen CVE'leri tespit etme: CVE-2021-22659 gibi güvenlik açıkları için ağları düzenli olarak taramak.
  2. Anormal davranışlar için izleme: Micrologix 1400 PLC'ye iletişim sıklığındaki olağandışı artışların işaretlenmesi, bu da devam eden bir yetkisiz veri aktarımı saldırısına işaret edebilir.
  3. Yeni cihaz bağlantılarını tanımlama: Sistem, PLC'ye yeni bir cihaz bağlandığında bunu algılamalıdır.
  4. Ağ segmentasyonu: Etkilenen cihazların izole edilmesi, saldırıların yanal olarak yayılmasını önlemeye yardımcı olabilir ve böylece etkiyi en aza indirir.

OPSWAT'ın MetaDefender OT Security , CVE'leri tespit ederek, olağandışı davranışlar için ağı sürekli izleyerek ve yetkisiz bağlantıları belirleyerek bu ihtiyaçları karşılar. Yapay zeka kullanarak normal trafik modellerini öğrenir, temel davranışları belirler ve anormallikleri uyarmak için politikalar uygular. Bu, potansiyel tehditlere anında ve bilinçli yanıtlar verilmesini sağlar.

CVE-2021-22659'dan yararlanan bir saldırı durumunda MetaDefender OT Security , belirlenen kurallara göre şüpheli iletişimleri engellemek için MetaDefender Industrial Firewall ile entegre olur. Güvenlik duvarı, düzenli trafik modellerini öğrenmek ve yetkisiz bağlantıları önlemek için politikaları uygulamak için yapay zeka kullanır.

Bu tespit, uyarı ve ağ segmentasyonu yeteneklerini bir araya getiren MetaDefender OT Security , endüstriyel ortamlar için ideal bir savunma mekanizması haline gelir ve operasyonel teknoloji ortamlarındaki siber tehditlerin riskini ve etkisini önemli ölçüde azaltır.

OPSWAT'ın derinlemesine savunma siber güvenlik platformunun duruşunuzu nasıl geliştirebileceğini ve olgunlaştırabileceğini keşfedin. Ücretsiz demo için bugün bir uzmanla konuşun.

OPSWAT ile Güncel Kalın!

Şirketle ilgili en son gelişmeleri, haberleri, etkinlik bilgilerini ve daha fazlasını almak için bugün kaydolun.