diff --git a/src/README.md b/src/README.md index 3734a5ff1..b7f2801ea 100644 --- a/src/README.md +++ b/src/README.md @@ -9,7 +9,7 @@ _Hacktricks-Logos & Motion Design von_ [_@ppiernacho_](https://www.instagram.com # Download latest version of hacktricks git clone https://github.com/HackTricks-wiki/hacktricks # Run the docker container indicating the path to the hacktricks folder -docker run --rm -p 3337:3000 --name hacktricks -v $(pwd)/hacktricks:/app ghcr.io/hacktricks-wiki/hacktricks-cloud/translator-image bash -c "cd /app && git pull && MDBOOK_PREPROCESSOR__HACKTRICKS__ENV=dev mdbook serve --hostname 0.0.0.0" +docker run -d --rm -p 3337:3000 --name hacktricks -v $(pwd)/hacktricks:/app ghcr.io/hacktricks-wiki/hacktricks-cloud/translator-image bash -c "cd /app && git config --global --add safe.directory /app && git pull && MDBOOK_PREPROCESSOR__HACKTRICKS__ENV=dev mdbook serve --hostname 0.0.0.0" ``` Ihre lokale Kopie von HackTricks wird **unter [http://localhost:3337](http://localhost:3337)** nach <5 Minuten verfügbar sein (es muss das Buch erstellt werden, haben Sie Geduld). @@ -75,7 +75,7 @@ https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktr Treten Sie dem [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) Server bei, um mit erfahrenen Hackern und Bug-Bounty-Jägern zu kommunizieren! - **Hacking-Einblicke:** Engagieren Sie sich mit Inhalten, die in die Aufregung und Herausforderungen des Hackens eintauchen -- **Echtzeit-Hack-Nachrichten:** Bleiben Sie auf dem Laufenden mit der schnelllebigen Hack-Welt durch Echtzeit-Nachrichten und Einblicke +- **Echtzeit-Hack-Nachrichten:** Bleiben Sie auf dem Laufenden über die schnelllebige Welt des Hackens durch Echtzeitnachrichten und Einblicke - **Neueste Ankündigungen:** Bleiben Sie informiert über die neuesten Bug-Bounties und wichtige Plattform-Updates **Treten Sie uns auf** [**Discord**](https://discord.com/invite/N3FrSbmwdy) bei und beginnen Sie noch heute mit der Zusammenarbeit mit Top-Hackern! @@ -88,7 +88,7 @@ Treten Sie dem [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) **Erhalten Sie die Perspektive eines Hackers auf Ihre Webanwendungen, Netzwerke und Cloud** -**Finden und melden Sie kritische, ausnutzbare Schwachstellen mit echtem Geschäftsauswirkungen.** Verwenden Sie unsere 20+ benutzerdefinierten Tools, um die Angriffsfläche zu kartieren, Sicherheitsprobleme zu finden, die Ihnen ermöglichen, Berechtigungen zu eskalieren, und nutzen Sie automatisierte Exploits, um wesentliche Beweise zu sammeln, die Ihre harte Arbeit in überzeugende Berichte verwandeln. +**Finden und melden Sie kritische, ausnutzbare Schwachstellen mit echtem Geschäftswert.** Verwenden Sie unsere 20+ benutzerdefinierten Tools, um die Angriffsfläche zu kartieren, Sicherheitsprobleme zu finden, die Ihnen ermöglichen, Berechtigungen zu eskalieren, und automatisierte Exploits zu verwenden, um wesentliche Beweise zu sammeln, die Ihre harte Arbeit in überzeugende Berichte verwandeln. {{#ref}} https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons @@ -111,7 +111,7 @@ Sie können **hier ein kostenloses Konto erstellen** [**hier**](https://serpapi. --- -### [8kSec Academy – Detaillierte Mobile Security Kurse](https://academy.8ksec.io/) +### [8kSec Academy – Detaillierte Mobile Security-Kurse](https://academy.8ksec.io/)
@@ -127,7 +127,7 @@ https://academy.8ksec.io/
-[**WebSec**](https://websec.nl) ist ein professionelles Cybersicherheitsunternehmen mit Sitz in **Amsterdam**, das **Unternehmen auf der ganzen Welt** hilft, sich gegen die neuesten Bedrohungen der Cybersicherheit zu schützen, indem es **offensive Sicherheitsdienste** mit einem **modernen** Ansatz anbietet. +[**WebSec**](https://websec.nl) ist ein professionelles Cybersicherheitsunternehmen mit Sitz in **Amsterdam**, das **Unternehmen auf der ganzen Welt** dabei hilft, sich gegen die neuesten Bedrohungen der Cybersicherheit zu **schützen**, indem es **offensive Sicherheitsdienste** mit einem **modernen** Ansatz anbietet. WebSec ist ein **All-in-One-Sicherheitsunternehmen**, was bedeutet, dass sie alles anbieten; Pentesting, **Sicherheits**-Audits, Awareness-Trainings, Phishing-Kampagnen, Code-Überprüfungen, Exploit-Entwicklung, Outsourcing von Sicherheitsexperten und vieles mehr. diff --git a/src/network-services-pentesting/pentesting-ldap.md b/src/network-services-pentesting/pentesting-ldap.md index 4eedb488f..4c937fc75 100644 --- a/src/network-services-pentesting/pentesting-ldap.md +++ b/src/network-services-pentesting/pentesting-ldap.md @@ -2,11 +2,11 @@ {{#include ../banners/hacktricks-training.md}} -Die Verwendung von **LDAP** (Lightweight Directory Access Protocol) dient hauptsächlich der Lokalisierung verschiedener Entitäten wie Organisationen, Einzelpersonen und Ressourcen wie Dateien und Geräte innerhalb von Netzwerken, sowohl öffentlich als auch privat. Es bietet einen optimierten Ansatz im Vergleich zu seinem Vorgänger, DAP, indem es einen kleineren Code-Footprint hat. +Die Verwendung von **LDAP** (Lightweight Directory Access Protocol) dient hauptsächlich der Lokalisierung verschiedener Entitäten wie Organisationen, Einzelpersonen und Ressourcen wie Dateien und Geräte innerhalb von Netzwerken, sowohl öffentlich als auch privat. Es bietet einen optimierten Ansatz im Vergleich zu seinem Vorgänger, DAP, da es einen kleineren Code-Footprint hat. LDAP-Verzeichnisse sind so strukturiert, dass sie über mehrere Server verteilt werden können, wobei jeder Server eine **replizierte** und **synchronisierte** Version des Verzeichnisses beherbergt, die als Directory System Agent (DSA) bezeichnet wird. Die Verantwortung für die Bearbeitung von Anfragen liegt vollständig beim LDAP-Server, der bei Bedarf mit anderen DSAs kommunizieren kann, um eine einheitliche Antwort an den Anforderer zu liefern. -Die Organisation des LDAP-Verzeichnisses ähnelt einer **Baumhierarchie, die mit dem Stammverzeichnis an der Spitze beginnt**. Dies verzweigt sich zu Ländern, die weiter in Organisationen unterteilt werden, und dann in organisatorische Einheiten, die verschiedene Abteilungen oder Bereiche repräsentieren, bis hin zur Ebene der einzelnen Entitäten, einschließlich sowohl Personen als auch gemeinsam genutzten Ressourcen wie Dateien und Druckern. +Die Organisation des LDAP-Verzeichnisses ähnelt einer **Baumhierarchie, die mit dem Wurzelverzeichnis an der Spitze beginnt**. Diese verzweigt sich zu Ländern, die weiter in Organisationen unterteilt werden, und dann in organisatorische Einheiten, die verschiedene Abteilungen oder Bereiche repräsentieren, bis hin zur Ebene der einzelnen Entitäten, einschließlich sowohl Personen als auch gemeinsam genutzten Ressourcen wie Dateien und Druckern. **Standardport:** 389 und 636(ldaps). Der Globale Katalog (LDAP in ActiveDirectory) ist standardmäßig auf den Ports 3268 und 3269 für LDAPS verfügbar. ``` @@ -45,14 +45,14 @@ ou: mail: pepe@hacktricks.xyz phone: 23627387495 ``` -- Zeilen 1-3 definieren die oberste Domäne local -- Zeilen 5-8 definieren die erste Ebene der Domäne moneycorp (moneycorp.local) +- Zeilen 1-3 definieren die Top-Level-Domain local +- Zeilen 5-8 definieren die First-Level-Domain moneycorp (moneycorp.local) - Zeilen 10-16 definieren 2 organisatorische Einheiten: dev und sales -- Zeilen 18-26 erstellen ein Objekt der Domäne und weisen Attribute mit Werten zu +- Zeilen 18-26 erstellen ein Objekt der Domain und weisen Attribute mit Werten zu ## Daten schreiben -Beachten Sie, dass Sie, wenn Sie Werte ändern können, wirklich interessante Aktionen durchführen könnten. Stellen Sie sich vor, dass Sie **die "sshPublicKey"-Informationen** Ihres Benutzers oder eines beliebigen Benutzers ändern können. Es ist sehr wahrscheinlich, dass, wenn dieses Attribut existiert, **ssh die öffentlichen Schlüssel von LDAP liest**. Wenn Sie den öffentlichen Schlüssel eines Benutzers ändern können, **werden Sie sich als dieser Benutzer anmelden können, selbst wenn die Passwortauthentifizierung in ssh nicht aktiviert ist**. +Beachten Sie, dass Sie, wenn Sie Werte ändern können, wirklich interessante Aktionen durchführen könnten. Stellen Sie sich zum Beispiel vor, dass Sie **die "sshPublicKey"-Informationen** Ihres Benutzers oder eines beliebigen Benutzers ändern können. Es ist sehr wahrscheinlich, dass, wenn dieses Attribut existiert, **ssh die öffentlichen Schlüssel aus LDAP liest**. Wenn Sie den öffentlichen Schlüssel eines Benutzers ändern können, **werden Sie sich als dieser Benutzer anmelden können, selbst wenn die Passwortauthentifizierung in ssh nicht aktiviert ist**. ```bash # Example from https://www.n00py.io/2020/02/exploiting-ldap-server-null-bind/ >>> import ldap3 @@ -76,20 +76,20 @@ Außerdem können Sie einen **MITM**-Angriff im Netzwerk **zwischen dem LDAP-Ser ### Bypass TLS SNI check -Laut [**diesem Bericht**](https://swarm.ptsecurity.com/exploiting-arbitrary-object-instantiations/) konnte er, nur durch den Zugriff auf den LDAP-Server mit einem beliebigen Domänennamen (wie company.com), den LDAP-Dienst kontaktieren und Informationen als anonymer Benutzer extrahieren: +Laut [**diesem Bericht**](https://swarm.ptsecurity.com/exploiting-arbitrary-object-instantiations/) konnte er, nur durch den Zugriff auf den LDAP-Server mit einem beliebigen Domainnamen (wie company.com), den LDAP-Dienst kontaktieren und Informationen als anonymer Benutzer extrahieren: ```bash ldapsearch -H ldaps://company.com:636/ -x -s base -b '' "(objectClass=*)" "*" + ``` ### LDAP anonyme Bindings -[LDAP anonyme Bindings](https://docs.microsoft.com/en-us/troubleshoot/windows-server/identity/anonymous-ldap-operations-active-directory-disabled) ermöglichen **unauthentifizierten Angreifern**, Informationen aus der Domäne abzurufen, wie z.B. eine vollständige Liste von Benutzern, Gruppen, Computern, Benutzerkontenattributen und der Passwortrichtlinie der Domäne. Dies ist eine **veraltete Konfiguration**, und seit Windows Server 2003 dürfen nur authentifizierte Benutzer LDAP-Anfragen initiieren.\ +[LDAP anonyme Bindings](https://docs.microsoft.com/en-us/troubleshoot/windows-server/identity/anonymous-ldap-operations-active-directory-disabled) ermöglichen **unauthentifizierten Angreifern**, Informationen aus der Domäne abzurufen, wie z.B. eine vollständige Liste von Benutzern, Gruppen, Computern, Benutzerkontenattributen und der Domänenpasswortrichtlinie. Dies ist eine **veraltete Konfiguration**, und seit Windows Server 2003 dürfen nur authentifizierte Benutzer LDAP-Anfragen initiieren.\ Allerdings mussten Administratoren möglicherweise **eine bestimmte Anwendung einrichten, um anonyme Bindings zuzulassen** und haben mehr Zugriff gewährt als beabsichtigt, wodurch unauthentifizierte Benutzer Zugriff auf alle Objekte in AD erhalten. ## Gültige Anmeldeinformationen -Wenn Sie gültige Anmeldeinformationen zum Anmelden am LDAP-Server haben, können Sie alle Informationen über den Domain-Admin mit: +Wenn Sie gültige Anmeldeinformationen zum Anmelden am LDAP-Server haben, können Sie alle Informationen über den Domänenadministrator mit: -[ldapdomaindump](https://github.com/dirkjanm/ldapdomaindump) dumpen. +[ldapdomaindump](https://github.com/dirkjanm/ldapdomaindump) abdumpen. ```bash pip3 install ldapdomaindump ldapdomaindump [-r ] -u '\' -p '' [--authtype SIMPLE] --no-json --no-grep [-o /path/dir] @@ -121,7 +121,7 @@ Versuchen Sie zuerst, sich **ohne** Anmeldeinformationen zu verbinden: True >>> server.info ``` -Wenn die Antwort `True` ist, wie im vorherigen Beispiel, können Sie einige **interessante Daten** des LDAP (wie den **Namenskontext** oder **Domänennamen**) Servers von erhalten: +Wenn die Antwort `True` ist, wie im vorherigen Beispiel, können Sie einige **interessante Daten** des LDAP (wie den **Namenskontext** oder **Domänennamen**) Servers von: ```bash >>> server.info DSA info (from DSE): @@ -205,11 +205,11 @@ ldapsearch -x -H ldap:// -D '\' -w '' -b "CN=Dom ```bash ldapsearch -x -H ldap:// -D '\' -w '' -b "CN=Domain Users,CN=Users,DC=<1_SUBDOMAIN>,DC=" ``` -**Enterprise Admins**: +**Enterprise Admins** extrahieren: ```bash ldapsearch -x -H ldap:// -D '\' -w '' -b "CN=Enterprise Admins,CN=Users,DC=<1_SUBDOMAIN>,DC=" ``` -Extrahieren **Administratoren**: +**Administratoren**: ```bash ldapsearch -x -H ldap:// -D '\' -w '' -b "CN=Administrators,CN=Builtin,DC=<1_SUBDOMAIN>,DC=" ``` @@ -274,7 +274,7 @@ done ### Apache Directory -[**Laden Sie Apache Directory hier herunter**](https://directory.apache.org/studio/download/download-linux.html). Sie finden ein [Beispiel, wie man dieses Tool verwendet, hier](https://www.youtube.com/watch?v=VofMBg2VLnw&t=3840s). +[**Laden Sie Apache Directory hier herunter**](https://directory.apache.org/studio/download/download-linux.html). Sie finden ein [Beispiel, wie Sie dieses Tool verwenden können, hier](https://www.youtube.com/watch?v=VofMBg2VLnw&t=3840s). ### jxplorer @@ -286,7 +286,7 @@ Standardmäßig wird es installiert in: _/opt/jxplorer_ ### Godap -Godap ist eine interaktive Terminalbenutzeroberfläche für LDAP, die verwendet werden kann, um mit Objekten und Attributen in AD und anderen LDAP-Servern zu interagieren. Es ist für Windows, Linux und MacOS verfügbar und unterstützt einfache Bindungen, Pass-the-Hash, Pass-the-Ticket & Pass-the-Cert, zusammen mit mehreren anderen spezialisierten Funktionen wie Suchen/Erstellen/Ändern/Löschen von Objekten, Hinzufügen/Entfernen von Benutzern aus Gruppen, Ändern von Passwörtern, Bearbeiten von Objektberechtigungen (DACLs), Modifizieren von Active-Directory-Integrated DNS (ADIDNS), Exportieren in JSON-Dateien usw. +Godap ist eine interaktive Terminalbenutzeroberfläche für LDAP, die verwendet werden kann, um mit Objekten und Attributen in AD und anderen LDAP-Servern zu interagieren. Es ist für Windows, Linux und MacOS verfügbar und unterstützt einfache Bindungen, Pass-the-Hash, Pass-the-Ticket & Pass-the-Cert sowie mehrere andere spezialisierte Funktionen wie das Suchen/Erstellen/Ändern/Löschen von Objekten, das Hinzufügen/Entfernen von Benutzern aus Gruppen, das Ändern von Passwörtern, das Bearbeiten von Objektberechtigungen (DACLs), das Modifizieren von Active-Directory Integrated DNS (ADIDNS), das Exportieren in JSON-Dateien usw. ![](../images/godap.png) @@ -310,7 +310,7 @@ Wenn Sie auf die Dateien zugreifen können, in denen die Datenbanken enthalten s ```bash cat /var/lib/ldap/*.bdb | grep -i -a -E -o "description.*" | sort | uniq -u ``` -Sie können John mit dem Passwort-Hash (von '{SSHA}' bis 'structural' ohne 'structural' hinzuzufügen) füttern. +Sie können John mit dem Passwort-Hash (von '{SSHA}' bis 'structural', ohne 'structural' hinzuzufügen) füttern. ### Konfigurationsdateien @@ -373,5 +373,9 @@ Entry_6: Name: Hydra Brute Force Description: Need User Command: hydra -l {Username} -P {Big_Passwordlist} {IP} ldap2 -V -f + +Entry_7: +Name: Netexec LDAP BloodHound +Command: nxc ldap -u -p --bloodhound -c All -d --dns-server --dns-tcp ``` {{#include ../banners/hacktricks-training.md}}