UAC - User Account Control
Trickest kullanarak dünyanın en gelişmiş topluluk araçlarıyla iş akışlarını kolayca oluşturun ve otomatikleştirin. Bugün Erişim Alın:
UAC
Kullanıcı Hesabı Kontrolü (UAC), yükseltilmiş aktiviteler için onay istemi sağlayan bir özelliktir. Uygulamalar farklı bütünlük
seviyelerine sahiptir ve yüksek seviyeye sahip bir program, sistemi potansiyel olarak tehlikeye atabilecek görevleri yerine getirebilir. UAC etkinleştirildiğinde, uygulamalar ve görevler her zaman bir yönetici hesabının güvenlik bağlamında çalışır; yönetici, bu uygulamaların/görevlerin sisteme yönetici düzeyinde erişim izni almasını açıkça yetkilendirmedikçe. Bu, yöneticileri istenmeyen değişikliklerden koruyan bir kolaylık özelliğidir, ancak bir güvenlik sınırı olarak kabul edilmez.
Bütünlük seviyeleri hakkında daha fazla bilgi için:
Integrity LevelsUAC uygulandığında, bir yönetici kullanıcıya 2 jeton verilir: standart bir kullanıcı anahtarı, normal seviyede düzenli işlemler yapmak için ve yönetici ayrıcalıkları olan bir jeton.
Bu sayfa, UAC'nin nasıl çalıştığını derinlemesine tartışmakta ve oturum açma süreci, kullanıcı deneyimi ve UAC mimarisini içermektedir. Yöneticiler, UAC'nin kendi organizasyonlarına özgü nasıl çalıştığını yerel düzeyde (secpol.msc kullanarak) veya bir Active Directory alan ortamında Grup Politika Nesneleri (GPO) aracılığıyla yapılandırıp dağıtmak için güvenlik politikalarını kullanabilirler. Çeşitli ayarlar detaylı olarak burada tartışılmaktadır. UAC için ayarlanabilecek 10 Grup Politika ayarı vardır. Aşağıdaki tablo ek detaylar sağlamaktadır:
Grup Politika Ayarı | Kayıt Anahtarı | Varsayılan Ayar |
---|---|---|
FilterAdministratorToken | Devre Dışı | |
EnableUIADesktopToggle | Devre Dışı | |
ConsentPromptBehaviorAdmin | Windows dışı ikili dosyalar için onay istemi | |
ConsentPromptBehaviorUser | Güvenli masaüstünde kimlik bilgileri istemi | |
EnableInstallerDetection | Etkin (ev için varsayılan) Devre Dışı (kurumsal için varsayılan) | |
ValidateAdminCodeSignatures | Devre Dışı | |
EnableSecureUIAPaths | Etkin | |
EnableLUA | Etkin | |
PromptOnSecureDesktop | Etkin | |
EnableVirtualization | Etkin |
UAC Atlatma Teorisi
Bazı programlar, kullanıcı yönetici grubuna ait ise otomatik olarak yükseltilir. Bu ikili dosyaların içinde Manifests kısmında autoElevate seçeneği True değeri ile bulunur. İkili dosya ayrıca Microsoft tarafından imzalanmış olmalıdır.
Sonra, UAC'yi atlatmak ( orta bütünlük seviyesinden yüksek seviyeye yükseltmek) için bazı saldırganlar bu tür ikili dosyaları rastgele kod çalıştırmak için kullanır çünkü bu, Yüksek seviye bütünlük sürecinden çalıştırılacaktır.
Bir ikilinin Manifest dosyasını sigcheck.exe aracını kullanarak kontrol edebilirsiniz. Ve süreçlerin bütünlük seviyesini Process Explorer veya Process Monitor (Sysinternals) kullanarak görebilirsiniz.
UAC'yi Kontrol Et
UAC'nin etkin olup olmadığını doğrulamak için:
Eğer 1
ise UAC etkin, eğer 0
ise veya mevcut değilse, UAC etkisizdir.
Sonra, hangi seviye yapılandırıldığını kontrol edin:
Eğer
0
ise, UAC istemi olmayacak (gibi devre dışı)Eğer
1
ise, yönetici kullanıcı adı ve şifre istenir yüksek haklarla ikili dosyayı çalıştırmak için (Güvenli Masaüstünde)Eğer
2
ise (Her zaman beni bilgilendir) UAC, yönetici yüksek ayrıcalıklarla bir şey çalıştırmaya çalıştığında her zaman onay isteyecektir (Güvenli Masaüstünde)Eğer
3
ise1
gibi ama Güvenli Masaüstünde gerekli değilEğer
4
ise2
gibi ama Güvenli Masaüstünde gerekli değilEğer
5
ise (varsayılan) yöneticiye yüksek ayrıcalıklarla Windows dışı ikili dosyaları çalıştırmak için onay isteyecektir
Sonra, LocalAccountTokenFilterPolicy
değerine bakmalısınız
Eğer değer 0
ise, yalnızca RID 500 kullanıcısı (yerleşik Yönetici) UAC olmadan yönetici görevlerini yerine getirebilir ve eğer 1
ise, "Yöneticiler" grubundaki tüm hesaplar bunları yapabilir.
Ve son olarak FilterAdministratorToken
anahtarının değerine bakın
Eğer 0
(varsayılan), yerleşik Yönetici hesabı uzaktan yönetim görevlerini yapabilir ve eğer 1
ise, yerleşik Yönetici hesabı uzaktan yönetim görevlerini yapamaz, LocalAccountTokenFilterPolicy
1
olarak ayarlanmadıkça.
Özet
Eğer
EnableLUA=0
veya yoksa, hiç kimse için UAC yokEğer
EnableLua=1
veLocalAccountTokenFilterPolicy=1
, Hiç kimse için UAC yokEğer
EnableLua=1
veLocalAccountTokenFilterPolicy=0
veFilterAdministratorToken=0
, RID 500 için UAC yok (Yerleşik Yönetici)Eğer
EnableLua=1
veLocalAccountTokenFilterPolicy=0
veFilterAdministratorToken=1
, Herkes için UAC var
Tüm bu bilgiler metasploit modülü kullanılarak toplanabilir: post/windows/gather/win_privs
Kullanıcınızın gruplarını kontrol edebilir ve bütünlük seviyesini alabilirsiniz:
UAC atlatma
Kurbanın grafik erişimine sahipseniz, UAC atlatma oldukça basittir çünkü UAC istemi göründüğünde "Evet"e tıklamanız yeterlidir.
UAC atlatma, aşağıdaki durumda gereklidir: UAC etkin, işleminiz orta bütünlük bağlamında çalışıyor ve kullanıcınız yöneticiler grubuna ait.
UAC'nın en yüksek güvenlik seviyesinde (Her Zaman) atlatmanın, diğer seviyelerden (Varsayılan) çok daha zor olduğunu belirtmek önemlidir.
UAC devre dışı
Eğer UAC zaten devre dışıysa (ConsentPromptBehaviorAdmin
0
) yönetici ayrıcalıklarıyla bir ters kabuk çalıştırabilirsiniz (yüksek bütünlük seviyesi) gibi bir şey kullanarak:
UAC atlatma ile token kopyalama
Çok Temel UAC "atlatma" (tam dosya sistemi erişimi)
Eğer Administrators grubunda bir kullanıcı ile bir shell'e sahipseniz, C$ paylaşımını SMB (dosya sistemi) üzerinden yeni bir diske yerel olarak monte edebilirsiniz ve dosya sisteminin içindeki her şeye erişiminiz olur (hatta Administrator ana klasörüne).
Bu numaranın artık çalışmadığı görünüyor
UAC atlatma ile cobalt strike
Cobalt Strike teknikleri, UAC maksimum güvenlik seviyesinde ayarlanmamışsa yalnızca çalışacaktır.
Empire ve Metasploit ayrıca UAC'yi bypass etmek için birkaç modül sunmaktadır.
KRBUACBypass
Dokümantasyon ve araç https://github.com/wh0amitz/KRBUACBypass adresinde bulunmaktadır.
UAC bypass exploitleri
UACME, birkaç UAC bypass exploitinin derlemesidir. UACME'yi visual studio veya msbuild kullanarak derlemeniz gerektiğini unutmayın. Derleme, birkaç çalıştırılabilir dosya (örneğin Source\Akagi\outout\x64\Debug\Akagi.exe
) oluşturacaktır, hangi dosyaya ihtiyacınız olduğunu bilmeniz gerekecek.
Dikkatli olmalısınız çünkü bazı bypasslar, kullanıcıya bir şeylerin olduğunu bildiren bazı diğer programları uyarabilir.
UACME, her tekniğin çalışmaya başladığı derleme sürümünü içerir. Sürümlerinizi etkileyen bir tekniği arayabilirsiniz:
Ayrıca, bu sayfasını kullanarak Windows sürüm 1607
'yi derleme sürümlerinden alabilirsiniz.
Daha Fazla UAC Bypass
Burada AUC'yi atlatmak için kullanılan tüm teknikler, kurbanla tam etkileşimli bir kabuk gerektirir (yaygın bir nc.exe kabuğu yeterli değildir).
Bir meterpreter oturumu kullanarak elde edebilirsiniz. Session değeri 1 olan bir işleme geçin:
(explorer.exe çalışmalıdır)
GUI ile UAC Bypass
Eğer bir GUI'ye erişiminiz varsa, UAC istemini aldığınızda sadece kabul edebilirsiniz, gerçekten bir bypass'a ihtiyacınız yok. Bu nedenle, bir GUI'ye erişim sağlamak UAC'yi atlatmanıza olanak tanır.
Ayrıca, birinin (potansiyel olarak RDP aracılığıyla) kullandığı bir GUI oturumu alırsanız, yönetici olarak çalışan bazı araçlar olacaktır; buradan örneğin admin olarak doğrudan bir cmd çalıştırabilirsiniz, böylece UAC tarafından tekrar istemde bulunulmaz, https://github.com/oski02/UAC-GUI-Bypass-appverif. Bu biraz daha gizli olabilir.
Gürültülü brute-force UAC bypass
Eğer gürültü yapmaktan rahatsız değilseniz, her zaman şunu çalıştırabilirsiniz: https://github.com/Chainski/ForceAdmin bu kullanıcı kabul edene kadar izinleri yükseltmek için istek yapar.
Kendi bypass'ınız - Temel UAC bypass metodolojisi
UACME'ye bir göz atarsanız, çoğu UAC bypass'ının bir Dll Hijacking zafiyetini kötüye kullandığını göreceksiniz (esas olarak kötü amaçlı dll'yi C:\Windows\System32 içine yazarak). Dll Hijacking zafiyetini nasıl bulacağınızı öğrenmek için bunu okuyun.
Otomatik yükseltme yapacak bir ikili dosya bulun (çalıştırıldığında yüksek bütünlük seviyesinde çalıştığını kontrol edin).
Procmon ile DLL Hijacking'e karşı savunmasız olabilecek "NAME NOT FOUND" olaylarını bulun.
Muhtemelen bazı korumalı yollar (C:\Windows\System32 gibi) içinde yazma izinlerinizin olmadığı DLL'yi yazmanız gerekecek. Bunu aşmak için:
wusa.exe: Windows 7, 8 ve 8.1. Korumalı yollar içinde bir CAB dosyasının içeriğini çıkarmaya olanak tanır (çünkü bu araç yüksek bütünlük seviyesinden çalıştırılır).
IFileOperation: Windows 10.
Korumalı yola DLL'nizi kopyalamak ve savunmasız ve otomatik yükseltilmiş ikili dosyayı çalıştırmak için bir script hazırlayın.
Başka bir UAC bypass tekniği
Bir autoElevated ikili dosyanın kayıttan okumaya çalışıp çalışmadığını izlemeyi içerir; bu, çalıştırılacak bir ikili dosyanın veya komutun adını/yolunu arıyorsa daha ilginçtir (bu bilgi HKCU içinde aranıyorsa).
Trickest kullanarak dünyanın en gelişmiş topluluk araçlarıyla iş akışlarını kolayca oluşturun ve otomatikleştirin. Bugün Erişim Alın:
Last updated