¿Cómo los servicios web de Amazon generan claves SSH?

0

¿Cómo los servicios web de Amazon generan claves SSH? ¿Genera el par de claves completamente en el navegador o genera las claves en el servidor y nos envía la clave privada a través de HTTPS?

Traté de averiguar qué está sucediendo mirando las solicitudes y la respuesta en la consola de desarrollo en Firefox. Pero no podía entender lo que estaba pasando.

Primero, hay una llamada POST a enlace con los siguientes datos

{"keyName":"testkey", "region":"us-east-1"}

La respuesta a la llamada es el propio par de claves privadas

{"keyFingerprint":"0a:93:6b:50:95:cc:2e:7c:ac:67:b1:c2:4b:ea:c5:72:dd:23:28:ea","keyMaterial":"-----BEGIN RSA PRIVATE KEY-----\nMIIEogIBAAKCAQEAs49qE5S4YEX0zgVyCMl1zaU26c7bJ4GpgerP0uEkNOS9oJ7lleP+S6JmszBy\nvsZn2XCv1bwj/Yi4/Pqxd+38WFJRzYNh8bqfe4e3BoSCubCW2mGlTehf8Bzkhhkh/JilHj4UlTQK[..snip..]\n4S5HcZrTeMkVukx8nXmchdI7sy16LHQEwdOdKaLemDynwljdQ2nYMq382wgdV1aRyvM=\n-----END RSA PRIVATE KEY-----","keyName":"testkey"}

Hay una segunda llamada POST a enlace donde La respuesta es una lista de los nombres clave y el ID de la huella digital que coinciden con el término de búsqueda que había puesto

DATOS POSTALES:

{"filters":[{"name":"search", "values":["testkey"]}], "start":0, "count":50, "sorting":[{"name":"keyName", "direction":"ASC"}], "region":"us-east-1"}

La respuesta a esto es una matriz JSON de una lista de claves y sus huellas digitales correspondientes.

Finalmente, hay otra llamada POST a enlace con mi clave privada como formulario carga útil de datos (!!) con el encabezado:

Content-disposition attachment; filename=testkey.pem

Esto devuelve un archivo de clave de texto sin formato, perfectamente formateado y todo. ¿Por qué es necesaria la tercera solicitud? ¿No podría AWS haber generado la clave en el navegador sin que POST ingrese la clave?

Intenté cambiar al modo Desconectado (para esto es un gran grito para Mozilla) y la creación del par de teclas falló. Pero esto no pudo demostrarme de manera concluyente que el par de claves se está generando en el servidor de AWS porque la falla podría deberse a que AWS no haya recibido la clave pública, la huella digital y el nombre de la clave. La atomicidad de la creación de la clave, incluso si se realiza en el navegador, podría incluir el hecho de que AWS obtenga (y acepte) la clave pública, la huella digital y el nombre de la clave que mi modo fuera de línea habría bloqueado.

Finalmente, ¿tiene sentido preocuparse por esto ya que AWS tiene un control total sobre el hipervisor, incluido el contenido de la memoria RAM física desde la que podrían, en teoría, descargar mis claves?

    
pregunta eternaltyro 05.09.2018 - 04:00
fuente

1 respuesta

3
  

Por último, tiene sentido preocuparse por esto ya que AWS ... podría descargar mis claves

No, no tiene sentido. Las claves que están discutiendo son para proteger las comunicaciones de su cliente a los servidores de Amazon. Las claves lo protegen contra un atacante basado en la red, como un MITM en la red. No tiene sentido cambiar el modelo de pregunta / amenaza y tratar a Amazon como un atacante local, no es contra lo que deben protegerse las claves.

    
respondido por el hft 05.09.2018 - 04:19
fuente

Lea otras preguntas en las etiquetas