Shellshock уязвимост на bash shell - как да се предпазим

Shellshock уязвимост на bash shell - как да се предпазим

Shellshock е уязвимост, която наскоро бе открита в командния интерпретатор Bash за Unix базирани системи. Тази уязвимост позволява неуторизирано изпълнение на команди, които се изпълняват непосредствено след задаване на променлива на средата (environment variable). Shellshock съществува от четвърт век, но до сега не беше открито, че чрез нея може да се изпълнява зловреден код в bash shell за да се достъпи конфиденциална информация.

За да може да се експлоатира въпросният бъг, е нужно да има услуги даващи право за назначаване на гореспоменатите променливи. Например:

  • Apache, работещо с CGI скриптове, написани на Bash или извикващи дъщерни шелове

  • Някои DHCP клиенти

  • OpenSSH сървъри, използващи ForceCommand

Shellshock уязвимостта е по-широко разпространена и по-лесно експлоатируема от Heartbleed бъга, който беше толкова нашумял преди няколко месеца. За да се предпазите е добре да направите обновление до новата, пачната версия на Bash. Използваната дистрибуция трябва да има активен съпорт - стари версии като CentOS 4 и Debian 5 нямат поддръжка и съответно при тях е нужно Bash да бъде компилиран и заменен ръчно.


Как можете да разберете дали вашата машина е уязвима?

Като изпълните следната команда:

env x='() { :;}; echo vulnerable' bash -c "echo this is a test"

Ако изпълнението върне два реда с вид:

vulnerable

this is a test

компютърът е с уязвима версия на Bash и е добре версията да бъде обновена максимално бързо.

Ако изпълнената команда върне само един ред:

this is a test

то вие използвате вече обновена версия на Bash.

Етикети: #apache #environment-variable #unix-linux #cgi-skriptove #heartbleed #debian-5 #centos-4 #bash #shell #shellshock #dhcp #openssh #linux-uyazvimost