Come Verificare l'Autenticità del Software Windows con le Firme Digitali

Ogni volta che scarichi un programma da Internet, devi fidarti dello sviluppatore che non sia dannoso. Non c’è modo di evitarlo. Ma di solito non è un problema, soprattutto con software e sviluppatori ben noti.
Tuttavia, i siti web che ospitano software sono più vulnerabili. Gli aggressori possono sovvertire la sicurezza di un sito web e sostituire i programmi con la loro versione dannosa. Questo appare e funziona esattamente come l’originale, tranne per il fatto che ha una backdoor inserita. Con questa backdoor, gli aggressori possono controllare varie parti del tuo normale utilizzo quotidiano del computer. Il tuo computer è inserito in un botnet, o peggio, l’utilità aspetta fino a quando usi la tua carta di credito/debito e ruba le sue credenziali. Dovresti essere particolarmente attento quando scarichi software importanti come un sistema operativo, un portafoglio di criptovalute o simili.
Le Firme Digitali Possono Salvare la Situazione
Gli scrittori di software possono firmare i loro prodotti. A meno che un aggressore non riesca a rubare la loro chiave privata, non c’è modo noto per qualcuno di falsificare questa firma. Ci sono numerosi casi in cui migliaia di utenti hanno scaricato programmi dannosi, e in quasi ogni caso, se avessero controllato le firme digitali, avrebbero notato che erano invalide, evitando così la situazione. È relativamente facile sostituire il software su un sito web vulnerabile, ma incredibilmente difficile rubare una chiave privata che è correttamente conservata e isolata dall’accesso a Internet.
Puoi leggere molto di più sulle firme digitali qui. Questo articolo discute la stessa cosa, tranne che utilizzerai le utilità di Windows per convalidare i download.
Come Usare Gpg4win per Verificare le Firme Digitali
Vai a questa pagina e scarica e installa Gpg4win. Le persone intelligenti si chiederanno: “Ma come faccio a sapere che questo è legittimo?” Ed è una buona domanda. Se questo fosse compromesso, allora tutti i passaggi successivi sarebbero inutili.
Fortunatamente, lo sviluppatore ha fatto tutto il possibile per far firmare il suo software da un’autorità di certificazione. E dettaglia i passaggi per verificare il suo programma sul suo sito web. Anche se viene utilizzata una crittografia simile per controllare la validità, il metodo complessivo è diverso. I certificati digitali vengono utilizzati per questo.
Verifica i Controlli dei File
Supponiamo che tu voglia scaricare il portafoglio Bitcoin Core. Scarica l’eseguibile Windows x64 (exe, non zip). Successivamente, fai clic su “Verifica le firme di rilascio” per scaricare il file “SHA256SUMS.asc”. Il primo passo è verificare l’hash del file di installazione. Puoi leggere di più sugli hash qui.
Vai alla tua cartella di download, e con Gpg4win installato, ora puoi fare clic con il tasto destro su un file, e apparirà un nuovo menu contestuale. Fai clic con il tasto destro sul file di installazione di Bitcoin (l’exe che hai scaricato) e seleziona “Altre Opzioni GpgEX -> Crea checksum,” come nell’immagine qui sotto.

Apri sia “sha256sum.txt” che è stato generato sia “SHA256SUMS.asc” che hai scaricato. Confronta i checksum SHA256. Dovrebbero essere perfettamente corrispondenti.

Controlla la Firma del File che Elenca i Checksum
Mentre hai appena scaricato un file di installazione e un elenco di checksum dallo stesso sito web, se un aggressore ha sostituito il file di installazione, potrebbe facilmente sostituire anche l’elenco dei checksum. Ciò che non può fare, tuttavia, è falsificare una firma. Questa può essere convalidata da una chiave pubblica conosciuta (legittima). Prima, devi scaricare questa chiave.
L’immagine seguente è ciò che appare una firma.

Questa è una firma inline (inclusa nello stesso file che convalida). A volte sarà staccata, inclusa in un file separato. Se cambi anche solo una lettera in questo file di testo, la firma diventa invalida. Questo è un modo per sapere che lo sviluppatore ha approvato e firmato questi contenuti esatti e specifici con i checksum corretti.
Importa la Chiave Pubblica dello Sviluppatore
Hai le chiavi pubbliche disponibili per il download sotto “Chiavi di Firma del Rilascio di Bitcoin Core” nella pagina di download di Bitcoin. Come misura precauzionale, puoi scaricarle da un’altra fonte. Se un aggressore ha sostituito le chiavi legittime con le proprie, è probabile che troveremo le chiavi corrette (e le impronte digitali) in tutti gli altri luoghi in cui sono state pubblicate o discusse.
Fai clic con il tasto destro su “SHA256SUMS.asc” e seleziona “Decrittografa e Verifica.” Il programma ti dirà che non hai ancora la chiave pubblica. Fai clic su “Cerca.”

La ricerca potrebbe richiedere un po’ di tempo. Prendi nota della stringa nel campo “Trova.”

Puoi copiare questo e incollarlo in Google per vedere se questa impronta della chiave pubblica è stata discussa in thread/forum legittimi, ecc. Più luoghi trovi, più puoi essere certo che appartiene al proprietario previsto.
Fai clic sulla chiave e poi importala. Puoi fare clic su “No” nel prompt che ricevi dopo (prendi misure per certificare la chiave) se non sai come o non vuoi farlo ora.
Infine, fai clic su “Mostra Registro di Audit.”

Dovresti vedere il testo evidenziato nell’immagine successiva, “Buona firma.”

Cerca di cambiare solo una lettera in “SHA256SUMS.asc,” e otterrai ciò che è rappresentato nell’immagine seguente.

Conclusione
Pochi sviluppatori ti danno la possibilità di controllare che il loro software provenga da loro. Ma di solito i programmi che trattano dati sensibili o sono molto importanti ti offriranno questa opzione. Usala e potrebbe salvarti da problemi un giorno.