GLBP & HSRP Attacks
Reading time: 7 minutes
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.
FHRP Hijacking Overview
Insights into FHRP
FHRP призначений для забезпечення надійності мережі шляхом об'єднання кількох маршрутизаторів в єдину віртуальну одиницю, що підвищує розподіл навантаження та стійкість до відмов. Cisco Systems представила відомі протоколи в цьому наборі, такі як GLBP та HSRP.
GLBP Protocol Insights
Створений Cisco, GLBP функціонує на стеку TCP/IP, використовуючи UDP на порту 3222 для зв'язку. Маршрутизатори в групі GLBP обмінюються пакетами "hello" з інтервалом 3 секунди. Якщо маршрутизатор не надсилає ці пакети протягом 10 секунд, вважається, що він офлайн. Однак ці таймери не є фіксованими і можуть бути змінені.
GLBP Operations and Load Distribution
GLBP виділяється тим, що дозволяє розподіл навантаження між маршрутизаторами, використовуючи одну віртуальну IP-адресу в поєднанні з кількома віртуальними MAC-адресами. У групі GLBP кожен маршрутизатор бере участь у пересиланні пакетів. На відміну від HSRP/VRRP, GLBP пропонує справжнє балансування навантаження через кілька механізмів:
- Host-Dependent Load Balancing: Підтримує постійне призначення AVF MAC-адреси хосту, що є важливим для стабільних конфігурацій NAT.
- Round-Robin Load Balancing: За замовчуванням, чергуючи призначення AVF MAC-адреси серед запитуючих хостів.
- Weighted Round-Robin Load Balancing: Розподіляє навантаження на основі попередньо визначених метрик "Ваги".
Key Components and Terminologies in GLBP
- AVG (Active Virtual Gateway): Основний маршрутизатор, відповідальний за розподіл MAC-адрес між сусідніми маршрутизаторами.
- AVF (Active Virtual Forwarder): Маршрутизатор, призначений для управління мережевим трафіком.
- GLBP Priority: Метрика, що визначає AVG, починаючи з значення за замовчуванням 100 і коливається між 1 і 255.
- GLBP Weight: Відображає поточне навантаження на маршрутизатор, яке можна регулювати вручну або через Object Tracking.
- GLBP Virtual IP Address: Служить за замовчуванням шлюзом мережі для всіх підключених пристроїв.
Для взаємодії GLBP використовує зарезервовану мультикаст-адресу 224.0.0.102 та UDP порт 3222. Маршрутизатори передають пакети "hello" з інтервалом 3 секунди і вважаються неопераційними, якщо пакет пропущено протягом 10 секунд.
GLBP Attack Mechanism
Зловмисник може стати основним маршрутизатором, надіславши пакет GLBP з найвищим значенням пріоритету (255). Це може призвести до атак DoS або MITM, що дозволяє перехоплювати або перенаправляти трафік.
Executing a GLBP Attack with Loki
Loki може виконати атаку GLBP, інжектуючи пакет з пріоритетом і вагою, встановленими на 255. Попередні кроки атаки включають збір інформації, такої як віртуальна IP-адреса, наявність аутентифікації та значення пріоритету маршрутизаторів за допомогою інструментів, таких як Wireshark.
Attack Steps:
- Перейти в режим прослуховування та увімкнути IP-ретрансляцію.
- Визначити цільовий маршрутизатор і отримати його IP.
- Згенерувати Gratuitous ARP.
- Інжектувати шкідливий пакет GLBP, видаючи себе за AVG.
- Призначити вторинну IP-адресу мережевому інтерфейсу зловмисника, відображаючи віртуальну IP-адресу GLBP.
- Реалізувати SNAT для повної видимості трафіку.
- Налаштувати маршрутизацію, щоб забезпечити безперервний доступ до Інтернету через оригінальний маршрутизатор AVG.
Дотримуючись цих кроків, зловмисник позиціонує себе як "людина посередині", здатну перехоплювати та аналізувати мережевий трафік, включаючи незашифровані або чутливі дані.
Для демонстрації ось необхідні фрагменти команд:
# Enable promiscuous mode and IP forwarding
sudo ip link set eth0 promisc on
sudo sysctl -w net.ipv4.ip_forward=1
# Configure secondary IP and SNAT
sudo ifconfig eth0:1 10.10.100.254 netmask 255.255.255.0
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# Adjust routing
sudo route del default
sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.10.100.100
Моніторинг та перехоплення трафіку можна здійснити за допомогою net-creds.py або подібних інструментів для захоплення та аналізу даних, що проходять через скомпрометовану мережу.
Пасивне пояснення захоплення HSRP з деталями команд
Огляд HSRP (Протокол гарячого резервування маршрутизаторів)
HSRP - це пропрієтарний протокол Cisco, призначений для резервування мережевих шлюзів. Він дозволяє налаштувати кілька фізичних маршрутизаторів в єдину логічну одиницю з спільною IP-адресою. Ця логічна одиниця управляється основним маршрутизатором, відповідальним за напрямок трафіку. На відміну від GLBP, який використовує метрики, такі як пріоритет і вага для балансування навантаження, HSRP покладається на один активний маршрутизатор для управління трафіком.
Ролі та термінологія в HSRP
- HSRP Активний маршрутизатор: Пристрій, що виконує роль шлюзу, управляючи потоком трафіку.
- HSRP Резервний маршрутизатор: Резервний маршрутизатор, готовий взяти на себе функції, якщо активний маршрутизатор вийде з ладу.
- HSRP Група: Набір маршрутизаторів, які співпрацюють для формування єдиного стійкого віртуального маршрутизатора.
- HSRP MAC-адреса: Віртуальна MAC-адреса, призначена логічному маршрутизатору в налаштуванні HSRP.
- HSRP Віртуальна IP-адреса: Віртуальна IP-адреса групи HSRP, що виконує роль шлюзу за замовчуванням для підключених пристроїв.
Версії HSRP
HSRP має дві версії: HSRPv1 та HSRPv2, які відрізняються, в основному, ємністю групи, використанням мультикастових IP-адрес та структурою віртуальної MAC-адреси. Протокол використовує специфічні мультикастові IP-адреси для обміну інформацією про послуги, з пакетами Hello, що надсилаються кожні 3 секунди. Маршрутизатор вважається неактивним, якщо протягом 10 секунд не отримано жодного пакета.
Механізм атаки HSRP
Атаки HSRP передбачають примусове захоплення ролі Активного маршрутизатора шляхом ін'єкції максимального значення пріоритету. Це може призвести до атаки Man-In-The-Middle (MITM). Основні кроки перед атакою включають збір даних про налаштування HSRP, що можна зробити за допомогою Wireshark для аналізу трафіку.
Кроки для обходу автентифікації HSRP
- Збережіть мережевий трафік, що містить дані HSRP, у файл .pcap.
tcpdump -w hsrp_traffic.pcap
- Витягніть MD5 хеші з файлу .pcap за допомогою hsrp2john.py.
python2 hsrp2john.py hsrp_traffic.pcap > hsrp_hashes
- Зламайте MD5 хеші за допомогою John the Ripper.
john --wordlist=mywordlist.txt hsrp_hashes
Виконання ін'єкції HSRP за допомогою Loki
- Запустіть Loki для виявлення HSRP оголошень.
- Встановіть мережевий інтерфейс у проміскуїтний режим і увімкніть IP-пересилання.
sudo ip link set eth0 promisc on
sudo sysctl -w net.ipv4.ip_forward=1
- Використовуйте Loki для націлювання на конкретний маршрутизатор, введіть зламаний пароль HSRP і виконайте необхідні налаштування для імітації Активного маршрутизатора.
- Після отримання ролі Активного маршрутизатора налаштуйте свій мережевий інтерфейс і таблиці IP для перехоплення легітимного трафіку.
sudo ifconfig eth0:1 10.10.100.254 netmask 255.255.255.0
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
- Змініть таблицю маршрутизації, щоб направити трафік через колишній Активний маршрутизатор.
sudo route del default
sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.10.100.100
- Використовуйте net-creds.py або подібну утиліту для захоплення облікових даних з перехопленого трафіку.
sudo python2 net-creds.py -i eth0
Виконання цих кроків ставить атакуючого в позицію для перехоплення та маніпуляції трафіком, подібно до процедури захоплення GLBP. Це підкреслює вразливість у протоколах резервування, таких як HSRP, і необхідність надійних заходів безпеки.
Посилання
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.