Qualche giorno fa è stato scoperto un pericoloso bug riguardante la shell Bash, ampiamente diffusa in ambito Unix. “Shellshock” è il nome di questa vulnerabilità che permette in diversi casi ad un attaccante esterno di eseguire comandi su una macchina, o nel peggiore dei casi di prenderne il controllo.
Maggiori dettagli sono disponibili qui e qui.
Per verificare se le tue macchine sono vulnerabili o meno digita la seguente stringa:
env VAR='() { :;}; echo Bash is vulnerable!' bash -c "echo Bash Test"
Se a schermo comparirà la stringa ‘Bash is vulnerable!’ dovrai mettere in sicurezza i tuoi sistemi. Per farlo sarà sufficiente aggiornare tutti i pacchetti all’ultima versione, utilizzando il package manager integrato, con dei semplici comandi:
Sistemi Debian / Ubuntu: apt-get update && apt-get upgrade
Sistemi Centos / Fedora / Redhat: yum update
In realtà, piuttosto che aggiornare tutti i pacchetti, è sufficiente aggiornare la shell Bash. Per verificare la release della propria shell Bash installata, sarà sufficiente lanciare il seguente comando:
bash --version
E questo sarà l’output.
GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Un altro modo è quello di entrare nella snella e lanciare il comando di visualizzazione della variabile di ambiente $BASH_VERSION
# bash
# echo $BASH_VERSION
4.1.2(1)-release
Nel mio caso avevo la shell Bash aggiornata alla release 4.1.2(1)-release.
Per aggiornare solo la shell Bash:
Sistemi Debian / Ubuntu: apt-get install --only-upgrade bash
Sistemi Centos / Fedora / Redhat: yum update bash
Questo sarà quello che verrà visualizzato:
Resolving Dependencies
--> Running transaction check
---> Package bash.x86_64 0:4.1.2-14.el6 will be updated
---> Package bash.x86_64 0:4.1.2-15.el6_5.2 will be an update
--> Finished Dependency Resolution
e, al momento in cui scrivo, la shell Bash verrà aggiornata alla release 4.1.2-15.el6_5.2.
Ora lanciando il comando di verifica:
env VAR='() { :;}; echo Bash is vulnerable!' bash -c "echo Bash Test"
otterrò questo output: “Bash Test” e questo sta ad indicare che la shell Bash non è più vulnerabile.
UPDATE 1: Per testare la presenza della vulnerabilità in un server o un dispositivo remoti accessibili tramite URL è disponibile on-line il sito Shellshocker.net.
UPDATE 2: Apple ha appena rilasciato OS X Bash Update 1.0 per OS X Mavericks, Mountain Lion, e Lion, una patch che risolve la falla di sicurezza nota come Bash Bug o Shellshock. Se la patch non compare ancora tra gli aggiornamenti disponibili, può essere scaricata manualmente dal link ufficiale Apple.
Commenti Recenti