# Отчет по выполнению Занятия 4. Модель OSI. Транспортный уровень L4.
## Практическая работа 4.
## Задание к практической работе 4:
### Задание для практической работы:
1) Настроить инфраструктуру в соответствии со схемой сети.
2) Провести сканирование сети в разных режимах.
3) Настроить SPAN на switch так, чтобы Kali Linux могла обрабатывать трафик.
4) Провести MITM-атаку.
### **Часть 1. Настройка инфраструктуры в соответствии со схемой сети.**
Исходная топология сети:

Запустим Firewall pfSense:

Отредактируем файл /etc/network/interfaces, чтобы машине автоматически выдавался ip-адрес. Также перезагрузим сеть:
```=
nano /etc/network/interfaces
service networking restart
```

Получили ip-адрес:

Проверим доступ в сеть:
```=
ping 8.8.8.8
ping ya.ru
```

Для kali linux проверим выданный ip-адрес и доступ в сеть:
```=
ip a
ping 8.8.8.8
ping ya.ru
```

Аналогичная проверка для Win7:

### **Часть 2. Проведение сканирования сети в разных режимах.**
Самый базовый случай обнаружения других машин в сети - содержимое arp-таблицы:
```=
sudo arp -a
```

Мы занем ip-адрес нашей машины (kali), попробуем пропинговать какую-ниюудь машину в подсети (введем случайный адрес):
```=
ping 192.168.1.64 - результат нам ничего не дает
ping 192.168.1.101 - есть машина с таким ip-адресом
ping 192.168.1.102 - есть машина с таким ip-адресом
ping 192.168.1.103 - результат нам ничего не дает
ping 192.168.1.104 - результат нам ничего не дает
```


После нескольких попыток также обновилась и arp-таблица:

Однако ручной преребор ip-адресов - очень непродуктивный метод, если речь идет о большой инфраструктуре (очевидно, что при таком методе речи о скорости не идет).
Существует ряд инструментов, которые автоматизируют процесс перебора.
1) Netdiscover - утилита, которая поводит сканирование заданного диапазона, отправляя arp-запросы. Собственно, с помощью этих запросов и обнаруживаются ip-адреса машиин в сети:
```=
netdiscover -r 192.168.1.0/24 -i eth1
```

До сканирования:

Во время сканирования:


Плюс использования данной утилиты - файервол такое пропустит и задача поиска будет выполнена.
Главный минус такого активного поиска - слишком много "шума", то есть, если в инфраструктуре имеется система мониторинга трафика, то она, очевидно обноружит такую аномалию (огромное количество ARP-пакетов).
Существует также второй сценарий использования данной утилиты - прослушивание трафика на выбранном интерфесе:
```=
netdiscover -i eth1 -p
```

Теперь выключим Debian и Win7, затем снова включим, чтобы машины на старте начали отправлять arp-пакеты:

Вот, что удалось получить:

2) Nmap - утилита, которая сканирует сеть, используя различные диапазоны. Это сканирующий комбайн, так как автоматизиция перебора в этой утилите очень гибкая.
```=
nmap -sL 192.168.1.0/24
```

Проведем сканирование, которое вычислит ip-адреса, чтобы их потом пропиговать (будут отправляться arp-пакеты):
```=
namp -sn 192.168.1.0/24
```


Теперь проведем общее сканирование трафика:
```=
nmap 192.168.1.0/24
```

Проведем сканирование с функцией определения операционной системы:
```=
nmap -O 192.168.1.0/24
```
Видим активность в трафике:

Резульат сканирования:


Проведем сканирование, которое определлит не только ОС, но и сервисы (с их версией), скрипты и трассировки:
```=
nmap -A 192.168.1.0/24
```




Проведем сканирование доступности всех портов у заданного адреса:
```=
nmap 192.168.1.102 -p1-65535
```

Проведем сканирование UDP:
```=
nmap 192.168.1.102 -sU
```

### **Часть 3. Настройка SPAN на switch так, чтобы Kali Linux могла обрабатывать трафик.**
Новая топология:

Проведем настройку SPAN (Switch Port ANalyser локальное зеркалирование используется для копирования траффика с порта или vlan на другой порт этого же коммутатора).
Сначала натсроим kali:
```=
nano /etc/network/interfaces
```
Добавим в файл-конфигурацию интерфейсов:
```
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet manual
up /usr/bin/ip link set eth1 promisc on
```
Перезапустим сетевые службы:
```=
systemctl restart networking
```

promisc - режим, при котором интерфейс принимает все фреймы, которые на него приходят.
Запустим wireshark на eth1:

Проведем настройку зеркалирования портов на Switch (Cisco):
```=
en
conf t
monitor session 1 source interface e0/0 both
monitor session 1 destination interface e1/0
```
На интерфесе e0/0 будем собирать трафик, а на e1/0 будем отправлять.


На Win7 зашли в Chrome:

На kali видим трафик, исходящий от Win7:

### **Часть 4. MITM-атака на инфраструктуру.**
Топология сети для проведения MITM-атаки:

Необходимо превратить машину KALI-MITM в комутатор, сделав соединение между e0 и e1 типа bridge.
Для этого установим bridge utils:
```=
apt update
apt install bridge-utils
```

Отредактируем файл-конфигурацию сетевых интерфесов:
```=
nano /etc/network/interfaces
```
```
auto eth0
iface eth0 inet manual
auto eth1
iface eth1 inet manual
auto br0
iface br0 inet dhcp
bridge_ports eth0 eth1
```
Перезагрузим сетевые службы и проверим применные настройки:
```=
systemctl restart networking
ip a
```

Запустим wireshark на br0 (на kali-mitm) - мы увидим трафик с kali linux (не mitm):
