Как найти exe прослушивания по порту?

10

Я пытаюсь с netstat -ab -p tcp -n и среди результатов получить:

  TCP    0.0.0.0:47001          0.0.0.0:0              LISTENING
Can not obtain ownership information

Я работаю администратором и получаю это сообщение. Я также скачал утилиту, чтобы показать сетевую активность для exe, но ничего открытого не прослушивает порт 47001 в соответствии с утилитой.

Как я могу узнать, что слушает?

Джей Уайт
источник
Вы пробовали что-то вроде Wireshark?
vvsraju
@vvsraju wireshark печально известен тем, что (по понятным причинам) не показывает вам EXE. Это просто не упоминается в пакете.
Barlop

Ответы:

11

Попробуйте netstat -oполучить идентификатор процесса (PID), а затем используйте, tasklist |findstr <pid>чтобы увидеть имя и тип процесса. Диспетчер задач также показывает PID и имя процесса.

Вы можете комбинировать другие свои переключатели с -oтаким образом:netstat -bona -p tcp

barlop
источник
Я не упомянул -b, потому что netstat с -b может быть полезен, но некоторые проблемы, A) требуют администратора, и B) требуется время, чтобы получить результат.
Барлоп
tasklist | findявляется проблемой (следовательно, также не упоминается до редактирования), потому что причудливо по какой-то причине, это не всегда работает. Что всегда работает с фильтрацией списка задач, так это список задач> затем type a |find(или, как некоторые предпочитают, найти файл шаблона - одна команда).
Барлоп
Я иногда использую netstat -b с grep. netstat -abon | grep ":33" -A 1(имя процесса указывается в квадратных скобках через одну строку, иногда через две строки, так что -A 2. Можно просто забыть и выполнить grep -C 2 просто для дополнительной информации. Или в файл (netstat -abon> a), затем grep, если Мне нужно выполнить grep более одного раза (так как -b замедляет его). Что касается полезных ключей, вы можете выполнить netstat -aonp tcp или даже netstat -paon tcp когда вы отфильтруете, чтобы найти, тогда меньше потребуется -p tcp. Так netstat -aon | find ":1234"(для порт) или | найти «1234» для PID.
barlop
4

Поскольку вы говорите об окнах, вы можете использовать " netstat -b ", чтобы увидеть, какой исполняемый файл использует этот порт.

В качестве альтернативы, Sysinternal TCPVIew делает то же самое, но гораздо лучше.

ndrix
источник
Он -bуже использует ; это в -ab. Кроме того, сокращение «вы есть» - это «вы».
Сис Тиммерман
1

http://www.iana.org/assignments/port-numbers перечисляет этот порт как: winrm 47001 / tcp Служба удаленного управления Windows Ryan Mack rmack & microsoft.com 29 апреля 2009 г.

Теперь это не доказывает, что именно это используется на вашем компьютере, но это довольно хорошее предположение.

Джейми Кокс
источник
Я тоже это видел, но хотел бы быть уверен. Если это служба Windows, почему netstat не может получить информацию о владельце?
Джей Уайт
@JayWhite, я думаю, -bищет путь, которого нет у Systemслужбы.
Сис Тиммерман