<summary><strong>Naucz się hakować AWS od zera do bohatera z</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLAN SUBSKRYPCJI**](https://github.com/sponsors/carlospolop)!
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
**Natychmiastowe dostępne narzędzie do oceny podatności i testowania penetracyjnego**. Uruchom pełne testowanie penetracyjne z dowolnego miejsca za pomocą ponad 20 narzędzi i funkcji, które obejmują od rozpoznania po raportowanie. Nie zastępujemy testerów penetracyjnych - opracowujemy niestandardowe narzędzia, moduły wykrywania i eksploatacji, aby dać im więcej czasu na głębsze drążenie, otwieranie powłok i dobrą zabawę.
**System nazw domenowych (DNS)** pełni funkcję katalogu internetowego, umożliwiając użytkownikom dostęp do witryn za pomocą **łatwych do zapamiętania nazw domenowych**, takich jak google.com lub facebook.com, zamiast numerycznych adresów protokołu internetowego (IP). Przez tłumaczenie nazw domenowych na adresy IP, DNS zapewnia, że przeglądarki internetowe mogą szybko ładować zasoby internetowe, upraszczając sposób poruszania się po świecie online.
- **Serwery korzeniowe DNS**: Są one na szczycie hierarchii DNS, zarządzając domenami najwyższego poziomu i interweniują tylko wtedy, gdy serwery niższego poziomu nie odpowiadają. Internet Corporation for Assigned Names and Numbers (**ICANN**) nadzoruje ich działanie, a ich globalna liczba wynosi 13.
- **Serwery autorytatywne**: Te serwery mają ostatnie słowo w kwestii zapytań w swoich strefach, oferując ostateczne odpowiedzi. Jeśli nie mogą udzielić odpowiedzi, zapytanie jest eskalowane do serwerów korzeniowych.
- **Serwery nieautorytatywne**: Nie posiadając własności nad strefami DNS, te serwery zbierają informacje o domenie poprzez zapytania do innych serwerów.
- **Serwer DNS z buforowaniem**: Ten rodzaj serwera zapamiętuje poprzednie odpowiedzi na zapytania przez określony czas, aby przyspieszyć czas odpowiedzi na przyszłe żądania, a czas buforowania jest określany przez serwer autorytatywny.
fierce --domain <DOMAIN> --dns-servers <DNS_IP>#Will try toperform a zone transfer against every authoritative name server and if this doesn'twork, will launch a dictionary attack
DNS (Domain Name System) jest protokołem używanym do przypisywania nazw domenowych do adresów IP. Jest to niezbędne do przeglądania stron internetowych, wysyłania poczty elektronicznej i innych usług internetowych. W procesie pentestowania DNS można wykorzystać różne techniki, aby zidentyfikować podatności i potencjalne luki w zabezpieczeniach.
#### Rekordy DNS
Rekordy DNS zawierają informacje o domenie, takie jak adres IP, serwery poczty elektronicznej, serwery nazw i inne. Kilka przykładów popularnych rekordów DNS to:
- **A**: Przypisuje adres IP do nazwy domeny.
- **CNAME**: Tworzy alias dla innej nazwy domeny.
- **MX**: Określa serwery poczty elektronicznej dla domeny.
- **NS**: Określa serwery nazw dla domeny.
- **TXT**: Przechowuje dowolne informacje tekstowe.
#### Techniki pentestowania DNS
Poniżej przedstawiono kilka technik pentestowania DNS:
1.**Zbieranie informacji**: Wykorzystanie narzędzi takich jak `nslookup` lub `dig` do zbierania informacji o domenie, takich jak rekordy DNS, serwery nazw i adresy IP.
2.**Zamiana rekordów**: Sprawdzenie, czy można zmienić rekordy DNS, takie jak rekord A, aby przekierować ruch na inny adres IP.
3.**Spoofing DNS**: Atakowanie serwera DNS, aby przekierować ruch na kontrolowane przez nas adresy IP. Może to prowadzić do przechwycenia danych lub przekierowania użytkowników na złośliwe strony.
4.**Zatrucie pamięci podręcznej DNS**: Wykorzystanie błędów w implementacji DNS, aby wprowadzić fałszywe rekordy do pamięci podręcznej serwera DNS. Może to prowadzić do przekierowania ruchu na kontrolowane przez nas adresy IP.
5.**Zaślepienie DNS**: Wykorzystanie błędów w implementacji DNS, aby zmusić serwer DNS do akceptowania fałszywych odpowiedzi, co może prowadzić do przekierowania ruchu na kontrolowane przez nas adresy IP.
6.**Ataki słownikowe**: Próba odgadnięcia nazw domenowych lub rekordów DNS, wykorzystując słowniki lub listy popularnych nazw.
7.**Ataki na serwery DNS**: Wykorzystanie błędów w oprogramowaniu serwera DNS, takich jak błędy wersji, błędy konfiguracji lub słabe hasła, aby uzyskać nieautoryzowany dostęp.
#### Narzędzia pentestowania DNS
Istnieje wiele narzędzi dostępnych do pentestowania DNS, takich jak:
- **dnsrecon**: Narzędzie do zbierania informacji o domenie, wyszukiwania rekordów DNS i identyfikowania podatności.
- **dnswalk**: Narzędzie do analizy i audytu serwerów DNS.
- **dnsenum**: Narzędzie do zbierania informacji o domenie, wyszukiwania rekordów DNS i identyfikowania podatności.
- **fierce**: Narzędzie do zbierania informacji o domenie, wyszukiwania rekordów DNS i identyfikowania podatności.
- **dnsmap**: Narzędzie do mapowania struktury DNS i identyfikowania podatności.
- **dnschef**: Narzędzie do przekierowywania ruchu DNS na kontrolowane przez nas adresy IP.
- **dnsspoof**: Narzędzie do przekierowywania ruchu DNS na kontrolowane przez nas adresy IP.
Pentestowanie DNS jest ważnym elementem testów penetracyjnych, które pomaga identyfikować podatności i luki w zabezpieczeniach. Wykorzystując różne techniki i narzędzia, można zwiększyć bezpieczeństwo infrastruktury sieciowej i chronić dane użytkowników.
The `nslookup` command is a powerful tool for querying DNS (Domain Name System) servers. It allows you to retrieve information about DNS records, such as IP addresses associated with domain names.
To use `nslookup`, open a command prompt and type `nslookup` followed by the domain name or IP address you want to query. Press Enter to execute the command.
For example, to retrieve the IP address of a domain name, type:
```
nslookup example.com
```
This will display the IP address associated with the domain name `example.com`.
You can also specify the DNS server to use for the query by typing `server` followed by the IP address of the DNS server. For example:
```
server 8.8.8.8
```
This will set the DNS server to `8.8.8.8` (Google's public DNS server). Subsequent `nslookup` queries will use this DNS server.
To exit `nslookup`, type `exit` and press Enter.
`nslookup` is a useful tool for troubleshooting DNS issues and gathering information during a penetration test. It can help you identify misconfigured DNS records, check DNS propagation, and gather information about a target's infrastructure.
Metasploit to popularne narzędzie do testowania penetracyjnego, które zawiera wiele modułów, które mogą być użyteczne podczas testowania usług sieciowych. Oto kilka przykładowych modułów, które warto znać:
-`auxiliary/scanner/dns/dns_cache_snoop`: Moduł ten pozwala na przeprowadzenie ataku typu DNS cache snoop, który umożliwia uzyskanie informacji o zapytaniach DNS przechowywanych w pamięci podręcznej serwera DNS.
-`auxiliary/scanner/dns/dns_enum`: Ten moduł umożliwia przeprowadzenie enumeracji DNS, która polega na zbieraniu informacji o rekordach DNS dla określonej domeny.
-`auxiliary/scanner/dns/dns_forward`: Moduł ten pozwala na przekierowanie ruchu DNS z jednego serwera na inny, co może być przydatne podczas testowania infrastruktury sieciowej.
-`auxiliary/scanner/dns/dns_reverser`: Ten moduł umożliwia przeprowadzenie odwróconej analizy DNS, która polega na wyszukiwaniu nazw hostów na podstawie adresów IP.
-`auxiliary/scanner/dns/dns_transfer`: Moduł ten umożliwia przeprowadzenie ataku typu DNS zone transfer, który pozwala na uzyskanie kopii strefy DNS z serwera DNS.
Te moduły są tylko kilkoma przykładami zasobów, jakie oferuje Metasploit. Istnieje wiele innych modułów, które można wykorzystać w celu testowania penetracyjnego usług sieciowych.
Nmap to potężne narzędzie do skanowania sieci, które może być używane do badania bezpieczeństwa usług sieciowych. Nmap posiada wiele wbudowanych skryptów, które mogą pomóc w identyfikacji podatności i odkrywaniu ukrytych funkcji. Poniżej znajduje się lista kilku przydatnych skryptów nmap:
- **dns-brute**: Ten skrypt służy do przeprowadzania brutalnego ataku na serwer DNS w celu odkrycia ukrytych subdomen.
- **dns-zone-transfer**: Skrypt ten pozwala na przeprowadzenie transferu strefy DNS, co może pomóc w identyfikacji podatności związanych z konfiguracją serwera DNS.
- **dns-reverse-lookup**: Skrypt ten wykonuje odwrócone wyszukiwanie DNS, co pozwala na identyfikację hostów na podstawie ich adresów IP.
- **dns-cache-snoop**: Ten skrypt pozwala na przeprowadzenie ataku na pamięć podręczną serwera DNS w celu odkrycia informacji o odwiedzanych stronach internetowych.
- **dns-blacklist**: Skrypt ten sprawdza, czy adresy IP znajdują się na czarnej liście DNS, co może wskazywać na obecność złośliwego oprogramowania lub podejrzanej aktywności.
Reverse BF (Backward Forcing) to technika ataku na serwer DNS, która polega na próbie odgadnięcia nazw domen, które są zarejestrowane na serwerze DNS. Atakujący rozpoczyna od próby odgadnięcia najpopularniejszych nazw domen, takich jak "www", "mail", "ftp", a następnie przechodzi do mniej popularnych nazw.
Atak Reverse BF jest skuteczny w przypadku słabych ustawień serwera DNS, które pozwalają na łatwe odgadywanie nazw domen. Atakujący może wykorzystać tę technikę do uzyskania informacji o infrastrukturze sieciowej i potencjalnych celach ataku.
Aby przeprowadzić atak Reverse BF, atakujący może skorzystać z narzędzi do automatycznego generowania nazw domen lub ręcznie wprowadzać różne kombinacje nazw. Atakujący może również wykorzystać słowniki nazw domen, które zawierają popularne słowa i frazy.
Aby zabezpieczyć serwer DNS przed atakiem Reverse BF, zaleca się stosowanie silnych haseł i ustawień zabezpieczeń. Administracja serwera DNS powinna również monitorować logi i wykrywać podejrzane aktywności, takie jak duże ilości nieudanych prób odpytywania o nazwy domen.
Jeśli uda ci się znaleźć subdomeny rozwiązujące się na adresy IP wewnętrzne, powinieneś spróbować przeprowadzić odwrócony DNS BF do NSs domeny, pytając o ten zakres IP.
Możesz zapytać o odwrócone zakresy IP na [https://bgp.he.net/net/205.166.76.0/24#\_dns](https://bgp.he.net/net/205.166.76.0/24#\_dns) (to narzędzie jest również pomocne przy BGP).
Active Directory (AD) to usługa katalogowa opracowana przez firmę Microsoft, która umożliwia zarządzanie użytkownikami, grupami i zasobami w sieci. Serwery Active Directory są kluczowym elementem infrastruktury AD i pełnią rolę kontrolerów domeny. Kontrolery domeny przechowują informacje o obiektach w domenie, takie jak konta użytkowników, grupy, uprawnienia itp.
Podczas testowania penetracyjnego, serwery Active Directory są często celem ataków, ponieważ posiadają wiele wrażliwych informacji, takich jak hasła użytkowników, które mogą być wykorzystane do uzyskania dostępu do innych zasobów w sieci. Poniżej przedstawiam kilka technik, które można zastosować podczas testowania penetracyjnego serwerów Active Directory.
#### 1. Enumeracja użytkowników
Podstawowym krokiem podczas testowania penetracyjnego serwera Active Directory jest enumeracja użytkowników. Można to zrobić za pomocą narzędzi takich jak `ldapsearch`, `enum4linux` lub `PowerView`. Enumeracja użytkowników pozwala uzyskać informacje o kontach użytkowników, takie jak nazwy, identyfikatory SID, grupy, uprawnienia itp.
Ataki słownikowe są popularnym sposobem na próbę złamania haseł użytkowników na serwerze Active Directory. Można to zrobić za pomocą narzędzi takich jak `Hydra`, `Medusa` lub `CrackMapExec`. Ataki słownikowe polegają na próbie logowania się na konto użytkownika, używając różnych kombinacji haseł z listy słownikowej.
W przypadku, gdy serwer Active Directory korzysta z haseł jednorazowych (OTP), ataki słownikowe nie będą skuteczne. W takim przypadku można spróbować ataku brute-force na hasła jednorazowe. Można to zrobić za pomocą narzędzi takich jak `Hydra` lub `Medusa`, które obsługują ataki na protokoły takie jak RDP, SSH, HTTP itp.
#### 4. Ataki na protokoły uwierzytelniania
Serwery Active Directory obsługują różne protokoły uwierzytelniania, takie jak Kerberos, NTLM itp. Ataki na te protokoły mogą umożliwić złamanie haseł użytkowników lub uzyskanie dostępu do innych zasobów w sieci. Można to zrobić za pomocą narzędzi takich jak `Kerberoast`, `Pass-the-Hash` lub `Golden Ticket`.
#### 5. Ataki na usługi powiązane z Active Directory
Serwery Active Directory często korzystają z innych usług, takich jak DNS, LDAP, SMB itp. Ataki na te usługi mogą umożliwić uzyskanie dostępu do serwera Active Directory lub innych zasobów w sieci. Można to zrobić za pomocą technik takich jak ataki DNS spoofing, ataki LDAP injection lub ataki SMB relay.
#### 6. Ataki na podatności serwera Active Directory
Podczas testowania penetracyjnego serwera Active Directory warto również sprawdzić, czy serwer jest podatny na znane luki bezpieczeństwa. Można to zrobić za pomocą narzędzi takich jak `Metasploit`, `Nessus` lub `OpenVAS`, które posiadają moduły do skanowania podatności serwera Active Directory.
#### 7. Ataki na infrastrukturę fizyczną
W niektórych przypadkach, ataki na serwer Active Directory mogą obejmować również ataki na infrastrukturę fizyczną, taką jak serwery, routery, przełączniki itp. Ataki te mogą umożliwić uzyskanie dostępu do serwera Active Directory lub innych zasobów w sieci. Można to zrobić za pomocą technik takich jak ataki fizyczne, ataki na urządzenia sieciowe lub ataki na systemy zarządzania.
#### 8. Ataki na aplikacje powiązane z Active Directory
Serwery Active Directory często są powiązane z różnymi aplikacjami, takimi jak serwery poczty elektronicznej, serwery plików, serwery baz danych itp. Ataki na te aplikacje mogą umożliwić uzyskanie dostępu do serwera Active Directory lub innych zasobów w sieci. Można to zrobić za pomocą technik takich jak ataki na aplikacje webowe, ataki SQL injection lub ataki na protokoły komunikacyjne.
#### 9. Ataki na użytkowników
Ostatnim, ale nie mniej ważnym, aspektem testowania penetracyjnego serwera Active Directory jest atak na użytkowników. Ataki na użytkowników mogą obejmować inżynierię społeczną, phishing, ataki na hasła itp. Ataki te mogą umożliwić uzyskanie dostępu do serwera Active Directory lub innych zasobów w sieci.
DNSSec (Domain Name System Security Extensions) to zestaw rozszerzeń bezpieczeństwa dla systemu DNS, które mają na celu zapobieganie atakom na integralność i autentyczność danych DNS. DNSSec wprowadza mechanizmy, które umożliwiają weryfikację podpisów cyfrowych dla rekordów DNS, co zapewnia większe zaufanie do dostarczanych informacji.
DNSSec działa na zasadzie hierarchicznej struktury zaufania, w której każda domena jest odpowiedzialna za podpisanie swoich rekordów DNS. Podpisy cyfrowe są przechowywane w rekordach DS (Delegation Signer) w domenie nadrzędnej, co umożliwia weryfikację autentyczności rekordów DNS dla danej domeny.
Atakujący próbujący przechwycić lub zmienić dane DNS napotkają trudności w przypadku domen zabezpieczonych DNSSec. W przypadku próby zmiany rekordów DNS, podpis cyfrowy zostanie naruszony, co spowoduje odrzucenie zmienionych danych przez klienta.
DNSSec jest ważnym narzędziem w zapewnianiu bezpieczeństwa dla infrastruktury DNS i powinien być wdrażany tam, gdzie to możliwe.
Reverse DNS (rDNS) is a technique used to resolve an IP address to its corresponding domain name. In the case of IPv6 addresses, the process is similar to that of IPv4 addresses, but with some differences due to the longer address format.
## Bruteforcing rDNS for IPv6 addresses
To bruteforce rDNS for IPv6 addresses, you can follow these steps:
1. Generate a list of possible domain names based on the target's domain name or any other relevant information.
2. Convert the IPv6 address to its hexadecimal representation.
3. Append the hexadecimal representation of the IPv6 address to each domain name in the list.
4. Use a DNS resolver or a DNS lookup tool to query the rDNS for each domain name in the list.
5. Analyze the responses to identify any potential matches between the domain names and the target's IP address.
- **dnsrecon**: A powerful DNS enumeration and information gathering tool that supports IPv6.
- **dnsenum**: A Perl script that can perform various DNS enumeration tasks, including rDNS bruteforcing.
- **fierce**: A DNS reconnaissance tool that can be used to discover non-contiguous IP space and perform rDNS bruteforcing.
## Conclusion
Bruteforcing rDNS for IPv6 addresses can be a useful technique in penetration testing or other security assessments. By systematically querying different domain names with the target's IPv6 address, you may uncover additional information or potential vulnerabilities. However, it is important to note that bruteforcing rDNS should only be performed with proper authorization and in compliance with applicable laws and regulations.
Jeśli **rekursja DNS jest włączona**, atakujący może **podrobić****pochodzenie** w pakiecie UDP, aby **DNS wysłał odpowiedź do serwera ofiary**. Atakujący może wykorzystać dowolne typy rekordów, takie jak **ANY** lub **DNSSEC**, ponieważ generują one większe odpowiedzi.\
Sposób **sprawdzenia**, czy DNS obsługuje **rekursję**, polega na zapytaniu o nazwę domeny i **sprawdzeniu**, czy w odpowiedzi znajduje się flaga "ra" (_dostępna rekursja_):
**Natychmiastowe dostępne narzędzia do oceny podatności i testowania penetracyjnego**. Uruchom pełne testowanie penetracyjne z dowolnego miejsca za pomocą ponad 20 narzędzi i funkcji, które obejmują rozpoznanie i raportowanie. Nie zastępujemy testerów penetracyjnych - opracowujemy niestandardowe narzędzia, moduły wykrywania i eksploatacji, aby umożliwić im zagłębianie się, zdobywanie dostępu i dobrą zabawę.
Podczas analizy powiadomienia o niemożliwości dostarczenia (NDN), które zostało wywołane przez wysłanie wiadomości e-mail na nieprawidłowy adres w domenie docelowej, często ujawniane są cenne szczegóły dotyczące wewnętrznej sieci.
Config files are an important aspect of DNS pentesting. These files contain the configuration settings for DNS servers and can provide valuable information for attackers. Here are some common config files to look out for:
### BIND
BIND is a popular DNS server software used on Unix-like operating systems. The main config file for BIND is usually located at `/etc/named.conf`. This file contains global configuration options, zone definitions, and other settings.
### Windows DNS Server
On Windows systems, the DNS server configuration is stored in the Windows Registry. The relevant keys can be found under `HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters`.
dnsmasq is a lightweight DNS forwarder and DHCP server commonly used in small networks or as a local DNS cache. Its config file is typically located at `/etc/dnsmasq.conf` or `/etc/dnsmasq.d/*.conf`.
PowerDNS is a versatile DNS server software that supports various backends. Its main config file is usually located at `/etc/pdns.conf` or `/etc/powerdns/pdns.conf`.
### Unbound
Unbound is a validating, recursive, and caching DNS resolver. Its config file is typically located at `/etc/unbound/unbound.conf`.
### Other DNS Servers
Different DNS servers may have their own config file locations and formats. It's important to research the specific DNS server software being used to find the relevant config files.
Remember to check for any sensitive information, such as passwords or IP addresses, that may be stored in these config files. Attackers can leverage this information to gain unauthorized access or perform other malicious activities.
**Natychmiastowo dostępne narzędzia do oceny podatności i testowania penetracyjnego**. Uruchom pełny test penetracyjny z dowolnego miejsca za pomocą ponad 20 narzędzi i funkcji, które obejmują rozpoznanie i raportowanie. Nie zastępujemy testerów penetracyjnych - opracowujemy niestandardowe narzędzia, moduły wykrywania i eksploatacji, aby umożliwić im zagłębianie się, zdobywanie powłok i dobrą zabawę.
<summary><strong>Dowiedz się, jak hakować AWS od zera do bohatera z</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Jeśli chcesz zobaczyć **reklamę swojej firmy w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLAN SUBSKRYPCJI**](https://github.com/sponsors/carlospolop)!
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) **i** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **repozytoriów GitHub.**