Enrolling Devices in Other Organisations
Увод
Као што је претходно коментарисано, да би се покушало уписивање уређаја у организацију, потребан је само серијски број који припада тој организацији. Када се уређај упише, више организација ће инсталирати осетљиве податке на нови уређај: сертификате, апликације, лозинке за WiFi, конфигурације VPN-а и тако даље. Следоватно, ово може бити опасна тачка улаза за нападаче ако процес уписивања није исправно заштићен.
Следи резиме истраживања https://duo.com/labs/research/mdm-me-maybe. Проверите га за додатне техничке детаље!
Преглед DEP и MDM бинарних анализа
Ово истраживање улази у бинарне датотеке повезане са програмом за уписивање уређаја (DEP) и управљање мобилним уређајима (MDM) на macOS-у. Кључни компоненти укључују:
mdmclient
: Комуницира са MDM серверима и покреће DEP провере на macOS верзијама пре 10.13.4.profiles
: Управља конфигурационим профилима и покреће DEP провере на macOS верзијама 10.13.4 и новијим.cloudconfigurationd
: Управља DEP API комуникацијом и преузима профиле уписивања уређаја.
DEP провере користе функције CPFetchActivationRecord
и CPGetActivationRecord
из приватног оквира конфигурационих профила за преузимање записа активације, при чему CPFetchActivationRecord
сарађује са cloudconfigurationd
преко XPC-а.
Реверзно инжењерство Tesla протокола и Absinthe шеме
DEP провера укључује да cloudconfigurationd
шаље шифровану и потписану JSON поруку на iprofiles.apple.com/macProfile. Порука укључује серијски број уређаја и акцију "RequestProfileConfiguration". Шема шифровања која се користи интерно се назива "Absinthe". Разоткривање ове шеме је комплексно и укључује бројне кораке, што је довело до истраживања алтернативних метода за уметање произвољних серијских бројева у захтев за запис активације.
Проксирање DEP захтева
Покушаји прехвата и измене DEP захтева ка iprofiles.apple.com користећи алатке као што је Charles Proxy били су ометени шифровањем поруке и мерама безбедности SSL/TLS. Међутим, омогућавање конфигурације MCCloudConfigAcceptAnyHTTPSCertificate
омогућава обилазак провере сертификата сервера, иако шифрована природа поруке и даље спречава измену серијског броја без кључа за дешифровање.
Инструментирање системских бинарних датотека које комуницирају са DEP-ом
Инструментирање системских бинарних датотека као што је cloudconfigurationd
захтева онемогућавање Заштите системске целовитости (SIP) на macOS-у. Са онемогућеним SIP-ом, алатке као што је LLDB могу се користити за придруживање системским процесима и потенцијалну измену серијског броја који се користи у интеракцији са DEP API-јем. Овај метод је посебно пожељан јер избегава комплексности овлашћења и потписивања кода.
Искоришћавање инструментације бинарних датотека: Измена захтева DEP пре серијализације JSON-а у cloudconfigurationd
показала се ефикасном. Процес је укључивао:
Придруживање LLDB-а
cloudconfigurationd
-у.Локализовање тачке где се добија системски серијски број.
Уметање произвољног серијског броја у меморију пре шифровања и слања поруке.
Овај метод је омогућио преузимање потпуних DEP профила за произвољне серијске бројеве, што демонстрира потенцијалну ранјивост.
Аутоматизација инструментације помоћу Python-a
Процес искоришћавања је аутоматизован помоћу Python-a са LLDB API-јем, што омогућава програмско уметање произвољних серијских бројева и преузимање одговар
Last updated