¿Las antiguas claves API en el historial de git son una vulnerabilidad de seguridad?

7

Hace poco cometí el error de filtrar mi clave de la API de Mailgun en un proyecto de código abierto GitHub. Inmediatamente lo invalidé, pero el soporte de Mailgun me ha pedido que tome el paso adicional de eliminar mi repositorio de GitHub. Hasta ahora, se han negado a reactivar mi dominio de envío hasta que haga esto.

¿Por qué es esto tan importante? Es ciertamente vergonzoso tener eso en mi registro público, pero ¿cómo podría usarse en mi contra?

Actualización: Mailgun ahora me dice que una vieja clave API no es un problema.

    
pregunta BonsaiOak 19.01.2018 - 23:54
fuente

2 respuestas

5

Es seguro publicar una clave de API antigua en la página del título del New York Times o no tienen un procedimiento de invalidación correcto.

Los usuarios a menudo se apegan a las claves de API durante años, casi nadie los va a reemplazar a menos que a esas claves les pase algo realmente malo, por ejemplo. Fueron robados o filtrados. En este caso, se emitirá una nueva clave y una antigua no deberá ser válida (por lo tanto, invalidación ) para cualquier cosa relacionada con la API desde el momento en que se generó una nueva clave. emitido. Agregue una hora o, diablos, incluso un día para todo tipo de CDN y almacenamiento en caché, todavía no tiene nada que ver con la eliminación de un repositorio de Github.

En cuanto a algunas sugerencias en los comentarios,

  

Las nuevas claves pueden ser computables a partir de claves antiguas

Una clave API en sí misma es solo una secuencia aleatoria de bytes. Una nueva clave probablemente debería ser computable desde la nada, excepto la pura embopía. De todos modos, una clave antigua es una base incorrecta para nuevas claves. Si una nueva clave depende de esas antiguas, será mejor que piensen una vez más en el diseño de su autenticación API.

  

Mailgun puede temer que la gente pruebe las claves antiguas con su servidor, lo que aumentaría la carga del servidor.

Cualquiera puede probar una secuencia aleatoria arbitraria de bytes contra un servidor API. El procesamiento de una clave de API no válida de vez en cuando debe ser asequible para un servidor de autenticación. También hay métodos e incluso productos que ayudan a proteger contra la fuerza bruta si es un problema real. No creo que tener una clave antigua filtrada influya de manera significativa en la carga del servidor (excepto si su único servidor es una instancia de Raspberry Pi).

¿Qué pasa si la llave no se filtra sino que se la roban? ¿Tiene que convencer al ladrón de que elimine una clave no válida anterior de sus bases de datos? Esto es ridículo. Mailgun no tiene ninguna razón para exigir eso.

    
respondido por el ximaera 20.01.2018 - 07:09
fuente
2

¿Se pueden usar las antiguas claves API para debilitar la seguridad

Hay muchas formas en que las claves antiguas pueden representar un riesgo, y como el soporte de Mailgun insiste en que elimines el repositorio, esto parece implicar que piensan que es un riesgo.

  • Las nuevas claves pueden ser computables a partir de claves antiguas
    • Puede ser que conocer una clave antigua haga que sea más fácil romper una nueva clave (esto dependerá de cómo se generen las claves)
  • Las claves antiguas no pueden ser invalidadas inmediatamente (o en absoluto)
    • Los servidores pueden almacenar en caché las claves válidas, y este caché no se puede invalidar de inmediato, por lo que las claves antiguas se pueden usar para acceder al servicio hasta que las claves abandonen el caché.
  • Mailgun puede temer que la gente pruebe las claves antiguas con su servidor, lo que aumentaría la carga del servidor.

Si las antiguas claves API representan un riesgo

Las antiguas claves de API no deberían suponer un riesgo si se generan de manera sensata, ya que la parte anterior supuse que no se generaron de manera sensata, porque Mailgun parece pensar que es un riesgo y saben más sobre cómo se generan sus claves API

    
respondido por el jrtapsell 20.01.2018 - 00:35
fuente

Lea otras preguntas en las etiquetas