Fortinet FortiWeb SQLi Açığı ve Tehlikeleri
Son dönemlerde siber güvenlik alanında önemli bir tehdit olarak öne çıkan Fortinet FortiWeb, kritik bir SQL Injection (SQLi) açığı ile gündeme geldi. Bu güvenlik açığı, siber saldırganların ön kimlik doğrulaması gerektirmeden uzaktan kod çalıştırmasına olanak tanıyor. FortiWeb, web uygulamalarını kötü niyetli HTTP trafiği ve tehditlerden korumak için kullanılan bir web uygulama güvenlik duvarıdır (WAF).
Hatanın şiddet skoru 9.8/10 olarak sınıflandırılmıştır ve bu durum, açığın ne kadar kritik olduğunu göstermektedir. Bu açığa dair bilgi CVE-2025-25257 olarak kaydedilmiştir. Fortinet, geçen hafta bu açığı FortiWeb 7.6.4, 7.4.8, 7.2.11 ve 7.0.11 gibi güncel sürümleri ile birlikte düzeltmiştir.
Fortinet’in uyarısında, “SQL komutlarında kullanılan özel elemanların yetersiz nötralizasyonu (SQL Injection) açığı, yetkisiz bir saldırganın, özel olarak hazırlanmış HTTP veya HTTPS istekleri aracılığıyla yetkisiz SQL kodları veya komutları çalıştırmasına izin verebilir,” ifadeleri yer almaktadır. Bu da, açığın ciddiyetini ve kullanıcıların hızlı bir şekilde güncelleme yapmalarının gerekliliğini ortaya koyuyor.
SQLi’den RCE’ye Yolculuk
Bugün, WatchTowr isimli siber güvenlik firması ve “faulty *ptrrr” olarak bilinen bir güvenlik araştırmacısı, teknik yazılar ve gerçekleştirdikleri kanıt konseptleri ile birlikte ters kabuk veya web kabuğu açtılar. Bu açık, FortiWeb’in Fabric Connector yazılımında bulunuyor. Bu yazılım, Fortinet ürünleri arasında kimlik doğrulama ve politika verilerini senkronize etmek için kullanılmaktadır.
get_fabric_user_by_token() fonksiyonunda, aşağıdaki kod kullanılarak bir MySQL sorgusu yapılıyor:
c
snprintf(s, 0x400u, “select id from fabric_user.user_table where token=’%s'”, a1);
Bu kod, HTTP istemci başlıklarında gönderilen bearer token’i düzgün bir şekilde temizlemediği için saldırganların başlık içine özel SQL eklemelerine olanak tanıyarak SQLi’ye yol açmaktadır. Saldırganlar, /api/fabric/device/status uç noktasına yönlendirilmiş HTTP istekleri aracılığıyla bu açığı tetikleyebilir ve yetkilendirme kontrollerini atlatabilirler. Örneğin, Bearer AAAAAA'or'1'='1 gibi bir başlıkla SQL enjeksiyon oluşturarak sistemin güvenliğini tehlikeye sokabilirler.
Araştırmacılar, SQL enjeksiyonunu uzaktan kod yürütme (RCE) seviyesine yükselterek MySQL’nin SELECT … INTO OUTFILE sorgusunu çalıştırarak cihazda rastgele dosyalar oluşturmayı başardılar. Böylelikle, Python’un .pth dosyasını site-packages dizinine yazmayı başardılar. .pth dosyaları, Python çalıştırıldığında otomatik olarak yüklenir ve çalıştırılır, bu da saldırganlara kendi kodlarını zararlı bir şekilde yürütme imkanı sunar.
Araştırmacılar, ileride bu tür kötü niyetli kodları çalıştırmak için kullanılabilecek FortiWeb CGI Python script dosyasını (/cgi-bin/ml‑draw.py) belirleyerek, RCE gerçekleştirmenin yolunu buldular. Şu anda, bu açığın istismar edilip edilmediğine dair net bir bilgi yok, ancak yakın gelecekte durumun değişebileceği öngörülüyor.
Güvenlik Önlemleri ve Güncellemelerin Önemi
Bu noktada, güvenlik yöneticilerinin, sistemlerinin güvenliğini sağlamak için acilen yamanması gereken güncellemeleri yapmaları kritik önem taşımaktadır. Açıklarla ilgili istismarların kamuya açık hale gelmesi, sisteme yönelik saldırıların artabileceği anlamına geliyor. Bu nedenle, gerekli güncellemeler hızlı bir şekilde uygulanmalı ve mevcut güvenlik açıklarına karşı gerekli önlemler alınmalıdır.
Siber saldırganlar, giderek karmaşık hale gelse de, bu saldırılar hala düşük hassasiyetle gerçekleştirilebilecek şekilde basit teknikler kullanılarak yapılmaktadır. Özellikle bulut ortamında, bu tür basit ama etkili yöntemlerle saldırıya uğrayabiliriz. Dolayısıyla, şirketlerin bu tür tehditleri göz önünde bulundurarak güvenlik politikalarını sürekli güncellemeleri ve ödün vermeden uygulamaları gerekmektedir.
Teknik yazılar ve araştırmacıların açıklamaları, siber güvenlik alanında atılacak adımlar için büyük önem taşıyor. Gelişen teknolojilerin getirdiği yeniliklerle birlikte, bu tür açıkların önüne geçmek için daha fazla çaba ve dikkat göstermemiz gerekiyor. Yalnızca güvenlik yazılımlarını güncellemekle kalmayıp, aynı zamanda eğitimler ve bilgilendirmeler ile kullanıcılara güvenli internet kullanımı konusunda da gerekli bilinci aşılamalıyız.


