Skip to content

Référence des ports

Port 9000 (TCP) – PHP-FPM / SonarQube

Port partagé par PHP-FPM FastCGI, l'interface web SonarQube et divers serveurs HTTP de développement.

tcpRegisteredSouvent attaqué

État par défaut

Ouvert lorsque PHP-FPM, SonarQube ou un serveur de dev tourne. PHP-FPM est destiné à localhost uniquement ; exposer le socket FastCGI est dangereux.

Attaques courantes

  • Exécution de code à distance via un socket PHP-FPM FastCGI exposé
  • Requêtes FastCGI directes contournant le serveur web pour exécuter du PHP
  • Tableaux de bord SonarQube non authentifiés divulguant code source et jetons
  • Scan des serveurs HTTP de dev à la recherche d'endpoints de débogage et de secrets

Durcissement

  • Lier PHP-FPM à un socket Unix ou 127.0.0.1, jamais à une interface publique
  • Ne jamais exposer le port FastCGI à Internet
  • Authentifier SonarQube et changer les identifiants admin par défaut
  • Filtrer le 9000 à localhost/hôtes de confiance et corriger le service
  • Désactiver ou verrouiller les serveurs de dev en production

Commande nmap

nmap -p9000 --script http-title,fcgi,banner <target>

Remplacez <target> par l’hôte ou la plage que vous êtes autorisé à scanner.

Qu'est-ce qui tourne sur le port 9000 ?

Le port 9000 est ambigu — plusieurs services courants l'utilisent par défaut. Le plus souvent, c'est le socket FastCGI de PHP-FPM auquel parle un serveur web (Nginx), mais c'est aussi l'interface web SonarQube et un choix fréquent pour les serveurs HTTP de développement. Identifiez toujours le service réel avant d'évaluer le port.

Pourquoi c'est important pour la sécurité

PHP-FPM parle le protocole FastCGI sans aucune authentification — il fait confiance à quiconque se connecte. Il est destiné à écouter sur localhost ou un socket Unix ; si le 9000 est joignable sur le réseau, la frontière de confiance disparaît. SonarQube sur le 9000 expose des analyses de code source et des jetons, et les serveurs de dev divulguent souvent des endpoints de débogage et des secrets.

Comment il est attaqué

Contre un socket PHP-FPM exposé, les attaquants envoient des requêtes FastCGI forgées directement, contournant le serveur web, pour exécuter du PHP arbitraire et obtenir une exécution de code à distance. Sur SonarQube, ils visent les tableaux de bord non authentifiés pour récolter code source et jetons CI, et ils scannent les serveurs HTTP de dev à la recherche de routes de débogage, traces d'erreurs et identifiants fuités.

Liste de durcissement

Liez PHP-FPM à un socket Unix ou à 127.0.0.1, jamais à une interface publique, et n'exposez jamais le port FastCGI à Internet. Authentifiez SonarQube et changez les identifiants admin par défaut. Filtrez le 9000 à localhost ou aux hôtes de confiance, corrigez le service, et désactivez ou verrouillez les serveurs de dev en production. Utilisez la commande nmap pour identifier ce qui écoute réellement sur les systèmes que vous êtes autorisé à tester. </content>

Ports liés

Questions fréquentes

Qu'est-ce qui tourne sur le port 9000 ?
Le port 9000 est ambigu. C'est le port par défaut du socket FastCGI de PHP-FPM, de l'interface web SonarQube et de nombreux serveurs HTTP de développement. Identifiez le service réel avant d'évaluer le risque.
Pourquoi exposer PHP-FPM sur le 9000 est-il dangereux ?
PHP-FPM parle FastCGI sans aucune authentification. Si le 9000 est joignable, un attaquant peut envoyer des requêtes FastCGI forgées pour exécuter du PHP arbitraire et obtenir une RCE. Liez-le à localhost ou un socket Unix et filtrez le port.