Fortigate Firewall Scada Fonksiyonlarını Aktif Etmek

Merhabalar Arkadaşlar,

 

bu makalemde fortinet’in industrial db ve scada’lara özel IPS modülünün nasıl aktif edildiğini ve neler yapılması gerektiğini anlatacağım

belli başlı bazı ürünler var scada ips imzalarını çalıştıran ve fortinet bu cihazlardan bir tanesi, fakat fortigate firewall default lisanlarında bu özellik gelmez bu imzalar için özel database’i vardır ve bunun için birde lisansı (industrial db) lisans olarak geçer bu lisansın amacı indusrial IPS imzalarının güncelleştirmesi ve indirilmesi fonksiyonlarının aktif edilmesidir

 

şimdi öncelikle lisans tarafını kontrol edelim,

/Users/yunus/Desktop/Fortigate_Makale/scada_lisans.png

yukarıdaki belirttiğim yerde ( Industrial DB ) lisansınız olması gerekiyor bu lisans olmadan SCADA ips imzalarının cihazın üzerindeki IPS database’ine düşmez, ( mutlaka update yapmayı unutmayın )

bir sonraki aşama ise CLI üzerinden bütün ( Industrial DB ) imzaların Profile’ında görünmesi ve Features’ların aktif olması için aşağıdaki adımları izleyin

/Users/yunus/Desktop/Fortigate_Makale/scada_imzaları.png

bir sonraki adım ise IPS Profile’larının oluşturulması

/Users/yunus/Desktop/Screen Shot 2020-12-05 at 23.20.08.png

/Users/yunus/Desktop/Screen Shot 2020-12-05 at 23.13.11.png

yukarıdaki adımda / Blocm malicious olan URLs aktif edelim ve / Botnet C&C altındaki Scan Outgoing Connections to Botnet Sites Block olarak işaretleyelim

daha sonra Create New diyip imzaları ekleyelim,

/Users/yunus/Desktop/Screen Shot 2020-12-05 at 23.15.17.png

Yukarıdaki ekranda / Type- Signature işaretleyin / Action- Reset olarak işaretleyin / Packet loggin-Status Enable olarak işaretleyin

Search kısmına scada protokolü olan / Modbus-ICCP-MMS / aratıp hepsini işaretleyip

/Users/yunus/Desktop/Screen Shot 2020-12-05 at 23.16.28.png

son olarak aşağıdaki gibi olacak

/Users/yunus/Desktop/Screen Shot 2020-12-05 at 23.16.36.png

daha sonra firewall policy’lere bu oluşturduğunuz ips profile’ını scada sunucunuza erişen scada terminallerine match edebilirsiniz

bu protocol sadece scada sistemlerinde çalışmaktadır.

Son olarakta bu logları inceleyebilirsiniz

Aşağıdaki sekmeden

LOG & Report

Intrusion Prevention

 

 

 

CLI komutu;

config ips global
set exclude-signatures none
end

 

CLI üzerinden özel olarak modbus imzalarının loglarının debug çıktılarını alarak özelleştirip imzaları ekleyebilirsiniz komutları aşağıda

diagnose ips debug enable all
diagnose debug enable

 

 

APPLİCATİON KONTROL;

 

Evet son adım olan Application filter işlemlerine geçeceğiz,

Bu işlem scada terminallerinden sahaya gönderilen vana açma, kapatma, ve reset komutları, yada sistemin boru hatlarındaki otomasyonlarından farklı hatlara yönlendirme gibi kritik seviyedeki komutların kontrolleri ve belirli ip adreslerine izin verilmesi gibi konutları anlatacağım

application filter tarafında yukarıda bahsettiğim terminallerden sahaya gönderilen komutları kontrol edebilirsiniz,

 

bunun için application filter’dan profile yazmalısınız

 

 

Bu komutları işleyen modül industrial db üzerinde gelen application filter’dir,

bu işlemler için

SECURİTY PROFİLE – APPLİCATİON CONTROL – CREATE NEW

AŞAĞIDAKİ PROSEDÜRDE

APPLİCATİON AND FİLTER OVERRİDES – KISMINDA

CREATE NEW

Type- APPLICATION

arama kısmına – INDUSTRİAL yazıp industrial kategorisindeki bütün imzaları eklemelisiniz

 

Son olarak sahaya gönderilen komutları application loglarından görebilirsiniz

Scada IPS imzaları;

MMS_GetNameList.Request

MMS_GetNamedVariableListAttributes.Request

MMS_GetVariableAccessAttributes.Request

MMS_Identify.Request

MMS_Initiate.Request

MMS_Read.Request

MMS_Reset.Request

ICCP_Transfer.Reporting

ICCP_Create.Dataset

ICCP_Abort

ICCP_Start.Transfer.DSTransferSet

ICCP_Get.Dataset.Element.Values

ICCP_Get.Next.DSTransfer.Set.Value

ICCP_Delete.Dataset

ICCP_Start.Transfer.IMTransferSet

 

Örnek Scada Application imzaları;

F-SBID( --name "ModBusRTU.Close.Custom";--protocol tcp;--flow from_client; --dst_port 502; --pattern "|06 0b ec 54 60|"; --context packet; --distance 3,context; --within 5,context; --weight 20; --app_cat 26; )


F-SBID(--name "ModBusRTU.Shutdown.Custom";--protocol tcp;--flow from_client; --dst_port 502; --pattern "|05 00 27 ff 00|"; --context packet; --distance 3,context; --within 5,context; --weight 20;--app_cat 26; ) 


F-SBID(--name "ModBusRTU.Shutdown.Custom2";--protocol tcp;--flow from_client; --dst_port 8095; --pattern "|05 00 69 00 00|"; --context packet; --distance 3,context; --within 5,context; --weight 20;--app_cat 26; ) 


F-SBID(--name "ModBusRTU.Shutdown_1.Custom";--protocol tcp;--flow from_client; --dst_port 502; --pattern "|05 00 27 ff 00|"; --context packet; --distance 3,context; --within 5,context; --tag set,MODBUS_SHUTDOWN_ST1.Custom; --weight 20;--app_cat 26; ) 

Leave a Reply

Your email address will not be published. Required fields are marked *