# Network_Basic-Малышев_Роман-Практика-5
*Выполнил Малышев Роман*.
### Задание:
1) Провести атаку на DHCP. На коммутаторе настроить защиту от Rogue DHCP Server и от DHCP starvation.
2) Провести атаку VLAN hopping. На коммутаторе настроить защиту от данного типа атаки (либо предложить рекомендацию).
3) Провести атаку CAM-table overflow. На коммутаторе настроить защиту от CAM-table overflow.
4) Провести атаку MAC-spoofing. Настроить защиту от атаки MAC-spoofing, используя Port Security
5) Настроить ACL:
- KALI имеет доступ куда угодно, кроме debian машинки по протоколу HTTPж;
- Win-7 машинка имеет доступ только в интернет и в VLAN-1;
- Debian машинка имеет доступ только в интернет.
6) В отчете необходимо отразить скрин атаки, а также конфигурацию устройства (либо часть конфигурации устройства) - которое было настроено для защиты от атак. Дополнительно в отчете отразить конфигурацию роутера при настройке ACL.
## Настройка сети
Поднастроим сеть, которая была в практике 4.
На комутаторе интерфейс eth0/0 будет транковый, интерфейсы eth1/0 и eth0/2 access с соотвествующими VLANами.


Настроим firewall.








Зайдем с Kali-MITM на firewall через браузер и переимеуем интерфейсы.
Разрешим на интерфейсах VLAN_10 и VLAN_20 любой трафик. 
Проверим на компах, что получили адреса, которые прописали.


Установим на Kali-MITM yersinia, python3, dsniff.
Поднастроим switch, а имено на интерфейсы eth0/1 и eth0/3 пропишем VLANы.

Проверим, что Kali Linux получила соответствующие ip адреса.
## Атака arp-spoofing.
Проведем атаку с Kali Linux.
На Kali Linux включим мершутизацию.

arp таблицы до атаки.



Запустим атаку.

Таблица во время атаки (firewall и win7).


Как видим, если win7 обращается к firewall, теперь этот трафик идет через Kali Linux.
### Защита от arp-spoofing.
Настроим на свитче Dynamic Arp inspection. То есть дадим ограничение на количество пакетов, которые должны проходить через не доверенный интерфейс, настроим доверенный интерфейс и настроим списки доступа.



Как видим mac адрес в arp таблице не поменялся.

И в свиче вылетают ошибки.

Но при этом на Win 7 нет связи с файерволом.
## Атака DHCP-spoofing.
Запустим на Kali Linux Yersinia.

Запустим Wireshark на интерфейсе e1 у Firewall
Видим, что пока что там нет DHCP запросов.

Запустим атаку на Kali Linux, нужно ввести mac адрес атакуемого DHCP сервера.

Видим, что прилетело огромное количество DHCP запросов.

### Защита от DHCP-snooping.
Сделаем аналогичные настройки как у Arp inspection с той разницей, что для dhcp snooping.



Ещё нужно не забыть включить защиту от dhcp snooping командой: `ip dhcp snooping`.
Проведем теперь ещё раз атаку. И видим что пришло не большое количество пакетов, то есть можно сказать, что сработала защита (ограничение стояло 15).

### Атака DHCP starvator
Проведем атаку DHCP starvator.Но перед эти установим для дальшнейшей подмены DHCP server на Kali Linux.

Теперь приступимк атаке DHCP starvator. Я хочу заполнить пул адресов VLAN10 и VLAN20 на настоящем DHCP сервере.
Установим на Kali Linux pyDHCPStarvator (я просто раньше уже установил pyDHCPStarvator, поэтому время другое).

Отключим защиту от dhcp snooping командой: `no ip dhcp snooping`.
Запустим атаку.

Видим что полетели DHCP запросы.

Увидим что пул на VLAN10 заполнился.

А теперь включим защиту от dhcp snooping. И убедимся что на VLAN20 не будет заполнен пул адресов.
Запустим атаку.

Посмотрим что в DHCP Leases ничего не добавилось.

Отключим защиту опять и запустим атаку.

Видим, что заполнился пул адресов VLAN20.

### Подмена DHCP server
Я перполнял пул адресов VLAN10 и VLAN20 для того, чтобы не мог настоящий DHCP сервер раздавать IP адреса.
Продолжим теперь настройку DHCP сервера на Kali Linux.


Попробуем теперь перзапустить win7 и видим, что он получил наш адрес от подменного DHCP сервера.

## Атака CAM-table overflow
Скачаем утилиту macof.py и установим.

Посмотрим на таблицу на свитче.

Запустим атаку.

Посмотри теперь на таблицу на свитче, видим что появилось куча новых mac адресов. 
### Защита от CAM-table overflow.
Влючим Port Security на свитче на интерфейсе eth0/1.


Запустим атаку ещё раз. Видим, что сработала защита.

И порт выключился.
Настроим Port Security restrict.
. Но тут надо было ещё влючить порт.
Все отработало. 
## Атака VLAN hoping
Внедрим злоумышленика LinuxEve1.

На LinuxEve1 установим yersinia.

Проведем атаку на протокол DTP, чтобы порты у свитча перевести в режим транк.

Результат:

Получим на интерфейсе eth0 ip адрес.

Мы уже внедрились в сеть. Теперь узнаем какие есть VLANы. Можно было запустить nmap 192.168.0.0 -e eth0, тогда бы увидели что у нас две сети.

Предположим, что это VLAN10 и VLAN20.

Подготовим интерфейсы Kali.

Получим на них ip адреса.

Все в сеть внедрились.

### Рекомендации по защите от VLAN hopping
Чтобы защититься от подобных атак, нужно принять следующие меры:
- Убедитесь, что порты не настроены на автоматическую работу в режиме транка. Отключите протокол DTP при помощи команды `switchport nonegotiate`.
- Не использовать стандартный VLAN1, а взять какой-нибудь другой.
- Использовать специальный VLAN ID для всех транковых портов.
- настроить Port Security, каждому интерфейсу свой mac address.
- и самое банальное не дать злоумышленику физического доступа к комутационному шкафчику.
## Атака MAC-spoofing.
Посмотрим какой mac адерс на хакертской машине.

Поменяем mac адрес на интерфейсе eth0.

Пинги до firewallа проходят
.
### Защита от атаки MAC-spoofing
Настроим защиту от атаки MAC-spoofing, используя Port Security. И увидим, что теперь пинги до до firewallа не проходят.

Вернем на Kali Linux прежний mac адрес. И пинги проходят.

## Настроим ACL:
- KALI имеет доступ куда угодно, кроме debian машинки по протоколу HTTP;
- Win-7 машинка имеет доступ только в интернет и в VLAN-1;
- Debian машинка имеет доступ только в интернет.
Проверим, что Kali Linux имеет доступ к Debian по протоколу HTTP. Но перед этим на Debian нужно установить nginx.

Настроим правила для Kali Linux.


И видим что Kali Linux не имеет доступ к Debian по протоколу HTTP.

На win7.

Имеет доступ к интернету.

На Debian.
