Processus inconnu en cours d'écoute sur le port 8080

14

Le problème: quelque chose écoute sur le port 8080

  • Si je charge la page avec Safari, j'obtiens une page vierge (la page est blanche mais "Développer → Afficher la source de la page" est grisée)
  • Si je fais un telnet sur le port 8080, je reçois un message de réponse

    $ telnet 127.0.0.1 8080
    Trying 127.0.0.1...
    Connected to localhost (127.0.0.1).
    Escape character is '^]'.
    

Mais

  • lsof ne montre aucun processus d'écoute sur le port 8080

    $ sudo lsof -iTCP -sTCP:LISTEN -P -n | grep 8080
    $
    
  • netstat ne montre aucun processus utilisant le port 8080

    $ netstat -n  | grep 8080
    $
    
  • Je peux ouvrir le port 8080 par programmation (avec un serveur Web, par exemple) sans erreur de port.

  • nmap ne répertorie pas le port comme utilisé

    sudo nmap 127.0.0.1
    
    Starting Nmap 6.01 ( http://nmap.org ) at 2012-10-03 16:16 CEST
    Nmap scan report for localhost (127.0.0.1)
    Host is up (0.000081s latency).
    Not shown: 990 closed ports
    PORT      STATE SERVICE
    22/tcp    open  ssh
    631/tcp   open  ipp
    1023/tcp  open  netvenuechat
    3283/tcp  open  netassistant
    3306/tcp  open  mysql
    3689/tcp  open  rendezvous
    5001/tcp  open  commplex-link
    5003/tcp  open  filemaker
    5432/tcp  open  postgresql
    50003/tcp open  unknown
    
    Nmap done: 1 IP address (1 host up) scanned in 10.92 seconds
    

La même chose se produit pour le port 80 mais pas pour les autres ports (par exemple, 81 ou 8081).

Question Quel processus répond à ces ports quand aucun autre processus ne les ouvre? Quel est le but de ce comportement?

modifier

  • si j'ouvre le port avec un programme, le port peut alors être utilisé normalement. Une fois le port fermé, le comportement étrange réapparaît. Exemple:

    • l'accès au port 8080 fournit une connexion à un processus inconnu
    • J'ouvre le port avec tomcat
    • accès au port 8080 va à tomcat et tout va bien
    • Je ferme le port (quitte tomcat)
    • le port est répertorié comme non utilisé (voir ci-dessus)
    • l'accès au port 8080 fournit une connexion à un processus inconnu
  • les règles du pare-feu indiquent simplement que le port n'est pas bloqué

    $ sudo ipfw show
    00001    926004   100891783 allow ip from me to any dst-port 80,8080,3128,5001,5003,443
    65535 125057043 94341114828 allow ip from any to any
    

Modifier 2

  • le programme d’écoute n’est pas un serveur HTTP (c’est-à-dire ne réagit pas à une GET index.html HTTP/1.0 demande
Matteo
la source
Installez Little Snitch et essayez à nouveau les étapes. Je ne suis pas sûr que cela fonctionne pour les processus d'écoute, peut-être que quelqu'un d'autre peut le confirmer.
duci9y
Installé LittleSnitch: rien n’a été signalé concernant l’accès à localhost: 8080.
Matteo

Réponses:

17

J'ai remarqué ce problème sur mon Macbook. J'essayais d'utiliser le port 8080 pour certains tests et j'ai reçu l'erreur qu'un autre processus l'écoutait déjà. Mon invocation de nmap retourné des résultats différents selon que j'utilisais sudo ou pas. Cela n'a pas de sens pour moi.

J'étais vraiment inquiet quand je ne pouvais pas comprendre quels étaient les processus qui écoutaient sur ces ports en utilisant sudo lsof -P -n -iTCP | grep LIST. Cela m'a amené à penser qu'il y avait un logiciel malveillant qui se cachait intentionnellement.

J'ai fini par enlever des fichiers de /Library/LaunchDaemons/ jusqu'à ce que je l'ai réduit au coupable. L'application responsable de tous ces ports ouverts était le client Cisco AnyConnect Secure Mobile. Malheureusement, pour que ce client Cisco VPN fonctionne, tous ces ports doivent être ouverts. Apparemment, il est également responsable de l’ajout de la règle de pare-feu que vous avez signalé avec ipfw show.

Je n'arrive toujours pas à comprendre pourquoi il ne montre pas quel processus est responsable des ports ouverts lors de l'utilisation lsof. Aucune application ne doit pouvoir éviter d’être répertoriée à l’aide de cette méthode. Peut-être que la raison pour laquelle le processus n'est pas répertorié recevra une réponse dans une autre question sur stackexchange.

Brian Wong
la source
Merci! En fait, Cisco AnyConnect est installé ... AnyConnect installe également une extension de noyau qui est probablement la cause de l'impossibilité de voir un processus.
Matteo
J'ai le même problème, mais avec le port 80: apple.stackexchange.com/questions/99068/… . Pourquoi Cisco n'a-t-il pas alloué un autre port?
amphibient
Je n’ai pas installé le client Cisco, mais j’ai l'habitude d'avoir . J'ai découvert en envoyant des demandes au port 8080, qui sudo lsof -i -P | grep 8080 montré comme aller à une adresse IP que je n'ai pas reconnue, et ifconfig | grep that a montré que c'était l'interface en4. Cette interface était quelque chose que le VPN de Cisco avait configuré, et elle y était, même si le VPN de Cisco avait déjà été désinstallé.
eis