25.2 L’installazione del software

Il software costituisce l’elemento fondamentale per l’uso del sistema, ma bisogna essere sicuri che esso effettui esattamente le operazioni che da esso ci aspettiamo. Ad esempio si potrebbe installare un software che contiene al suo interno del codice che lo fa funzionare in maniera diversa da quello che viene dichiarato. Ad esempio portebbe rimanere in ascolto su porte specifiche in maniera da consentire l’accesso da remoto, oppure fare in modo da cercare di acquisire privilegi per esso non previsti.

Per questo è opportuno porre molta attenzione prima di installare un software sul sistema. A tal proposito il software open source consente maggiori garanzie di sicurezza rispetto a quello closed source, in quanto, visto che il suo codice è visibile da chiunque, è molto meno probabile che in eso si annidi del codice malevolo teso a tentare di prendere il controllo del sistema o a facilitarne l’attacco da remoto.

Ovviamente prima di installare un software è opportuno essere sicuri che si tratti proprio del software che si desidera installare. Per tale motivo i gestori automatici di pacchetti software permettono di controllare l’integrità del pacchetto per mezzo di un codice di controllo relativo al pacchetto stesso. Ad esempio rpm controlla l’hash MD5 del pacchetto, verificando che il pacchetto non è stato variato rispetto a quello dal quale è stato estratto l’hash. Un malintenzionato potrebbe modificare il pacchetto in maniera da aggiungere funzionalità “maligne” e ricalcolare l’hash MD5, ridistribuendoli entrambi. Ma, trattandosi di software open source sarebbe costretto a fornire anche i sorgenti e prima o poi qualcuno individuerebbe le “cattive” modifiche divulganodne la notizia, così nessuno scaricherebbe più quella versione del programma.

[da completare ...]