macOS Red Teaming
Last updated
Last updated
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak. Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploitte om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
JAMF Pro: jamf checkJSSConnection
Kandji
As jy daarin slaag om administrateur akrediteer te kompromitteer om toegang tot die bestuursplatform te verkry, kan jy potensieel al die rekenaars kompromitteer deur jou malware in die masjiene te versprei.
Vir red teaming in MacOS omgewings is dit hoogs aanbeveel om 'n bietjie begrip te hê van hoe die MDM's werk:
macOS MDM'n MDM sal toestemming hê om profiele te installeer, te vra of te verwyder, toepassings te installeer, plaaslike administrateur rekeninge te skep, firmware wagwoord in te stel, die FileVault sleutel te verander...
Om jou eie MDM te laat loop, moet jy jou CSR deur 'n verskaffer laat teken wat jy kan probeer om te kry met https://mdmcert.download/. En om jou eie MDM vir Apple toestelle te laat loop, kan jy MicroMDM gebruik.
Om egter 'n toepassing op 'n geregistreerde toestel te installeer, moet dit steeds deur 'n ontwikkelaar rekening geteken wees... egter, by MDM registrasie voeg die toestel die SSL sertifikaat van die MDM as 'n vertroude CA by, so jy kan nou enigiets teken.
Om die toestel in 'n MDM te registreer, moet jy 'n mobileconfig
lêer as root installeer, wat via 'n pkg lêer afgelewer kan word (jy kan dit in zip komprimeer en wanneer dit van safari afgelaai word, sal dit uitgepak word).
Mythic agent Orthrus gebruik hierdie tegniek.
JAMF kan pasgemaakte skripte (skripte wat deur die sysadmin ontwikkel is), natuurlike payloads (lokale rekening skepping, EFI wagwoord instel, lêer/proses monitering...) en MDM (toestel konfigurasies, toestel sertifikate...) uitvoer.
Gaan na 'n bladsy soos https://<company-name>.jamfcloud.com/enroll/
om te sien of hulle self-registrasie geaktiveer het. As hulle dit het, mag dit om akrediteer vra.
Jy kan die skrip JamfSniper.py gebruik om 'n wagwoord spuit aanval uit te voer.
Boonop, nadat jy die regte akrediteer gevind het, kan jy in staat wees om ander gebruikersname met die volgende vorm te brute-force:
Die jamf
binêre het die geheim bevat om die sleutelring te open wat op die tyd van die ontdekking gedeel was onder almal en dit was: jk23ucnq91jfu9aj
.
Boonop, jamf bly as 'n LaunchDaemon in /Library/LaunchAgents/com.jamf.management.agent.plist
Die JSS (Jamf Software Server) URL wat jamf
sal gebruik, is geleë in /Library/Preferences/com.jamfsoftware.jamf.plist
.
Hierdie lêer bevat basies die URL:
So, 'n aanvaller kan 'n kwaadwillige pakket (pkg
) laat val wat hierdie lêer oorskryf wanneer dit geïnstalleer word, wat die URL na 'n Mythic C2 listener van 'n Typhon agent stel om nou JAMF as C2 te kan misbruik.
Om die kommunikasie tussen 'n toestel en JMF te imiteer, benodig jy:
Die UUID van die toestel: ioreg -d2 -c IOPlatformExpertDevice | awk -F" '/IOPlatformUUID/{print $(NF-1)}'
Die JAMF sleutelhouer van: /Library/Application\ Support/Jamf/JAMF.keychain
wat die toestel sertifikaat bevat
Met hierdie inligting, skep 'n VM met die gestole Hardeware UUID en met SIP gedeaktiveer, plaas die JAMF sleutelhouer, haak die Jamf agent en steel sy inligting.
Jy kan ook die ligging /Library/Application Support/Jamf/tmp/
monitor vir die aangepaste skripte wat admins mag wil uitvoer via Jamf, aangesien hulle hier geplaas, uitgevoer en verwyder word. Hierdie skripte kan akrediteer bevat.
E however, akrediteer mag deur hierdie skripte as parameters oorgedra word, so jy sal ps aux | grep -i jamf
moet monitor (sonder om eers root te wees).
Die skrip JamfExplorer.py kan luister vir nuwe lêers wat bygevoeg word en nuwe proses argumente.
En ook oor MacOS "spesiale" netwerk protokolle:
macOS Network Services & ProtocolsIn sommige gevalle sal jy vind dat die MacOS rekenaar aan 'n AD gekoppel is. In hierdie scenario moet jy probeer om die aktiewe gids te nommer soos jy gewoond is. Vind 'n bietjie hulp in die volgende bladsye:
389, 636, 3268, 3269 - Pentesting LDAPActive Directory Methodology88tcp/udp - Pentesting KerberosSommige lokale MacOS hulpmiddel wat jou ook kan help is dscl
:
Ook is daar 'n paar gereedskap voorberei vir MacOS om die AD outomaties te enumerate en met kerberos te speel:
Machound: MacHound is 'n uitbreiding van die Bloodhound ouditgereedskap wat die versameling en opname van Active Directory verhoudings op MacOS gasheer toestelle moontlik maak.
Bifrost: Bifrost is 'n Objective-C projek wat ontwerp is om met die Heimdal krb5 APIs op macOS te kommunikeer. Die doel van die projek is om beter sekuriteitstoetsing rondom Kerberos op macOS toestelle moontlik te maak deur gebruik te maak van inheemse APIs sonder om enige ander raamwerk of pakkette op die teiken te vereis.
Orchard: JavaScript for Automation (JXA) gereedskap om Active Directory enumerasie te doen.
Die drie tipes MacOS gebruikers is:
Plaaslike Gebruikers — Bestuur deur die plaaslike OpenDirectory diens, hulle is nie op enige manier aan die Active Directory gekoppel nie.
Netwerk Gebruikers — Vlugtige Active Directory gebruikers wat 'n verbinding met die DC bediener benodig om te autentiseer.
Mobiele Gebruikers — Active Directory gebruikers met 'n plaaslike rugsteun vir hul akrediteer en lêers.
Die plaaslike inligting oor gebruikers en groepe word gestoor in die gids /var/db/dslocal/nodes/Default. Byvoorbeeld, die inligting oor die gebruiker genaamd mark word gestoor in /var/db/dslocal/nodes/Default/users/mark.plist en die inligting oor die groep admin is in /var/db/dslocal/nodes/Default/groups/admin.plist.
Benewens die gebruik van die HasSession en AdminTo kante, voeg MacHound drie nuwe kante by die Bloodhound databasis:
CanSSH - entiteit toegelaat om SSH na gasheer
CanVNC - entiteit toegelaat om VNC na gasheer
CanAE - entiteit toegelaat om AppleEvent skripte op gasheer uit te voer
Meer inligting in https://its-a-feature.github.io/posts/2018/01/Active-Directory-Discovery-with-a-Mac/
Kry wagwoorde met:
Dit is moontlik om die Computer$
wagwoord binne die Stelsel sleutelhouer te verkry.
Kry 'n TGT vir 'n spesifieke gebruiker en diens:
Sodra die TGT versamel is, is dit moontlik om dit in die huidige sessie in te spuit met:
Met verkregen dienskaartjies is dit moontlik om te probeer om toegang te verkry tot gedeeltes op ander rekenaars:
Die Sleutelkettie bevat hoogs waarskynlik sensitiewe inligting wat, indien dit sonder 'n prompt verkry word, kan help om 'n rooi span oefening vorentoe te beweeg:
macOS KeychainMacOS Rooi Span werk verskillend van 'n gewone Windows Rooi Span, aangesien MacOS gewoonlik direk met verskeie eksterne platforms geïntegreer is. 'n Algemene konfigurasie van MacOS is om toegang tot die rekenaar te verkry met OneLogin gesinkroniseerde akrediteer, en toegang tot verskeie eksterne dienste (soos github, aws...) via OneLogin.
Wanneer 'n lêer in Safari afgelaai word, as dit 'n "veilige" lêer is, sal dit outomaties geopen word. So byvoorbeeld, as jy 'n zip aflaai, sal dit outomaties uitgepak word:
Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak. Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik outomatiese eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)