Comment puis-je savoir quel OS de serveur un site particulier exécute?

13

Existe-t-il un moyen de vérifier quel OS de serveur un site particulier exécute? Par exemple à partir de la ligne de commande linux. Peut-être via telnet? Mais tout ce que je peux obtenir de "telnet www.google.com http" est:

Trying 209.85.173.104...
Connected to www.l.google.com.
Escape character is '^]'.

Est-ce que quelqu'un peut insister sur le sujet si possible?

ervv
la source

Réponses:

13

Vous pouvez rechercher la fonctionnalité d'empreinte digitale du système d'exploitation intégrée à NMap.

Cependant, si vous recherchez quelque chose comme "Qu'est-ce que Google exécute?" vous n'irez pas loin car vous ne saurez pas ce qui se cache derrière leurs équilibreurs de charge, ou les pare-feu les bloqueront, et les empreintes digitales ne peuvent être que précises afin que vous puissiez obtenir de faux rapports et que vous n'irez nulle part lorsque la connexion est en quelque sorte NAT 'ed.

Bart Silverstrim
la source
2
Merci. J'ai recherché apt repos pour nmap et trouvé l'application xprobe, conçue exclusivement à cette fin.
ervv
15

De nombreux sites vous le diront dans les en-têtes HTTP:

$ curl -s -I hotmail.com | grep Server
Server: Microsoft-IIS/7.5

$ curl -s -I pinterest.com | grep Server
Server: nginx/0.8.54

Certains incluent le système d'exploitation et parfois la version:

$ curl -s -I linuxquestions.com | grep Server
Server: Apache/2.2.9 (Unix)

$ curl -s -I red.com | grep Server
Server: Apache/2.2.3 (Red Hat)

$ curl -s -I slashdot.org | grep Server
Server: Apache/2.2.3 (CentOS)

$ curl -s -I bar.com | grep Server
Server: Apache/2.2.21 (Unix) mod_ssl/2.2.21 OpenSSL/0.9.8r DAV/2 PHP/5.3.8

Certains écrivent leur propre logiciel de service Web:

$ curl -s -I google.com | grep Server
Server: gws

$ curl -s -I yahoo.com | grep Server
Server: YTS/1.20.10

Mais certains n'envoient pas l'en- Servertête:

$ curl -s -I serverfault.com 
HTTP/1.1 200 OK
Cache-Control: public, max-age=41
Content-Length: 129706
Content-Type: text/html; charset=utf-8
Expires: Tue, 27 Mar 2012 13:01:46 GMT
Last-Modified: Tue, 27 Mar 2012 13:00:46 GMT
Vary: *
Date: Tue, 27 Mar 2012 13:01:04 GMT


$ curl -s -I www.facebook.com 
HTTP/1.1 302 Found
Location: http://www.facebook.com/common/browser.php
P3P: CP="Facebook does not have a P3P policy. Learn why here: http://fb.me/p3p"
Set-Cookie: datr=sbpxT_PpXR9FO5mMTy8pCTjD; expires=Thu, 27-Mar-2014 13:03:45 GMT; path=/; domain=.facebook.com; httponly
Content-Type: text/html; charset=utf-8
X-FB-Debug: VJycxKwQ9bAV0Z/n6jfN1WSFx4pqj2337c1jc+pPlE0=
X-Cnection: close
Content-Length: 0
Date: Tue, 27 Mar 2012 13:03:45 GMT

Tout ou partie de ceux-ci pourraient mentir. La suggestion de Bart nmapest plus susceptible d'être exacte mais ne peut pas produire des résultats exacts à 100% pour les raisons qu'il a mentionnées. Cela n'a même pas de sens parfois, par exemple avec le nombre de serveurs impliqués dans l'exécution d'une seule requête HTTP chez Google, leurs serveurs Web, serveurs de recherche, serveurs de base de données, serveurs de mise en cache et tout ce qu'ils exécutent pourraient tous potentiellement utiliser différents systèmes d'exploitation et vous n'auriez aucun moyen de savoir.

Ladadadada
la source