Credential Manager Üzerinde Kayıtlı Kimlik Bilgilerinin Elde Edilmesi

0
7526
views
Windows sızma testleri sırasında yapılandırma ayarlarının güvenilir bir şekilde gerçekleştirilmemesi ve gerekli yamaların geçilmemesinden dolayı hak yükseltme saldırıları gerçekleştirilebilir. Bu yazıda, Windows 7 işletim sisteminde oturumuna erişilen standart kullanıcının Credential Manager (Kimlik Bilgileri Yöneticisi) üzerinde kaydettiği kimlik bilgileri ile yerel yönetici yetkisini elde etme konusu incelenecektir.

Pentist: Sızma Testleri ve Bilgi Güvenliği Danışmanlık Hizmetleri

 

1) Credential Manager (Kimlik Bilgileri Yöneticisi)

Credential Manager (Kimlik Bilgileri Yöneticisi), bir kaynağa erişim sağlanan kullanıcıya ait kimlik bilgilerinin (parola veya sertifika olabilir) depolandığı ve yönetildiği uygulamadır.

  • Kimlik Bilgileri Yöneticisi ile kaydedilebilecek kimlik bilgileri aşağıdaki gibi sıralanabilir.
  • Ağ kaynaklarına erişim bilgileri
  • Windows Integrated Autentication sağlayan web sitelerine ait erişim bilgileri
  • Terminal sunucularına ait erişim bilgileri
  • Google Talk gibi üçüncü taraf uygulamalara ait erişim bilgileri

Kaydedilen kimlik bilgileri Windows işletim sistemi tarafından veya File Explorer, Skype, Outlook, Internet Explorer, OneDrive, sanallaştırma uygulamaları gibi bazı uygulamalar/programlar tarafından kullanılabilir.

Kurumsal ortamlarda etki alanında olmayan bir bilgisayarda oturum açan yerel bir kullanıcı kurumun etki alanındaki bir kaynağına (örneğin dosya sunucusundaki dizine) erişim sağlayamaz. Ancak bu bilgisayarın Kimlik Bilgileri Yöneticisi‘ne kaydedilen etki alanındaki bir kullanıcının kimlik bilgileri ile hedef kaynağa (dizine) erişim sağlanabilir. Özellikle bir çok kuruma girip çıkan danışmanlar, bilgisayarlarında bu bilgileri kaydederek her defasında kimlik doğrulatma külfetilden kurtulmuş olurlar.

Kimlik Bilgileri Yöneticisi’ne denetim masası üzerinden erişim sağlanabilir.

Control Panel –> All Control Panel Items –> Credential Manager

 

Not: Aynı yönetim arayüzüne komut satırından da erişim sağlanabilir.

control keymgr.dll

Benzer olarak “Stored User Names and Passwords” ekranı ile kayıtlı olan kimlik bilgileri listelenebilir.

rundll32 keymgr.dll,KRShowKeyMgr

 

2) Cmdkey Aracı ile Kimlik Bilgilerinin Kaydedilmesi

Komut satırı üzerinden kimlik ilgilerini yönetmek için “cmdkey” aracı kullanılabilir. Böylece oturum açan kullanıcının her defasında kimlik bilgisi girmeden işlem yapılması sağlanabilir.

Mevcut durumda WORKGROUP olarak kurulmuş bir bilgisayarda oturum açan Mehmet adlı kullanıcının oturumunda kayıtlı kimlik bilgisi olmadığı görülmektedir.

whoami
cmdkey /list

 

Bu oturumda, “DCMakinesi” makinesinde oturum açabilecek “YetkiliHesap” kullanıcısına ait kimlik bilgileri cmdkey aracı ile kaydedilebilir.

cmdkey /add:DCMakinesi /user:Ornek\YetkiliHesap /pass:Yy123456
cmdkey /list
rundll32 keymgr.dll,KRShowKeyMgr

 

Ekran görüntüsünde de görüldüğü gibi kaydedilen hesaba ait parola bilgisinin doğrudan elde edilemediği görülmektedir.

 

3) Kayıtlı Kimlik Bilgilerinin Kullanılması: Uzak Bilgisayarda Komut Çalıştırma

Kaydedilmiş kimlik bilgileri olsa bile, parola bilgisi açık metin olarak doğrudan elde edilememektedir. Ancak kimlik bilgilerini(alternate credentials) kaydeden kullanıcının oturumuna erişilmesi durumunda, bu bilgiler oturumu açan kişiymiş gibi kullanılabilir. Örneğin, “DCMakinesi” adlı bilgisayarın C diskine “Ornek\YetkiliHesap” yetkileri ile erişim sağlanabilir.

cmdkey /list
net use
net use \\DCMakinesi\C$
cmdkey /list

 

Yetkiler dahilinde komut da çalıştırılabilir.

cd Desktop
net user
PsExec.exe \\DCMakinesi /s cmd.exe
whoami
hostname
net user

Not: Kaydedilmiş kimlik bilgilerini kullanarak mevcut bilgisayarda bir başka kullanıcı gibi komut çalıştırılması da sağlanabilir.

runas /savedcred /user:ORNEK\Mehmet_Yonetici cmd.exe

 

 

4) Kayıtlı Kimlik Bilgilerinin Kullanılması: RDP Yapma

RDP işlemleri için de kaydedilmiş kimlik bilgileri kullanılabilir. “/add” ile etki alanı hesaplarına ait kimlik bilgileri eklenmesi için tercih edilirken, “/generic” ile genel tanımlı kimlik bilgilerinin kaydı gerçekleştirilebilir. Bu şekilde bir kullanım sayesinde RDP için kimlik bilgileri kullanılmaya gerek kalmadan belirtilen makineye erişim sağlanabilir.

whoami
cmdkey /list
mstsc /v:egitim
cmdkey /generic:Egitim /user:Workgroup\HedefHesap /pass:Hh123456
cmdkey /list
mstsc /v:egitim

 

RDP için kaydedilmiş bu bilgilerin kullanılması sayesinde, Mehmet oturumunu ele geçiren bir saldırgan tarafından da parola olmadan “egitim” adlı makineye “Workgroup\HedefHesap” adlı kullanıcı ile RDP gerçekleştirilebilir.

 

5) Vaultcmd ile Kimlik Bilgilerinin İncelenmesi

Data Protection API (DPAPI); Credential Manager, Internet Explorer, Chrome, Skype, EFS sertifikaları, WEP / WPA anahtarları, MSSQL sununucun master anahtarı, RDP parolalarını şifreli saklamak için kullanılır. 2 temel kapsamda koruma gerçekleştirir.

  • Kullanıcı kapsamında (simetrik anahtar, mevcut kullanıcı hesabının parolası ile şifreli olarak saklanır)
  • Sistem kapsamında (simetrik anahtar, işletim sisteminin parolası ile şifreli olarak saklanır)

Windows 7 işletim sistemlerinde Credential Manager, kaydedilmiş kimlik bilgilerini şifreli olarak saklamak için DPAPI kullanılır. Data Protection API, 3DES algoritmasını kullanarak bu bilgileri kullanıcı ve sistem bazlı şifrelenmesi ve şifresinin çözülmesi işlemlerinde kullanılır. Bu işlemler için temel olarak CryptProtectData ve CryptUnprotectData fonksiyonları kullanılabilir. Şifrelenen kimlik bilgileri, Windows Vault içerisinde saklar.

Windows işletim sisteminde kaydedilmiş kimlik bilglerini yönetmek için “cmdkey” aracının yanında, “vaultcmd” aracı da kullanılabilir.

cmdkey /list
vaultcmd /list
vaultcmd /listproperties:”Windows Vault”
vaultcmd /listcreds:”Windows Vault”

 

Windows Vault içerisinde saklanan bilgiler kullancıya ait AppData altındaki Local klasöründedir.

vaultcmd /list
vaultcmd /listcreds:”Windows Vault”
C:\Users\<KULLANICI_ADI>\AppData\Local\Microsoft\Vault\4BF4C442-9B8A-41A0-B380-DD4A704DDB28

 

Bunun yanında tüm kimlik bilgileri ise kullancıya ait AppData altındaki Roaming klasöründedir.

C:\Users\<KULLANICI_ADI>\AppData\Roaming\Microsoft\Credentials

 

6) Kimlik Bilgilerinin Dışarı Aktarılması

Stored User Names and Passwords panelinden kimlik bilgilerinin yedeği dışarıya aktarılabilir.

rundll32 keymgr.dll,KRShowKeyMgr

 

Kayıt işlemine devam edilir.

 

Dışarıya aktarım sırasında, yedeklenecek dosyayı şifrelemek için kullanılacak parola Secure Desktop üzerinden istenecektir.

 

Seçilen bir parola değeri girilir.

 

Böylece yedekleme işleri tamamlanmış olur.

 

Kimlik bilgilerini içeren dosya şifreli bir şekilde kaydedilmiş olur.

 

7) Dışarıya Aktarılan Kimlik Bilgilerinin Kullanılması: Restore İşlemi

Dışarıya aktarılan kimlik bilgleri başka bir bilgisayarda, başka bir kullanıcının oturumunda geri yüklenebilir.

Stored User Names and Passwords panelinden kimlik bilgilerinin yedeği içeriye geri yüklenebilir.

rundll32 keymgr.dll,KRShowKeyMgr

 

Geri yükleme sırasında, geri yüklenecek dosyanın şifresini çözmek için kullanılacak parola Secure Desktop üzerinden istenecektir.

 

Şifre çözme sırasında kullanılan parola değeri girilir. Parola değeri bilinmiyorsa, parola değerinin tespiti için sözlük saldırıları gerçekleştirilebilir.

 

Parola değeri doğruysa, geri yükleme işlemi başarılı bir şekilde gerçekleşir.

 

Böylece, Mehmet kullanıcısının kaydettiği kimlik bilgileri Turan kullanıcısının Credential Manager konsoluna yüklenmiş olur.

 

Bu bilgiler, Mahmet kullanıcısının oturumundaymış gibi kullanılabilir.

whoami
cmdkey /list
net use
net use \\DCMakinesi\C$
net use

 

Kaynaklar:

https://www.muratozcan.org/credential-manager-kullanimi/
http://www.securitybraindump.com/2010/06/post-exploitation-pivoting-with-windows.html
http://techgenix.com/Saving-Credentials-Windows-Computers/

 

 

 

 

Pentist: Sızma Testleri ve Bilgi Güvenliği Danışmanlık Hizmetleri

CEVAP VER

Yorumunuzu giriniz
İsminizi giriniz

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.