Accueil
Bienvenue !
Who's that Chuck ?
Articles
Investigation numérique
Virtual-to-Remote-Physical
Prométhée, intranet éduc.
Frenzy, mini CD live
Sécu. Open/Closed Source
Installer FreeBSD 5
Powered by Unknown !
FreeBSD / Nmap (1/2)
FreeBSD / Nmap (2/2)
telnetd
ftpd
Apache
Bind
Lukemftpd
OpenSSH
PHP
Qpopper
Sendmail
Sendmail / Smtpscan
Sendmail / Smtpmap
En cours d'élaboration :
Analyseurs d'empreintes
Logiciels
Portages
Projet HeV
Liens
Sites BSD en français
Liste systèmes BSD
Projets à l'honneur
Recherche
avec
|
Powered by Unknown !
OpenSSH
Les serveurs SSH, tels qu'OpenSSH, affichent spontanément certaines informations sensibles, et tout particulièrement sous FreeBSD, où la version livrée en standard permet de connaître le type et (indirectement) la version du système :
# telnet localhost 22
SSH-1.99-OpenSSH_2.9 FreeBSD localisations 20020307
^D
Protocol mismatch.
|
Ces affichages peuvent-être débrayés en appliquant un patch1 (testé avec OpenSSH 2.9 sous FreeBSD 4.6) sur les sources du système (à condition, bien sûr, de les avoir installés) :
# cd /usr/src/crypto/openssh
# patch < openssh.patch
# cd /usr/src/secure
# make depend
# make
# make install
|
Après application du patch, le serveur se comporte comme suit :
# telnet localhost 22
SSH-1.99-Unknown
^D
Protocol mismatch.
|
L'application ScanSSH ne permet pas d'en savoir plus :
# scanssh 127.0.0.1
127.0.0.1 SSH-1.99-Unknown
|
Et, dans ce dernier cas, seules les traces (dans /var/log/auth.log) varient. On peut ainsi trouver les messages :
- scanned from 127.0.0.1 with SSH-1.0-SSH_Version_Mapper. Don't panic. pour un test avec ScanSSH ;
- Bad protocol version identification '^D' from 127.0.0.1 pour un test avec une session telnet interrompue ;
- Did not receive identification string from 127.0.0.1 pour un test avec une session telnet sur temporisation expirée ou un simple test de connexion sur le port SSH.
Plus tout une variété de traces selon que des comptes et des mots de passe sont essayés :
- fatal: Timeout before authentication for 127.0.0.1 pour un test avec un client SSH sur temporisation expirée ;
- input_userauth_request: illegal user joe et Failed password for illegal user joe from 127.0.0.1 port 1234 ssh2 pour un test avec un client SSH(2) et un compte inexistant ;
- Failed password for root from 127.0.0.1 port 1234 pour un test avec un client SSH, un compte existant et un mot de passe erroné ;
- etc.
- Alternativement, il était possible de se contenter de modifier les chaînes de versions dans le fichier version.h.
|