JuicyPotato
Last updated
Last updated
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
JuicyPotato, Windows Server 2019 ve Windows 10 build 1809 ve sonrasında çalışmaz. Ancak, PrintSpoofer, RoguePotato, SharpEfsPotato ile aynı ayrıcalıkları kullanarak NT AUTHORITY\SYSTEM
düzeyinde erişim elde edebilirsiniz. Kontrol Et:
RottenPotatoNG sürümünün şekerli bir versiyonu, biraz meyve suyu ile, yani Windows Servis Hesaplarından NT AUTHORITY\SYSTEM düzeyine başka bir Yerel Ayrıcalık Yükseltme aracı.
RottenPotatoNG ve onun varyantları, BITS
servisine dayanan ayrıcalık yükseltme zincirini kullanır ve 127.0.0.1:6666
üzerinde MiTM dinleyicisi vardır ve SeImpersonate
veya SeAssignPrimaryToken
ayrıcalıklarına sahip olduğunuzda çalışır. Bir Windows build incelemesi sırasında, BITS
'in kasıtlı olarak devre dışı bırakıldığı ve 6666
portunun alındığı bir kurulum bulduk.
RottenPotatoNG'yi silahlandırmaya karar verdik: Juicy Potato'ya merhaba deyin.
Teori için, Rotten Potato - Servis Hesaplarından SYSTEM'e Ayrıcalık Yükseltme sayfasını inceleyin ve bağlantılar ve referanslar zincirini takip edin.
BITS
dışında, kötüye kullanabileceğimiz birkaç COM sunucusu olduğunu keşfettik. Bunların sadece:
mevcut kullanıcı tarafından örneklendirilebilir olması, genellikle taklit ayrıcalıklarına sahip bir "servis kullanıcısı"
IMarshal
arayüzünü uygulaması
yükseltilmiş bir kullanıcı (SYSTEM, Administrator, …) olarak çalışması gerekir.
Biraz test yaptıktan sonra, birkaç Windows sürümünde ilginç CLSID'lerin kapsamlı bir listesini elde ettik ve test ettik.
JuicyPotato, size şunları sağlar:
Hedef CLSID istediğiniz herhangi bir CLSID'yi seçin. Burada işletim sistemine göre düzenlenmiş listeyi bulabilirsiniz.
COM Dinleme portu tercih ettiğiniz COM dinleme portunu tanımlayın (hardcoded 6666 yerine)
COM Dinleme IP adresi sunucuyu herhangi bir IP'ye bağlayın
İşlem oluşturma modu taklit edilen kullanıcının ayrıcalıklarına bağlı olarak şunlardan birini seçebilirsiniz:
CreateProcessWithToken
(gerekli SeImpersonate
)
CreateProcessAsUser
(gerekli SeAssignPrimaryToken
)
her ikisi de
Başlatılacak işlem sömürü başarılı olursa bir yürütülebilir dosya veya betik başlatın
İşlem Argümanı başlatılan işlem argümanlarını özelleştirin
RPC Sunucu adresi gizli bir yaklaşım için harici bir RPC sunucusuna kimlik doğrulaması yapabilirsiniz
RPC Sunucu portu harici bir sunucuya kimlik doğrulaması yapmak istiyorsanız ve güvenlik duvarı 135
portunu engelliyorsa…
TEST modu _temelde test amaçlıdır, yani CLSID'leri test etmek için. DCOM oluşturur ve token kullanıcısını yazdırır. _test için buraya bakın
Eğer kullanıcının SeImpersonate
veya SeAssignPrimaryToken
ayrıcalıkları varsa, o zaman SYSTEM'siniz.
Tüm bu COM Sunucularının kötüye kullanımını önlemek neredeyse imkansızdır. Bu nesnelerin izinlerini DCOMCNFG
aracılığıyla değiştirmeyi düşünebilirsiniz ama iyi şanslar, bu zorlayıcı olacak.
Gerçek çözüm, * SERVICE
hesapları altında çalışan hassas hesapları ve uygulamaları korumaktır. DCOM
'u durdurmak kesinlikle bu istismarı engelleyecektir ancak temel işletim sistemi üzerinde ciddi bir etki yaratabilir.
From: http://ohpe.it/juicy-potato/
Note: Visit this page for a list of CLSIDs to try.
Çoğu zaman, JuicyPotato'nun kullandığı varsayılan CLSID çalışmaz ve exploit başarısız olur. Genellikle, çalışan bir CLSID bulmak için birden fazla deneme gerekir. Belirli bir işletim sistemi için denemek üzere CLSID'lerin bir listesini almak için bu sayfayı ziyaret etmelisiniz:
Öncelikle, juicypotato.exe dışında bazı çalıştırılabilir dosyalara ihtiyacınız olacak.
Join-Object.ps1 dosyasını indirin ve PS oturumunuza yükleyin, ardından GetCLSID.ps1 dosyasını indirin ve çalıştırın. Bu script, test edilecek olası CLSID'lerin bir listesini oluşturacaktır.
Sonra test_clsid.bat dosyasını indirin (CLSID listesi ve juicypotato çalıştırılabilir dosyası için yolu değiştirin) ve çalıştırın. Her CLSID'yi denemeye başlayacaktır ve port numarası değiştiğinde, bu CLSID'nin çalıştığı anlamına gelecektir.
Çalışan CLSID'leri -c parametresini kullanarak kontrol edin
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)