Kurumsal Network Kurulumu

FortiGate Firewall Antivirüs Profili: Flow ve Proxy Farkı

FortiGate Firewall antivirüs profili: EICAR testiyle flow ve proxy kipinin farkı, HTTPS'te sertifika denetiminin körlüğü ve 10 MB sınırı lab'da ölçüldü.

İlker Pehlivan

FortiGate Firewall antivirüs profili, kuraldan geçen dosyayı ağda tarayan ve zararlı bulduğunu kullanıcıya ulaşmadan durduran güvenlik profilidir. Dosyayı bilgisayara inmeden yakalar, yani bilgisayardaki antivirüsün önüne ikinci bir eleme koyar.

NIST’in zararlı yazılım rehberi kurumların hem bilgisayardaki hem de ağdaki antivirüsü birlikte kullanmasını istiyor. FortiGate’te asıl karar dosyanın hangi kipte tarandığıdır: akış kipi (flow-based) dosyayı geçirirken tarar, proxy kipi (proxy-based) dosyanın tamamını bekletip tarar. İki kipin farkı kullanıcının ekranında da logda da ayrı görünüyor.

Bu yazı FortiGate Firewall ileri seviye rehberimizin 5. adımıdır. Ağdaki antivirüsün bilgisayardaki antivirüsten farkını antivirüs ve uç nokta güvenliği yazımızda anlattık. Burada çalışan ağının internet çıkışına antivirüs bağlıyorum ve iki kipi, bütün antivirüs ürünlerinin tanıması için hazırlanmış zararsız EICAR test dosyasıyla ölçüyorum. Lab cihazımın FortiGuard aboneliği yok, virüs tanımları Nisan 2018 tarihinde kalmış.

Lab’da üç şey beklenenden farklı çıktı:

  1. Akış kipinde (flow-based) 9 MB’lık bir dosyanın son paketi dışında hepsi kullanıcıya ulaştı ve uyarı sayfası ancak ikinci denemede çıktı.
  2. Aynı test dosyası HTTPS’ten indirilince antivirüs onu hiç görmedi.
  3. 10 MB’ı aşan bir zip akış kipinde taranmadan geçti ve logda iz bırakmadı.

Örnekteki sınır kapısında yükler iki yolla geçer. Birinde görevli kolileri banttan akarken tek tek tarar ve yalnız sonuncusunu elinde tutar. Tehlikeli bir şey görürse bandı durdurur, ama önceki koliler çoktan geçmiştir. Ötekinde tırın bütün yükü inceleme hangarına indirilir ve hepsine bakılmadan kapı açılmaz. FortiGate’te bant akış kipi, hangar proxy kipidir.

FortiGate Firewall antivirüs benzetmesi: sınır kapısında solda bantla akan sandıklar, bandın sonunda görevli son sandığı elinde tutuyor, öndekiler kaldırılmış bariyerin ötesine geçmiş, sağda inceleme hangarında tırın bütün yükü indirilmiş, ikinci görevli açık bir sandığa bakıyor
Bantta yük taranırken akmaya devam eder, yalnız son koli tutulur. Hangarda bütün yük indirilip tek tek bakılır. FortiGate'te bant akış kipi, hangar proxy kipidir.

Bu yazı, Kurumsal Network Kurulumu hizmetimizde çalışan ağının internet çıkışına antivirüs koyarken izlediğimiz sırayı anlatır.

FortiGate Antivirüs Profili Nasıl Olmalı?

Antivirüs, çalışanların internetten indirdiği dosyalara ve dışarıya açık sunuculara gelen dosyalara bağlanır. Bütün kurallar tek kipte çalışır: fabrika ayarındaki akış kipi, proxy’ye özgü bir özellik gerekmedikçe değişmez. HTTPS’ten inen dosyayı görmek için derin denetim gerekir ve büyük dosyaların ne olacağı bilerek seçilir. Bilgisayardaki antivirüs de yerinde kalır.

Bu düzeni üç kaynak birlikte tarif ediyor:

  1. NIST SP 800-83 Rev. 1 (Temmuz 2013), zararlı yazılım olaylarını önleme rehberi, bölüm 3.4.1: kurumlar antivirüs taramasını hem bilgisayarda hem ağda yapmalı. Ağdaki tarama bilgisayardakinin yerine geçmez, ona eklenir.
  2. Fortinet FortiOS 7.0 Best Practices, Security profiles: antivirüs giden trafikte iç kullanıcıları internetten zararlı yazılım indirmekten korur, gelen trafikte dışarıya açık servisleri korur. Aynı sayfa kipi de söylüyor: akış kipi verimin, proxy kipi titizliğin öncelikli olduğu kurallarda kullanılır ve bütün kurallarda tek kip kullanılması önerilir.
  3. Fortinet FortiOS 7.0 yönetim kılavuzu, akış kipi ve proxy kipi sayfaları: proxy’ye özgü bir özellik gerekmedikçe önerilen denetim kipi akıştır. Proxy kipinde dosyanın paketleri, yükün tamamı denetlenene kadar FortiGate’te tutulur.

Kararlar:

KararÖneriDayanak
Nereye bağlanırÇalışanların internet çıkışı ve dışarıya açık sunucuya gelen kuralFortinet BP
Denetim kipiAkış, bütün kurallarda aynıFortinet BP, kılavuz
HTTPSDerin denetim yoksa dosya görülmezLab ölçümü
10 MB’ı aşan dosyaFabrika ayarında akış kipinde taranmadan geçer, karar bilerek verilirLab ölçümü
Bilgisayardaki antivirüsKalır, ağdaki antivirüs onun yerini tutmazNIST SP 800-83
İmzalarFortiGuard aboneliğiyle güncelFortinet VM kılavuzu

Flow mu Proxy mi?

İki kip aynı virüsü yakalar. Farkı, dosyanın tarandığı sırada nerede durduğudur:

  1. Akış (flow) kipi dosyayı bekletmez. Fortinet’in kılavuzuna göre içerik paket paket taranır ve yalnız son paket karar çıkana kadar tutulur. Virüs bulunursa FortiGate alıcıya bağlantıyı kesen bir paket (TCP RST) gönderir.
  2. Proxy kipi bağlantıyı kendisi karşılar ve dosyanın tamamını toplar. Tarama bitince dosya ya kullanıcıya bırakılır ya da yerine bir uyarı sayfası gönderilir.
Akış ve proxy kipinin farkı. Akış kipinde dosyanın paketleri FortiGate'ten geçerek kullanıcıya akar, yalnız son paket bekletilir. Virüs bulununca bağlantı kesilir. Lab'da 9 MB'lık dosyanın son paket dışında tamamı kullanıcıya ulaştı ve uyarı sayfası ikinci denemede geldi. Proxy kipinde dosyanın tamamı FortiGate'te toplanıp taranır. Virüs bulununca dosyanın yerine uyarı sayfası gider ve kullanıcıya dosyadan tek bayt ulaşmaz. Akış (flow): dosya geçerken taranır sunucu FortiGate kullanıcı dosya son paket ilk paketler 1. paketler geçer, sonuncusu tutulur 2. virüs bulununca bağlantı kesilir lab: 9.000.286 baytın 8.999.320'si kullanıcıya ulaştı uyarı sayfası ikinci denemede Proxy: dosyanın tamamı beklenir sunucu FortiGate kullanıcı 403 dosya tamamı tutulur uyarı sayfası 1. dosyanın tamamı toplanıp taranır 2. dosyanın yerine uyarı sayfası gider lab: kullanıcıya dosyadan tek bayt gitmedi uyarı sayfası ilk denemede Akış ve proxy kipinin farkı. Akış kipinde dosyanın paketleri FortiGate'ten geçerek kullanıcıya akar, yalnız son paket bekletilir. Virüs bulununca bağlantı kesilir. Lab'da 9 MB'lık dosyanın son paket dışında tamamı kullanıcıya ulaştı ve uyarı sayfası ikinci denemede geldi. Proxy kipinde dosyanın tamamı FortiGate'te toplanıp taranır. Virüs bulununca dosyanın yerine uyarı sayfası gider ve kullanıcıya dosyadan tek bayt ulaşmaz. Akış (flow): dosya geçerken taranır sunucu FortiGate kullanıcı dosya son paket ilk paketler 1. paketler geçer, sonuncusu tutulur 2. virüs bulununca bağlantı kesilir lab: 9.000.286 baytın 8.999.320'si kullanıcıya ulaştı uyarı sayfası ikinci denemede Proxy: dosyanın tamamı beklenir sunucu FortiGate kullanıcı 403 dosya tamamı tutulur uyarı sayfası 1. dosyanın tamamı toplanıp taranır 2. dosyanın yerine uyarı sayfası gider lab: kullanıcıya dosyadan tek bayt gitmedi uyarı sayfası ilk denemede
Akış kipinde dosya taranırken kullanıcıya akar, proxy kipinde kapıda bekler. Virüs ikisinde de yakalanır, ama kullanıcının gördüğü farklıdır.

Proxy kipinin akışta olmayan özellikleri var. Fortinet’in kip karşılaştırma tablosuna göre antivirüste en görünür fark uyarı sayfasıdır. Akış kipinde uyarı sayfası vardır, ama tablonun dipnotuna göre ancak ikinci denemede gösterilir: IPS motoru adresi önbelleğe alır ve uyarı sayfası ikinci denemeden sonra çıkar. Web filtresinin güvenli araması da yalnız proxy kipinde çalışıyor. Bunu FortiGate web filtre yazımızda ölçtük.

Tek kip önerisinin gerekçesi Fortinet’e göre kaynak kullanımı. İki kip ayrı süreçlerde çalışıyor: akış kipinin taramasını IPS motoru, proxy kipininkini WAD adlı vekil süreci yapıyor. Aynı en iyi uygulama sayfasına göre normal trafikte iki kipin hız farkı önemsiz. Çoğu kurumda akış kipi yeter. Proxy’ye geçmek, aşağıdaki ölçümlerde görünen bir özelliğe ihtiyaç duyulduğunda verilen bilinçli bir karardır.

FortiGate Antivirüs Öncesi: İmza Veritabanı ve Fabrika Profili

Antivirüsün neyi tanıyacağını imza veritabanı belirliyor, o yüzden önce onun tarihine baktım (diagnose autoupdate versions):

FortiGate CLI Çıktısı
AV Engine
---------
Version: 6.00282
Last Updated using manual update on Thu Sep 15 22:32:00 2022
...
Virus Definitions
---------
Version: 1.00000
Last Updated using manual update on Mon Apr  9 18:07:00 2018

Virüs tanımları Nisan 2018’den kalma. Fortinet’in sanal makine kılavuzuna göre değerlendirme lisansında FortiGuard güncellemesi gelmiyor ve antivirüs kurulum imajındaki yerleşik imzalarla çalışıyor. EICAR değişmeyen bir test dosyası olduğu için bu eski veritabanı onu tanımaya yetiyor. Yeni bir zararlıyı tanımaya ise yetmez.

Security Profiles → AntiVirus ekranında fabrika ayarında üç profil var: default, wifi-default ve sniffer-profile. default profilinin komut satırındaki tam yapılandırmasından ilgili satırlar:

FortiGate CLI Çıktısı
config antivirus profile
    edit "default"
        set comment "Scan files and block viruses."
        set feature-set flow
        config http
            set av-scan block
            set outbreak-prevention disable
            set quarantine disable
            set emulator enable
        end
        ...
        config cifs
            set av-scan disable
        ...
        set av-virus-log enable
        set av-block-log enable

Profil akış kipinde. HTTP, FTP ve üç e-posta protokolü (SMTP, POP3, IMAP) taranıyor, Windows dosya paylaşımı (CIFS) taranmıyor. Virüs bulunduğunda engelleme ve log açık. FortiGuard’ın salgın önleme veritabanı kapalı, çünkü abonelik istiyor.

EICAR Test Dosyası Nedir?

EICAR test dosyası, antivirüsü gerçek bir virüs kullanmadan denemek için hazırlanmış zararsız bir dosyadır. Avrupa Bilgisayar Antivirüs Araştırmaları Enstitüsü (EICAR) ile antivirüs araştırmacılarının birliği CARO birlikte geliştirdi. EICAR’ın sitesine göre dosya virüs değildir ve hiçbir zararlı kod parçası taşımaz, ama antivirüs ürünlerinin çoğu ona virüs bulmuş gibi tepki verir (eicar.org).

Dosyanın içi büyük harf, rakam ve noktalama işaretlerinden oluşan 68 karakterlik tek bir satırdır ve içinde EICAR-STANDARD-ANTIVIRUS-TEST-FILE ifadesi geçer. Antivirüs üreticileri bu satırı tanımak üzerinde anlaşmıştır: dosya bu 68 karakterle başlıyorsa virüs gibi raporlanır, ama adı test olduğunu belli eder. FortiGate de onu aşağıda EICAR_TEST_FILE adıyla raporladı. Dosya çalıştırılırsa yalnız ekrana bu ifadeyi yazan eski bir DOS programıdır.

Örnekteki sınır kapısında EICAR bir tatbikat kolisidir: içinde tehlikeli bir şey yoktur, ama üzerinde bütün görevlilerin tanıdığı bir işaret vardır. Görevli onu gerçek bir kaçak gibi durdurur, kapının nasıl tepki verdiği de böylece kimseye zarar vermeden görülür.

Test Düzeni: EICAR Dosyası ve Taklit Web Sunucusu

Lab’da çalışan ağının (10.34.30.0/24) kendi internet çıkış kuralı var: kural 1, yalnız HTTP, HTTPS ve ping. Testleri bu kuralda yaptım. Servis sağlayıcı tarafına internetteki bir web sunucusunu taklit eden bir sunucu (203.0.113.66) koydum ve EICAR’ın kendi sitesinden indirdiğim iki test dosyasını üzerine bıraktım: düz dosya eicar.com.txt (68 bayt) ve onun zip içindeki hâli eicar_com.zip. Antivirüs bağlanmadan önce çalışan ağındaki bir makineden ikisini de indirdim:

Bash
curl -s -o /tmp/indirilen -w "HTTP %{http_code}, %{size_download} bayt, cikis kodu " http://203.0.113.66/eicar.com.txt; echo $?
Çıktı
eicar.com.txt: HTTP 200, 68 bayt, cikis kodu 0
eicar_com.zip: HTTP 200, 184 bayt, cikis kodu 0

İki dosya da olduğu gibi indi. Antivirüs kurala bağlanana kadar FortiGate dosyaya bakmıyor.

FortiGate Antivirüs Profilini Kurala Bağlamak

Fabrika profilini doğrudan kullanmak yerine kopyaladım ve kopyaya hangi ağ için olduğunu yazdım. Fabrika profili cihazdaki her kuralda aynı adla durur, kurumun kendi profili ise hangi ağın neyle tarandığını adından söyler. Komut satırında:

FortiGate CLI
config antivirus profile
    clone "default" to "personel-av"
    edit "personel-av"
        set comment "Personel internet cikisi: indirilen dosya taranir"
    next
end

Profil formu (Security Profiles → AntiVirus → personel-av):

  1. AntiVirus scan: Block. Monitor virüsü yalnız loglar ve dosyayı geçirir. Yeni bir kuralda önce izlemek mantıklı görünebilir, ama izlenen virüs kullanıcının bilgisayarına iner.
  2. Feature set: Flow-based. Profilin hangi kipin seçeneklerini göstereceğini seçer. Kuralın kipi ayrıca kuralda seçilir.
  3. Inspected Protocols: hangi protokollerdeki dosyanın taranacağını seçer. CIFS fabrika ayarında kapalı.
  4. Quarantine: kapalı. Fortinet’in karşılaştırma tablosuna göre bu seçenek yalnız diski olan ya da FortiAnalyzer veya FortiGate Cloud’a bağlı cihazlarda çalışır.
FortiGate Edit AntiVirus Profile formu, personel-av: AntiVirus scan Block, Feature set Flow-based ve Inspected Protocols listesinde HTTP, SMTP, POP3, IMAP, FTP açık, CIFS kapalı, kırmızı çerçeveyle işaretli
Profil virüsü engelliyor ve akış kipinin seçeneklerini gösteriyor. CIFS, yani Windows dosya paylaşımı, fabrika ayarında taranmıyor.

Profil kurala Policy & Objects → Firewall Policy → kural formundaki Security Profiles bölümünden bağlanır. Lab’da profil personel ağının internet çıkış kuralında (1):

  1. Name, Incoming Interface ve Outgoing Interface: Ic ag internet cikisi, personel → dis-hatlar. Antivirüs, çalışanların internetten indirdiği dosyaya bakar.
  2. Service: HTTP, HTTPS ve PING. Profil yalnız bu servislerdeki dosyaları görür.
  3. Inspection Mode: Flow-based. Kuralın denetim kipi bu formda seçilir ve antivirüsün davranışını belirler, farkı aşağıda ölçtüm.
  4. AntiVirus: açık, personel-av.
  5. SSL Inspection: certificate-inspection. HTTPS’teki dosyayı görmek için yetmez, bedeli HTTPS bölümünde.
FortiGate Edit Policy formu, Ic ag internet cikisi: Inspection Mode Flow-based ve Security Profiles altında AntiVirus personel-av satırı kırmızı çerçeveyle işaretli
Kural akış kipinde ve antivirüs profili bağlı. SSL denetimi yalnız sertifika denetimi, bunun bedeli HTTPS bölümünde görünüyor.

Kuraldaki karşılığı:

FortiGate CLI
config firewall policy
    edit 1
        set name "Ic ag internet cikisi"
        set utm-status enable
        set ssl-ssh-profile "certificate-inspection"
        set av-profile "personel-av"
    next
end

Kural zaten başka bir profil taşıdığı için utm-status açıktı. Profilsiz bir kurala antivirüs bağlanırken bu satır da enable olur.

FortiGate Antivirüs Akış Kipinde: Son Paket Bekletilir

Profil bağlandıktan sonra aynı iki dosyayı art arda ikişer kez indirdim. Önceki denemelerin önbelleğine takılmasın diye adrese yeni bir sorgu parçası ekledim (?d=flow1), çıktıya da gövde dosyasının diske yazılıp yazılmadığını ekledim. Saatler ntp01’in, UTC:

Çıktı
2026-10-04 08:05:00 UTC
eicar.com.txt?d=flow1: HTTP 200, 0 bayt, cikis kodu 56 | govde dosyasi: yok
eicar.com.txt?d=flow1: HTTP 403, 4830 bayt, cikis kodu 0 | govde dosyasi: var
eicar_com.zip?d=flow1: HTTP 200, 0 bayt, cikis kodu 56 | govde dosyasi: yok
eicar_com.zip?d=flow1: HTTP 403, 4840 bayt, cikis kodu 0 | govde dosyasi: var

Satırlar sırayla şunu söylüyor:

  1. İlk denemede sunucunun cevabı başladı ama dosya gelmedi. HTTP 200 başlığı kullanıcıya ulaştı, gövde 0 bayt kaldı ve curl 56 koduyla, yani bağlantı karşıdan kesilerek bitti. 68 baytlık dosya tek pakete sığıyor ve o paket FortiGate’te bekletilen son paketti.
  2. İkinci denemede uyarı sayfası geldi. 403 ve 4830 baytlık bir HTML sayfası. Fortinet’in tablosundaki dipnot birebir tuttu: akış kipinde uyarı sayfası ikinci denemede çıkıyor.
  3. Zip içindeki dosya da yakalandı. Fabrika profili arşivi açıp içine bakıyor.

Uyarı sayfasının başlığı High Security Alert, yani yüksek güvenlik uyarısı. Metni de sebebi söylüyor: eicar.com.txt dosyasını indirmenize izin verilmiyor, çünkü dosyada EICAR_TEST_FILE virüsü var. Aynı denemede 5 MB’lık temiz bir dosya olduğu gibi indi.

68 baytlık dosyada “son paket” dosyanın tamamı demek. Farkı büyük dosya gösterdi. İçinde EICAR ve 9 MB rastgele dolgu olan bir zip hazırladım ve aynı kuraldan indirdim:

Çıktı
FLOW orta.zip 9 MB (1): HTTP 200, 8999320 bayt, cikis 56
FLOW orta.zip 9 MB (2): HTTP 403, 4834 bayt, cikis 0

Dosya 9.000.286 bayttı ve ilk denemede 8.999.320 baytı kullanıcıya ulaştı. FortiGate yalnız son 966 baytı tuttu, virüsü bulunca bağlantıyı kesti. İndirme başarısız bitti, ama dosyanın neredeyse tamamı ağdan geçmiş oldu. Akış kipinin bedeli budur: dosya taranırken kullanıcıya akar.

Her deneme antivirüs loguna ayrı bir satır olarak düştü. Kesilen ilk deneme de uyarı sayfasının çıktığı ikinci deneme de aynı biçimde (execute log display, kategori 2):

FortiGate CLI Çıktısı
date=2026-10-04 time=11:05:00 type="utm" subtype="virus" eventtype="infected" level="warning" policyid=1 ... msg="File is infected." action="blocked" service="HTTP" srcip=10.34.30.10 dstip=203.0.113.66 ... filename="eicar.com.txt" quarskip="Quarantine-disabled" virus="EICAR_TEST_FILE" viruscat="Virus" ...

Arayüzde aynı kayıtlar Log & Report → AntiVirus ekranında görünüyor:

FortiGate Log & Report AntiVirus ekranı: on bir satırın hepsinde Service sütunu HTTP ve Action sütunu blocked, Virus/Botnet sütununda EICAR_TEST_FILE. Service ve Action sütunları kırmızı çerçeveyle işaretli
Her deneme ayrı bir engelleme satırı. Bütün satırların servisi HTTP: aynı dosyanın HTTPS'ten indiği denemeler bu listede hiç yok.

FortiGate Antivirüs Proxy Kipinde: Dosyanın Tamamı Beklenir

Aynı kuralı proxy kipine aldım. Arayüzde kural formundaki Inspection Mode alanında Proxy-based seçilir. Komut satırında:

FortiGate CLI
config firewall policy
    edit 1
        set inspection-mode proxy
    next
end

Profile dokunmadım: personel-av akış kipinin seçeneklerini gösteren (feature-set flow) bir profil olarak kaldı ve proxy kuralında da çalıştı. Aynı testler:

Çıktı
2026-10-04 08:05:34 UTC
eicar.com.txt?d=proxy1: HTTP 403, 5392 bayt, 0.007824 sn, cikis kodu 0
eicar.com.txt?d=proxy1: HTTP 403, 5392 bayt, 0.003682 sn, cikis kodu 0
eicar_com.zip?d=proxy1: HTTP 403, 5392 bayt, 0.004173 sn, cikis kodu 0
dosya.bin?d=proxy1: HTTP 200, 5000000 bayt, 0.222486 sn, cikis kodu 0

Uyarı sayfası ilk denemede geldi ve kesilen bağlantı yok. 9 MB’lık zipte fark daha açık:

Çıktı
PROXY orta.zip 9 MB (1): HTTP 403, 5387 bayt, 0.009502 sn, cikis 0
PROXY orta.zip 9 MB (2): HTTP 403, 5387 bayt, 0.007544 sn, cikis 0

Akış kipinde dosyanın neredeyse tamamı kullanıcıya ulaşmıştı. Proxy kipinde kullanıcıya dosyadan tek bayt gitmedi, yerine yalnız uyarı sayfası geldi. Temiz 5 MB’lık dosya da iki kipte de sorunsuz indi.

Örnekteki sınır kapısında hangar, tehlikeli kolinin önceki kolilerle birlikte yola çıkmasına izin vermez. Bedeli de hangarın kendisidir: bütün yük indirilip bakılmadan tır kapıdan çıkamaz. FortiGate’te bu bedel bellek ve bekleme süresidir. Fortinet bu yüzden proxy’yi titizliğin verimden önemli olduğu kurallara bırakıyor.

FortiGate Antivirüs ve HTTPS: Sertifika Denetimi Dosyayı Görmez

Bugün indirmelerin çoğu HTTPS’ten geliyor. Lab’daki sunucuya HTTPS de ekledim ve kural akış kipindeyken aynı test dosyasını HTTPS’ten, sunucu adıyla üç kez indirdim:

Çıktı
2026-10-04 08:08:24 UTC
HTTPS (SNI dosya.example.net) eicar.com.txt (a): HTTP 200, 68 bayt, cikis kodu 0 | ...
HTTPS (SNI dosya.example.net) eicar.com.txt (b): HTTP 200, 68 bayt, cikis kodu 0 | ...
HTTPS (SNI dosya.example.net) eicar.com.txt (c): HTTP 200, 68 bayt, cikis kodu 0 | ...

Üçünde de dosyanın tamamı, 68 bayt indi ve antivirüs logunda bu denemelere ait tek satır yok. Aynı dosya HTTP’den her denemede engellenmişti.

Sebep kuraldaki SSL profili. certificate-inspection bağlantıyı açmaz, yalnız sunucunun sertifikasına ve adına bakar. Antivirüs şifreli akışın içindeki dosyayı göremez, göremediğini de tarayamaz. HTTPS’ten inen dosyayı taramak için derin denetim (deep inspection) gerekir.

Aynı kuralı derin denetime alınca dosya HTTP’deki gibi yakalandı: ilk denemede bağlantı kesildi, ikincide uyarı sayfası geldi. Bu ölçümü ve derin denetimin kullanıcı bilgisayarlarında istediği güven zincirini FortiGate SSL inspection yazımızda anlattık. Rehberde SSL inspection’ın birinci adım olmasının sebebi de bu: web filtre, uygulama kontrolü ve antivirüs HTTPS’te ancak bu adımın izin verdiği kadarını görür.

Bu ölçümün bir sonucu da test yöntemi. EICAR’ın sitesi dosyayı HTTPS’ten veriyor. Derin denetimi olmayan bir FortiGate’in arkasından o siteden test dosyası indirmek “antivirüs çalışmıyor” sonucunu verir. Oysa antivirüs çalışıyordur, yalnız dosyayı görmüyordur. Testi HTTP’den sunulan bir dosyayla yapın.

FortiGate Antivirüste 10 MB Sınırı: Büyük Dosya Ne Olur?

Antivirüsün hangi boyuttaki dosyayı tarayacağı profilde değil, kurala bağlı Protocol Options profilinde duruyor. Fabrika default profilinin HTTP bölümü:

FortiGate CLI Çıktısı
config firewall profile-protocol-options
    edit "default"
        set oversize-log disable
        ...
        config http
            set ports 80
            unset options
            ...
            set oversize-limit 10
            set uncompressed-oversize-limit 10

Sınır 10 MB. options boş olduğu için sınırı aşan dosyayı engelleme seçeneği (oversize) seçili değil, yani büyük dosya geçiyor. Bunu içinde EICAR olan iki zipe ölçtürdüm:

DosyaAkış kipiProxy kipi
9 MB zipEngellendi, ilk denemede 8.999.320 bayt geçtiEngellendi, ilk denemede
11 MB zipTaranmadan geçti, beş denemenin beşinde 11.000.286 baytEngellendi, fabrika ayarında üç denemenin üçünde

Akış kipinde 11 MB’lık zip sınırı aştığı için taranmadı ve kullanıcıya olduğu gibi indi. Antivirüs logunda bu indirmeye ait satır yok. Fabrika ayarında oversize-log disable olduğu için sınırı aşan dosya sessizce geçiyor. Seçeneği açıp aynı zipi akış kipinde yeniden indirdim, antivirüs loguna yine satır düşmedi.

Proxy kipi aynı zipi yakaladı. Fortinet’in 7.0 kılavuzundaki proxy kipinde akış tabanlı tarama sayfası sebebi yazıyor: boyut sınırını aşan arşiv dosyaları (ZIP, GZIP, BZIP2, TAR, ISO) açılıp zararlıya karşı taranır. Proxy kipi sınırı aşan arşivi baştan sona tamponlamadan, akış hâlinde açıp tarıyor.

Fortinet de NIST de bu sınır için bir değer önermiyor. Ölçülen seçenekler şunlar:

  1. Sınırı yükseltmek: daha büyük dosya taranır, karşılığında cihazın belleği kullanılır.
  2. Sınırı aşanı engellemek (set options oversize): taranamayan dosya geçmez, ama büyük meşru indirmeler de kesilir.
  3. Büyük dosyayı bilgisayardaki antivirüse bırakmak: NIST’in iki katmanlı önerisi zaten bunu istiyor. Bu durumda karar bilerek verilir ve yazılır, çünkü logda iz kalmıyor.

Kurum arşivle dosya alışverişi yapıyorsa ve bütün kurallarını proxy kipinde çalıştırmayı kaldırabiliyorsa, proxy kipinin arşivleri sınırın ötesinde de açması bir gerekçedir. Bu durumda tek kip kuralı bozulmaz: bütün kurallar proxy’ye geçer.

Doğrulama: FortiGate Antivirüs Doğru Çalışıyor mu?

  1. Kural: çalışanların internet çıkışında antivirüs profili bağlı ve bütün kurallar aynı kipte.
  2. Test: EICAR test dosyası HTTP’den indirildiğinde akış kipinde ikinci denemede, proxy kipinde ilk denemede High Security Alert sayfası geliyor.
  3. Log: Log & Report → AntiVirus ekranında her deneme EICAR_TEST_FILE ve blocked ile görünüyor.
  4. HTTPS: aynı dosya HTTPS’ten de denenmiş. Derin denetim yoksa dosya iner. Bu bir arıza değil, antivirüsün HTTPS’teki dosyaları görmediğini gösterir ve bilerek verilmiş bir karar olarak yazılır.
  5. Büyük dosya: 10 MB’ı aşan dosyanın ne olacağı (yükseltilmiş sınır, engelleme ya da bilgisayardaki antivirüs) seçilmiş.
  6. İmza tarihi: diagnose autoupdate versions çıktısında virüs tanımlarının son güncelleme tarihi yakın.

Sonuç: FortiGate Antivirüs Yalnız Gördüğü Dosyayı Durdurur

FortiGate’te antivirüs profili birkaç seçimle kuruluyor. Asıl kararlar, dosyanın hangi kipte tarandığı ve antivirüsün hangi dosyaları hiç görmediğidir. Lab’da dört şey öne çıktı:

  1. Akış kipinde dosya taranırken kullanıcıya akıyor: 9 MB’lık zipin son paket dışında tamamı kullanıcıya ulaştı, uyarı sayfası ikinci denemede geldi.
  2. Proxy kipinde dosyanın tamamı bekletiliyor: kullanıcıya dosyadan tek bayt gitmedi, uyarı sayfası ilk denemede geldi.
  3. Sertifika denetimiyle HTTPS’ten inen dosya hiç taranmadı ve loga düşmedi.
  4. 10 MB’ı aşan zip akış kipinde sessizce geçti. Proxy kipi aynı arşivi açıp yakaladı.

Örnekteki sınır kapısında görevli bant ile hangar arasında bir kez seçer ve bütün şeritlerde aynı yolu kullanır. Mühürlü konteynerin içine ise ikisi de bakamaz. FortiGate’te bu seçim kuraldaki denetim kipi, mühür de derin denetim olmadan açılmayan HTTPS’tir. Antivirüsü web filtre ve SSL profiliyle birlikte tek seferde kurala takmayı rehberin profil grubu bölümünde anlattık. Sıradaki adım rehberin 6. adımı, Active Directory ile kullanıcı tabanlı kural.

FortiGate Firewall Antivirüs Hakkında Sık Sorulan Sorular

Çalışır, ama eski imzalarla. Lab cihazımda virüs tanımları Nisan 2018 tarihinde kalmıştı ve EICAR test dosyasını yine de tanıyıp engelledi. Güncelleme gelmediği için o tarihten sonra çıkan zararlıları tanımaz. Ağdaki antivirüsün işe yaraması imzanın güncel olmasına bağlıdır, bu da FortiGuard aboneliği ister.
Fortinet akış kipini (flow-based) öneriyor ve bütün kurallarda tek kip kullanılmasını istiyor. Proxy yalnız ona özgü bir özellik gerekiyorsa seçilir. Lab'da fark kullanıcının ekranında çıktı: akış kipinde ilk indirme yarıda kesildi ve uyarı sayfası ikinci denemede geldi. Proxy kipinde uyarı sayfası ilk denemede geldi ve dosyadan tek bayt kullanıcıya gitmedi.
Yalnız derin denetimle tarar. Lab'da kural sertifika denetimindeyken (certificate-inspection) EICAR test dosyası HTTPS'ten üç denemede de 68 bayt olarak indi ve antivirüs loguna hiç düşmedi. Aynı dosya HTTP'den her denemede engellendi. Sertifika denetimi bağlantının içini açmaz, antivirüs de görmediği dosyayı tarayamaz. Kural derin denetime alınınca aynı dosya HTTPS'ten de engellendi.
EICAR, bütün antivirüs ürünlerinin tanıması için hazırlanmış zararsız bir test dosyasıdır. Dosyayı eicar.org'dan indirip HTTP üzerinden sunan bir test sunucusuna koyun ve antivirüs bağlı kuraldan indirin. eicar.org dosyayı HTTPS'ten verdiği için derin denetim yoksa FortiGate onu görmez. Akış kipinde ilk deneme yarıda kesilir, ikinci denemede High Security Alert sayfası gelir. Log & Report altındaki AntiVirus ekranında her deneme EICAR_TEST_FILE ve blocked diye görünür.
Fabrika ayarında 10 MB'a kadar tarar. Lab'da içinde EICAR olan 9 MB'lık zip engellendi, 11 MB'lık zip ise akış kipinde taranmadan geçti ve logda iz bırakmadı. Proxy kipi 10 MB'ı aşan zip, gzip ve tar arşivlerini akış hâlinde açıp taradı ve aynı 11 MB'lık zipi engelledi.
İlker Pehlivan
Yazan

BT Danışmanı | Ağ, Sistem ve Güvenlik Yönetimi

İlker Pehlivan, karmaşık BT altyapılarını ölçeklenebilir ve güvenli sistemlere dönüştürür. Buradaki rehberleri kendi laboratuvarında kurup ölçerek yazar.

LinkedIn

Benzer Makaleler

FortiGate Firewall İleri Seviye Rehberi: VPN, SD-WAN ve BGP

FortiGate Firewall ileri seviye rehberi: güvenlik profilleri, Active Directory, VPN, SD-WAN, BGP ve HA; 13 adımın sırası, kimde gerektiği ve fabrika hâli.

20 dk okuma

Kurumsal Firewall Kurulumu, Yönetimi ve Danışmanlığı

Kurumsal firewall kurulumu, yönetimi ve danışmanlığı: Fortinet, Palo Alto ve pfSense ile kural yönetimi, IPS/IDS, VPN ve sürekli izleme hizmeti sunuyoruz.

8 dk okuma

FortiGate Firewall Active Directory Entegrasyonu: LDAP

FortiGate Firewall Active Directory entegrasyonu: LDAPS ile domain controller'a bağlanın, AD grubunu kurala yazın; yanıltıcı LDAP testini ve atlanan kimlik sorusunu çözün.

27 dk okuma

FortiGate Firewall Bant Genişliği Sınırlama: Traffic Shaping

FortiGate Firewall bant genişliği sınırlama: misafire toplam 30, kişi başı 20 Mbit/s. Ters yön, iki yönü birleştiren shaper ve kişi başı toplam ölçüldü.

38 dk okuma

FortiGate Firewall BGP Yapılandırması: Komşuluk ve Duyuru

FortiGate Firewall BGP yapılandırması: parolalı komşuluk, network ile duyuru, giriş süzgeci ve önek sınırı; BFD ile 127 saniyelik kesintinin 1 saniyeye inmesi.

21 dk okuma

FortiGate Firewall HA Yapılandırması: FGCP ile İki Cihaz

FortiGate Firewall HA lab'da: FGCP kümesi, oturum aktarımı ve izlenen arayüz. Güç kesildi, kablo çekildi, devir süresi ve split brain saniyesiyle ölçüldü.

21 dk okuma
Kurumsal Network Kurulumu altındaki diğer 114 makale