No, non è sicuro.
La firma di un'applicazione fornisce solo la tracciabilità e l'immodificabilità: l'applicazione creata può essere fatta risalire alla persona che l'ha firmata e l'applicazione non può essere modificata senza invalidare la firma.
Chiunque abbia i soldi e la possibilità di passare attraverso il processo di ottenere un certificato di firma del codice ne avrà uno. E una volta ricevuto, possono firmare qualsiasi cosa con esso, inclusi virus e software dannoso.
Questo è il motivo per cui Windows ti avvisa ancora quando tenti di installare il software firmato, ma visualizza il nome dell'azienda e il nome del soggetto del firmatario nella finestra di dialogo in cui devi accettare l'installazione.
Per ottenere sicurezza, devi anche aggiungere un passaggio chiamato "Autorizzazione". Ciò significa che devi controllare chi è "sviluppatori approvati".
Combinare la firma del codice con l'autorizzazione, può essere un passo efficace contro il software dannoso invece di fare affidamento su una whitelist. Invece di dire semplicemente "Microsoft Office è okay per essere installato", puoi invece lasciare ad esempio gli utenti finali, senza diritti di amministratore, installare qualsiasi cosa firmata con "Microsoft" e avere comunque sicurezza contro software dannoso.
Mantenere un elenco di sviluppatori software approvati è molto più semplice che mantenere un elenco di software approvato, perché in questo modo è possibile consentire agli utenti di aggiornare il software senza richiedere diritti elevati.
Tuttavia, in pratica, non è una buona soluzione, perché la maggior parte degli utenti ha bisogno di eseguire piccoli software di volta in volta. Può essere una cosa semplice come alcuni software necessari per visualizzare una pagina web relativa al lavoro che la persona sta facendo, o la persona sta cercando di accedere al conto bancario della Società per la prima volta e la banca deve installare alcune "applicazioni di autenticazione di sicurezza" .
Quindi, a prescindere dal fatto che tu stia invitando i nomi dei software whitelist o se stai whitelistando i nomi degli sviluppatori per i software firmati, tali implementazioni sono adatte solo in ambienti ad alta sicurezza, dove è anche pratico dire che i computer sono strettamente per un solo scopo. In questi casi è comune installare anche launcher molto restrittivi, come "Kiosk launcher" per impedire che i computer vengano utilizzati per scopi diversi da quelli a cui sono destinati.
Per fare un confronto analogico:
La firma del codice è come una carta d'identità. Richiedere ad ogni visitatore di un edificio di mostrare la propria carta d'identità non aumenta la sicurezza, dal momento che persone non autorizzate potrebbero comunque entrare nell'edificio utilizzando la propria carta d'identità.
Per aumentare la sicurezza, è necessario anche introdurre una fase di "autorizzazione", in cui si controlla se il nome della carta d'identità corrisponde a un elenco di accesso o elenco di ospiti di chiunque sia autorizzato a entrare nell'edificio. Ciò mantiene indivuali non autorizzati fuori dall'edificio.