Azure Pentesting

HackTricks рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ

рдореИрдВ рдЕрднреА рднреА Azure рдкрджреНрдзрддрд┐ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдБ

рдмреБрдирд┐рдпрд╛рджреА рдЬрд╛рдирдХрд╛рд░реА

Azure Pentester/Red Team рдкрджреНрдзрддрд┐

AZURE рд╡рд╛рддрд╛рд╡рд░рдг рдХрд╛ рдСрдбрд┐рдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ: рдХреМрди рд╕реА рд╕реЗрд╡рд╛рдПрдБ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИрдВ, рдХреНрдпрд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдХрд┐рд╕рдХреЗ рдкрд╛рд╕ рдкрд╣реБрдБрдЪ рд╣реИ, рдФрд░ рдЖрдВрддрд░рд┐рдХ Azure рд╕реЗрд╡рд╛рдПрдБ рдФрд░ рдмрд╛рд╣рд░реА рд╕реЗрд╡рд╛рдПрдБ рдХреИрд╕реЗ рдЬреБрдбрд╝реА рд╣реБрдИ рд╣реИрдВред

Red Team рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, Azure рд╡рд╛рддрд╛рд╡рд░рдг рдХреЛ рд╕рдордЭреМрддрд╛ рдХрд░рдиреЗ рдХрд╛ рдкрд╣рд▓рд╛ рдХрджрдо Azure AD рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╣реИред рдпрд╣рд╛рдБ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рджрд┐рдП рдЧрдП рд╣реИрдВ рдХрд┐ рдЖрдк рдРрд╕рд╛ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  • рдЧрд┐рдЯрд╣рдм (рдпрд╛ рд╕рдорд╛рди) рдореЗрдВ рд▓реАрдХ - OSINT

  • рд╕рд╛рдорд╛рдЬрд┐рдХ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ

  • рдкрд╛рд╕рд╡рд░реНрдб рдкреБрди: рдЙрдкрдпреЛрдЧ (рдкрд╛рд╕рд╡рд░реНрдб рд▓реАрдХ)

  • Azure-рд╣реЛрд╕реНрдЯреЗрдб рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдХрдордЬреЛрд░рд┐рдпрд╛рдБ

  • рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдЕрдиреБрд░реЛрдз рдзреЛрдЦрд╛рдзрдбрд╝реА рдЬрд┐рд╕рдореЗрдВ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдПрдВрдбрдкреЙрдЗрдВрдЯ рддрдХ рдкрд╣реБрдБрдЪ рд╣реИ

  • рд╕реНрдерд╛рдиреАрдп рдлрд╝рд╛рдЗрд▓ рдкрдврд╝реЗрдВ

  • /home/USERNAME/.azure

  • C:\Users\USERNAME\.azure

  • рдлрд╝рд╛рдЗрд▓ accessTokens.json az cli рдореЗрдВ 2.30 рд╕реЗ рдкрд╣рд▓реЗ - Jan2022 - рд╕реНрдкрд╖реНрдЯ рдкрд╛рда рдореЗрдВ рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХрди рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреА рд╣реИ

  • рдлрд╝рд╛рдЗрд▓ azureProfile.json рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд┐рдП рдЧрдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрддреА рд╣реИред

  • az logout рдЯреЛрдХрди рдХреЛ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реИред

  • Az PowerShell рдХреЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдиреЗ рд╕реНрдкрд╖реНрдЯ рдкрд╛рда рдореЗрдВ TokenCache.dat рдореЗрдВ рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХрди рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдПред рдпрд╣ AzureRmContext.json рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рдкрд╛рда рдореЗрдВ ServicePrincipalSecret рднреА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред Save-AzContext cmdlet рдХрд╛ рдЙрдкрдпреЛрдЧ рдЯреЛрдХрди рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрдиреНрд╣реЗрдВ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП Disconnect-AzAccount рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

  • 3rd рдкрд╛рд░реНрдЯрд┐рдпреЛрдВ рдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрд▓реНрд▓рдВрдШрди

  • рдЖрдВрддрд░рд┐рдХ рдХрд░реНрдордЪрд╛рд░реА

  • рд╕рд╛рдорд╛рдиреНрдп рдлрд╝рд┐рд╢рд┐рдВрдЧ (рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдпрд╛ Oauth рдРрдк)

рдпрд╣рд╛рдБ рддрдХ рдХрд┐ рдЕрдЧрд░ рдЖрдкрдиреЗ Azure рдЯреЗрдиреЗрдЯ рдХреЗ рдЕрдВрджрд░ рдХрд┐рд╕реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╕рдордЭреМрддрд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЖрдк рдЗрд╕рд╕реЗ рдХреБрдЫ рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

рдПрдХ рдмрд╛рд░ рдЬрдм рдЖрдк рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдлрд▓ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдпреЗ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХрд┐рд╕рдХреЗ рд╣реИрдВ, рдФрд░ рдЗрдирдХреЗ рдкрд╛рд╕ рдХреНрдпрд╛ рдкрд╣реБрдБрдЪ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдПрдиреНрдпреВрдорд░реЗрд╢рди рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

рдмреБрдирд┐рдпрд╛рджреА рдПрдиреНрдпреВрдорд░реЗрд╢рди

рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдПрдиреНрдпреВрдорд░реЗрд╢рди рдХрд╛ рд╕рдмрд╕реЗ рд╢реЛрд░ рд╡рд╛рд▓рд╛ рднрд╛рдЧ рд▓реЙрдЧрд┐рди рд╣реИ, рди рдХрд┐ рдПрдиреНрдпреВрдорд░реЗрд╢рди рд╕реНрд╡рдпрдВред

SSRF

рдпрджрд┐ рдЖрдкрдиреЗ Azure рдХреЗ рдЕрдВрджрд░ рдПрдХ рдорд╢реАрди рдореЗрдВ SSRF рдкрд╛рдпрд╛ рд╣реИ, рддреЛ рдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкреГрд╖реНрда рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ:

рд▓реЙрдЧрд┐рди рд╢рд░реНрддреЛрдВ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░реЗрдВ

рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЬрд╣рд╛рдБ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреБрдЫ рдорд╛рдиреНрдп рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рд╣реИрдВ рд▓реЗрдХрд┐рди рдЖрдк рд▓реЙрдЧрд┐рди рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ, рдпреЗ рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рд╕реБрд░рдХреНрд╖рд╛ рдЙрдкрд╛рдп рд╣реИрдВ рдЬреЛ рд▓рд╛рдЧреВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:

  • IP рд╡реНрд╣рд╛рдЗрдЯрд▓рд┐рд╕реНрдЯрд┐рдВрдЧ -- рдЖрдкрдХреЛ рдПрдХ рдорд╛рдиреНрдп IP рдХреЛ рд╕рдордЭреМрддрд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛

  • рднреМрдЧреЛрд▓рд┐рдХ рдкреНрд░рддрд┐рдмрдВрдз -- рдкрддрд╛ рдХрд░реЗрдВ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╣рд╛рдБ рд░рд╣рддрд╛ рд╣реИ рдпрд╛ рдХрдВрдкрдиреА рдХреЗ рдХрд╛рд░реНрдпрд╛рд▓рдп рдХрд╣рд╛рдБ рд╣реИрдВ рдФрд░ рдЙрд╕реА рд╢рд╣рд░ (рдпрд╛ рдХрдо рд╕реЗ рдХрдо рджреЗрд╢) рд╕реЗ рдПрдХ IP рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ

  • рдмреНрд░рд╛рдЙрдЬрд╝рд░ -- рд╢рд╛рдпрдж рдХреЗрд╡рд▓ рдХреБрдЫ OS (Windows, Linux, Mac, Android, iOS) рд╕реЗ рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИред рдкрддрд╛ рдХрд░реЗрдВ рдХрд┐ рдкреАрдбрд╝рд┐рдд/рдХрдВрдкрдиреА рдХреМрди рд╕рд╛ OS рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИред

  • рдЖрдк Service Principal рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЛ рднреА рд╕рдордЭреМрддрд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЖрдорддреМрд░ рдкрд░ рдХрдо рд╕реАрдорд┐рдд рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЙрдирдХрд╛ рд▓реЙрдЧрд┐рди рдХрдо рд╕рдореАрдХреНрд╖рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдЗрд╕реЗ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдЕрдкрдиреА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реЗрдЯрдЕрдк рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрднреА рднреА рдкрд╣реБрдБрдЪ рд╣реЛрдЧреАред

рд╕рдмрдбреЛрдореЗрди рдЯреЗрдХрдУрд╡рд░

Whoami

рдЬрд╛рдиреЗрдВ рдХреИрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ az cli, AzureAD рдФрд░ Az PowerShell Az - AzureAD рдЕрдиреБрднрд╛рдЧ рдореЗрдВред

рдЖрдкрдХреЛ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдХреМрди рд╣реИрдВ (рдЖрдк рдХрд┐рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╣реИрдВ):

az account list
az account tenant list # Current tenant info
az account subscription list # Current subscription info
az ad signed-in-user show # Current signed-in user
az ad signed-in-user list-owned-objects # Get owned objects by current user
az account management-group list #Not allowed by default

Azure рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрдорд╛рдВрдб рдореЗрдВ рд╕реЗ рдПрдХ Get-AzResource рд╣реИ рдЬреЛ Az PowerShell рд╕реЗ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЖрдкрдХреЛ рдЬрд╛рдирдиреЗ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рд╡рд░реНрддрдорд╛рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдкрд╛рд╕ рдХрд┐рди рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рджреГрд╢реНрдпрддрд╛ рд╣реИред

рдЖрдк рд╡реЗрдм рдХрдВрд╕реЛрд▓ рдореЗрдВ https://portal.azure.com/#view/HubsExtension/BrowseAll рдкрд░ рдЬрд╛рдХрд░ рдпрд╛ "рд╕рднреА рд╕рдВрд╕рд╛рдзрди" рдЦреЛрдЬрдХрд░ рд╡рд╣реА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

AzureAD Enumeration

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдкрд╛рд╕ рдЪреАрдЬреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЕрдиреБрдорддрд┐рдпрд╛рдБ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдЬреИрд╕реЗ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рд╕рдореВрд╣, рднреВрдорд┐рдХрд╛рдПрдБ, рд╕реЗрд╡рд╛ рдкреНрд░рдореБрдЦ... (рджреЗрдЦреЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ AzureAD рдЕрдиреБрдорддрд┐рдпрд╛рдБ). рдпрд╣рд╛рдБ рдПрдХ рдЧрд╛рдЗрдб рд╣реИ:

рдЕрдм рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдЬрд╛рдирдХрд╛рд░реА рд╣реИ (рдФрд░ рдпрджрд┐ рдЖрдк рдПрдХ рд░реЗрдб рдЯреАрдо рд╣реИрдВ рддреЛ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЖрдк рдкрдХрдбрд╝реЗ рдирд╣реАрдВ рдЧрдП рд╣реИрдВ)ред рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХрд╛ рд╕рдордп рд╣реИ рдХрд┐ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдХреМрди рд╕реА рд╕реЗрд╡рд╛рдПрдБ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИрдВред рдЕрдЧрд▓реЗ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЖрдк рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рддрд░реАрдХреЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

Service Principal and Access Policy

рдПрдХ Azure рд╕реЗрд╡рд╛ рдореЗрдВ рдПрдХ рд╕рд┐рд╕реНрдЯрдо рдкрд╣рдЪрд╛рди (рд╕реЗрд╡рд╛ рдХреА рд╕реНрд╡рдпрдВ рдХреА) рд╣реЛ рд╕рдХрддреА рд╣реИ рдпрд╛ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрд╕рд╛рдЗрди рдХреА рдЧрдИ рдкреНрд░рдмрдВрдзрд┐рдд рдкрд╣рдЪрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреА рд╣реИред рдпрд╣ рдкрд╣рдЪрд╛рди, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ KeyVault рдХреЗ рд▓рд┐рдП рдПрдХреНрд╕реЗрд╕ рдиреАрддрд┐ рд░рдЦ рд╕рдХрддреА рд╣реИ рддрд╛рдХрд┐ рд░рд╣рд╕реНрдпреЛрдВ рдХреЛ рдкрдврд╝рд╛ рдЬрд╛ рд╕рдХреЗред рдЗрди рдПрдХреНрд╕реЗрд╕ рдиреАрддрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рдХрдо рд╕реЗ рдХрдо рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдХрд╛ рд╕рд┐рджреНрдзрд╛рдВрдд), рд▓реЗрдХрд┐рди рдЖрд╡рд╢реНрдпрдХ рд╕реЗ рдЕрдзрд┐рдХ рдЕрдиреБрдорддрд┐рдпрд╛рдБ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред рдЖрдорддреМрд░ рдкрд░ рдПрдХ рдРрдк рд╕реЗрд╡рд╛ рд░рд╣рд╕реНрдпреЛрдВ рдФрд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП KeyVault рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧреАред

рдЗрд╕рд▓рд┐рдП рдЗрди рдкрд╣рдЪрд╛рдиреЛрдВ рдХрд╛ рдЕрдиреНрд╡реЗрд╖рдг рдХрд░рдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реИред

App Service SCM

рдРрдк рд╕реЗрд╡рд╛ 'рдХрдВрдЯреЗрдирд░' рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдбреВ рдХрдВрд╕реЛрд▓ред

Webshell

portal.azure.com рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рд╢реЗрд▓ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ, рдпрд╛ bash рдпрд╛ powershell рдХреЗ рд▓рд┐рдП shell.azure.com рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЗрд╕ рд╢реЗрд▓ рдХрд╛ 'рдбрд┐рд╕реНрдХ' рдПрдХ рд╕реНрдЯреЛрд░реЗрдЬ-рдЦрд╛рддрд╛ рдореЗрдВ рдПрдХ рдЗрдореЗрдЬ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛрддрд╛ рд╣реИред

Azure DevOps

Azure DevOps Azure рд╕реЗ рдЕрд▓рдЧ рд╣реИред рдЗрд╕рдореЗрдВ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА, рдкрд╛рдЗрдкрд▓рд╛рдЗрдиреНрд╕ (yaml рдпрд╛ рд░рд┐рд▓реАрдЬрд╝), рдмреЛрд░реНрдб, рд╡рд┐рдХреА, рдФрд░ рдЕрдзрд┐рдХ рд╣реИрдВред рд╡реЗрд░рд┐рдПрдмрд▓ рдЧреНрд░реБрдкреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡реЗрд░рд┐рдПрдмрд▓ рдорд╛рдиреЛрдВ рдФрд░ рд░рд╣рд╕реНрдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

Automated Recon Tools

cd ROADTools
pipenv shell
roadrecon auth -u test@corp.onmicrosoft.com -p "Welcome2022!"
roadrecon gather
roadrecon gui

Import-Module monkey365
Get-Help Invoke-Monkey365
Get-Help Invoke-Monkey365 -Detailed
Invoke-Monkey365 -IncludeAzureActiveDirectory -ExportTo HTML -Verbose -Debug -InformationAction Continue
Invoke-Monkey365 - Instance Azure -Analysis All -ExportTo HTML

# Start Backend
cd stormspotter\backend\
pipenv shell
python ssbackend.pyz

# Start Front-end
cd stormspotter\frontend\dist\spa\
quasar.cmd serve -p 9091 --history

# Run Stormcollector
cd stormspotter\stormcollector\
pipenv shell
az login -u test@corp.onmicrosoft.com -p Welcome2022!
python stormspotter\stormcollector\sscollector.pyz cli
# This will generate a .zip file to upload in the frontend (127.0.0.1:9091)

# You need to use the Az PowerShell and Azure AD modules:
$passwd = ConvertTo-SecureString "Welcome2022!" -AsPlainText -Force
$creds = New-Object System.Management.Automation.PSCredential ("test@corp.onmicrosoft.com", $passwd)
Connect-AzAccount -Credential $creds

Import-Module AzureAD\AzureAD.psd1
Connect-AzureAD -Credential $creds

# Launch AzureHound
. AzureHound\AzureHound.ps1
Invoke-AzureHound -Verbose

# Simple queries
## All Azure Users
MATCH (n:AZUser) return n.name
## All Azure Applications
MATCH (n:AZApp) return n.objectid
## All Azure Devices
MATCH (n:AZDevice) return n.name
## All Azure Groups
MATCH (n:AZGroup) return n.name
## All Azure Key Vaults
MATCH (n:AZKeyVault) return n.name
## All Azure Resource Groups
MATCH (n:AZResourceGroup) return n.name
## All Azure Service Principals
MATCH (n:AZServicePrincipal) return n.objectid
## All Azure Virtual Machines
MATCH (n:AZVM) return n.name
## All Principals with the тАШContributorтАЩ role
MATCH p = (n)-[r:AZContributor]->(g) RETURN p

# Advanced queries
## Get Global Admins
MATCH p =(n)-[r:AZGlobalAdmin*1..]->(m) RETURN p
## Owners of Azure Groups
MATCH p = (n)-[r:AZOwns]->(g:AZGroup) RETURN p
## All Azure Users and their Groups
MATCH p=(m:AZUser)-[r:MemberOf]->(n) WHERE NOT m.objectid CONTAINS 'S-1-5' RETURN p
## Privileged Service Principals
MATCH p = (g:AZServicePrincipal)-[r]->(n) RETURN p
## Owners of Azure Applications
MATCH p = (n)-[r:AZOwns]->(g:AZApp) RETURN p
## Paths to VMs
MATCH p = (n)-[r]->(g: AZVM) RETURN p
## Paths to KeyVault
MATCH p = (n)-[r]->(g:AZKeyVault) RETURN p
## Paths to Azure Resource Group
MATCH p = (n)-[r]->(g:AZResourceGroup) RETURN p
## On-Prem users with edges to Azure
MATCH  p=(m:User)-[r:AZResetPassword|AZOwns|AZUserAccessAdministrator|AZContributor|AZAddMembers|AZGlobalAdmin|AZVMContributor|AZOwnsAZAvereContributor]->(n) WHERE m.objectid CONTAINS 'S-1-5-21' RETURN p
## All Azure AD Groups that are synchronized with On-Premise AD
MATCH (n:Group) WHERE n.objectid CONTAINS 'S-1-5' AND n.azsyncid IS NOT NULL RETURN n

# You should use an account with at least read-permission on the assets you want to access
git clone https://github.com/nccgroup/azucar.git
PS> Get-ChildItem -Recurse c:\Azucar_V10 | Unblock-File

PS> .\Azucar.ps1 -AuthMode UseCachedCredentials -Verbose -WriteLog -Debug -ExportTo PRINT
PS> .\Azucar.ps1 -ExportTo CSV,JSON,XML,EXCEL -AuthMode Certificate_Credentials -Certificate C:\AzucarTest\server.pfx -ApplicationId 00000000-0000-0000-0000-000000000000 -TenantID 00000000-0000-0000-0000-000000000000
PS> .\Azucar.ps1 -ExportTo CSV,JSON,XML,EXCEL -AuthMode Certificate_Credentials -Certificate C:\AzucarTest\server.pfx -CertFilePassword MySuperP@ssw0rd! -ApplicationId 00000000-0000-0000-0000-000000000000 -TenantID 00000000-0000-0000-0000-000000000000

# resolve the TenantID for an specific username
PS> .\Azucar.ps1 -ResolveTenantUserName user@company.com

Import-Module .\MicroBurst.psm1
Import-Module .\Get-AzureDomainInfo.ps1
Get-AzureDomainInfo -folder MicroBurst -Verbose

Connect-AzAccount
ipmo C:\Path\To\Powerzure.psd1
Get-AzureTarget

# Reader
$ Get-Runbook, Get-AllUsers, Get-Apps, Get-Resources, Get-WebApps, Get-WebAppDetails

# Contributor
$ Execute-Command -OS Windows -VM Win10Test -ResourceGroup Test-RG -Command "whoami"
$ Execute-MSBuild -VM Win10Test  -ResourceGroup Test-RG -File "build.xml"
$ Get-AllSecrets # AllAppSecrets, AllKeyVaultContents
$ Get-AvailableVMDisks, Get-VMDisk # Download a virtual machine's disk

# Owner
$ Set-Role -Role Contributor -User test@contoso.com -Resource Win10VMTest

# Administrator
$ Create-Backdoor, Execute-Backdoor
HackTricks рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ

Last updated