Назад | Перейти на главную страницу

Может ли Wireshark считывать данные, отправляемые на / с других компьютеров?

Допустим, WireShark установлен на компьютере A. Допустим, я просматриваю видео Youtube на компьютере B.

Может ли WireShark увидеть, что делает компьютер B?

В общем, нет, Wireshark не распознает этот трафик. ErikA объясняет, почему.

Однако ... если ваша сеть поддерживает это, сама сеть может показывать компьютеру A трафик для компьютера B, и оттуда Wireshark может его захватить. Есть несколько способов добраться туда.

  • Тот же коммутатор, хороший метод Если оба компьютера находятся на одном сетевом коммутаторе, и коммутатор управляется, вероятно, можно настроить его для охвата / зеркалирования / мониторинга (условия меняются в зависимости от поставщика) трафика для порта компьютера B на порт компьютера A. Это позволит Wireshark на компьютере A видеть трафик.
  • Тот же переключатель, злой метод Если оба компьютера находятся на одном сетевом коммутаторе, и коммутатор не очень безопасен, можно выполнить так называемую атаку ARP Spoofing. Компьютер A выдает ARP-пакет, сообщающий подсети, что на самом деле это адрес шлюза, хотя это не так. Клиенты, которые принимают ARP-пакет, перезаписывают свою таблицу поиска IP: MAC-адресов с неправильным адресом и продолжают отправлять весь трафик вне подсети на компьютер B. Чтобы это сработало, компьютер B затем должен отправить его на настоящий шлюз. Это работает не на всех коммутаторах, и некоторые сетевые стеки отвергают подобные вещи.
  • Та же подсеть, злой метод Если маршрутизатор тоже не очень безопасен, атака ARP Spoofing будет работать для всей подсети!
  • Другая подсеть полностью Если компьютер B полностью находится в другой подсети, это работает, только если ядро ​​маршрутизатора поддерживает решение для удаленного мониторинга. Опять же, названия меняются, и топология сети должна быть правильной. Но это возможно.

ARP Spoofing - это единственный способ для компьютера без особых сетевых привилегий прослушивать трафик другого сетевого узла, и это зависит от того, защищает ли сетевой коммутатор от такого рода действий. Просто установить Wireshark недостаточно, необходимо предпринять некоторые другие действия. В противном случае это произойдет только тогда, когда сеть явно настроена так, чтобы это произошло.

Если вы находитесь в коммутируемой сети (что весьма вероятно), и если компьютер A не используется в качестве маршрута по умолчанию для компьютера B (маловероятно), то нет, компьютер A не сможет видеть пакеты, предназначенные для компьютера B.

Как намекал Фарсикер, раньше вы могли. Десять лет назад во многих сетях использовались концентраторы, которые были похожи на коммутаторы, но тупее, поскольку они отражали каждый пакет на каждый порт вместо того, чтобы выяснять, куда каждый пакет должен пойти, и отправлять его только туда. До этого в некоторых сетях использовался коаксиальный Ethernet с общим кабелем (без концентратора или коммутатора), который транслировала и слушала каждая станция.

В обеих вышеупомянутых ситуациях машина с Ethereal (старое название Wireshark) действительно могла отслеживать всю сеть.

Хотя в наши дни такая ситуация применима к очень немногим сетям, я упоминаю ее для контекста и для понимания того, почему идея использования Wireshark для слежки за другими все еще находится в головах многих людей.

Пит

Если мы все равно упоминаем злые методы: при перегрузке некоторых неуправляемых коммутаторов таблица CAM предположительно может работать, и это задокументировано где-то в tcpdump docs IIRC.