Enrolling Devices in Other Organisations
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)
daha önce belirtildiği gibi, bir cihazı bir kuruluşa kaydetmek için sadece o Kuruluşa ait bir Seri Numarası gereklidir. Cihaz kaydedildikten sonra, birçok kuruluş yeni cihaza hassas veriler yükleyecektir: sertifikalar, uygulamalar, WiFi şifreleri, VPN yapılandırmaları ve benzeri. Bu nedenle, kayıt süreci doğru bir şekilde korunmazsa, bu saldırganlar için tehlikeli bir giriş noktası olabilir.
Aşağıda, araştırmanın bir özeti bulunmaktadır https://duo.com/labs/research/mdm-me-maybe. Daha fazla teknik detay için kontrol edin!
Bu araştırma, macOS'taki Cihaz Kaydı Programı (DEP) ve Mobil Cihaz Yönetimi (MDM) ile ilişkili ikililere dalmaktadır. Ana bileşenler şunlardır:
mdmclient
: MDM sunucularıyla iletişim kurar ve macOS 10.13.4 öncesi sürümlerde DEP kontrol noktalarını tetikler.
profiles
: Yapılandırma Profillerini yönetir ve macOS 10.13.4 ve sonraki sürümlerde DEP kontrol noktalarını tetikler.
cloudconfigurationd
: DEP API iletişimlerini yönetir ve Cihaz Kaydı profillerini alır.
DEP kontrol noktaları, Aktivasyon Kaydını almak için özel Yapılandırma Profilleri çerçevesinden CPFetchActivationRecord
ve CPGetActivationRecord
işlevlerini kullanır; CPFetchActivationRecord
, cloudconfigurationd
ile XPC üzerinden koordine eder.
DEP kontrol noktası, cloudconfigurationd
'nin iprofiles.apple.com/macProfile adresine şifreli, imzalı bir JSON yükü göndermesini içerir. Yük, cihazın seri numarasını ve "RequestProfileConfiguration" eylemini içerir. Kullanılan şifreleme şeması dahili olarak "Absinthe" olarak adlandırılmaktadır. Bu şemanın çözülmesi karmaşıktır ve birçok adım içerir; bu da Aktivasyon Kaydı isteğine keyfi seri numaraları eklemek için alternatif yöntemlerin araştırılmasına yol açmıştır.
iprofiles.apple.com adresine yapılan DEP isteklerini kesmek ve değiştirmek için Charles Proxy gibi araçlar kullanma girişimleri, yük şifrelemesi ve SSL/TLS güvenlik önlemleri nedeniyle engellendi. Ancak, MCCloudConfigAcceptAnyHTTPSCertificate
yapılandırmasını etkinleştirmek, sunucu sertifika doğrulamasını atlamaya olanak tanır; ancak yükün şifreli doğası, şifre çözme anahtarı olmadan seri numarasının değiştirilmesini engeller.
cloudconfigurationd
gibi sistem ikili dosyalarını araçlandırmak, macOS'ta Sistem Bütünlüğü Koruması (SIP) devre dışı bırakılmasını gerektirir. SIP devre dışı bırakıldığında, LLDB gibi araçlar sistem süreçlerine bağlanmak ve DEP API etkileşimlerinde kullanılan seri numarasını potansiyel olarak değiştirmek için kullanılabilir. Bu yöntem, yetkilendirme ve kod imzalama karmaşıklıklarından kaçındığı için tercih edilmektedir.
İkili Araçlandırmayı Sömürme: cloudconfigurationd
'de JSON serileştirmeden önce DEP istek yükünü değiştirmek etkili oldu. Süreç şunları içeriyordu:
LLDB'yi cloudconfigurationd
'ye bağlamak.
Sistem seri numarasının alındığı noktayı bulmak.
Yük şifrelenmeden ve gönderilmeden önce belleğe keyfi bir seri numarası enjekte etmek.
Bu yöntem, keyfi seri numaraları için tam DEP profillerinin alınmasını sağladı ve potansiyel bir zafiyeti gösterdi.
Sömürü süreci, keyfi seri numaralarını programatik olarak enjekte etmek ve karşılık gelen DEP profillerini almak için Python ile LLDB API kullanılarak otomatikleştirildi.
Araştırma, önemli güvenlik endişelerini vurguladı:
Bilgi Sızdırma: DEP'e kayıtlı bir seri numarası sağlayarak, DEP profilinde bulunan hassas kurumsal bilgilere erişim sağlanabilir.