<summary><strong>Lernen Sie AWS-Hacking von Null auf Held mit</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Wenn Sie Ihr **Unternehmen in HackTricks beworben sehen möchten** oder **HackTricks im PDF-Format herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) Github-Repositories einreichen.
Das _**Network Basic Input Output System**_** (NetBIOS)** ist ein Softwareprotokoll, das entwickelt wurde, um Anwendungen, PCs und Desktops innerhalb eines lokalen Netzwerks (LAN) zu ermöglichen, mit Netzwerkhardware zu interagieren und **die Übertragung von Daten im Netzwerk zu erleichtern**. Die Identifizierung und Lokalisierung von Softwareanwendungen, die in einem NetBIOS-Netzwerk betrieben werden, erfolgen über ihre NetBIOS-Namen, die bis zu 16 Zeichen lang sein können und oft vom Computernamen abweichen. Eine NetBIOS-Sitzung zwischen zwei Anwendungen wird initiiert, wenn eine Anwendung (als Client fungierend) einen Befehl zum "Aufrufen" einer anderen Anwendung (als Server fungierend) unter Verwendung von **TCP-Port 139** ausgibt.
Technisch gesehen wird Port 139 als "NBT über IP" bezeichnet, während Port 445 als "SMB über IP" identifiziert wird. Das Akronym **SMB** steht für "Server Message Blocks", das auch modern als **Common Internet File System (CIFS)** bekannt ist. Als Anwendungs-Layer-Netzwerkprotokoll wird SMB/CIFS hauptsächlich genutzt, um den gemeinsamen Zugriff auf Dateien, Drucker, serielle Anschlüsse zu ermöglichen und verschiedene Formen der Kommunikation zwischen Knoten in einem Netzwerk zu erleichtern.
Zum Beispiel wird im Zusammenhang mit Windows hervorgehoben, dass SMB direkt über TCP/IP betrieben werden kann, was die Notwendigkeit von NetBIOS über TCP/IP durch die Verwendung von Port 445 beseitigt. Andererseits wird auf verschiedenen Systemen die Verwendung von Port 139 beobachtet, was darauf hinweist, dass SMB in Verbindung mit NetBIOS über TCP/IP ausgeführt wird.
Das **Server Message Block (SMB)**-Protokoll, das in einem **Client-Server**-Modell arbeitet, ist darauf ausgelegt, den **Zugriff auf Dateien**, Verzeichnisse und andere Netzwerkressourcen wie Drucker und Router zu regeln. Hauptsächlich innerhalb der **Windows**-Betriebssystemreihe genutzt, gewährleistet SMB Abwärtskompatibilität, sodass Geräte mit neueren Versionen des Microsoft-Betriebssystems nahtlos mit solchen interagieren können, die ältere Versionen ausführen. Darüber hinaus bietet das **Samba**-Projekt eine kostenlose Softwarelösung, die die Implementierung von SMB auf **Linux**- und Unix-Systemen ermöglicht und so die plattformübergreifende Kommunikation durch SMB erleichtert.
Shares, die **beliebige Teile des lokalen Dateisystems** darstellen, können von einem SMB-Server bereitgestellt werden, wodurch die Hierarchie für einen Client teilweise **unabhängig** von der tatsächlichen Struktur des Servers sichtbar wird. Die **Zugriffssteuerungslisten (ACLs)**, die **Zugriffsrechte** definieren, ermöglichen eine **fein abgestimmte Kontrolle** über Benutzerberechtigungen, einschließlich Attribute wie **`ausführen`**, **`lesen`** und **`voller Zugriff`**. Diese Berechtigungen können einzelnen Benutzern oder Gruppen basierend auf den Shares zugewiesen werden und unterscheiden sich von den lokalen Berechtigungen, die auf dem Server festgelegt sind.
Der Zugriff auf den IPC$-Share kann über eine anonyme Nullsitzung erlangt werden, was die Interaktion mit über benannte Pipes freigegebenen Diensten ermöglicht. Das Dienstprogramm `enum4linux` ist für diesen Zweck nützlich. Wenn es ordnungsgemäß verwendet wird, ermöglicht es den Erwerb von:
Diese Funktionalität ist entscheidend für Netzwerkadministratoren und Sicherheitsfachleute, um die Sicherheitslage der SMB (Server Message Block)-Dienste in einem Netzwerk zu bewerten. `enum4linux` bietet einen umfassenden Überblick über die SMB-Umgebung des Zielsystems, der entscheidend ist, um potenzielle Schwachstellen zu identifizieren und sicherzustellen, dass die SMB-Dienste ordnungsgemäß gesichert sind.
Die obige Befehl ist ein Beispiel dafür, wie `enum4linux` verwendet werden könnte, um eine vollständige Aufzählung gegen ein Ziel durchzuführen, das durch `target_ip` angegeben ist.
Wenn Sie nicht wissen, was NTLM ist, oder wenn Sie wissen möchten, wie es funktioniert und wie Sie es missbrauchen können, finden Sie diese Seite über **NTLM** sehr interessant, auf der erklärt wird, **wie dieses Protokoll funktioniert und wie Sie es ausnutzen können:**
Um nach möglichen Exploits für die SMB-Version zu suchen, ist es wichtig zu wissen, welche Version verwendet wird. Wenn diese Information in anderen verwendeten Tools nicht angezeigt wird, können Sie:
Es wird immer empfohlen zu prüfen, ob auf etwas zugegriffen werden kann. Wenn Sie keine Anmeldeinformationen haben, versuchen Sie es mit **nullen Anmeldeinformationen/gast Benutzer**.
Es ist möglich, dass Sie eingeschränkt sind, um Freigaben des Hostcomputers anzuzeigen, und wenn Sie versuchen, sie aufzulisten, scheint es, als gäbe es keine Freigaben, zu denen Sie eine Verbindung herstellen können. Daher könnte es sich lohnen, manuell eine Verbindung zu einer Freigabe herzustellen. Um die Freigaben manuell aufzulisten, sollten Sie nach Antworten wie NT\_STATUS\_ACCESS\_DENIED und NT\_STATUS\_BAD\_NETWORK\_NAME suchen, wenn Sie eine gültige Sitzung verwenden (z. B. eine Nullsitzung oder gültige Anmeldeinformationen). Diese können darauf hinweisen, ob die Freigabe existiert und Sie keinen Zugriff darauf haben oder ob die Freigabe überhaupt nicht existiert.
Besonders interessant sind die Dateien namens **`Registry.xml`**, da sie **Passwörter** für Benutzer enthalten können, die über Gruppenrichtlinien mit **Autologon** konfiguriert sind. Oder **`web.config`**-Dateien, da sie Anmeldeinformationen enthalten.
Der **SYSVOL-Share** ist von allen authentifizierten Benutzern in der Domäne **lesbar**. Dort finden Sie viele verschiedene Batch-, VBScript- und PowerShell-**Skripte**.\
Sie sollten die **Skripte** darin überprüfen, da Sie möglicherweise sensible Informationen wie **Passwörter** finden könnten.
Die **Standardkonfiguration** eines **Samba-Servers** befindet sich normalerweise in `/etc/samba/smb.conf` und kann einige **gefährliche Konfigurationen** enthalten:
crackmapexec kann Befehle unter Ausnutzung von **mmcexec, smbexec, atexec, wmiexec** ausführen, wobei **wmiexec** die **Standard**methode ist. Sie können angeben, welche Option Sie mit dem Parameter `--exec-method` bevorzugen möchten:
Beide Optionen werden einen neuen Dienst erstellen (unter Verwendung von _\pipe\svcctl_ über SMB) auf dem Opferrechner und ihn verwenden, um etwas auszuführen (**psexec** wird eine ausführbare Datei auf den ADMIN$-Freigabe hochladen und **smbexec** wird auf **cmd.exe/powershell.exe** verweisen und im Argument das Payload --**file-less technique-**-- einfügen).\
Dieser Angriff verwendet das Responder-Toolkit, um **SMB-Authentifizierungssitzungen** in einem internen Netzwerk zu **erfassen** und sie an eine **Zielmaschine weiterzuleiten**. Wenn die Authentifizierungssitzung **erfolgreich ist**, gelangen Sie automatisch in eine **System**-**Shell**.\
[**Weitere Informationen zu diesem Angriff hier.**](../generic-methodologies-and-resources/pentesting-network/spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md)
Die Windows-Bibliothek URLMon.dll versucht automatisch, sich beim Host zu authentifizieren, wenn eine Seite versucht, auf einige Inhalte über SMB zuzugreifen, z. B.: `img src="\\10.10.10.10\path\image.jpg"`
Ähnlich wie bei der SMB-Falle kann das Platzieren bösartiger Dateien auf einem Zielsystem (z. B. über SMB) einen SMB-Authentifizierungsversuch auslösen, der es ermöglicht, den NetNTLMv2-Hash mit einem Tool wie Responder abzufangen. Der Hash kann dann offline geknackt oder in einem [SMB-Weiterleitungsangriff](pentesting-smb.md#smb-relay-attack) verwendet werden.
While Port 139 is known technically as ‘NBT over IP’, Port 445 is ‘SMB over IP’. SMB stands for ‘Server Message Blocks’. Server Message Block in modern language is also known as Common Internet File System. The system operates as an application-layer network protocol primarily used for offering shared access to files, printers, serial ports, and other sorts of communications between nodes on a network.
#These are the commands I run in order every time I see an open SMB port
With No Creds
nbtscan {IP}
smbmap -H {IP}
smbmap -H {IP} -u null -p null
smbmap -H {IP} -u guest
smbclient -N -L //{IP}
smbclient -N //{IP}/ --option="client min protocol"=LANMAN1
<summary><strong>Erlernen Sie AWS-Hacking von Null auf Held mit</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Wenn Sie Ihr **Unternehmen in HackTricks beworben sehen möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github Repositories einreichen.