# 01 - Скан nmap

<https://nmap.org/>**Nmap** - пожалуй самый мощный инструмент командной строки для сканирования сети и проверки устройств, их открытых портов, а также для определения информации об операционных системах и службах, запущенных на удаленных узлах в сети. \
К тому же его функционал легко расширяется за счет плагинов написанных на Lua

```bash
// Быстрый скан подсети, без проверки открытых портов (ищем живые хосты)
nmap -sn 192.168.140.0/24
```

```bash
// Скрытое SYN сканирование, + все порты TCP, ОС и службы и вывод в файл
nmap -sS -A -p- -T4 192.168.140.129 -oN result.txt
*
// Сканирование SYN сканирование, + все порты UDP, ОС и службы и вывод в файл
nmap -sU -A -p- T4 192.168.140.129 -oN result.txt 
```

Нужно понимать что флаги `-A` и -`T4` являются агрессивными, а значит это повышает риск быть обнаруженным.\
Исходя из задачи: "найти в локальной сети web-server" .\
Я бы рекомендовал следующие шаги:

```bash
// Находим хосты с открытими портами 80 и 443 в подсети /24
nmap -sS  -p 80,443 192.168.0.1/24
*
// Идентифицируем web-сервер и его версию (без определения ОС)
nmap -sV  -p 80,443 192.168.0.100
```

Так же от уклонения от firewall или IDS бывает полезно использовать `ACK`-сканирование (`nmap -sA`), `фрагментировать` пакеты (`nmap -f`), играться с `mtu (`nmap --mtu`)` добавлять в пакет случайные байты - `nmap --data-length, принудительно задавать исходящий порт пакета (nmap --source-port).`

<figure><img src="/files/5uzlJrW9co6fSYJ4Db9A" alt=""><figcaption><p>Пример работы Nmap</p></figcaption></figure>

В данном примере сканирования, нас итересуют открытые порты 22 - SSH и 80 - Apache.\
Запомним этот момент, в дальнейшем будем работать с ними.


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://reeves0x0.gitbook.io/linux-under-attack/scan/01-skan-nmap.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
