Aşağıdaki bu soru, Instagram’daki lady.engineer sayfasından geldi.
Hangi işletim sistemi daha güvenli? Windows or Linux? Bilene çikolata 🙂
Not: Linux, bir işletim sistemi değil, bir çekirdektir. Burada kastedilen, Linux tabanlı dağıtımlardır. Örneğin, TeTeOS.Net tarafından geliştirilen PiluX, Canonical tarafından geliştirilen Ubuntu ve Google tarafından geliştirilen Android işletim sistemleri de Linux çekirdeği üzerine çalışır.
Kısa Cevap:
Hiçbir sistem tamamen güvenli değildir. Hem Linux dağıtımlarında hem de Windows’ta güvenlik açıkları sıkça görülmektedir. (Evet, macOS da güvenli değildir.)
Uzun ve Detaylı Cevap:
Hiçbir birey, şirket veya topluluk, size %100 güvenli ve hacklenemez bir sistem sunamaz, garantisi veremez. Öncelikle, tedbir almak önemlidir. Cihazlarınızı korumak için atabileceğiniz bazı adımlar vardır. "Cihazımda önemli bir şey yok, sızılırsa da bir zarar görmem" demeyin. Unutmayın ki cihazınız kötü niyetli faaliyetlerde kullanıldığında, bu sizin için de sorun yaratabilir. Ayrıca, internete bağlanabilen her cihaz, tıpkı çamaşır makineniz gibi, hacklenme riski taşır.
Cihazınızda çalınacak önemli veriler olmasa bile neler yapılabilir?
1. Cihazınız, DoS veya DDoS saldırılarında kullanılabilir. Bu tür saldırılar, ele geçirilmiş bilgisayarların belirli hedeflere yoğun istek göndermesiyle gerçekleşir.
2. Cihazınız, bir vekil sunucu olarak kullanılabilir. Kötü niyetli kişiler, cihazınızı kendi kimliklerini gizlemek için kullanabilir, asıl bağlantı bilgilerini bir nebze daha koruyarak sizin IP adreslerinizi kullanabilir. Bu durumda kullanacakları herhangi bir illegal faaliyette bulunduğunuz konumdaki yetkililer, sizi suçlu bulma hakkına sahiptir.
Bu durumların ne kadar tehlikeli olabileceğini anlamak için biraz daha detaylandıralım. Öncelikle, sistemlerin nasıl kırılabildiğine bakalım.
Neden Cihazlarda Güvenlik Açığı Oluşabiliyor?
İşletim sistemleri ve üzerlerinde çalışan yazılımlar, doğal olarak güvenlik açıkları barındırabiliyor. Yazılımları yanıltarak belirli sistemlere zarar verme veya sızma girişimleri sıkça yaşanıyor. Ayrıca, sosyal mühendislik yöntemleriyle "kullanıcının kendisi" kullanılarak sistemlere sızmak da mümkün.
Windows XP gibi eski işletim sistemlerinden de hatırlayabileceğiniz gibi Thumbnail açıkları kullanılarak kullanıcı bilgisayarlarında kod çalıştırmak mümkün oluyordu. Zamanında Google'a erişmek isteyen ancak harf hatası yapan kullanıcılar, "goggle.com" adresini ziyaret ederek bu açığın kurbanı olmuşlardı.
https://www.webtekno.com/goggle-yazim-hatasi-olayi-h142119.html
Yakın zamandan bir örnek vermek gerekirse Whatsapp üzerinden istediğiniz kişinin mesajınıza bakmasıyla IP adresini çalabiliyordunuz. Yapması gereken tek şey IP adresinizi okuyacak bir web server kurması ve bu web sunucusunda bulunan resimli bir bağlantıyı size göndermekti. Cihazınız, resim önizlemesini oluşturmak için web sunucusuna başvurur ve fotoğrafı alırdı. Ancak web sunucusu IP adresinizi kayıt alır.
IP adresinizi bilen kişilerin yapabileceklerini merak ediyor olabilirsiniz. Bu da farklı bir makalenin konusu olsun.
Önce Linux'e bakalım: Bir Linux sunucunuz olduğunu düşünün. Yönetici (root) yetkileri olmayan birkaç kullanıcı daha oluşturduğunuzu ve bu kullanıcıları kullanmasını istediğiniz kişilere verdiğinizi düşünelim. Sisteminizde yüklü olan bir pakette izin yükseltmeye dayalı bir güvenlik açığı tespit eden bir birey, sizden habersiz yönetici (yani root) hesabına giriş yapabilir, sisteminize zarar verebilir, parolalarınızı değiştirebilir, loglarını düzenleyebilir veya silebilir ve daha bir çok şey yapabilir.
Sadece 2020 yılında bile yönetici yetkisi olmadığı halde yönetici yetkisi alabilmenizi sağlayan en az 3 güvenlik açığı bulundu ve Linux dağıtımları bu açıkları kapatan güvenlik güncellemeleri yayınladı.
user@debian:~$ whoami
user
user@debian:~$ ./exploit_tool
[...] Trying exploits...
[YES] Exploit successful! Gaining root privileges...
root@debian:~$ whoami
root
root@debian:~# cat /root/ozeldosya.txt
Bu özel dosya, sadece yönetici yetkileri olan kullanıcılar tarafından okuabilen /root klasöründe.
Naber?
root@debian:~# exit
logout
user@debian:~$
Yukarıdaki örnek terminal çıktısında yönetici (root, sudo) yetkisi olmayan bir kullanıcı, güvenlik zafiyetinden yararlanan bir yürütülebilir program çalıştırarak yönetici hesabına geçiş yapmaktadır.
Bir kötü amaçlı yazılımcının, sunucunuza veya bilgisayarınıza sızması için kullanıcınız olmasına da gerek yoktur. OpenSSH servisinde çıkabilecek bir zafiyet veya çalıştırdığınız bir uygulamadaki zafiyet de sunucunuzu sızılabilir hale getirebilir.
Evet, işletim sisteminizde çalıştıracağınız güvenilir yazılımlarda ortaya çıkacak açıklar da sunucunuzu riske atacak. Mesela Minecraft sunucunuz varsa Java kütüphanesinde ortaya çıkan bir güvenlik açığı için "Bana ne" diyemezsiniz.
Sunucunuz olmasa da hacklenebilirsiniz. Bu tür zafiyetlerin yaşandığını "Minecraft, CS2, CS1.6, Half-Life" gibi oyunlarda da gördük. (Zafiyetler çalışırken oyun ve uygulamalar günceldi.)
Eğer şu anda aklınızda böyle düşünce varsa tamamen yanlış yoldasınız! "Linux pek de güvenilir değilmiş. Sunucumda yok. Windows kullanmaya devam edelim."...
CS2'de ortaya çıkan bir güvenlik açığı da oyuncuları tehlikeye atmıştı ve bazı oyuncular güvenlik tedbiri için oyuna ara vermek zorunda kaldı. İlgili yabancı Reddit konusu duruyor.
Peki Windows güvenli mi?: Bilgisayarı aktif kullanan biriyseniz bu sorunun cevabını biliyorsunuz. "Hayır."
Windows'da Linux gibi sürekli zafiyetleri ortaya çıkan ve bu zafiyetleri güvenlik güncellemeleriyle kapatılan bir işletim sistemi. Bu konuda Linux'u suçlayamayacağınız gibi Microsoft Windows'u da suçlayamazsınız. Ayrıca siz bilgisayarınızı Antivirüs ile korusanız dahi Antivirüs'ünüzün öğrenemediği virüs türleri de vardır.
Yönetici yetkisi alan bir uygulama, Windows'un kendi anitivürüs olan Windows Defender'i kolayca bozabilir. Premium Antivirüs kullanıyorsanız hevesinizi kaçırmak gibi olmasın ama onların da kırılıp bozulduğunu rahatlıkla söyleyebilirim.
Windows zafiyetlerinden bahsederken WannaCry örneğini vermeden de olmaz. 2017 yılında ortaya çıkan bir güvenlik zafiyeti, desteği kesilmiş Windows XP işletim sisteminin bile güvenlik güncellemesi almasına neden oldu. Bu örnekteki gerçek virüs, devlet kurumlarına bile sızmıştı. Verilerinizi şifreler ve açılması karşılığında da sizden fidye isterdi.
Peki ne yapmalıyız?
Öncelikle "Linux vs Windows" tartışmasını bir kenara atın ve her sistemin de kırılabileceğini anlayın. Linux veya Windows olmayan sistemler de güvenli değil.
Bunun çözümü için cihazlarınızı kapatıp kendinizi mağaraya kapatın da demeyeceğiz. Korkunç senaryoları kendimizden uzak tutmak için önlem almak işe yarar.
Kimse saldırıya uğrayabileceğinizin yüzde yüz garantisini veremez. Ancak en azından kolay bir yem olmamak için bu yönergeleri takip edin.
1. Kullandığınız işletim sistemlerini güncel tutun: Cihazınızı yavaşlatacak olsa bile bu güncellemelerden kaçmayın. İşletim sistemi geliştiricileri, güvenlik zafiyetlerini güncelleştirmeler ile de kapatır.
2. İşletim sisteminiz ile gelen güvenlik yazılımlarını kapatmayın: PiluX ile beraber gelecek olan güvenlik önlemleri veya Windows ile beraber gelen Windows Defender antivirüsü kapatmayın. Eğer Windows içerisinde Premium antivirüs kullanıyor iseniz Windows Defender'i pasifleştirebilir, bu bir problem değil.
3. Güvenmediğiniz kaynaklardan yazılım veya dosya indirmeyin: 3. parti her alan güvenilir değildir. İndireceğiniz herhangi bir yazılım veya dosya, bilgisayarınızı Truva atı gibi kullanabilir. TeTeOS.Net tarafından geliştirilecek olan mağaza uygulaması, PiluX içerisinde yerleşik bulunacaktır. PiluX kullanacak kişiler, TeTeOS.Net Store kullanabilir. Ancak yinede dikkatli olun ve mağazada güvenmediğiniz uygulamaları raporlayın.
4. Korsan yazılım kullanmayın: Korsan yazılımlar, size program ve oyunları ücretsiz sunabilir. Ancak çoğu kişinin bildiği bir şey daha var. Bu yazılımlar arka planda bilgisayarınızı köleleştirebilir. Örneğin bir kötü niyetli yazılımcı, tasarladığı Crack içerisinde Truva atı yerleştirebilir ve işletim sisteminize yerleşmesini sağlayabilir. Kötü niyetli yazılımcı, bu Truva atı sayesinde sızdığı yüzlerce, binlerce bilgisayara komut gönderebilir veya Proxy olarak kullanabilir.
Okuduğunuz için teşekkürler.
Bu yazı geliştirilebilir.