
Enumerazione utenti e attacco di forza bruta sulle password su Azure, ADFS, OWA, O365, Teams e raccolta di email su Linkedin
Questo progetto è stato originariamente scritto per imparare Golang ed esplorare i diversi metodi che ho incontrato durante i penetration test per enumerare o forzare gli utenti e metterli insieme. Se riscontri errori, sentiti libero di aprire una issue e farò del mio meglio per risolverli o migliorare gli strumenti.
Niente di nuovo, ma le tecniche esistenti sono riunite in un unico strumento.
Gli screenshot sottostanti non sono aggiornati e la riga di comando è cambiata
Il modulo consigliato è o365 per l'enumerazione degli utenti e il brute force / spray delle password. Possono essere recuperate informazioni aggiuntive per evitare il blocco dell'account, sapere che la password è corretta ma scaduta, MFA abilitato,...
Questo modulo dovrebbe essere utilizzato per recuperare un elenco di indirizzi email prima di validarli tramite un modulo di enumerazione utenti. L'azienda verrà cercata su Linkedin e tutte le persone che lavorano in queste aziende verranno restituite nel formato specificato.
Nota che nessun profilo verrà visualizzato e quindi l'utente non riceverà alcuna notifica.
I cookie di sessione di Linkedin li_at e JSESSIONID sono richiesti.

Questo modulo dovrebbe essere utilizzato per recuperare un elenco di indirizzi email prima di validarli tramite un modulo di enumerazione utenti.
Il nome dell'azienda verrà cercato su Google e Bing con un dork per trovare persone che lavorano nell'azienda (site:linkedin.com/in+"%s"). I titoli dei risultati verranno analizzati per produrre indirizzi email nel formato specificato.

Il modulo Azure è disponibile solo per enumerare gli utenti di un tenant. La richiesta di autenticazione verrà effettuata su https://autologon.microsoftazuread-sso.com, una risposta dettagliata mostra se l'account non esiste, se è richiesto un MFA, se l'account è bloccato, ...

Il modulo ADFS è disponibile solo per forzare o sprayare una password. La richiesta di autenticazione viene inviata a https://<target>/adfs/ls/idpinitiatedsignon.aspx?client-request-id=<randomGUID>&pullStatus=0. Un messaggio di errore può informare l'utente se la password è scaduta.

Questo modulo permette di enumerare gli utenti e di forzare / sprayare le password.
Sono disponibili diverse modalità: office, oauth2 e onedrive (non ancora implementata). La modalità office è consigliata poiché non richiede autenticazione. Oauth2 può recuperare informazioni aggiuntive tramite il codice di errore AADSTS (MFA abilitato, account bloccato, account disabilitato).

Come per l'enumerazione utenti, sono disponibili due modalità: oauth2 e autodiscover (non ancora implementata). Oauth2 è la modalità consigliata, permette di ottenere molte informazioni grazie al codice di errore AADSTS.

Questo modulo permette di enumerare gli utenti e di forzare / sprayare le password. Attualmente sono supportati l'autenticazione NTLM e quella di base.
L'enumerazione viene effettuata con richieste di autenticazione. L'autenticazione per un utente inesistente richiederà più tempo rispetto a un utente valido. Inizialmente, verrà calcolato il tempo medio di risposta per un utente non valido e poi il tempo di risposta per ogni richiesta di autenticazione verrà confrontato.

Si noti che non può essere implementato alcun meccanismo di blocco dell'account perché non vengono restituite informazioni al riguardo.

Questo modulo permette di enumerare gli utenti attraverso le funzionalità di ricerca.
Per impostazione predefinita, un'organizzazione è raggiungibile da un'altra organizzazione. Possono essere recuperate informazioni come nome, cognome, stato di presenza, messaggio di assenza,.... Se non viene inviato alcun messaggio, l'utente target non saprà di essere stato cercato. Questo può essere utile per validare in modo furtivo un elenco di indirizzi email target, rilevare utenti in ferie,...

I server SMTP possono essere vulnerabili a una debolezza di enumerazione degli utenti. Tre diverse tecniche consentono l'enumerazione degli utenti. Le parole chiave RCPT TO, VRFY e EXPN. Questo modulo trova il MX per il dominio specificato e per impostazione predefinita testerà i tre metodi per trovare utenti validi.
