macOS Red Teaming
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
JAMF Pro: jamf checkJSSConnection
Kandji
Ikiwa utaweza kudukua akauti za admin ili kufikia jukwaa la usimamizi, unaweza kudukua kompyuta zote kwa kusambaza malware yako kwenye mashine.
Kwa red teaming katika mazingira ya MacOS, inashauriwa sana kuwa na ufahamu wa jinsi MDMs zinavyofanya kazi:
macOS MDMMDM itakuwa na ruhusa ya kufunga, kuuliza au kuondoa profaili, kufunga programu, kuunda akaunti za admin za ndani, kuweka nenosiri la firmware, kubadilisha ufunguo wa FileVault...
Ili kuendesha MDM yako mwenyewe unahitaji CSR yako isainiwe na muuzaji ambayo unaweza kujaribu kupata na https://mdmcert.download/. Na ili kuendesha MDM yako mwenyewe kwa vifaa vya Apple unaweza kutumia MicroMDM.
Hata hivyo, ili kufunga programu kwenye kifaa kilichosajiliwa, bado unahitaji isainiwe na akaunti ya developer... hata hivyo, wakati wa usajili wa MDM kifaa kinaongeza cheti cha SSL cha MDM kama CA inayotambulika, hivyo sasa unaweza kusaini chochote.
Ili kusajili kifaa katika MDM unahitaji kufunga mobileconfig
faili kama root, ambayo inaweza kutolewa kupitia faili ya pkg (unaweza kuifunga katika zip na wakati inapakuliwa kutoka safari itafunguliwa).
Mythic agent Orthrus inatumia mbinu hii.
JAMF inaweza kuendesha scripts za kawaida (scripts zilizotengenezwa na sysadmin), payloads za asili (kuunda akaunti za ndani, kuweka nenosiri la EFI, ufuatiliaji wa faili/mchakato...) na MDM (mipangilio ya kifaa, vyeti vya kifaa...).
Nenda kwenye ukurasa kama https://<company-name>.jamfcloud.com/enroll/
kuona kama wana self-enrolment enabled. Ikiwa wanaweza kuomba akauti za kufikia.
Unaweza kutumia script JamfSniper.py kufanya shambulio la password spraying.
Zaidi ya hayo, baada ya kupata akauti sahihi unaweza kuwa na uwezo wa kujaribu nguvu majina mengine ya watumiaji kwa fomu ifuatayo:
jamf
binary ilikuwa na siri ya kufungua keychain ambayo wakati wa ugunduzi ilikuwa shirikishi kati ya kila mtu na ilikuwa: jk23ucnq91jfu9aj
.
Zaidi ya hayo, jamf persist kama LaunchDaemon katika /Library/LaunchAgents/com.jamf.management.agent.plist
JSS (Jamf Software Server) URL ambayo jamf
itatumia iko katika /Library/Preferences/com.jamfsoftware.jamf.plist
.
Faili hii kimsingi ina URL:
Hivyo, mshambuliaji anaweza kuweka kifurushi kibaya (pkg
) ambacho kinabadilisha faili hii wakati wa usakinishaji na kuweka URL kwa mskivu wa Mythic C2 kutoka kwa wakala wa Typhon ili sasa aweze kutumia JAMF kama C2.
Ili kuiga mawasiliano kati ya kifaa na JMF unahitaji:
UUID ya kifaa: ioreg -d2 -c IOPlatformExpertDevice | awk -F" '/IOPlatformUUID/{print $(NF-1)}'
JAMF keychain kutoka: /Library/Application\ Support/Jamf/JAMF.keychain
ambayo ina cheti cha kifaa
Kwa habari hii, unda VM yenye stolen Hardware UUID na SIP disabled, weka JAMF keychain, hook agent wa Jamf na uibe habari zake.
Unaweza pia kufuatilia eneo /Library/Application Support/Jamf/tmp/
kwa ajili ya custom scripts ambao wasimamizi wanaweza kutaka kutekeleza kupitia Jamf kwani zimewekwa hapa, zinatekelezwa na kuondolewa. Scripts hizi zinaweza kuwa na credentials.
Hata hivyo, credentials zinaweza kupitishwa kwa scripts hizi kama parameters, hivyo unahitaji kufuatilia ps aux | grep -i jamf
(bila hata kuwa root).
Script JamfExplorer.py inaweza kusikiliza kwa faili mpya zinazoongezwa na hoja mpya za mchakato.
Na pia kuhusu MacOS "maalum" network protocols:
macOS Network Services & ProtocolsKatika hali fulani utaona kuwa kompyuta ya MacOS imeunganishwa na AD. Katika hali hii unapaswa kujaribu kuorodhesha active directory kama unavyozoea. Pata msaada katika kurasa zifuatazo:
389, 636, 3268, 3269 - Pentesting LDAPActive Directory Methodology88tcp/udp - Pentesting KerberosZana za ndani za MacOS ambazo zinaweza pia kukusaidia ni dscl
:
Pia kuna zana zilizotayarishwa kwa MacOS ili kuhesabu moja kwa moja AD na kucheza na kerberos:
Machound: MacHound ni nyongeza kwa zana ya ukaguzi ya Bloodhound inayoruhusu kukusanya na kuingiza uhusiano wa Active Directory kwenye mwenyeji wa MacOS.
Bifrost: Bifrost ni mradi wa Objective-C ulioandaliwa ili kuingiliana na Heimdal krb5 APIs kwenye macOS. Lengo la mradi ni kuwezesha upimaji bora wa usalama kuhusiana na Kerberos kwenye vifaa vya macOS kwa kutumia APIs za asili bila kuhitaji mfumo mwingine wowote au pakiti kwenye lengo.
Orchard: Zana ya JavaScript kwa Utaftaji (JXA) kufanya hesabu ya Active Directory.
Aina tatu za watumiaji wa MacOS ni:
Local Users — Inasimamiwa na huduma ya OpenDirectory ya ndani, hawajashikamana kwa njia yoyote na Active Directory.
Network Users — Watumiaji wa Active Directory wanaobadilika ambao wanahitaji muunganisho na seva ya DC ili kuthibitisha.
Mobile Users — Watumiaji wa Active Directory wenye nakala ya ndani ya hati zao na faili.
Taarifa za ndani kuhusu watumiaji na vikundi zinaifadhiwa katika folda /var/db/dslocal/nodes/Default. Kwa mfano, taarifa kuhusu mtumiaji anayeitwa mark zinaifadhiwa katika /var/db/dslocal/nodes/Default/users/mark.plist na taarifa kuhusu kundi admin ziko katika /var/db/dslocal/nodes/Default/groups/admin.plist.
Mbali na kutumia edges za HasSession na AdminTo, MacHound inaongeza edges tatu mpya kwenye hifadhidata ya Bloodhound:
CanSSH - chombo kinachoruhusiwa SSH kwa mwenyeji
CanVNC - chombo kinachoruhusiwa VNC kwa mwenyeji
CanAE - chombo kinachoruhusiwa kutekeleza scripts za AppleEvent kwenye mwenyeji
Zaidi ya habari katika https://its-a-feature.github.io/posts/2018/01/Active-Directory-Discovery-with-a-Mac/
Pata nywila kwa kutumia:
Inawezekana kufikia nenosiri la Computer$
ndani ya mfumo wa keychain.
Pata TGT kwa mtumiaji na huduma maalum:
Mara tu TGT imekusanywa, inawezekana kuingiza katika kikao cha sasa kwa:
Kwa tiketi za huduma zilizopatikana, inawezekana kujaribu kufikia sehemu katika kompyuta nyingine:
Keychain ina uwezekano mkubwa kuwa na taarifa nyeti ambazo ikiwa zitafikiwa bila kuunda kichocheo zinaweza kusaidia kuendeleza zoezi la red team:
macOS KeychainMacOS Red Teaming ni tofauti na Red Teaming ya kawaida ya Windows kwani kawaida MacOS imeunganishwa na majukwaa kadhaa ya nje moja kwa moja. Mipangilio ya kawaida ya MacOS ni kufikia kompyuta kwa kutumia OneLogin credentials zilizoratibiwa, na kufikia huduma kadhaa za nje (kama github, aws...) kupitia OneLogin.
Wakati faili inapopakuliwa katika Safari, ikiwa ni faili "salama", itafunguliwa automatically. Hivyo kwa mfano, ikiwa unapakua zip, itafunguliwa moja kwa moja:
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)