62 votes

Se connecter à HTTPS avec netcat (nc)

Je travaille sur un devoir pour mon cours à l'université. La tâche consiste à récupérer des pages Web sur HTTPS en utilisant les éléments suivants nc (netcat) .

Pour récupérer une page par HTTP, je peux simplement faire ce qui suit :

cat request.txt | nc -w 5 <someserver> 80

En request.txt J'ai une requête HTTP 1.1

GET / HTTP/1.1
Host: <someserver>

Maintenant... Cela fonctionne parfaitement bien. Le défi est cependant de récupérer une page web qui utilise HTTPS ?

Je reçois un certificat de page comme celui-ci. Et voici le point où je suis actuellement bloqué

openssl s_client -connect <someserver>:443

86voto

Bill Weiss Points 10602

nc ne fait pas de https. openssl s_client est aussi proche que vous pourrez l'être. Faites quelque chose comme ça :

$ cat request.txt | openssl s_client -connect server:443

62voto

Rafe Points 4602

ncat --ssl

Sur Ubuntu :

sudo apt-get install nmap
printf 'GET / HTTP/1.1\r\nHost: github.com\r\n\r\n' | ncat --ssl github.com 443

Même chose que pour le Super utilisateur Les clients telnet ou netcat peuvent-ils communiquer via SSL ? mais nmap utilise ncat con nc (par exemple, nc --ssl ).

Sur Debian ou Ubuntu :

sudo apt-get install ncat

9voto

Yves Junqueira Points 671

Vous voulez probablement utiliser stunnel.

Un programme GNU permettant de crypter des connexions TCP arbitraires avec Secure Sockets Layer (SSL).

http://www.stunnel.org

C'est très UNIX-y. Un grand outil pour une tâche simple.

2voto

Ryan Sampson Points 2898

Demandez de l'aide au professeur ou à l'assistant technique. Vous n'essayeriez jamais de faire HTTPS sur netcat dans le monde réel ( openssl s_client serait mon outil de premier choix, mais il existe d'autres options), de sorte que les chances de trouver la "bonne" réponse souhaitée par le professeur en interrogeant des personnes du monde réel sont faibles. Je passerais probablement en revue toutes les diapositives/notes des cours magistraux ; en général, ce genre de questions "impossibles" trouvent en fait leur réponse dans les cours magistraux et sont posées juste pour voir qui est réellement attentif en classe.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X