HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > БЕЗОПАСНОСТЬ И УЯЗВИМОСТИ > Этичный хакинг или пентестинг
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 27.04.2026, 00:16
Сергей Попов
Новичок
Регистрация: 14.08.2015
Сообщений: 0
С нами: 5656404

Репутация: 0
По умолчанию



На каждом втором внутреннем пентесте я нахожу учётные данные ещё до того, как запущу первый эксплойт. Не потому что заказчики глупы - потому что в плоской корпоративной сети достаточно включить сетевой интерфейс в режим прослушивания, чтобы увидеть всё: от FTP-паролей до NTLM-хешей в открытом виде. Сниффинг трафика и MITM-атаки - тот фундамент, без которого ни качественный пентест не провести, ни понять, что именно нужно защищать.
Цитата:

Статья написана от первого лица со слов моего коллеги. Приятного и полезного чтения!
Здесь - пошаговое руководство по трём инструментам: tcpdump для захвата на удалённых машинах без графики, Wireshark для визуального разбора дампов и Ettercap для ARP spoofing в лабораторных условиях. Каждый инструмент показан с реальным выводом терминала и объяснением каждого флага. Никакой теории ради теории - только то, что работает на практике.
Зачем пентестеру перехват трафика сети
Прежде чем лезть в команды, разберёмся с мотивацией. В MITRE ATT&CK сниффинг - это техника Network Sniffing (T1040), входящая в тактики Credential Access и Discovery. Проще говоря, перехват трафика сети решает сразу две задачи: обнаружение структуры сети и сбор учётных данных.

На внутреннем пентесте первые 30 минут обычно уходят на пассивную разведку. Запускаешь tcpdump, пишешь весь трафик в pcap-файл, потом открываешь его в Wireshark. За эти полчаса узнаёшь больше, чем из любого скана: какие VLAN существуют, где стоят принтеры с веб-интерфейсом на голом HTTP, кто ходит на внутренний портал без шифрования, какие broadcast-протоколы выдают имена хостов. Вот почему сниффинг трафика Wireshark - первый шаг, а не архаизм из учебников.

Русскоязычные статьи обычно описывают MITM-атаку man-in-the-middle как академическую концепцию - Алиса, Боб, Мэлори и обмен ключами. Для понимания это полезно, но в реальной инфраструктуре всё проще и опаснее одновременно. Злоумышленнику в локальной сети не нужно подменять ключи шифрования - достаточно отравить ARP-кеш двух хостов и пропускать трафик через себя. Дальше дело техники: незашифрованные протоколы отдадут всё сами.
Пассивный и активный сниффинг - два режима работы
Разница между пассивным и активным сниффингом - не просто классификация из учебника. От выбранного режима зависит, оставите ли вы следы в сети и какие инструменты пентеста сети понадобятся.
Пассивный сниффинг трафика - молчаливое наблюдение
Пассивный сниффинг трафика - это перевод сетевого интерфейса в promiscuous mode и тихое прослушивание всего, что проходит по сегменту. Вы ничего не отправляете в сеть, не генерируете аномальный трафик, не ломаете ARP-таблицы. Просто слушаете.

Проблема: в современных сетях с коммутаторами (свитчами) пассивный сниффинг практически бесполезен. Коммутатор отправляет фреймы только на тот порт, где находится MAC-адрес получателя. В отличие от хабов, которые вещали всё на все порты, свитч изолирует трафик. Вы увидите только свои пакеты и broadcast-рассылки.

Включить promiscuous mode в Linux - одна команда:
Код:
sudo ip link set eth0 promisc on
. Для Wi-Fi - monitor mode через
Код:
sudo airmon-ng start wlan0
. В monitor mode беспроводной адаптер захватывает все 802.11-кадры в радиусе действия, включая кадры чужих сетей, но payload в сетях с WPA2/WPA3 зашифрован - для расшифровки нужен PSK и захваченный 4-way handshake. Открытые сети без шифрования сегодня встречаются редко (хотя в гостиницах и кофейнях - бывает). Именно поэтому более актуальный вектор - активная атака с поднятием rogue access point, а не пассивный monitor mode.



Активный сниффинг через ARP-отравление сети
Когда пассивный подход не работает, переходим к активному. Активный сниффинг - это вмешательство в работу сети для перенаправления чужого трафика на свой интерфейс. Самый распространённый метод - ARP-отравление сети, оно же ARP Cache Poisoning (T1557.002 в MITRE ATT&CK, тактики Credential Access и Collection).

Почему ARP так легко атаковать? Протокол ARP не имеет встроенной аутентификации. Представьте: в офисе любой может положить на стойку ресепшена визитку с чужим именем, и все будут звонить по указанному на ней номеру. Именно так работает ARP - любой хост может отправить gratuitous ARP-ответ, заявив, что MAC-адрес шлюза - это его собственный MAC. Жертва обновит свой ARP-кеш и будет слать кадры с MAC-адресом атакующего в качестве destination. Коммутатор по своей CAM-таблице доставит эти кадры на порт атакующего.

Весь трафик теперь проходит через нас. Читаем, записываем, модифицируем - а потом пересылаем настоящему получателю, чтобы жертва ничего не заметила. Это и есть MITM-атака man-in-the-middle в чистом виде.



Подготовка лаборатории для сниффинга и MITM-атак
Прежде чем запускать любые команды - подготовьте лабораторную среду. Никогда не тестируйте ARP spoofing в продакшн-сети без письменного разрешения. Это уголовно наказуемо, и «я просто учился» - не аргумент для суда.

Что понадобится:
  • ОС атакующего: Kali Linux 2024.x или Parrot OS (tcpdump, wireshark, ettercap-text-only стоят из коробки)
  • Виртуальная сеть: три VM в одном bridge-сегменте - атакующий, жертва (любая ОС), шлюз (можно роутер на OpenWrt или просто Linux с включённым forwarding)
  • Все VM в одной подсети без VLAN-сегментации, NAT через шлюзовую VM
  • IP forwarding на атакующей машине:
    Код:
    echo 1 > /proc/sys/net/ipv4/ip_forward
    - без этого трафик жертвы будет тонуть на вашем интерфейсе
Я использую VirtualBox с Internal Network - он создаёт изолированный L2-сегмент, который отлично имитирует плоскую корпоративную сеть. VMware с Custom Network тоже подойдёт. Для полноты картины поднимите на одной из VM простой HTTP-сервер с формой логина:
Код:
python3 -m http.server 8080
- так вы получите реальный трафик для перехвата.
tcpdump - анализ трафика в командной строке без GUI
tcpdump - основной инструмент для захвата пакетов на удалённых серверах, где нет графической среды. На пентесте я часто получаю SSH-доступ к Linux-машине во внутреннем сегменте и первым делом запускаю tcpdump, чтобы понять, что вообще происходит вокруг.

Базовая команда:
Код:
sudo tcpdump -i eth0 -nn -v
. Флаг
Код:
-i eth0
- интерфейс,
Код:
-nn
отключает DNS-резолвинг (без него tcpdump генерирует кучу DNS-запросов и тормозит вывод),
Код:
-v
добавляет verbose-информацию.

Для прицельного захвата - BPF-фильтры. Это тот же синтаксис, что и capture filters в Wireshark, обе утилиты работают поверх libpcap. Несколько боевых примеров:
  • Код:
    sudo tcpdump -i eth0 port 80 or port 21
    - HTTP и FTP, протоколы, где пароли летают открытым текстом
  • Код:
    sudo tcpdump -i eth0 arp
    - только ARP-пакеты, незаменимо для обнаружения ARP-спуфинга в сети
  • Код:
    sudo tcpdump -i eth0 -A -s0 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)>2)) != 0)'
    - только HTTP-пакеты с payload в ASCII (да, фильтр выглядит страшно, но работает безотказно)
Для записи в файл с последующим анализом сетевых пакетов в Wireshark:
Код:
sudo tcpdump -i eth0 -w /tmp/capture.pcap -c 10000
. Флаг
Код:
-c 10000
остановит запись после 10 000 пакетов, чтобы дамп не разросся до неуправляемых размеров.

Вот реальный вывод tcpdump при перехвате HTTP-трафика с учётными данными:

Код:


Код:
$ sudo tcpdump -i eth0 -A -nn 'tcp port 80 and host 192.168.1.50'
tcpdump: verbose output suppressed, use -v for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
14:23:07.441223 IP 192.168.1.50.48212 > 192.168.1.10.80: Flags [P.], seq 1:224
...POST /login HTTP/1.1
Host: 192.168.1.10
Content-Type: application/x-www-form-urlencoded

username=admin&password=Qwerty123!
Три строки - и у вас логин с паролем. Именно это я показываю заказчику в отчёте, когда объясняю, почему внутренние сервисы без TLS - не «приемлемый риск», а прямая угроза. Флаг
Код:
-A
декодирует payload в ASCII, а фильтр
Код:
tcp port 80 and host 192.168.1.50
сужает захват до HTTP-трафика конкретного хоста.
Wireshark - сниффинг трафика с визуальным анализом
Если tcpdump - это стетоскоп, то Wireshark - полноценный микроскоп для сетевого трафика. На воркшопах я всегда говорю: захватывайте tcpdump-ом, анализируйте в Wireshark. Каждому инструменту - своё место.

Установка на Linux:
Код:
sudo apt install wireshark
. На Windows - скачиваете с wireshark.org и ставите вместе с Npcap (драйвер для перехвата пакетов). При установке Wireshark предложит добавить пользователя в группу
Код:
wireshark
- соглашайтесь, иначе придётся запускать от root.

Открываем pcap-файл, записанный tcpdump: File → Open → выбираем capture.pcap. Wireshark разложит каждый пакет по протокольным слоям: Ethernet, IP, TCP/UDP, прикладной протокол. Это и есть анализ сетевых пакетов в чистейшей форме.

Display filters - главное оружие. В отличие от capture filters, display filters работают постфактум и используют собственный синтаксис. Вот фильтры, с которых я начинаю на каждом пентесте:
  • Код:
    http.request.method == "POST"
    - все POST-запросы, где обычно передаются формы логина
  • Код:
    ftp.request.command == "PASS"
    - FTP-пароли открытым текстом
  • Код:
    tcp.port == 23
    - Telnet-сессии, вся аутентификация без шифрования
  • Код:
    http.authorization contains "Basic"
    - HTTP Basic Auth с base64-кодированными (не зашифрованными!) учётными данными
  • Код:
    dns.qry.name contains "internal"
    - DNS-запросы к внутренним доменам, которые раскрывают структуру инфраструктуры
Отдельно про Follow Stream - без этой функции я не провожу ни один анализ. Правый клик по пакету → Follow → TCP Stream. Wireshark соберёт все пакеты одной TCP-сессии и покажет диалог между клиентом и сервером в читаемом виде. Для HTTP - полный запрос и ответ, для FTP - всю последовательность команд включая: USER и PASS.

Пример через tshark (консольный Wireshark) - фильтрация HTTP-запросов с учётными данными:

Код:


Код:
$ tshark -r capture.pcap -Y 'http.request.method == "POST"' \
  -T fields -e ip.src -e http.host -e http.request.uri
192.168.1.50    portal.corp.local    /auth/login
192.168.1.55    helpdesk.corp.local  /api/v1/session
192.168.1.42    wiki.corp.local      /dologin.action
Три внутренних сервиса, три хоста, которые шлют учётные данные по HTTP. Флаг
Код:
-Y
задаёт display filter,
Код:
-T fields
переключает вывод в табличный формат,
Код:
-e
указывает поля для извлечения. Я регулярно вставляю этот однострочник в скрипты для автоматического сбора «low-hanging fruit» из большого дампа.
Ettercap и ARP spoofing - MITM-атака на практике
Ettercap - инструмент, заточенный под MITM-атаки в локальных сетях. Он автоматизирует ARP-отравление, перехват трафика и даже модификацию пакетов на лету. В MITRE ATT&CK это Adversary-in-the-Middle (T1557) и подтехника ARP Cache Poisoning (T1557.002).

📚 Часть контента скрыта. Этот материал доступен участникам сообщества с рангом One Level или выше


Получить доступ просто — достаточно проявить активность на форуме



Маппинг на MITRE ATT&CK - инструменты пентеста сети в контексте фреймворка
Каждое действие, описанное выше, имеет точный идентификатор в MITRE ATT&CK. Это нужно не только для отчёта - маппинг помогает защитникам понять, какие детекшн-правила писать.

ДействиеТехника MITRE ATT&CKТактикаИнструментПасси вный захват пакетовNetwork Sniffing (T1040)Credential Access, Discoverytcpdump, WiresharkARP-отравление и перехватARP Cache Poisoning (T1557.002)Credential Access, CollectionEttercap, arpspoofMITM-проксированиеAdversary-in-the-Middle (T1557)Credential Access, CollectionEttercap, mitmproxyLLMNR/NBT-NS PoisoningLLMNR/NBT-NS Poisoning and SMB Relay (T1557.001)Credential Access, CollectionResponderМодификация трафика на летуTransmitted Data Manipulation (T1565.002)ImpactEttercap filtersЗеркалирование трафикаTraffic Duplication (T1020.001)ExfiltrationPort mirroring

Обратите внимание: T1040 и T1557 - в разных тактиках. Пассивный сниффинг - Discovery и Credential Access. Активный MITM - Credential Access и Collection. Это не формальность: разные тактики подразумевают разные методы обнаружения.
Обнаружение и защита от прослушивания сетевого трафика
Знать атаки и не знать защиту - полдела. Вот что реально работает против сниффинга и MITM-атак на уровне сетевой инфраструктуры.

Dynamic ARP Inspection (DAI) - функция управляемых коммутаторов, которая проверяет ARP-пакеты по привязке IP-MAC из DHCP Snooping таблицы. Кто-то отправил gratuitous ARP с чужим IP - пакет дропается, порт может быть заблокирован. Это единственная надёжная защита от Ettercap ARP spoofing на уровне L2.

DHCP Snooping - предшественник DAI. Коммутатор запоминает, какой IP выдал DHCP-сервер какому MAC-адресу, и строит таблицу легитимных привязок. Без DHCP Snooping DAI работать не будет - они идут в связке.

Обнаружение promiscuous mode. Хост в promiscuous mode по-другому обрабатывает некоторые Ethernet-фреймы. Утилита
Код:
nmap --script=sniffer-detect
отправляет специально сформированные пакеты и анализирует ответы - так можно обнаружить сниффер в сети. Метод работает только в пределах L2-сегмента и часто даёт false negatives на современных ОС с включённым rp_filter - не стоит полагаться на него как на единственное средство детекции.

Мониторинг ARP-аномалий. IDS вроде Suricata или Snort детектируют аномально частые ARP-ответы от одного хоста - признак ARP-спуфинга. Правило: отслеживать количество gratuitous ARP с одного source MAC за единицу времени. Если коммутатор не поддерживает DAI - это единственный оставшийся механизм детекции.

Шифрование всего. Самая радикальная и самая надёжная мера. HTTPS с HSTS на всех внутренних сервисах, SMB signing, отказ от FTP и Telnet в пользу SFTP и SSH, WPA3-Enterprise для Wi-Fi. Если весь трафик зашифрован, сниффинг превращается в бесполезный захват мусора. Но я ни разу не видел корпоративную сеть, где это было реализовано на 100%.

Сегментация сети. Плоская сеть - подарок для атакующего. VLAN-сегментация с ACL между сегментами ограничивает broadcast-домен и делает ARP-отравление возможным только в пределах одного VLAN. Бухгалтерия, разработка и серверный сегмент в разных VLAN - атакующий в одном сегменте не достанет до другого через ARP spoofing.
Вопрос к читателям
Для тех, кто разворачивал Ettercap в лаборатории с тремя VM: при запуске
Код:
ettercap -T -M arp:remote
с включённым IP forwarding через
Код:
/proc/sys/net/ipv4/ip_forward
жертва обычно сохраняет связность. Но при работе через bridge-интерфейс в VirtualBox часто возникает packet loss у жертвы выше 30%, даже если forwarding включён. Какой параметр ядра или настройку виртуальной сети вы используете, чтобы минимизировать потери? Поделитесь конкретной конфигурацией: тип сети в гипервизоре, значения
Код:
net.bridge.bridge-nf-call-iptables
или другие sysctl, которые решили проблему.
 
Ответить с цитированием

  #2  
Старый 28.04.2026, 06:05
pitdole
Новичок
Регистрация: 11.04.2026
Сообщений: 0
С нами: 50931

Репутация: 0
По умолчанию

Dai получается не будет работать где нету dhcp ? Или можно руками заполнить таблицу ? Но тут возможно удобнее статик арп прописать на хосте.

А порт секьюрити не поможет если настроить на 1 мак на порту.
А ещё 802.1х ?
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Создать сделку

Продавец: ник или ID

Название сделки:

Сумма USDT:

Срок сделки, дней:

Кто платит комиссию:

Условия сделки:

После создания сделки средства будут зарезервированы в холде до завершения сделки.

×

Мои сделки

Загрузка...
×

Сделка


Загрузка чата...