Estoy accediendo a un servicio web protegido por SSL.
Por un lado, si accedo a este servicio web con openssl s_client , copiando la solicitud HTTP POST relevante de un archivo html-request , obtengo una respuesta HTTP/1.1 200 OK .
Por otro lado, si configuro la capa SSL con stunnel (escuchando en el puerto local 1443 y reenviando el tráfico cifrado al servidor) y luego uso
cat html-request | nc localhost 1443
el servidor responde con HTTP/1.1 400 Bad Request .
Supuse que ambas herramientas no procesan previamente el contenido del archivo html-request . Pero esta suposición parece ser errónea, de lo contrario obtendría la misma respuesta en ambos casos.
Dos preguntas:
1) ¿cómo difieren openssl s_tunnel y nc en el procesamiento de los datos de entrada de html-request ?
2) ¿hay una manera de obtener un volcado hexadecimal del tráfico no cifrado de openssl s_client , considerando que uso claves privadas de curva elíptica (por lo que wireshark no puede descifrar el tráfico)? La opción -debug parece volcar el tráfico cifrado.