SMB
Die wichtigsten Befehle zum Merken
smbclient -L SERVER— sichtbare Freigaben auflisten.smbclient //SERVER/FREIGABE -c 'ls'— das Verzeichnis einer Freigabe untersuchen.
Befehle und Optionen
| Befehl oder Option | Bedeutung |
|---|---|
-L localhost |
Freigabeliste des lokalen Servers anfordern. |
//localhost/lab |
Die Freigabe lab auf diesem Server adressieren. |
-U student |
Testbenutzer verwenden; Passwort an der Aufforderung eingeben. |
--client-protection=encrypt |
Eine verschlüsselte SMB-Verbindung verlangen. |
-c 'ls' |
Den Verzeichnisbefehl von smbclient ausführen und beenden. |
Das zitierte ls verarbeitet smbclient, nicht die lokale Shell. Das Passwort steht nicht in der Befehlszeile. Beide Aufrufe können getrennt danach fragen.
Die entscheidenden Konzepte
1. Eine Freigabe ist ein exportierter Namensraum
SMB bietet Dateizugriff über das Netzwerk. Ein Server stellt benannte Freigaben bereit; Clients adressieren Dateien darunter. Der Freigabename ist ein gewählter Einstieg und nicht zwingend der tatsächliche Diskpfad.
SMB kann mehr als vollständige Dateien herunterladen: Dateien öffnen, Bereiche lesen oder schreiben, Metadaten untersuchen und Zugriffe koordinieren. Deshalb verhält sich eine Freigabe anders als eine Website mit denselben Bytes.
2. Authentifizierung und Dateizugriff sind getrennte Entscheidungen
Ein Client baut eine authentifizierte Sitzung auf, abhängig von der Umgebung häufig mit Kerberos oder NTLM. Anschließend prüft der Server Rechte auf Freigabe und angeforderte Dateien.
Erfolgreiche Anmeldung erlaubt nicht automatisch jede Verzeichnisliste oder Schreiboperation. Freigaberegeln und darunterliegende Dateirechte können gemeinsam wirken. Untersuche die konkrete fehlgeschlagene Operation, statt jeden Zugriffsfehler für ein falsches Passwort zu halten.
3. Gemeinsamer Zugriff braucht Koordination
Mehrere Clients können dieselbe Datei öffnen. SMB bietet unter anderem Sperren und Leases zur Koordination von Zugriff und Caching. Das begrenzt Konflikte und ermöglicht dennoch effiziente Zugriffe.
Diese Mechanismen machen nicht jedes Dateiformat zur sicheren Mehrbenutzerdatenbank. Anwendungen brauchen passende Zugriffsmuster. Nach Verbindungsabbruch kann zudem unklar sein, welche Schreibvorgänge abgeschlossen wurden; Anwendung und Protokollwiederherstellung spielen beide eine Rolle.
4. Signierung und Verschlüsselung schützen unterschiedliche Eigenschaften
Signierung schützt Integrität und Authentizität der SMB-Nachrichten unter den Sitzungsschlüsseln. Verschlüsselung verbirgt zusätzlich die Inhalte auf der Verbindung. Beides verändert keine Dateirechte des Kontos.
Ausgehandelter SMB-Dialekt und Richtlinien bestimmen die verfügbare Absicherung. Auch eine verschlüsselte Sitzung kann eine unerlaubte Operation transportieren. Ein erlaubter Lesezugriff beweist umgekehrt nicht, dass Verschlüsselung verlangt wurde.
Ein kleines Beispiel
Optional: Nutze den vorhandenen Testserver und das Testkonto. Gib dessen Passwort nur an der Eingabeaufforderung ein. Das Beispiel verlangt Verschlüsselung ausdrücklich.
smbclient -L localhost -U student --client-protection=encrypt
smbclient //localhost/lab -U student --client-protection=encrypt -c 'ls'
Vergleiche die Freigaben der ersten Ausgabe mit dem Ziel lab. Die Verzeichnisliste kann Namen, Attribute, Bytegrößen und Zeitstempel enthalten. Werte hängen vom Testinhalt ab; auch eine leere Freigabe kann erfolgreich gelesen worden sein.
Einige Server verbieten Aufzählung, erlauben aber direkten Zugriff auf bekannte Freigaben. Fehlgeschlagene Verschlüsselungsaushandlung und verweigerter Zugriff sind verschiedene Befunde. Die Befehle mounten nichts, erzeugen keine Dateien und beweisen keine gleichzeitige Sperrkoordination.
Merke dir: SMB ermöglicht authentifizierten Dateizugriff auf Freigaben. Rechte, Koordination und Transportschutz bleiben getrennte Aufgaben.