¿Por qué el sistema está escuchando en el puerto 8000?

13

Noté por accidente hoy que tengo un servidor web desconocido escuchando en el puerto 8000. Al abrir http: // localhost: 8000 solo devuelve 404, por lo que no tengo ninguna pista de qué es exactamente lo que está escuchando allí.

Solía netstat -anodescubrir que el proceso con PID 4 está escuchando en ese puerto. PID 4 es el proceso del sistema. ¿Por qué mi sistema está escuchando en ese puerto, sin que yo realmente inicie un servidor? ¿O cómo puedo averiguar qué está escuchando exactamente allí?

He leído las preguntas relacionadas sobre el puerto 80 y el puerto 443 , pero ninguno de los servicios mencionados allí se estaba ejecutando en mi sistema. Y las otras sugerencias allí tampoco funcionaron.

editar:

La respuesta HTTP del servidor aparece Microsoft-HTTPAPI/2.0como el servidor.

edit2:

Según lo solicitado por Shadok, aquí están las entradas de TCPView con 8000 como puerto. Pero dudo que sea útil en absoluto ...

Resultados de TCPView

dar un toque
fuente

Respuestas:

17

IIRC, cualquier programa que use la API del Servidor HTTP para ejecutar un servidor HTTP en Windows tendrá ese servicio cargado al proceso del Sistema porque se ejecuta a través del http.sysservidor del núcleo .

Se puede ver los URLs registrados por la ejecución del siguiente comando: netsh http show servicestate. Esto también incluirá el número de puerto.

netstat -ab También puede revelar qué servicios comenzaron a escuchar en un puerto determinado.

afrazier
fuente
¡Gracias! Realmente debería haberlo pensado yo mismo ... descubrí que fue VAIO Care (una utilidad de Sony) quien inició el servicio (VCAgent.exe). Pero aparentemente ese servicio no es realmente necesario. Mantuve un sniffer de red abierto para verificar si hay alguna solicitud al servidor al hacer clic en el programa, pero realmente no sucedió nada (apareció la solicitud normal en el navegador web). De todos modos, lo eliminé del inicio automático, por lo que esto debería resolverse ahora. Aunque es bastante estúpido que toda la API del servidor siempre use el proceso del Sistema.
meter el
+1 paranetstat -ab
Kevin Kibler
Lástima que mi netstat -abdice "No se puede obtener la información de propiedad", así que estoy atascado, pero de lo contrario sigo siendo un comando útil
Tominator
1
Como referencia, mi caso es que Free Video Maker utilizó el puerto. Encontré un conflicto en el servidor de tutorial de Angular JS, así que tengo que solucionarlo.
simongcc
1
(En caso de que esto se pierda, también he agregado una respuesta). Pruebe también: netsh http show servicestate view = requestq
Nick Westgate
4

Tal vez un poco tarde, pero este hilo apareció bastante alto en mi búsqueda en Google, y parecía más relevante aunque carecía de esa información final que encontré útil.

Puede ver las URL registradas (dinámicamente) ejecutando el siguiente comando: netsh http show servicestate

PiBa-NL
fuente
1

Un poco de google muestra las aplicaciones de ejemplo de WCF que usan 8000 y la Interfaz Intel de escritorio remoto. No esperaría que estos se ejecuten como sistema.

Hay algunos troyanos / puertas traseras que usan 8000, por lo que sería una buena idea arrancar un disco antivirus y hacer un análisis completo.

Pablo
fuente
1

Puede usar TCPView para obtener más información sobre ese proceso que la que puede encontrar a través de netstat.
Si aún no sabe cuál es realmente la aplicación después de eso, publique una captura de pantalla de la línea que menciona el puerto 8000 y lo descubriremos por usted.

Shadok
fuente
TCPView no muestra más que netstat (por eso ni siquiera mencioné que lo intenté). Pero claro, agregué una captura de pantalla de las líneas del puerto 8000 a mi pregunta.
meter el
1

Los sockets del sistema (PID 4) pueden ser http.sys, en cuyo caso puede usar el comando netsh proporcionado por PiBa-NL.

Pero tenga en cuenta que hay algunos parámetros. Parece que los valores predeterminados son equivalentes a:

netsh http show servicestate view=session verbose=yes

La vista de sesiones no ayudó en mi caso, pero esto mostró el PID:

netsh http show servicestate view=requestq
Nick Westgate
fuente
¡Gracias! El PID fue la clave para mí.
duct_tape_coder
0

En mi caso, el puerto 8000 fue tomado por los controladores de la tarjeta de sonido Sound BlasterX AE-5 . El proceso Creative.AudPosServiceubicado en C:\Program Files (x86)\Creative\Connection Serviceha estado usando este puerto.

Afortunadamente, es posible cambiar este puerto. Abierta Creative.AudPosService.exe.configy el cambio de línea donde se encuentra el número de puerto <add baseAddress="http://localhost:8000/"/>a <add baseAddress="http://localhost:9999/"/>o cualquier otra cosa que no interfiera con su trabajo. Reinicie la computadora y debería estar bien.

Vladimir Jovanović
fuente