> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/pt-br/reconnaissance/nmap.md).

# Nmap

Notas de reconhecimento do Nmap para varredura de portas, detecção de serviços, scripts NSE, descoberta de hosts, evasão de firewall e varredura de vulnerabilidades.

O Nmap é usado durante o reconhecimento para identificar hosts ativos, portas abertas, versões de serviços, sistemas operacionais, resultados de scripts NSE e possíveis caminhos de ataque.

{% hint style="info" %}
**Nmap**, que significa "*Mapeador de Rede*", é uma ferramenta de código aberto usada para explorar e auditar redes, além de descobrir hosts e serviços em uma rede. Ela foi originalmente criada por Gordon Lyon, também conhecido como Fyodor Vaskovich. O Nmap oferece recursos de varredura de rede que permitem aos usuários descobrir dispositivos conectados a uma rede, identificar serviços em execução nesses dispositivos e obter informações detalhadas sobre a configuração da rede.
{% endhint %}

#### Referência de comandos e opções comuns:

## Referência de Opções do Nmap

### Alvo e Descoberta de Hosts

| Opção                | Descrição                                                                |
| -------------------- | ------------------------------------------------------------------------ |
| `10.10.10.0/24`      | Faixa de rede alvo.                                                      |
| `-sL`                | Varredura de lista. Lista os alvos sem escaneá-los.                      |
| `-sn`                | Desabilita a varredura de portas e realiza apenas a descoberta de hosts. |
| `-Pn`                | Trata os hosts como online e ignora os probes de descoberta de hosts.    |
| `-n`                 | Desabilita a resolução de DNS.                                           |
| `-PE`                | Realiza a descoberta de hosts usando Requisições de Eco ICMP.            |
| `--disable-arp-ping` | Desabilita as requisições de ping ARP em redes locais.                   |
| `--dns-server <ns>`  | Realiza a resolução de DNS usando o servidor de nomes especificado.      |

### Seleção de Portas e Tipos de Varredura

| Opção               | Descrição                                                                                               |
| ------------------- | ------------------------------------------------------------------------------------------------------- |
| `--open`            | Mostra apenas portas abertas.                                                                           |
| `--top-ports <num>` | Escaneia o número especificado das portas mais comuns.                                                  |
| `-p-`               | Escaneia todas as portas TCP.                                                                           |
| `-p22-110`          | Escaneia todas as portas entre 22 e 110.                                                                |
| `-p22,25`           | Escaneia apenas as portas especificadas 22 e 25.                                                        |
| `-F`                | Varredura rápida. Escaneia as 100 principais portas.                                                    |
| `-sS`               | Realiza uma varredura TCP SYN.                                                                          |
| `-sT`               | Realiza uma varredura TCP connect, útil quando os privilégios para varredura SYN não estão disponíveis. |
| `-sA`               | Realiza uma varredura TCP ACK, útil para mapeamento de regras de firewall.                              |
| `-sU`               | Realiza uma varredura UDP.                                                                              |
| `-sV`               | Detecta versões de serviços nos serviços descobertos.                                                   |
| `-sC`               | Executa scripts NSE categorizados como `padrão`.                                                        |
| `--script <script>` | Executa o script NSE especificado ou a categoria de script.                                             |

### Detecção e Evasão

| Opção                                | Descrição                                                                    |
| ------------------------------------ | ---------------------------------------------------------------------------- |
| `-O`                                 | Realiza a detecção do SO.                                                    |
| `-A`                                 | Ativa a detecção do SO, detecção de versão, scripts padrão NSE e traceroute. |
| `--packet-trace`                     | Mostra os pacotes enviados e recebidos.                                      |
| `--reason`                           | Exibe o motivo pelo qual o Nmap relatou o estado de uma porta ou host.       |
| `-D RND:5`                           | Usa cinco decoys aleatórios para evasão de firewall/IDS.                     |
| `-e <interface>`                     | Especifica a interface de rede usada para a varredura.                       |
| `-S 10.10.10.200`                    | Especifica o endereço IP de origem para a varredura.                         |
| `-g <port>` / `--source-port <port>` | Especifica a porta de origem para a varredura.                               |

### Opções de Saída

| Opção          | Descrição                                                                                          |
| -------------- | -------------------------------------------------------------------------------------------------- |
| `-oA filename` | Armazena os resultados em todos os formatos de saída disponíveis usando `filename` como nome base. |
| `-oN filename` | Armazena os resultados no formato normal.                                                          |
| `-oG filename` | Armazena os resultados no formato grepable.                                                        |
| `-oX filename` | Armazena os resultados no formato XML.                                                             |

### Opções de Desempenho

| Opção                        | Descrição                                                         |
| ---------------------------- | ----------------------------------------------------------------- |
| `--max-retries <num>`        | Define o número de tentativas para probes de varredura de portas. |
| `--stats-every=5s`           | Exibe o status da varredura a cada 5 segundos.                    |
| `-v` / `-vv`                 | Exibe saída detalhada durante a varredura.                        |
| `--initial-rtt-timeout 50ms` | Define o tempo limite inicial de RTT.                             |
| `--max-rtt-timeout 100ms`    | Define o tempo limite máximo de RTT.                              |
| `--min-rate 300`             | Envia pacotes em uma taxa não inferior à especificada.            |
| `-T <0-5>`                   | Define o modelo de tempo, de `0` paranoico a `5` insano.          |

## **Varredura de portas**

```bash
nmap --open -p- -sS --min-rate 5000 -vvv -n -Pn 192.168.0.1 -oG allPorts
```

Varredura rápida TCP de todas as portas que ignora DNS e descoberta de hosts, mostra progresso detalhado e armazena a saída em formato grepable.

<figure><img src="https://hacking-notes.jord4n.pro/~gitbook/image?url=https%3A%2F%2F3467118603-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FwJ00xYl3QY03Wq54i4By%252Fuploads%252Fe6BGuXp1hLil6uT3Jtic%252Fimage.png%3Falt%3Dmedia%26token%3D96d46423-ca25-4471-a563-42daeae3be1e&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=bcba8a61&#x26;sv=1" alt=""><figcaption></figcaption></figure>

## **Varredura de versão de porta**

```bash
nmap -p22,80,443 -sCV 192.168.0.1 -oN targeted
```

Varredura direcionada de serviços e scripts padrão contra portas selecionadas, salva no formato de saída normal.

<figure><img src="https://hacking-notes.jord4n.pro/~gitbook/image?url=https%3A%2F%2F3467118603-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FwJ00xYl3QY03Wq54i4By%252Fuploads%252F2MsfGLpxVpuiWEE7sRjJ%252Fimage.png%3Falt%3Dmedia%26token%3D767e772a-f3ea-4fee-b266-0c73398b7a4f&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=b468a586&#x26;sv=1" alt=""><figcaption></figcaption></figure>

## **Identificação de dispositivos conectados à rede**

```bash
nmap -sn 192.168.0.1/24
```

Varredura de descoberta de hosts para identificar sistemas ativos em uma faixa de rede sem escanear portas.

<figure><img src="https://hacking-notes.jord4n.pro/~gitbook/image?url=https%3A%2F%2F3467118603-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FwJ00xYl3QY03Wq54i4By%252Fuploads%252FEFDeAo8BSjtTrsirRHC8%252Fimage.png%3Falt%3Dmedia%26token%3D679e4610-aa84-4b59-80e0-1a08f0c9140b&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=753ed2d0&#x26;sv=1" alt=""><figcaption></figcaption></figure>

## Evitando firewalls com o Nmap

{% hint style="info" %}
Existem vários métodos para contornar um firewall usando a ferramenta Nmap. Abaixo estão algumas das técnicas mais usadas e eficazes para esse propósito
{% endhint %}

### Ajustar o tamanho dos pacotes enviados

> A técnica de evasão MTU ou "Maximum Transmission Unit" consiste em ajustar o tamanho dos pacotes enviados para evitar sua detecção pelo firewall. O Nmap permite configurar manualmente o tamanho máximo dos pacotes para garantir que eles sejam pequenos o suficiente para passar pelo firewall sem serem detectados.

```bash
nmap 192.168.0.1 --mtu 8
```

### Adicionar dados de preenchimento

> Essa técnica envolve alterar o comprimento dos dados enviados para que fiquem curtos o suficiente para não serem detectados pelo firewall. O Nmap permite aos usuários configurar manualmente o comprimento dos dados enviados para burlar a detecção.

```bash
nmap -p22 192.168.0.1 --data-length 21
```

### Definir manualmente o número da porta de origem

> Essa técnica envolve configurar manualmente o número da porta de origem dos pacotes enviados para evitar a detecção. Com o Nmap, os usuários podem especificar uma porta de origem aleatória ou uma porta específica para contornar o firewall.

```bash
nmap -p22 192.168.0.1 --source-port 53
```

### Enviar pacotes falsos para a rede

> Essa técnica de evasão permite que pacotes falsificados sejam enviados pela rede para confundir sistemas de detecção de intrusão e evitar a detecção pelo firewall. Com a `-D` opção, o Nmap envia pacotes falsificados junto com pacotes reais para ocultar a atividade do usuário.

```bash
nmap -p22 192.168.0.1 -D 192.168.0.100,192.168.0.152
```

### Fragmentação dos pacotes enviados

> Essa técnica envolve fragmentar os pacotes enviados para que o firewall não consiga identificar o tráfego como uma varredura. A `-f` opção do Nmap permite que os pacotes sejam fragmentados e enviados em partes para evitar a detecção.

```bash
nmap -p22 192.168.0.1 -f
```

### Alterar o endereço MAC do pacote

> Essa técnica de evasão consiste em modificar o endereço MAC do pacote para evitar sua detecção pelo firewall. O Nmap permite configurar manualmente o endereço MAC para disfarçar o tráfego.

```bash
nmap -p22 192.168.0.1 --spoof-mac f4:69:42:f4:a7:d0
```

## Verificação de vulnerabilidades com scripts do Nmap

```bash
nmap --script "vuln and safe" -p445 10.10.10.10 -oN vulnScan
```

> Este script do Nmap permite analisar as vulnerabilidades de um host específico. Ao executar scripts das categorias **vuln** (vulnerabilidades) e **safe** (varreduras seguras), ele identifica possíveis vulnerabilidades de segurança. Os resultados são salvos em um arquivo chamado **vulnScan** para análise posterior.

**Enumeração Linux (sem credenciais)**

```bash
enum4linux -a 10.10.10.10
```

<figure><img src="https://783634792-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-fce72ab9ffa72b4149e4e03a00e2fef1cef79467%2Fimage%20(600).png?alt=media" alt=""><figcaption></figcaption></figure>

**Enumeração Linux com credenciais**

```bash
enum4linux -a 10.10.10.10 -u admin -p password1
```

<figure><img src="https://783634792-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-729956858769d747348cf1bc4f10825b000854d4%2Fimage%20(601).png?alt=media" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://hacking-notes.jord4n.pro/pt-br/reconnaissance/nmap.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
