Confusión sobre el software y también la modificación de la firma digital

1

No estoy seguro de lo que es muy seguro al firmar digitalmente un software o firmware para distribuir. Entiendo el beneficio, ya que puede avisar al receptor si los datos se corrompieron accidentalmente durante la transferencia, ya que los hashes no coincidirán, o si el software o el firmware fueron manipulados y modificados deliberadamente.

Sin embargo, ¿qué sucede si el software / firmware y también la firma digital se modifican a propósito para que se adapte? El hash transmitido ahora coincidirá con el software / firmware modificado. Ignoremos la parte de claves públicas y privadas por ahora. ¿No coincidirán los hashes en el extremo receptor y tenemos un software modificado que aún puede ser aceptado?

    
pregunta Engineer999 13.09.2018 - 18:02
fuente

2 respuestas

1

No puedes ignorar las claves públicas.

Los binarios se firman con firmas de código de las autoridades de certificación confiables y solo ellas son confiables.

LoscontroladoresdeWindowsestánfirmadosconcertificadosemitidosporMicrosoftysolosondeconfianza.

  

Sinembargo,¿quésucedesielsoftware/firmwareytambiénlafirmadigitalsemodificanapropósitoparaqueseadapte?Elhashtransmitidoahoracoincidiráconelsoftware/firmwaremodificado.

Verdadero,peronopuedefirmarelbinarioconuncertificadodeconfianza(deCAconfiable)sinotieneelcertificadoensí.Obviamente,lasfirmaspersonalizadasnoseránconfiables.

  

Ignoremoslapartedeclavespúblicasyprivadasporahora.¿Nocoincidiránloshashesenelextremoreceptorytenemosunsoftwaremodificadoqueaúnpuedeseraceptado?

¿CómopuedesignorarPKI?Eseestodoelpunto.Noconfíanenlafirmaynoconfíanenelbinarioensí.

Megustaesto:

    
respondido por el Moonsik Park 13.09.2018 - 18:46
fuente
1

Agregaré alguna teoría a la parte superior de la respuesta de @ MoonsikPark.

Pareces entender el concepto de hashes. Luego, puede pensar en las firmas digitales como un hash + una operación pública / clave privada. es decir, una firma digital es un hash que no se puede falsificar a menos que conozca la clave privada, pero cualquiera puede verificarla utilizando la clave pública.

Por supuesto, cualquiera puede modificar un archivo binario, pero para calcular una nueva firma para el binario modificado. Como atacante, no tendrá acceso a la clave privada del desarrollador de software auténtico. Puede crear su propio par de claves, pero cada sistema operativo se entrega con una lista de claves de firma en las que confían para instalar el software, por lo que el usuario recibirá una advertencia como la que se encuentra en la respuesta de @ MoonsikPark.

    
respondido por el Mike Ounsworth 13.09.2018 - 19:08
fuente

Lea otras preguntas en las etiquetas