Windows kurumsal ve bireysel sistemlerde en çok kullanılan işletim sistemi diyebiliriz. Güvenlik testleri veya araştırmaları sırasında Windows işletim sistemleri biz uzmanlara her zaman farklı seçenekler ve zorluklar sunmuştur. Özellikle kurumsal sistemlerde Windows işletim sistemlerini bir aktif dizin yapısı ile birlikte görürüz. Küçük veya orta ölçekli yerlerde dizin yapısı olmadan kullanılan Windows sunucular olabilir. Linux ile Windows arasındaki farklar ve ikisinden birini tercih etme sebepleri hep gündemde olan bir konu olmuştur. Bu bölümde farklar ile ilgili teknik detaylara çok fazla girmeyeceğiz. Kullanım alanları, güvenlik yapısı, temel windows komutları, powershell geliştirme ve sonuç ile bitireceğiz. Windows 10 veya 7 ile çalışmaları yapabilirsiniz.
Kurumlar ve son kullanıcılar arasında Windows ve Linux genellikle yapılması gereken büyük ve önemli tercihlerdir. Bana göre aralarındaki en önemli fark Windows’un son kullanıcı ihtiyaçlarını kolay karşılaması, kurumsal entegrasyonun kolaylığı ve özel bir durumunuz yoksa (mesela üniversitenizin anlaşması gibi) Windows işletim sistemine ödeme yapmak zorunda olmanızdır. Windows’un kurumsal olarak desteğini çok rahat bulabilirken, Linux tabanlı işletim sistemlerinin kurulu olduğu bir ortamda (hem istemci hem sunucu için) destek veren kişi ve firma sayısı daha azdır. Linux üzerinde aktif dizin yapısı çalıştırmak için Windows’da olan özellikleri isteyen bir kurum çok az özel sektör desteği bulur. Ayrıca bazı kurumsal uygulamaların Windows dışında desteğinin olmaması da Windows’un kullanımını arttıran önemli bir faktördür. Ayrıca yine kurumsal sistemler için Windows ortamı size kolay bir şekilde e-posta, ftp, windows sunucu ve istemci işlemlerini, uygulama yönetimi (deploy) süreçlerini, kullanıcı izinleri grup izinleri gibi işlemleri kurar ve yönetim arayüzü sunar. Bu nedenle de tercih sebebidir.
Peki hangisi daha güvenli? Bu paragrafın tamamını okumadan belirtmek isterim ki herkes gibi ben de yuvarlak bir cevap vereceğim. Mesela özellikle Windows 10 ile gelen sömürü engelleme sistemleri Windows tarafında oldukça güçlü. Fakat bir yandan dökümante edilmemiş API çağrılarının olması ve zararlı yazılımlar tarafından bu çağrıların kullanılması, sıkılaştırma sonrası kullanmanın zorluğu, sistemin karışıklığı gibi olumsuz yanları da var. Bir örnek vereyim. En iyi yöntem olarak Windows işletim sistemlerini yerel yönetici hesapları ile kullanmamak gerekiyor. Bu kitabı okuyan kaç kişi acaba yerel yönetici hesabı dışında bir hesap ile Windows işletim sistemini kullanıyor? Yerel yönetici olmayan bir hesap ile gerekli sıkılaştırmaları (Windows tarafından yayınlanan baseline kullanıp) yaparak Windows’u kullanmayı deneyin özellikle öğrenci iseniz uzun süre dayanamazsınız. Bazı olumsuz yanlar Linux için de geçerli, fakat mesela Linux’da bazı güvenlik önlemleri varsayılan olarak kurulumlarda geliyor. Linux’un güvenlik avantajlarından birisi de bence güncellemeleri, küçük boyutta olması daha sık olması ve çoğunlukla yeniden başlatma gerekmemesi büyük avantaj. Örneğin her iki işletim sistemini farklı bilgisayarlarda kullanan biri olarak Linux 47 gündür çalışırken Windows olan sistem 6 gündür ayakta. Ayrıca Windows’un sayısının fazla olması kesinlikle saldırganlar tarafından daha çok hedef olmasına neden oluyor. Sonuç olarak her ikisinde de gerekli sıkılaştırmaları yapıp, en iyi yöntemlere uyarak kullanırsanız güvenliği büyük ölçüde sağlamış olursunuz yine de Windows’da daha çok hedef olurken (sıfırıncı gün saldırıları da dahil) Linux’da daha az hedef olursunuz. Yorum sizin.
Ek olarak Linux ile Windows işletim sistemi birbirinden biraz farklı çalışır. Örneğin Linux’da herşey bir dosyadır. İlerleyen bölümlerde görebileceğiniz gibi bir işlemin girdi ve çıktılarını dosyalar üzerinden yönetebiliriz. Windows dosya isimleri için büyük küçük harf duyarsız olarak çalışır. Aynı klasörde hem siberkuvvet.txt hem de Siberkuvvet.txt dosyası olamaz. Windows NTFS dosya sistemi ile gelirken Linux çoğunlukla EXT ile gelir. Windows’da 3 önemli kullanıcı grubu vardır. Bunlar yerel yönetici, standart kullanıcı ve misafir hesabıdır. Yerel yönetici adından da anlayabileceğiniz gibi global değişiklikler yapma, kullanıcı ekleme silme, uygulama yükleme, servis başlatma, durdurma gibi işlemleri yapabilen yetkili bir hesaptır. Standart kullanıcı hesabı ise daha az yetkiye sahip bir kullanıcıdır. Genellikle herhangi bir kurulum dahi yapamaz. Misafir hesabı ise herhangi birine ait olmayan, genellikle yetkisiz hesaplardır. Kurumsal sistemlerde bu hesap çoğunlukla kapalıdır.
Şu ana kadar son kullanıcı tarafında ufak tefek detaylardan bahsettik. Birazda Windows sunucu sistemlerinden bahsedelim. Her Windows sunucusu sürümü kendi içerisinde hazır servisler ile gelir. Web sunucusu (IIS) sürümleri Windows ortamında ilgili Windows sürümü ile eşleştirilebilir. Örneğin IIS 6.0 sürümünü görüyorsanız sunucu olarak Windows 2003 koşuyor diyebilirsiniz. Windows sunucuları çoğunlukla bazı sıkılaştırmalar ile gelir (tarayıcı üzerinden internet erişimi yapamazsınız mesela). Aynı zamanda bahsetmeye gerek var mı bilmiyorum ama lisansları da daha pahalıdır. Üzerinde varsayılan olarak gelen servisler sayesinde birçok hizmeti hızlı şekilde sunabilirsiniz.
Temel Windows Komutları
Linux bölümünde her komutu tek tek açıklamıştık. Windows’da ise cmd (cmd.exe) satırını açıp aşağıdakileri denemeyi size bırakıyorum.
dir Dosya ve dizin listeler (ls gibi). /a parametresi ile gizli dosya klasörleri de gösterir.
cd Dizin değiştirir (change directory, Linux’da da aynısı)
mkdir Dizin oluşturur (aynı)
del Dosya siler
rmdir Dizin siler (bu komut Linux’da da var)
echo.>a.txt Dosya oluşturur (touch komutu gibi)
type Ekrana basar (cat komutu)
ping Bildiğimiz ping varsayılan olarak 4 adet paket gönderir (ping)
tracert Hop noktalarını gösterir (traceroute)
ver Windows sürümünü ekrana yazar (uname -a)
tasklist Çalışan işlemleri gösterir (ps)
attrib Dosya izinlerini değiştirir. Örneğin attrib +h dosyayı gizli yapar, attrib -h gizliliğini geri alır.
route print Routing tablosunu ekrana yazar (route -n)
net start Servisi başlatır. Parametre olarak servis adı alır (service)
net stop Servisi durdurur. Parametre olarak servis adı alır (service)
ipconfig Ağ bağdaştırıcılarını gösterir (ifconfig)
netstat Bağlantıları gösterir (netstat)
systeminfo Sistem hakkında bilgi döker. Güvenlik testi yapıyorsanız aşağıdaki ile birlikte tam rapora koymalık çıktı üretir.
whoami O anki kullanıcıyı ekrana yazar (whoami)
Bu makale 0xnur tarafından yazılmış veya yayınlanmıştır.