CVE-2018-14847: MikroTik Router OS Directory Traversal Vulnerability
Zorluk Seviyesi: Orta | Kaynak: CISA KEV
Zafiyet Analizi ve Giriş
MikroTik RouterOS üzerinde bulunan CVE-2018-14847 zafiyeti, özellikle bilgi teknolojileri alanında çalışan güvenlik uzmanları için oldukça dikkate değer bir konudur. Bu zafiyet, MikroTik'in popüler yönlendirici işletim sistemi RouterOS'un 6.42 sürümünde bulunmakta ve WinBox arayüzündeki bir dizin geçişi (directory traversal) açığına dayanmaktadır. Dizin geçişi saldırıları, saldırganların sistemdeki dosya ve dizin yapısını manipüle ederek yetkisiz dosyalara erişim sağlamasına imkan tanır. Bu tür bir açık, hem kimlik doğrulama gerektirmeyen uzaktan saldırganların, hem de kimlik doğrulama işlemi gerçekleştirmiş olan saldırganların, sistemdeki dosyalara erişimini kolaylaştırmaktadır.
Zafiyetin keşfi, 2018 yılına dayanmakta olup, dikkat çeken bir detay, bu tür güvenlik açıklarının çoğunlukla siber saldırılara olanak tanımasıdır. Özellikle kurumsal ağlarda, MikroTik cihazlarının geniş bir sürüm yelpazesi üzerinde kullanılmasıyla, birçok sektörde etkili olmuştur. Eğitim, finans, sağlık hizmetleri ve kamu bilişim altyapıları gibi farklı alanlarda büyük hasara neden olabilecek potansiyele sahiptir. Saldırganlar, bu açığı göz önünde bulundurarak, hassas verilerine erişim sağlayabilir veya kritik sistem bileşenlerini değiştirebilirler.
CVE-2018-14847 zafiyetinin teknik detaylarına bakacak olursak, etkilenmiş sistemlerde WinBox arayüzü üzerinden sistem dosyalarına erişim sağlamak oldukça kolaydır. Saldırgan, hedef sistemin WinBox arayüzüne bağlanarak, dizin geçişi karakterlerini kullanabilir. Örneğin, aşağıdaki gibi bir istek göndererek, sistemdeki hassas dosyalara ulaşabilir:
GET /..%2F..%2F..%2Fetc%2Fpasswd HTTP/1.1
Host: hedef_ip_adresi
Bu tür bir saldırıda, "GET" isteğiyle sistemdeki şifreli dosyaların okunması mümkün hale gelir. Uzaktan kimlik doğrulaması yapılmış bir saldırgan ise, bu açığı kullanarak dosyalara yazma işlemi gerçekleştirebilir. Bu durum, saldırganların kötü niyetli yazılımlar yüklemesi ve sistemde ciddi değişiklikler yapması için bir kapı aralamaktadır.
Zafiyetin dünya genelinde etkisi oldukça geniş bir kapsamda yayılmıştır. Düşük maliyetli cihazların ve MikroTik'in birçok küçük ve orta ölçekli işletme tarafından tercih edilmesi, bu sistemi hedef alan saldırıları artırmıştır. Özellikle internet servis sağlayıcıları (ISP'ler) ve Telekomünikasyon sektöründe çalışan firmalarda, RouterOS kullanan yüksek sayıda cihazın varlığı, CVE-2018-14847'nin bu alanlarda potansiyel bir tehdit oluşturduğunu göstermektedir.
Sonuç olarak, MikroTik RouterOS üzerindeki CVE-2018-14847 zafiyeti, bir dizin geçişi saldırısının getirdiği sonuçları ve bunların çeşitli sektörlerde yarattığı riskleri gözler önüne sermektedir. Bu tür güvenlik açıklarının etkin bir şekilde tespit edilmesi ve kapatılması, sistem güvenliğini korumak için kritik öneme sahiptir. White Hat Hacker perspektifinden, bu zafiyeti anlamak ve önlemek, siber güvenlik savaşında etkili bir adım olarak öne çıkmaktadır.
Teknik Sömürü (Exploitation) ve PoC
MikroTik RouterOS, pek çok ağ yöneticisi ve bilgisayar mühendisleri tarafından kullanılan yaygın bir yönlendirme ve yönetim yazılımıdır. Ancak, CVE-2018-14847 zafiyeti, RouterOS'un WinBox arayüzündeki kritik bir güvenlik açığını içermektedir. Bu açıktan yararlanarak, uzaktan yetkisiz saldırganlar, sistemi etkileyebilir ve hassas verilere erişebilirler. Bu bölümde, bu zafiyetten nasıl yararlanılacağını açıklayacağız.
Öncelikle, zafiyetin temel mantığını anlamak önemlidir. CVE-2018-14847, dizin geçişi (directory traversal) zafiyeti olarak sınıflandırılmaktadır. Bu zafiyet, saldırganların belirli bir hedef sistemdeki dosyalara (örneğin, /etc/passwd) erişmesine izin vermekte; dolayısıyla, yetkisiz bilgiye ulaşım sağlayan bir açığı ortaya çıkarmaktadır. Bir güvenlik uzmanı olarak, bu tür zafiyetleri tespit etmek ve sömürmek etik olarak değerlendirilmeli, ancak bu bilgi kötü niyetli faaliyetlere karşı bir savunma oluşturmak için kullanılmalıdır.
Dizin geçişi zafiyetini etkili bir şekilde sömürmek için sırasıyla aşağıdaki adımları takip edebiliriz:
Hedefi Belirleme ve Bilgi Toplama: İlk adım olarak, hedef MikroTik cihazının IP adresini ve WinBox arayüzüne erişim sağlamak için gerekli olan port bilgilerini toplamak gerekir. MikroTik cihazlarının default olarak 8291 portu üzerinden WinBox arayüzü ile iletişim kurulduğunu unutmayın.
Saldırı Vektörünü Analiz Etme: WinBox arayüzüne yapılan istekler üzerinde inceleme yaparak, hangi parametrelerin geçirilebileceğini görmek önemlidir. Tipik olarak uzaktan dosya okuma yapabilmek için aşağıdaki gibi bir istek gönderilebilir:
GET /file/../../../../etc/passwd HTTP/1.1
Host: <HEDEF_IP>:8291
Bu istek, dizin geçişi açığını kullanarak, root kullanıcısının parola dosyasını hedef alır. Sakat dosyalar ile oynamak genellikle dikkat çekici olsa da, daha az bilinen dosyaların hedef alınması daha az risk ile sonuçlanabilir.
- PoC Kodu Oluşturma: Python ile basit bir exploit taslağı aşağıda verilmiştir. Bu kod, hedef MikroTik cihazın WinBox arayüzünde dosya okuma yapmayı sağlar:
import requests
target_ip = "192.168.88.1"
target_port = 8291
file_to_read = "/../../../../etc/passwd"
url = f'http://{target_ip}:{target_port}/file{file_to_read}'
try:
response = requests.get(url)
if response.status_code == 200:
print("Dosya Okundu:\n", response.text)
else:
print("Erişim sağlanamadı, durum kodu:", response.status_code)
except Exception as e:
print("Bir hata oluştu:", e)
Bu kod çalıştırıldığında, hedef cihazdaki 'passwd' dosyasını okuyarak, içerik sağlayacaktır. Bu tip bir erişim, özellikle kullanıcı adları ve hashlenmiş parolalar hakkında bilgi elde etmeye yarayabilir ve daha sonraki saldırılar için bir zemin oluşturabilir.
Sonuçları Değerlendirme: Elde edilen bilgilerin nasıl kullanılacağına dair etik bir karar verilmelidir. Eğer başarıyla kritik dosyalara erişildiyse, bilgi güvenliği önlemlerinin hangi alanlarda zayıf olduğu incelenmeli ve bu bilgiler hayati öneme sahip güvenlik açıklarının kapatılması için kullanılmalıdır.
Yüksek Güvenlik Önlemleri ve Önleyici Adımlar: Eğer bu tür bir zafiyet keşfedilmişse, hemen güncelleme yapmak veya MikroTik ile ilgili güvenlik bilgilendirmelerini takip etmek gerekmektedir. RouterOS üzerinde gelebilecek tüm güncellemeler, bu tür zayıflıkları hedef alan yamaları içerebilir.
CVE-2018-14847 üzerinde gerçekleştirilen bu teknik sömürü, ağ güvenliği için kritik bir örnek sunmaktadır. Bu tür zafiyetlere karşı sürekli farkındalık ve güvenlik güncellemeleri, sistem yöneticilerinin öncelikleri arasında yer almalıdır. Unutulmamalıdır ki, yapılması gereken en iyi uygulamalardan biri, sistemlerinizi her zaman en güncel güvenlik yamalarına sahip olmalarını sağlamaktır.
Forensics (Adli Bilişim) ve Log Analizi
MikroTik RouterOS üzerindeki CVE-2018-14847 zafiyeti, Yetkisiz uzaktaki saldırganların (unauthenticated remote attackers) sistemdeki dosyaları okuyabilmesine ve uzaktan kimlik doğrulaması yapılmış saldırganların (remote authenticated attackers) dosyaları yazabilmesine olanak tanıyan bir dizin geçişi (directory traversal) zafiyetidir. Bu tür zafiyetler, özellikle internet üzerinden erişim sağlanan ağ cihazları ile ilgili ciddi güvenlik endişelerine yol açabilir. Bu nedenle, bu tür durumda yapılacak olan adımların ve izleme yöntemlerinin detayları büyük önem taşımaktadır.
Saldırının meydana gelmesi durumunda SIEM (Security Information and Event Management) ve log dosyaları üzerinde yapılacak analizler, siber güvenlik uzmanları için kritik hale gelir. Özellikle, bu tür DoS (Denial of Service) saldırılarına karşı önlem almak ve etkilerini azaltmak için logların dikkatlice incelenmesi gerekmektedir. Saldırıların farkına varmak için dikkat edilmesi gereken bazı imzalar (signature) şunlardır:
- Access Log (Erişim Logu): MikroTik router'unuza yapılan her isteği içeren bu log dosyası, hangi IP’lerin sisteme erişmeye çalıştığını gözlemler. Örneğin, belirtilen bir yolu (path) geçmeye çalışarak /../ ile başlayan talepler özellikle dikkat çekicidir. Bu tür talepler, potansiyel bir dizin geçişi (directory traversal) saldırısını işaret edebilir.
192.168.1.1 - - [01/Oct/2021:12:00:00 +0000] "GET /../etc/passwd HTTP/1.1" 200
- Error Log (Hata Logu): MikroTik sistemi üzerinde herhangi bir hata meydana geldiğinde, bu log dosyasına kaydedilir. Özellikle dizin geçişi gibi hatalı taleplere karşı sistemin nasıl yanıt verdiğini görmek önemlidir. Belirli dosyalar için erişim hataları, saldırının başarılı olduğu ya da olabileceği zaman terimleriyle birlikte kaydedilir.
2021-10-01 12:00:00 error: access denied for "/../etc/passwd"
- Authentication Attempts (Kimlik Doğrulama Denemeleri): Saldırganlar genellikle sistemden dosya okumak veya yazmak için öncelikle kimlik doğrulama yapmaya çalışacaktır. Farklı kullanıcı hesapları için yapılan başarısız oturum açma denemeleri, bir brute force (kaba kuvvet) saldırısını veya yetkilendirme atlama (auth bypass) girişimini gösterebilir.
192.168.1.1 - - [01/Oct/2021:12:01:00 +0000] "POST /login HTTP/1.1" 401
Bu tür saldırılar sırasında ortaya çıkan anormallikleri izlemek için, ağ trafiğini analiz eden araçlar da kullanılabilir. Gelişmiş analitik platformlar, anormal ağ trafiği veya olağandışı erişim kalıpları tespit edebilir. Örneğin, belirli bir IP adresinin bir saat içinde çok fazla dosya okumaya çalışması bu tür bir saldırının habercisi olabilir.
Sonuç olarak, MikroTik RouterOS üzerindeki CVE-2018-14847 zafiyeti, ağ güvenliği açısından ciddi bir tehdit oluşturmaktadır. Bu tür bir güvenlik açığıyla karşılaştığında, sistem yöneticilerinin ve siber güvenlik uzmanlarının dikkatli bir şekilde logları incelemesi ve anormal aktiviteleri izlenmesi önemlidir. Yangın güvenliği açısından, ağınızın bu tür zafiyetlere karşı nasıl korunduğu üzerine düşünmek ve gereken tüm güncellemeleri, yamaları uygulamak, saldırganların etkilerini en aza indirmek adına büyük bir rol oynamaktadır.
Savunma ve Sıkılaştırma (Hardening)
MikroTik RouterOS, özellikle düşük maliyetli ve geniş özellik setiyle çeşitli ağ senaryolarında yaygın olarak kullanılan bir yönlendirici işletim sistemi olmasının yanı sıra, zaman zaman güvenlik açıklarıyla da gündeme gelmektedir. CVE-2018-14847 olarak bilinen, MikroTik RouterOS'un 6.42 sürümünde bulunan bir dizin geçişi (directory traversal) açığı, yetkisiz uzaktan saldırganların sistemdeki rastgele dosyaları okuyabilmesine, yetkili saldırganların ise dosyaları yazabilmesine olanak tanımaktadır. Bu tür bir zafiyet hiçbir durumda göz ardı edilmemelidir, çünkü kötü niyetli bir kullanıcının hassas verilere erişim sağlaması veya sistemde zararlı kod çalıştırması (RCE - Uzak Kod Yürütme) için bir kapı açmaktadır.
Açığın kapatılması için uygulayabileceğiniz bir dizi adım ve sıkılaştırma (hardening) önerisi bulunmaktadır. Öncelikle, MikroTik RouterOS’un en son sürümüne yükseltilmesi gerekmektedir. Üreticinin her güncellemeleri, bilinen güvenlik açıklarının kapatılmasını hedefler. Bu nedenle, düzenli olarak güncellemeleri kontrol etmek ve uygulamak, altyapınızı korumanız için kritik öneme sahiptir.
Firewall kuralları da saldırı yüzeyini azaltmak açısından önemli bir rol oynamaktadır. Örneğin, MikroTik üzerinde aşağıdaki gibi bir kural seti oluşturarak WinBox arayüzüne erişimi yalnızca belirli IP adresleriyle sınırlayabilirsiniz:
/ip firewall filter
add chain=input protocol=tcp dst-port=8291 src-address=192.168.1.0/24 action=accept comment="WinBox için izin"
add chain=input protocol=tcp dst-port=8291 action=drop comment="Diğer tüm bağlantıları engelle"
Yukarıdaki kural, 192.168.1.0/24 ağı dışındaki tüm IP'lerin WinBox arayüzüne erişimini engelleyecektir. Bu tür bir yapılandırma, sisteminize yönelik yetkisiz erişimi azaltmak için basit ama etkili bir yöntemdir.
Kalıcı sıkılaştırma önerileri arasında, varsayılan yönetici parolasını güçlü bir parola ile değiştirmek ve SSH gibi alternatif yönetim protokollerini kullanarak gereken durumlarda ek güvenlik katmanları eklemek yer almaktadır. WinBox’a erişim için sadece belirli zaman dilimlerinde veya belirli IP’lerden erişim izni tanımak da, saldırganların sisteminize erişimini zorlaştıracaktır.
Ayrıca, dosya sisteminin erişim izinlerini gözden geçirmek ve gereksiz tüm hizmetleri devre dışı bırakmak, saldırı yüzeyini daha da küçültecektir. Belirli bir düzeyde ağ segmentasyonu gerçekleştirmek, önemli verilere erişimi sadece belirli kullanıcılarla sınırlamak için de faydalı olacaktır.
Son olarak, MikroTik'lerde aktif olarak gerçekleşen bağlantıların ve sistem kayıtlarının (loglar) izlenmesi, potansiyel saldırı girişimlerini erken aşamada tespit etmenize olanak tanır. Güvenlik bilgisi ve olay yönetimi (SIEM - Security Information and Event Management) sistemleriyle entegre çalışarak anormallikleri gözlemleyebilir ve hızlı müdahaleler gerçekleştirebilirsiniz.
CVE-2018-14847 açığı, MikroTik kullanıcıları için ciddi bir tehdit oluşturmaktadır, ancak yukarıda belirtilen savunma ve sıkılaştırma yöntemleriyle bu açığın kötüye kullanılma olasılığını en aza indirebilirsiniz. Gerçekleştireceğiniz bu önlemler, ağ yapınızın güvenliğini artırırken, olası saldırganların işini de zorlaştıracaktır.