[gull] OpenSSH information de service
    Daniel Cordey 
    dc at mjt.ch
       
    Wed Oct  3 11:21:44 CEST 2007
    
    
  
On Wednesday 03 October 2007, D'Inverno Jeremy wrote:
> J'ai regardé dans le sshd.conf, je suis tombé sur l'option Banner, mais
> qui, finalement, n'est pas du tout ca.
En effet. Je n;ai rien trouve non-plus dans les fichiers de config. C'est dans 
le code source qu'il faut regarder. Dans le fichier openssh/sshconnect.c, on 
trouve les lignes :
	/* Send our own protocol version identification. */
	snprintf(buf, sizeof buf, "SSH-%d.%d-%.100s\n",
	            compat20 ? PROTOCOL_MAJOR_2 : PROTOCOL_MAJOR_1,
 	          compat20 ? PROTOCOL_MINOR_2 : minor1,
 	           SSH_VERSION);
	if (atomicio(vwrite, connection_out, buf, strlen(buf)) != strlen(buf))
                fatal("write: %.100s", strerror(errno));
C'est donc la qu'il faut modifier le code. Soit en mettant le buffer a NULL 
(buf = ''), soit en ecrivant :
	if (0 and atomicio(...
L'envoi de ce message existe aussi dans le fichire openssh/sshd.c. On a 
affaire a la meme sequence de code et la modification a effectue est 
identique.
dc
 et le texte "SSH-2.0-OpenSSH_4.3p2 Debian-8ubuntu1" est compose d'un 
sprintf() :
	
	sprintf(str,
		"SSH-%d.%d-%.100s",
		major,
		minor,
		where);
Ou, 'where' vaut : "OpenSSH_4.6p1 Debian-5" sur mon systeme.
C'est ce que je peux deduire en faisant "strings $(which sshd)". 
Ne reste plus qu'a trouve le code source 
a partir du format :
	SSH-%d.%d-%.100s
Qui se trouve dans le code... 
    
    
More information about the gull
mailing list