Shellshock

Аутор: Петар Симовић

Није прошло много после катастрофе зване Heartbleed bug (OpenSSL рањивости), а ево нас опет: остали смо затечени пред новом рањивошћу званом Shellshock и кодним именом CVE-2014-6271. Овај баг је заправо рањивост у Bash програму, који свакодневно користимо директно или индиректно, а да тога нисмо ни свесни.

Bash (Bourne-again shell) је стандардни програм отвореног кода стар преко двадесет година који је подразумевано инсталиран уз већину *nix оперативних система. Он је command-line based програм који служи за извршавање команди и скрипата од стране корисника или програма упућених оперативном систему, односно машини коју корисник употребљава. Проблем се јавља у свим верзијама овог програма до верзије 4.3. Можете проверити своју верзију следећом командом:

bash -version

Да ли је ваш Bash рањив, можете проверити покретањем следеће команде, након чега би требало да испише само други коментар, тј. у нашем примеру текст Bash is not vulnerable.

env VAR='() { :;}; echo Bash is EXPLOITABLE!' bash -c "echo Bash is not vulnerable"

Уколико вам је Bash рањив, требало би само да ажурирате верзију командом за debian кориснике:

sudo apt-get update && sudo apt-get install

или уколико имате инсталиран aptitude:

aptitude update; aptitude safe-upgrade -y; reboot

или за Red-Hat кориснике:

sudo yum update bash

Као што сте можда могли да приметите из тест примера рањивости, проблем је у томе што Bash дозвољава у одређеним ситуацијама извршавање прослеђене му произвољне команде без икаквих провера. Наиме, познато је да се захтеви које веб сервери добијају, обрађују локално на машини на којој је сервер. У таквим случајевима се обрада захтева препушта локалном CLI-у (енг. command-line interface) који извршава захтев на машини. У већини случајева подразумевани cli је баш Bash. Специфично, Apache сервери који имају mod_cgi и mod_cgid модуле омогућене или openSSH сервери који имају sshd омогућен, јесу рањиви, а такође и DHCP клијенти уколико су повезани са злонамерним DHCP сервером, затим qmail сервери и IBM-ов restricted shell за који је избачен patch : http://goo.gl/AHS2gh, и многи други. Занимљиво је рецимо да су OpenVPN ( http://goo.gl/GbOzJ2 ) и VMWare ( http://goo.gl/U2w9p7 ) такође рањиви, а NGiNX сервери су остали имуни и безбедни. Цела ситуација подсећа много на скорашњи фамозни Heartbleed bug, баш због велике распрострањености програма који се ослањају на Bash и броја уређаја који га користе. Као и код Heartbleed bug-а, коначна листа рањивих уређаја и софтвера се не зна јер је број уређаја који користе Linux у неком облику веома велики и вероватно се броји у хиљадама милиона.

Мада оваква рањивост сама по себи није нова ни напредна, лако је решива, шта више, проблем се лако решава у једном до два корака, било на десктоп рачунарима, било на серверима. Проблем је у распрострањености и веома широкој употреби. Проблем немогућности крпљења (енг. patching) је у самој великој распрострањености уређаја тзв. embedded devices, за које ажурирање не би било ни лако ни једноставно, а да не говоримо о firmware-у. Такви уређаји можда никада неће бити закрпљени, као што ни у овом тренутку после шест месеци није отклоњена Heartbleed рањивост са свих уређаја, и можда никад неће, јер је потребно да се у свакој фирми и кући у свету ажурира софтвер на сваком рачунару или уређају, што није баш изводљиво. Алтернатива ажурирању је замена уређаја за новије, што је свакако финансијски издатак који се не одобрава баш олако.

One thought on “Shellshock

  • 16.01.2020 at 05:42
    Permalink

    Acquistare Cialis Propecia Propiedades Zoloft Fast Delivery Buy Cialis Cephalexin Respiratory Rats Amoxicillin Ear Drops

    Reply

Оставите одговор

Ваша адреса е-поште неће бити објављена. Неопходна поља су означена *

Time limit is exhausted. Please reload CAPTCHA.