# Практика №4. Revers Shells & Reverse SSH connections ## Выполнил студент группы БСБО-04-20 Зырянов Антон Дмитриевич. ## Задание к практической работе №4 - Построить инфраструктуру в системе EVE-NG (есть возможность ее импортировать) - Настроить каждое устройство в соответсвии со следующими параметрами: - Kali-2021, Win-7, Win-10, Debian - получение адреса DHCP - устройство RPi-4 - использовать как “мостовое” устройство (необходимо для SSH tunneling L2) ## Инфраструктура организации: - Kali-2021 - Linux Kali 2021 (2CPU, 2GB RAM) - FW-pfsense - PfSense Firewall 2.5.2, default config (Qemu version 4.1.0, 2CPU, 2GB RAM) - Switch - Cisco IOL-L2 (2 port-groups) - Debian-RPi4 - Linux Debian 10 (1CPU, 1GB RAM) - Win-10 - Windows 10 (full) (2CPU, 2GB RAM) - Win-7 - Windows 7 (full) (QEMU 2.12, 4CPU, 4GB RAM) - Network: - Pfsense Default config (WAN-DHCP, LAN - static IP) - Internet - Cloud-1 - VLAN-10 - 172.16.10.0/24, GW 172.16.10.254 - VLAN-10 - 172.16.20.0/24, GW 172.16.20.254 ![](https://i.imgur.com/KXKwAW4.png) ## Выполнение практики ### Уровень L3 #### IP-адреса машинок: Pf-sense: WAN 192.168.8.142, LAN 192.168.1.1 ![](https://i.imgur.com/WKS6nr4.png) Kali: 192.168.8.131 ![](https://i.imgur.com/Ao0stlg.png) Debian: 192.168.1.100 ![](https://i.imgur.com/8pwEJYr.png) #### Настроим кали: Настроим и включим SSH ![](https://i.imgur.com/8J7XLG4.png) По умолчанию, в некоторых системах Linux для суперпользователя root вход по SSH с использованием пароля не работает. При попытке подключиться можно увидеть сообщение «access denied» или «permission denied». Такая настройка необходима для обеспечения большей безопасности системе. PermitRootLogin yes - разрешить подключаться по ssh к root пользователю ![](https://i.imgur.com/1eU18eL.png) Параметр PermitTunnel разрешает использование перенаправления для устройств TUN и может принимать значения yes, point-to-point (3-й уровень модели OSI), ethernet (2-й уровень модели OSI) и no. Значение yes означает, что одновременно разрешается point-to-point и ethernet. ![](https://i.imgur.com/GCsuY0U.png) Настройка пароля для root ![](https://i.imgur.com/5w6861n.png) #### Создадим tap интерфейс Создадим tun интерфейс и проверим, создался ли он на обоих машинках. ![](https://i.imgur.com/p9shpxH.png) ![](https://i.imgur.com/jkLU06x.png) ![](https://i.imgur.com/VBIWXk3.png) Настроим интерфейс на кали и включим его ![](https://i.imgur.com/3WJaXy1.png) Настроим интерфейс на дебиане и включим его ![](https://i.imgur.com/V8ApHLU.png) #### Настроим маршрутизацию ![](https://i.imgur.com/QnxRP3x.png) `ip route add 192.168.1.0/24 via 10.8.0.2` #### Настроим NAT Debian: `iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE ` А теперь пропингуем внутренний интерфейс фаервола ![](https://i.imgur.com/ka4oz6S.png) ### Уровень L2 Для начала нужно объединить оба интерфейса на debian машинке в один bridge интерфейс. > Интерфейсы Bridge являются виртуальными сетевыми интерфейсами, которые объединяют несколько физических сетевых интерфейсов для выполнения функций коммутатора (физические интерфейсы, добавленные в коммутатор, становятся портами коммутатора) > `apt install bridge-utils` > > `nano /etc/network/intefaces` В настройках интерфейсов выставляются следующие значения: ![](https://i.imgur.com/I3Vnel6.png) Далее обновляется сеть. > `service networking restart` Можно проверить ip-адреса у windows машин. Win-7: 192.168.1.103 ![](https://i.imgur.com/MiLJdVo.png) Win-10: 192.168.1.102 ![](https://i.imgur.com/tB1ffyI.png) Далее настраиваем ssh-туннель уровня L2 от debian до Kali: > `ssh root@192.168.8.131 -o Tunnel=ethernet -w any:any` ![](https://i.imgur.com/7bEsmr3.png) Получение tap0 интерфейса на debian: ![](https://i.imgur.com/cJR8LcO.png) На Kali: ![](https://i.imgur.com/CX32LF1.png) Теперь объединяем добавленный интерфейс в существующий bridge: > `brctl addif br0 tap0` ![](https://i.imgur.com/OJQBVxb.png) Теперь нужно только включить интерфейс на обоих устройствах. > `ip link set dev tap0 up` Получим ip адрес внутренней сетки на tap0 интерфейс Kali ![](https://i.imgur.com/HnGJyKp.png) Доступ до внутреннего интерфейса фаервола получен. ![](https://i.imgur.com/0KMninf.png) ### Настройка vlan #### Pf-sense настройка для одного vlan 1) Создание самих VLAN-ов ![](https://i.imgur.com/ntRzAeJ.png) ![](https://i.imgur.com/76DvNEj.png) ![](https://i.imgur.com/yb9Zx4w.png) 2) Создание DHCP-сервера для VLAN-ов и по одному виртуальному интерфейсу 192.168.x.254 для каждого VLAN. ![](https://i.imgur.com/XsIMMdK.png) ![](https://i.imgur.com/X4XVSn0.png) 3) Создание правил на фаерволе для того, чтобы машины могли выходить в интернет ![](https://i.imgur.com/EEY2TqM.png) ![](https://i.imgur.com/GBFK0Is.png) #### Далее настройка VLAN на switch > e0/2# switchport mode access > e0/2# switchport access valn 10 > > e1/0# switchport mode access > e1/0# switchport access vlan 20 > > e0/0# switchport trunk encapsulation dot1q > e0/0# switchport mode trunk #### Проверка Проверим - раздался ли адрес по dhcp для vlan10 и работает ли на машинках интернет win-7 ![](https://i.imgur.com/QjD5cqU.png) ![](https://i.imgur.com/w1bumUV.png) win-10 ![](https://i.imgur.com/jWyVPfZ.png) ![](https://i.imgur.com/JxhyQGZ.png) Проверить входящий трафик, чтобы увидеть, есть ли у него теги VLAN, можно используя tcpdump с параметром -e и vlan. Запустим утилиту с Kali, у которой появился доступ к внутренней сети. > `tcpdump -i tap0 -nn -e vlan` ![](https://i.imgur.com/Llwd2a2.png)