Skip to content

Référence des ports

Port 3690 (TCP) – Subversion (svnserve)

Port par défaut du protocole svn:// de Subversion servi par svnserve.

tcpRegisteredSouvent attaqué

État par défaut

Ouvert sur les hôtes exécutant svnserve. Souvent configuré pour un accès anonyme en lecture (voire en écriture).

Attaques courantes

  • Récupération anonyme du code source et de l'historique du dépôt
  • Force brute des identifiants du fichier passwd de svnserve
  • Exposition de secrets commités dans l'historique (clés, mots de passe)
  • Exploitation de vulnérabilités d'analyse de svnserve non corrigées

Durcissement

  • Préférer svn+ssh:// ou HTTPS (mod_dav_svn) au protocole svn:// en clair
  • Désactiver l'accès anonyme (anon-access = none) et exiger une authentification
  • Restreindre les IP sources / exécuter derrière un VPN
  • Nettoyer les secrets de l'historique et renouveler ceux qui ont fuité
  • Maintenir Subversion à jour et exécuter svnserve en utilisateur non privilégié

Commande nmap

nmap -p3690 -sV <target>

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

Ce qui s'exécute sur le port 3690

Le port 3690 est le port enregistré du protocole svn:// de Subversion, servi par le démon autonome svnserve. Il permet aux clients de récupérer, commiter et parcourir l'historique complet d'un dépôt de gestion de versions via un protocole personnalisé léger — une alternative au tunneling de Subversion via SSH ou HTTP(S).

Pourquoi c'est important pour la sécurité

svnserve est fréquemment déployé avec un accès anonyme en lecture, parfois en écriture, ce qui signifie que quiconque atteint 3690 peut cloner tout votre arbre source et son historique. Cet historique contient souvent des secrets — clés API, mots de passe, noms d'hôtes internes — commités puis « supprimés » mais toujours récupérables. Le protocole natif est aussi en clair, donc identifiants et code sont exposés sur le réseau.

Comment c'est attaqué

Les attaquants et les bots recherchent les ports 3690 ouverts et tentent une récupération anonyme pour collecter le source et les secrets embarqués. Là où une authentification existe, le fichier passwd de svnserve est brute-forcé, surtout lorsqu'il utilise un hachage faible. Les versions de svnserve non corrigées ont aussi eu des failles d'analyse de protocole pouvant planter ou compromettre le démon.

Liste de durcissement

Préférez svn+ssh:// ou HTTPS via Apache mod_dav_svn afin que le trafic soit chiffré et authentifié, et évitez d'exposer le port svn:// brut. Définissez anon-access = none et exigez des identifiants, restreignez les IP sources ou placez le service derrière un VPN, et nettoyez les secrets de l'historique (en renouvelant tout ce qui a été exposé). Gardez Subversion à jour et exécutez svnserve en utilisateur non privilégié. La commande nmap ci-dessus identifie la version du service sur les hôtes que vous êtes autorisé à tester.

Ports liés

Questions fréquentes

svnserve sur le port 3690 est-il chiffré ?
Non. Le protocole natif svn:// est en clair, donc les identifiants et le code source transitent sans chiffrement. Utilisez plutôt svn+ssh:// ou HTTPS via Apache mod_dav_svn.
N'importe qui peut-il lire mon dépôt sur le port 3690 ?
Si anon-access reste à la valeur par défaut 'read', oui — quiconque atteint 3690 peut récupérer tout votre source et son historique. Définissez anon-access = none et exigez une authentification.