mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
Translated ['src/README.md', 'src/network-services-pentesting/pentesting
This commit is contained in:
parent
840b34269c
commit
0361bb09d1
@ -2,14 +2,14 @@
|
||||
|
||||
<figure><img src="images/hacktricks.gif" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
_Logotypy i projektowanie ruchu Hacktricks autorstwa_ [_@ppiernacho_](https://www.instagram.com/ppieranacho/)_._
|
||||
_Hacktricks loga i projektowanie ruchu autorstwa_ [_@ppiernacho_](https://www.instagram.com/ppieranacho/)_._
|
||||
|
||||
### Uruchom HackTricks lokalnie
|
||||
```bash
|
||||
# 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"
|
||||
```
|
||||
Twoja lokalna kopia HackTricks będzie **dostępna pod adresem [http://localhost:3337](http://localhost:3337)** po <5 minutach (musi zbudować książkę, bądź cierpliwy).
|
||||
|
||||
@ -76,7 +76,7 @@ Dołącz do serwera [**HackenProof Discord**](https://discord.com/invite/N3FrSbm
|
||||
|
||||
- **Wgląd w hacking:** Angażuj się w treści, które zagłębiają się w emocje i wyzwania związane z hackingiem
|
||||
- **Aktualności o hackingu w czasie rzeczywistym:** Bądź na bieżąco z dynamicznym światem hackingu dzięki aktualnym wiadomościom i wglądom
|
||||
- **Najnowsze ogłoszenia:** Bądź na bieżąco z najnowszymi nagrodami bug bounty i istotnymi aktualizacjami platformy
|
||||
- **Najnowsze ogłoszenia:** Bądź na bieżąco z najnowszymi nagrodami bug bounty oraz istotnymi aktualizacjami platformy
|
||||
|
||||
**Dołącz do nas na** [**Discord**](https://discord.com/invite/N3FrSbmwdy) i zacznij współpracować z najlepszymi hakerami już dziś!
|
||||
|
||||
@ -129,7 +129,7 @@ https://academy.8ksec.io/
|
||||
|
||||
[**WebSec**](https://websec.nl) to profesjonalna firma zajmująca się cyberbezpieczeństwem z siedzibą w **Amsterdamie**, która pomaga **chronić** firmy **na całym świecie** przed najnowszymi zagrożeniami w dziedzinie cyberbezpieczeństwa, oferując **usługi ofensywne** z **nowoczesnym** podejściem.
|
||||
|
||||
WebSec to **wszystko w jednym** firma zajmująca się bezpieczeństwem, co oznacza, że robią wszystko; Pentesting, **Audyty** Bezpieczeństwa, Szkolenia w zakresie Świadomości, Kampanie Phishingowe, Przegląd Kodów, Rozwój Exploitów, Outsourcing Ekspertów ds. Bezpieczeństwa i wiele więcej.
|
||||
WebSec to **wszystko w jednym** firma zajmująca się bezpieczeństwem, co oznacza, że robią wszystko; Pentesting, **Audyty** Bezpieczeństwa, Szkolenia w zakresie świadomości, Kampanie Phishingowe, Przegląd Kodów, Rozwój Exploitów, Outsourcing Ekspertów ds. Bezpieczeństwa i wiele więcej.
|
||||
|
||||
Kolejną fajną rzeczą w WebSec jest to, że w przeciwieństwie do średniej w branży, WebSec jest **bardzo pewny swoich umiejętności**, do tego stopnia, że **gwarantują najlepsze wyniki jakościowe**, jak stwierdzają na swojej stronie "**Jeśli nie możemy tego zhakować, nie płacisz!**". Aby uzyskać więcej informacji, zajrzyj na ich [**stronę**](https://websec.nl/en/) i [**blog**](https://websec.nl/blog/)!
|
||||
|
||||
@ -139,7 +139,7 @@ Oprócz powyższego, WebSec jest również **zaangażowanym wsparciem HackTricks
|
||||
https://www.youtube.com/watch?v=Zq2JycGDCPM
|
||||
{{#endref}}
|
||||
|
||||
## Licencja i zastrzeżenie
|
||||
## Licencja i zastrzeżenia
|
||||
|
||||
Sprawdź je w:
|
||||
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
{{#include ../banners/hacktricks-training.md}}
|
||||
|
||||
Użycie **LDAP** (Lightweight Directory Access Protocol) jest głównie przeznaczone do lokalizowania różnych podmiotów, takich jak organizacje, osoby i zasoby, takie jak pliki i urządzenia w sieciach, zarówno publicznych, jak i prywatnych. Oferuje uproszczone podejście w porównaniu do swojego poprzednika, DAP, dzięki mniejszemu rozmiarowi kodu.
|
||||
Użycie **LDAP** (Lightweight Directory Access Protocol) ma na celu głównie lokalizowanie różnych podmiotów, takich jak organizacje, osoby i zasoby, takie jak pliki i urządzenia w sieciach, zarówno publicznych, jak i prywatnych. Oferuje uproszczone podejście w porównaniu do swojego poprzednika, DAP, dzięki mniejszemu rozmiarowi kodu.
|
||||
|
||||
Katalogi LDAP są zorganizowane w sposób umożliwiający ich dystrybucję na kilku serwerach, z każdym serwerem przechowującym **replikowaną** i **zsynchronizowaną** wersję katalogu, nazywaną Directory System Agent (DSA). Odpowiedzialność za obsługę żądań spoczywa całkowicie na serwerze LDAP, który może komunikować się z innymi DSA w razie potrzeby, aby dostarczyć jednolitą odpowiedź do wnioskodawcy.
|
||||
Katalogi LDAP są zorganizowane w sposób umożliwiający ich dystrybucję na kilku serwerach, z których każdy przechowuje **replikowaną** i **zsynchronizowaną** wersję katalogu, nazywaną Agentem Systemu Katalogowego (DSA). Odpowiedzialność za obsługę żądań spoczywa całkowicie na serwerze LDAP, który może komunikować się z innymi DSA w razie potrzeby, aby dostarczyć jednolitą odpowiedź do wnioskodawcy.
|
||||
|
||||
Organizacja katalogu LDAP przypomina **hierarchię drzewiastą, zaczynając od katalogu głównego na górze**. Rozgałęzia się to na kraje, które dzielą się dalej na organizacje, a następnie na jednostki organizacyjne reprezentujące różne działy lub departamenty, aż w końcu osiąga poziom poszczególnych podmiotów, w tym ludzi i wspólnych zasobów, takich jak pliki i drukarki.
|
||||
Organizacja katalogu LDAP przypomina **hierarchię drzewiastą, zaczynając od katalogu głównego na górze**. Rozgałęzia się to na kraje, które dzielą się dalej na organizacje, a następnie na jednostki organizacyjne reprezentujące różne działy lub departamenty, aż w końcu osiąga poziom poszczególnych podmiotów, w tym zarówno ludzi, jak i wspólne zasoby, takie jak pliki i drukarki.
|
||||
|
||||
**Domyślny port:** 389 i 636(ldaps). Globalny katalog (LDAP w ActiveDirectory) jest dostępny domyślnie na portach 3268 i 3269 dla LDAPS.
|
||||
**Domyślny port:** 389 i 636(ldaps). Globalny Katalog (LDAP w ActiveDirectory) jest dostępny domyślnie na portach 3268 i 3269 dla LDAPS.
|
||||
```
|
||||
PORT STATE SERVICE REASON
|
||||
389/tcp open ldap syn-ack
|
||||
@ -52,7 +52,7 @@ phone: 23627387495
|
||||
|
||||
## Zapisz dane
|
||||
|
||||
Zauważ, że jeśli możesz modyfikować wartości, możesz być w stanie wykonać naprawdę interesujące działania. Na przykład, wyobraź sobie, że **możesz zmienić informację "sshPublicKey"** swojego użytkownika lub dowolnego użytkownika. Jest bardzo prawdopodobne, że jeśli ten atrybut istnieje, to **ssh odczytuje klucze publiczne z LDAP**. Jeśli możesz zmodyfikować klucz publiczny użytkownika, **będziesz mógł zalogować się jako ten użytkownik, nawet jeśli uwierzytelnianie hasłem nie jest włączone w ssh**.
|
||||
Zauważ, że jeśli możesz modyfikować wartości, możesz być w stanie wykonać naprawdę interesujące działania. Na przykład, wyobraź sobie, że **możesz zmienić informacje "sshPublicKey"** swojego użytkownika lub dowolnego użytkownika. Jest bardzo prawdopodobne, że jeśli ten atrybut istnieje, to **ssh odczytuje klucze publiczne z LDAP**. Jeśli możesz zmodyfikować klucz publiczny użytkownika, **będziesz mógł zalogować się jako ten użytkownik, nawet jeśli uwierzytelnianie hasłem nie jest włączone w ssh**.
|
||||
```bash
|
||||
# Example from https://www.n00py.io/2020/02/exploiting-ldap-server-null-bind/
|
||||
>>> import ldap3
|
||||
@ -76,7 +76,7 @@ Możesz również przeprowadzić atak **MITM** w sieci **pomiędzy serwerem LDAP
|
||||
|
||||
### Bypass TLS SNI check
|
||||
|
||||
Zgodnie z [**tym artykułem**](https://swarm.ptsecurity.com/exploiting-arbitrary-object-instantiations/) wystarczyło uzyskać dostęp do serwera LDAP za pomocą dowolnej nazwy domeny (takiej jak company.com), aby móc skontaktować się z usługą LDAP i wyodrębnić informacje jako anonimowy użytkownik:
|
||||
Zgodnie z [**tym artykułem**](https://swarm.ptsecurity.com/exploiting-arbitrary-object-instantiations/) wystarczyło uzyskać dostęp do serwera LDAP z dowolną nazwą domeny (taką jak company.com), aby móc skontaktować się z usługą LDAP i wyodrębnić informacje jako anonimowy użytkownik:
|
||||
```bash
|
||||
ldapsearch -H ldaps://company.com:636/ -x -s base -b '' "(objectClass=*)" "*" +
|
||||
```
|
||||
@ -100,7 +100,7 @@ ldapdomaindump <IP> [-r <IP>] -u '<domain>\<username>' -p '<password>' [--authty
|
||||
|
||||
### Zautomatyzowana
|
||||
|
||||
Korzystając z tego, będziesz w stanie zobaczyć **publiczne informacje** (takie jak nazwa domeny)**:**
|
||||
Korzystając z tego, będziesz mógł zobaczyć **publiczne informacje** (takie jak nazwa domeny)**:**
|
||||
```bash
|
||||
nmap -n -sV --script "ldap* and not brute" <IP> #Using anonymous credentials
|
||||
```
|
||||
@ -121,7 +121,7 @@ Najpierw spróbuj **połączyć się bez** poświadczeń:
|
||||
True
|
||||
>>> server.info
|
||||
```
|
||||
Jeśli odpowiedź to `True`, jak w poprzednim przykładzie, możesz uzyskać **interesujące dane** z serwera LDAP (takie jak **kontekst nazewniczy** lub **nazwa domeny**) z:
|
||||
Jeśli odpowiedź to `True`, jak w poprzednim przykładzie, możesz uzyskać pewne **interesujące dane** z serwera LDAP (takie jak **kontekst nazewniczy** lub **nazwa domeny**) z:
|
||||
```bash
|
||||
>>> server.info
|
||||
DSA info (from DSE):
|
||||
@ -129,7 +129,7 @@ Supported LDAP versions: 3
|
||||
Naming contexts:
|
||||
dc=DOMAIN,dc=DOMAIN
|
||||
```
|
||||
Gdy masz kontekst nazewniczy, możesz wykonać kilka bardziej interesujących zapytań. To proste zapytanie powinno pokazać wszystkie obiekty w katalogu:
|
||||
Gdy masz już kontekst nazewniczy, możesz wykonać kilka bardziej interesujących zapytań. To proste zapytanie powinno pokazać wszystkie obiekty w katalogu:
|
||||
```bash
|
||||
>>> connection.search(search_base='DC=DOMAIN,DC=DOMAIN', search_filter='(&(objectClass=*))', search_scope='SUBTREE', attributes='*')
|
||||
True
|
||||
@ -184,7 +184,7 @@ ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "DC=<1_
|
||||
-w My password
|
||||
-b Base site, all data from here will be given
|
||||
```
|
||||
Wyodrębnij **użytkowników**:
|
||||
Ekstraktuj **użytkowników**:
|
||||
```bash
|
||||
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "CN=Users,DC=<1_SUBDOMAIN>,DC=<TLD>"
|
||||
#Example: ldapsearch -x -H ldap://<IP> -D 'MYDOM\john' -w 'johnpassw' -b "CN=Users,DC=mydom,DC=local"
|
||||
@ -209,7 +209,7 @@ Ekstrakcja **Enterprise Admins**:
|
||||
```bash
|
||||
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "CN=Enterprise Admins,CN=Users,DC=<1_SUBDOMAIN>,DC=<TLD>"
|
||||
```
|
||||
Wyodrębnij **Administratorów**:
|
||||
Ekstrakt **Administratorzy**:
|
||||
```bash
|
||||
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "CN=Administrators,CN=Builtin,DC=<1_SUBDOMAIN>,DC=<TLD>"
|
||||
```
|
||||
@ -221,7 +221,7 @@ Aby sprawdzić, czy masz dostęp do jakiegokolwiek hasła, możesz użyć grep p
|
||||
```bash
|
||||
<ldapsearchcmd...> | grep -i -A2 -B2 "userpas"
|
||||
```
|
||||
Proszę zauważyć, że hasła, które możesz tutaj znaleźć, mogą nie być prawdziwe...
|
||||
Proszę zauważyć, że hasła, które można tutaj znaleźć, mogą nie być prawdziwe...
|
||||
|
||||
#### pbis
|
||||
|
||||
@ -290,7 +290,7 @@ Godap to interaktywne terminalowe interfejs użytkownika dla LDAP, który można
|
||||
|
||||

|
||||
|
||||
Możesz uzyskać do niego dostęp w [https://github.com/Macmod/godap](https://github.com/Macmod/godap). Aby zobaczyć przykłady użycia i instrukcje, przeczytaj [Wiki](https://github.com/Macmod/godap/wiki).
|
||||
Możesz uzyskać do niego dostęp pod adresem [https://github.com/Macmod/godap](https://github.com/Macmod/godap). Aby zobaczyć przykłady użycia i instrukcje, przeczytaj [Wiki](https://github.com/Macmod/godap/wiki).
|
||||
|
||||
### Ldapx
|
||||
|
||||
@ -302,7 +302,7 @@ Możesz go pobrać z [https://github.com/Macmod/ldapx](https://github.com/Macmod
|
||||
|
||||
## Uwierzytelnianie za pomocą kerberos
|
||||
|
||||
Używając `ldapsearch`, możesz **uwierzytelnić się** za pomocą **kerberos zamiast** przez **NTLM**, używając parametru `-Y GSSAPI`.
|
||||
Używając `ldapsearch`, możesz **uwierzytelnić się** za pomocą **kerberos zamiast** przez **NTLM**, używając parametru `-Y GSSAPI`
|
||||
|
||||
## POST
|
||||
|
||||
@ -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 <IP> -u <USERNAME> -p <PASSWORD> --bloodhound -c All -d <DOMAIN.LOCAL> --dns-server <IP> --dns-tcp
|
||||
```
|
||||
{{#include ../banners/hacktricks-training.md}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user