hacktricks/network-services-pentesting/pentesting-ntp.md

155 lines
9.7 KiB
Markdown

# 123/udp - Pentesting NTP
<details>
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* Você trabalha em uma **empresa de cibersegurança**? Você quer ver sua **empresa anunciada no HackTricks**? ou você quer ter acesso à **última versão do PEASS ou baixar o HackTricks em PDF**? Verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* Adquira o [**swag oficial do PEASS & HackTricks**](https://peass.creator-spring.com)
* **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-me** no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Compartilhe seus truques de hacking enviando PRs para o** [**repositório hacktricks**](https://github.com/carlospolop/hacktricks) **e** [**repositório hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
</details>
<figure><img src="../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
**HackenProof é o lar de todas as recompensas por bugs de criptografia.**
**Seja recompensado sem atrasos**\
As recompensas do HackenProof são lançadas apenas quando seus clientes depositam o orçamento de recompensa. Você receberá a recompensa após a verificação do bug.
**Adquira experiência em pentesting web3**\
Protocolos de blockchain e contratos inteligentes são a nova Internet! Domine a segurança web3 em seus dias de ascensão.
**Torne-se a lenda do hacker web3**\
Ganhe pontos de reputação com cada bug verificado e conquiste o topo do leaderboard semanal.
[**Cadastre-se no HackenProof**](https://hackenproof.com/register) comece a ganhar com seus hacks!
{% embed url="https://hackenproof.com/register" %}
## Informações Básicas
O Network Time Protocol (**NTP**) é um protocolo de rede para sincronização de relógios entre sistemas de computadores em redes de dados comutados por pacotes e latência variável.
**Porta padrão:** 123/udp
```
PORT STATE SERVICE REASON
123/udp open ntp udp-response
```
## Enumeração
### NTP (Network Time Protocol)
O Network Time Protocol (NTP) é um protocolo de rede amplamente utilizado para sincronizar o relógio dos sistemas computacionais. Ele permite que os dispositivos obtenham a hora correta de servidores NTP confiáveis.
Durante a enumeração do NTP, podemos realizar as seguintes etapas:
1. Identificar os servidores NTP em um determinado alvo.
2. Verificar se os servidores NTP estão acessíveis e respondendo.
3. Obter informações sobre os servidores NTP, como versão do protocolo, configurações e detalhes do sistema operacional.
4. Identificar possíveis vulnerabilidades nos servidores NTP.
### Identificando servidores NTP
Existem várias maneiras de identificar os servidores NTP em um alvo. Alguns métodos comuns incluem:
- Pesquisa DNS reversa: procurar registros PTR que apontem para nomes de domínio relacionados ao NTP, como "ntp.example.com".
- Pesquisa de portas abertas: verificar se as portas padrão do NTP (123/UDP) estão abertas em um determinado alvo.
- Pesquisa de serviços: procurar por serviços NTP em um determinado alvo usando ferramentas de enumeração de serviços, como o Nmap.
### Verificando a acessibilidade dos servidores NTP
Após identificar os servidores NTP, é importante verificar se eles estão acessíveis e respondendo. Isso pode ser feito enviando uma solicitação de consulta NTP para o servidor e aguardando uma resposta. Se o servidor responder, significa que está acessível.
### Obtendo informações sobre os servidores NTP
Uma vez que os servidores NTP estejam acessíveis, podemos obter informações sobre eles. Isso pode incluir a obtenção da versão do protocolo NTP, configurações específicas do servidor e detalhes do sistema operacional. Essas informações podem ser úteis para identificar possíveis vulnerabilidades nos servidores NTP.
### Identificando vulnerabilidades nos servidores NTP
Após obter informações sobre os servidores NTP, podemos realizar uma análise de vulnerabilidades para identificar possíveis falhas de segurança. Alguns exemplos de vulnerabilidades comuns em servidores NTP incluem:
- Ataques de amplificação NTP: explorar servidores NTP mal configurados para realizar ataques de amplificação de tráfego.
- Exploração de vulnerabilidades conhecidas: aproveitar vulnerabilidades conhecidas no software NTP para obter acesso não autorizado ou executar código arbitrário nos servidores.
É importante lembrar que qualquer teste de penetração em servidores NTP deve ser realizado com permissão e autorização adequadas.
```bash
ntpq -c readlist <IP_ADDRESS>
ntpq -c readvar <IP_ADDRESS>
ntpq -c peers <IP_ADDRESS>
ntpq -c associations <IP_ADDRESS>
ntpdc -c monlist <IP_ADDRESS>
ntpdc -c listpeers <IP_ADDRESS>
ntpdc -c sysinfo <IP_ADDRESS>
```
```bash
nmap -sU -sV --script "ntp* and (discovery or vuln) and not (dos or brute)" -p 123 <IP>
```
## Examinar arquivos de configuração
* ntp.conf
## Ataque de Amplificação NTP
[**Como funciona o ataque DDoS NTP**](https://resources.infosecinstitute.com/network-time-protocol-ntp-threats-countermeasures/#gref)
O protocolo NTP, por design, usa UDP para operar, o que não requer nenhum handshake como o TCP, portanto, não há registro da solicitação. Assim, o ataque de amplificação DDoS NTP começa quando um atacante cria pacotes com um IP de origem falsificado para fazer com que os pacotes pareçam estar vindo do alvo pretendido e os envia para o servidor NTP. O atacante inicialmente cria o pacote com poucos bytes, mas o NTP responde com uma grande quantidade de dados, contribuindo assim para a amplificação desse ataque.
Comando _MONLIST_: É um comando do protocolo NTP que tem pouco uso, mas é esse comando que é o principal culpado por esse ataque. No entanto, o uso do comando MONLIST é fornecer detalhes dos últimos 600 clientes que se conectaram ao serviço de tempo NTP. Abaixo está a sintaxe do comando:
```bash
ntpdc -n -c monlist <IP>
```
## Shodan
* `ntp`
## Comandos Automáticos do HackTricks
```
Protocol_Name: NTP #Protocol Abbreviation if there is one.
Port_Number: 123 #Comma separated if there is more than one.
Protocol_Description: Network Time Protocol #Protocol Abbreviation Spelled out
Entry_1:
Name: Notes
Description: Notes for NTP
Note: |
The Network Time Protocol (NTP) is a networking protocol for clock synchronization between computer systems over packet-switched, variable-latency data networks.
https://book.hacktricks.xyz/pentesting/pentesting-ntp
Entry_2:
Name: Nmap
Description: Enumerate NTP
Command: nmap -sU -sV --script "ntp* and (discovery or vuln) and not (dos or brute)" -p 123 {IP}
```
<figure><img src="../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
**HackenProof é o lar de todas as recompensas por bugs de criptografia.**
**Seja recompensado sem atrasos**\
As recompensas do HackenProof são lançadas apenas quando seus clientes depositam o orçamento de recompensa. Você receberá a recompensa após a verificação do bug.
**Adquira experiência em pentesting web3**\
Protocolos de blockchain e contratos inteligentes são a nova Internet! Domine a segurança web3 em seus dias de ascensão.
**Torne-se uma lenda hacker web3**\
Ganhe pontos de reputação com cada bug verificado e conquiste o topo do leaderboard semanal.
[**Cadastre-se no HackenProof**](https://hackenproof.com/register) e comece a ganhar com seus hacks!
{% embed url="https://hackenproof.com/register" %}
<details>
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* Você trabalha em uma **empresa de cibersegurança**? Você quer ver sua **empresa anunciada no HackTricks**? Ou você quer ter acesso à **última versão do PEASS ou baixar o HackTricks em PDF**? Verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* Adquira o [**swag oficial do PEASS & HackTricks**](https://peass.creator-spring.com)
* **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-me** no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Compartilhe seus truques de hacking enviando PRs para o** [**repositório hacktricks**](https://github.com/carlospolop/hacktricks) **e** [**repositório hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
</details>