
Audita le configurazioni di Azure AD e Exchange Online per individuare autorizzazioni difficili da trovare, trust di federazione, regole di inoltro della posta e accesso delegato, per aiutare le organizzazioni a proteggere i propri ambienti cloud.
Questo strumento interroga le seguenti configurazioni nel tenant Azure AD/O365 che possono far luce su autorizzazioni e impostazioni di configurazione difficili da trovare per assistere le organizzazioni nella protezione di questi ambienti.
Exchange Online (O365):
Azure AD:
Interrogazione delle Informazioni sul Partner del Tenant: Per visualizzare le Informazioni sul Partner del Tenant, inclusi i ruoli assegnati ai tuoi partner, devi accedere al Centro di Amministrazione Microsoft 365 come Amministratore Globale:
https://admin.microsoft.com/AdminPortal/Home#/partners
I seguenti moduli PowerShell sono richiesti e verranno installati automaticamente:
NOTA: Per restituire l'intera estensione delle configurazioni interrogate, è richiesto il seguente ruolo:
Quando i privilegi di Amministratore Globale non sono disponibili, lo strumento ti avviserà su quali informazioni non saranno disponibili di conseguenza.
Nessun parametro specificato: Una cartella denominata con data e ora (YYYYDDMMTHHMM) verrà creata automaticamente nella directory da cui viene eseguito lo script. Il metodo di autenticazione predefinito richiederà una richiesta per ogni connessione per compatibilità con MFA.
.\Get-CRTReport.ps1
Parametro -BasicAuth:
[OPZIONALE] Se MFA non è applicata per il tuo utente principale, puoi utilizzare questo parametro che richiederà l'autenticazione una sola volta e memorizzerà le credenziali usando Get-Credential. (Non Consigliato)
.\Get-CRTReport.ps1 -BasicAuth
Parametro -JobName:
[OPZIONALE] Usa il parametro JobName per distinguere tra diversi tenant. Se non viene specificato alcun JobName, una cartella formattata con Data/Ora verrà posizionata nella directory di lavoro.
.\Get-CRTReport.ps1 -JobName MyJobName
Parametro -WorkingDirectory:
[OPZIONALE] Se vuoi specificare una directory di lavoro diversa per i tuoi job, puoi farlo con questo parametro. La directory di lavoro predefinita è la directory da cui viene eseguito lo script.
.\Get-CRTReport.ps1 -JobName MyJobName -WorkingDirectory 'C:\Path\to\Job\Folder'
Parametro -Commands:
[OPZIONALE] Con questo parametro, specifica i comandi specifici che vuoi eseguire tra virgolette, separati da virgola o spazio.
.\Get-CRTReport.ps1 -JobName MyJobName -WorkingDirectory 'C:\Path\to\Job\Folder' -Commands "Command1,Command2"
Parametro -AzureEnvironmentName & -ExchangeEnvironmentName:
[OPZIONALE] Con questo parametro, specifica i nomi degli ambienti Azure o Exchange. Usando il completamento con tab puoi cercare i valori accettabili.
.\Get-CRTReport.ps1 -ExchangeEnvironmentName O365USGovGCCHigh -AzureEnvironmentName AzureUSGovernment
Comandi Disponibili:
FedConfig
FedTrust
ClientAccess
RemoteDomains
SMTPForward
TransportRules
FullAccessGranted
AnyAccessGranted
SendAsGranted
EXOPowerShell
AuditBypassEnabled
HiddenMailboxes
KeyCredentials
O365AdminGroups
DelegateAppPerms
AdminAuditLogConfig
Parametro -Interactive:
[OPZIONALE] Alcuni comandi potrebbero richiedere molto tempo per essere elaborati a seconda della quantità di dati nel tenant. Usando il parametro Interactive, avrai la possibilità di saltare qualsiasi comando particolare prima che il modulo venga eseguito.
.\Get-CRTReport.ps1 -JobName MyJobName -WorkingDirectory 'C:\Path\to\Job\Folder' -Interactive
Ad ogni esecuzione, CRT produrrà un report per ogni query in formato json così come in formati più leggibili, .TXT e .CSV:
Nessun parametro specificato: Una cartella denominata con data e ora (YYYYDDMMTHHMM) verrà creata automaticamente nella directory da cui viene eseguito lo script. Per supportare MFA, il metodo di autenticazione predefinito richiederà all'utente di effettuare l'accesso per ogni connessione.
YYYYDDMMTHHMM\output.log (copia fisica del log della console)YYYYDDMMTHHMM\_CRTReportSummary.txt (Riepilogo degli script eseguiti e suggerimenti investigativi per orientamento)YYYYDDMMTHHMM\Reports\<report>.csv (Report in output CSV, dove applicabile)YYYYDDMMTHHMM\Reports\<report>.txt (Report in output TXT, dove applicabile)YYYYDDMMTHHMM\Reports\json\<report>.json (Ogni report è accompagnato da un output JSON per maggiore verbosità)Get-EXOMailbox -ResultSize Unlimited | Get-EXOMailboxPermission | Where-Object { ($_.IsInherited -eq $false) -and -not ($_.User -like "NT AUTHORITY\SELF")} | Export-Csv "AnyAssignedPerms.csv" -NoTypeInformation -Encoding Default
Get-EXOMailbox -ResultSize Unlimited | Get-EXOMailboxPermission | Where-Object { ($_.AccessRights -eq "FullAccess") -and ($_.IsInherited -eq $false) -and -not ($_.User -like "NT AUTHORITY\SELF")} | Export-Csv "FullAccessPerms.csv" -NoTypeInformation -Encoding Default
Se hai trovato un bug, utilizza la scheda Issues per segnalare un nuovo problema o aggiungere i tuoi commenti a uno esistente.
Se hai raccomandazioni per lo strumento o necessiti di un'escalation critica, invia un'email a: [email protected].