Pagina 1 di 1

Steam per Linux pericoloso per i dati dell'utente

Inviato: sabato 17 gennaio 2015, 2:22
da Barrnet
Immagine
Steam for Linux contiene un bug dannoso per i file dell'utente: è stato infatti segnalato su github un pericoloso bug del software che può assumere un path errato della cartella di Steam in alcune situazioni e può arrivare arrivare a lanciare l'erroneo comando "rm -rf /*" sulla root del sistema anziché nella giusta cartella di Steam.

Un comando di cancellazione ricorsiva lanciato sulla root del sistema innescha la cancellazione di tutti i file a cui l'utente ha accesso, comprendendo quindi le directory personali nella home dell'utente ed ogni disco esterno o interno a cui l'utente ha privilegi di lettura e scrittura.
Il bug è presente nel caso si sposti la cartella contenente i giochi di steam verso un altro hard disk, in sintesi il sistema non riconosce più il path di steam e lancia un comando di cancellazione erroneo, il codice incriminato è il seguente:

Codice: Seleziona tutto

# figure out the absolute path to the script being run a bit
# non-obvious, the ${0%/*} pulls the path out of $0, cd's into the
# specified directory, then uses $PWD to figure out where that
# directory lives - and all this in a subshell, so we don't affect
# $PWD
STEAMROOT="$(cd "${0%/*}" && echo $PWD)"
STEAMDATA="$STEAMROOT"
Si raccomanda agli utenti linux di eseguire Steam, fino ai prossimi aggiornamenti del client, con un utente senza diritti di scrittura fuori dalla sua home e che tale utente non abbia alcun accesso ai dischi - interni o esterni - montati. Con un uso sapiente del comando "su" (o "sudo") si può anche evitare di cambiare utente ogni volta che è necessario aprire Steam aprendo una sessione di terminale con tale utente e successivamente aprire Steam da terminale. Ovviamente è assolutamente raccomandato non eseguire Steam da root, l'innesco di tale bug con diritti di amministratore piallerà completamente il disco. Intanto si spera in un celere fix da parte della Valve.
Non che Steam per Windows sia programmato meglio, in quando lo script di disinstallazione non riesce a riconoscere i propri file da quelli del programma, limitandosi a cancellare l'intera cartella, come è scritto anche nella documentazione.