У мене є програма, яка спілкується з деяким сервером. Я хочу знати, що таке IP цього сервера. Як я можу захопити весь трафік із конкретної програми, а не лише весь трафік, як це робить Wireshark?
У мене є програма, яка спілкується з деяким сервером. Я хочу знати, що таке IP цього сервера. Як я можу захопити весь трафік із конкретної програми, а не лише весь трафік, як це робить Wireshark?
Відповіді:
Можна захопити весь мережевий трафік для даної програми, перехопивши дзвінки API Sockets. Це інструменти, які можуть допомогти.
Проксокет написав Луїджі Ауріема. Він перехоплює дзвінки API і економить захоплений трафік як готовий Wireshark файл .cap у форматі tcpdump. Ніщо не є більш пояснювальним, ніж зображення, яке надав сам Луїджі:
NirSoft має додаток SocketSniff, яке дозволяє фіксувати трафік певного процесу. Малюнок також вартує тисячі слів:
На жаль, згадані інструменти, ймовірно, не підтримують 64-бітні програми. Однак можна записати користувальницький перехоплювач за допомогою бібліотеки mhook, що підтримує 32-бітний та 64-бітний API.
strace
може допомогти. Дивіться тут: askubuntu.com/a/12465/505090
Microsoft Network Monitor може дозволити вам сказати "захоплюйте лише пакети, надіслані в та з цієї програми".
Найпростіший у використанні - Fiddler 2. Це налагоджувач, який дозволяє переглядати запити HTTP, HTTPS та FTP (обидва, якщо вони налаштовані) з будь-якою програмою на вашому ПК.
Після його встановлення для націлювання на конкретну програму просто натисніть та утримуйте пункт меню " Будь-який процес ", а потім перетягніть курсор до відкритого вікна та відпустіть його. Він показуватиме цільову програму лише до того, як ви клацнете правою кнопкою миші на пункт меню, який тепер зчитує цільовий процес червоним текстом, щоб звільнити його.
У Windows TCPView повинен робити все, що вам потрібно: він може показати вам всі TCP та UDP-з'єднання, які певна програма відкрила.
Однак я думаю, що це стане в нагоді лише в тому випадку, якщо програма відкриє з'єднання і залишить його відкритим; вони не збираються показувати весь мережевий трафік певною програмою. Можливо, наприклад, він здійснює дуже короткий дзвінок по телефону додому під час завантаження, але з'єднання припиняється до моменту запуску TCPView.
Монітор процесів може допомогти отримати більш детальну інформацію, але я не використовував її, тому не знаю, наскільки це відображає мережеві розетки.
проксіфікатор : https://www.proxifier.com
Це хороша програма для налаштування проксі для вашої окремої програми на ОС Windows.