# Сканирование сетей. Лабораторная работа №3 (HW) ## Ход работы 1. Просканируем машину `ubuntu` с помощью команды `nmap -sV 192.168.103.100` ![alt text](img/image01.png) Мы обнаружили 2 сервиса на `21/tcp` и `22/tcp`, определили их тип `FTP` и `SSH` и обнаружили версию этих пакетов. Также мы смогли определить, что используется ОС Linux, о чем говорит следующее: `Service Info: OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel` 2. С помощью `docker-compose` запустим на машине сервер `PostgreSQL`. ```yaml version: '3.3' services: postgres: image: library/postgres:16.2 volumes: - postgres-data:/var/lib/postgresql environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: 1337 ports: - '5432:5432' restart: always volumes: postgres-data: ``` ![alt text](img/image02.png) 3. Снова просканируем машину `ubuntu` с помощью команды `nmap -sV 192.168.103.100` ![alt text](img/image03.png) В этот раз мы обнаружили сервис `PostgreSQL`. Nmap попробовал определить его версию, но, судя по предупреждению, ему это не удалось. Также nmap сообщает, что якобы имеется ещё один нераспознанный сервис. 4. Просканируем нестандартный порт `2839/tcp` из лабораторной №2 и порт Postgresql `5432/tcp`, указывая уровни интенсивности от 1 до 9. `nmap -sV 192.168.103.100 -p 5432,2839 --version-intensity 1` ![alt text](img/1.png) `nmap -sV 192.168.103.100 -p 5432,2839 --version-intensity 2` ![alt text](img/2.png) `nmap -sV 192.168.103.100 -p 5432,2839 --version-intensity 3` ![alt text](img/3.png) `nmap -sV 192.168.103.100 -p 5432,2839 --version-intensity 4` ![alt text](img/4.png) `nmap -sV 192.168.103.100 -p 5432,2839 --version-intensity 5` ![alt text](img/5.png) `nmap -sV 192.168.103.100 -p 5432,2839 --version-intensity 6` ![alt text](img/6.png) `nmap -sV 192.168.103.100 -p 5432,2839 --version-intensity 7` ![alt text](img/7.png) `nmap -sV 192.168.103.100 -p 5432,2839 --version-intensity 8` ![alt text](img/8.png) `nmap -sV 192.168.103.100 -p 5432,2839 --version-intensity 9` ![alt text](img/9.png) Как мы видим, при интенсивности 1-6, мы получаем информацию только о Nginx и Postgres. При 7-8, мы дополнительно видим информацию о несущствующем сервисе. При 10 Postgres начинает определяться как `Nagios NSCA 9.6.0 or later`, что не соответствует действительности. ## Выводы Мы рассмотрели работу утилиты `nmap`, а конкретно функционал определения сервисов, который позволяет подробнее понять, что за сервис скрывается за портом. Также мы поняли, что `nmap` пытаться определить сервис с разной интенсивностью, что может как помочь, так и запутать при аудите хоста. **Выполнил:** Харитонов Марат Русланович, студенческий билет М235314.