¿Es PGP seguro contra un servidor de claves no autorizado?

14

Imagina que Eve se hace cargo del servidor de llaves que tanto Alice como Bob están usando.

Al reemplazar las claves públicas de Alice y Bob con las suyas, puede hacer un ataque de hombre en el medio para descifrar los mensajes y transmitirlos nuevamente con las claves originales.

Incluso si Alice y Bob firman sus mensajes (al encriptar un hash con sus claves privadas), Eve podría reemplazar la firma con la suya, ya que Alice y Bob solo han falsificado las claves públicas para verificar la firma.

Incluso si las claves públicas de Alice y Bob están firmadas por otros usuarios, Eve también puede firmar su clave falsa con muchos otros usuarios falsos. Para verificar las firmas de claves, Alice y Bob nuevamente tienen que confiar en que el servidor de claves proporcione las claves públicas para verificar estas firmas.

La única forma de verificar que las claves públicas firmadas son genuinas es seguir la cadena de confianza de Alice y Bob, ya que Eve no puede falsificar su firma. Pero, por un lado, la cadena de confianza ni siquiera puede llegar a Alice y Bob y, más severa, incluso para verificar su PROPIA firma, necesitan tener acceso a sus propias claves públicas no protegidas, lo que haría que tenerlos a nivel local sea tan importante como la clave privada.

Este hecho no se menciona en los manuales de PGP habituales, la clave pública no está protegida por una frase de contraseña e incluso podría ser sobrescrita por una "actualización" del servidor de claves no autorizado.

¿En qué me equivoco en mis suposiciones? ¿Qué medidas existen para prevenir esto? ¿La función de 'verificar firma' de GnuPG de hecho sigue la cadena de confianza a la propia clave privada, o simplemente verifica el primer nivel de firmas con claves públicas del servidor de claves?

Actualización: Ya he encontrado " ¿No debería la obtención de claves GPG usar un ¿conexión segura? "y" ¿La conexión al servidor de claves está encriptada? ". Ambos declaran, en resumen, que el sistema PGP completo es inútil A MENOS QUE pueda encontrar una (o mejor) ruta (s) desde su propia clave (u otra en última instancia confiable) al remitente. Pero aún así, no mencionan que esto se reduce en última instancia a la integridad de su copia local de su propia clave pública (u otra de confianza en última instancia). Por lo tanto, la pregunta sigue siendo: ¿esto es obligatorio y verificado por GnuPG?

    
pregunta Chaos_99 21.08.2013 - 11:32
fuente

2 respuestas

5

En última instancia, es una cadena de "confianza" por una razón. En algún momento debe confiar, ya sea una red de confianza basada en certificados individuales que haya verificado o confiando en que un tercero sea confiable. Si confías en la parte equivocada, todo se descompone. La confianza no es un remedio mágico, es solo una forma de evaluar cuánta confianza ha depositado en algo en función de las decisiones que ha tomado sobre en quién confiar.

Tenga en cuenta que PUEDE validar una clave pública de su clave privada para asegurarse de que coincida. Si encripta algo con su clave privada, debería descifrar con la clave pública. Si no es así, no es tu clave pública.

También tenga en cuenta que todavía es posible comunicarse directamente con alguien para darle una huella digital del certificado público para asegurarse de que no se haya modificado y también es posible usar una clave de una tienda local una vez que se obtiene. Esto limita enormemente lo que Eve puede hacer, ya que solo puede atacar el primer intercambio de claves y no puede comprometer fácilmente la verificación secundaria de una huella digital entre las dos partes a través de otro canal sin un ataque bastante sofisticado. Esta verificación del canal seguro secundario debe realizarse en cualquier clave que aún no tenga confianza (a través de la firma u otros mecanismos seguros) para garantizar que las claves públicas no hayan sido manipuladas.

Lo que realmente se debe tener en cuenta es entender que dar confianza a cualquier servidor o individuo clave en una red de confianza significa que realmente debe confiar en ellos. Si no confía su seguridad a ellos, entonces no confíe en ellos o tome medidas alternativas para asegurarse de que lo que obtiene de ellos sea válido.

    
respondido por el AJ Henderson 21.08.2013 - 15:33
fuente
6

Un servidor de claves PGP es solo una gran pared donde cualquiera puede pegar un pedazo de papel, a la vista de todas las personas que pasan caminando por la pared. En realidad, nadie confía en el muro para proporcionar ningún tipo de afirmación acerca de la veracidad de lo que está escrito en los documentos; eso es solo una pared, un arquetipo de la falta de mente.

Una clave pública de PGP puede ser confiable, o no, dependiendo de las firmas de otros portadores de claves que encontrará en esa clave. Esta es la Web of Trust , el tipo de PKI que utiliza PGP. Las firmas son completamente independientes de cómo se almacenaron y transfirieron los datos firmados, y ese es todo el punto: nada en este sistema se basa en los servidores clave para hacer cumplir cualquier propiedad de seguridad en cualquier momento. y, de manera similar, las claves firmadas pueden enviarse a través de correos electrónicos, líneas telefónicas o incluso compañías aéreas aviares : no importa.

Lo peor que puede hacer un servidor de claves deshonestas es dejar de hacer su trabajo, por ejemplo. Al eliminar algunas de las claves se contiene. No tendrá mucho impacto, excepto que sería más difícil para las personas que no se conocen entre sí y, sin embargo, desean enviarse correos electrónicos entre sí, para crear cadenas de claves firmadas y ganar algo de confianza en sus respectivas claves públicas. .

    
respondido por el Tom Leek 21.08.2013 - 17:51
fuente

Lea otras preguntas en las etiquetas