Vídeo: Эффективно копируем гигабайтные файлы по сети в Linux / Unix / Mac OS (De novembre 2024)
Segons un expert en seguretat, un error descobert a Bash, un intèrpret d'ordres molt utilitzat, suposa un risc crític per a la seguretat dels sistemes Unix i Linux. I perquè no tingueu la temptació de rebutjar el problema pel fet de ser un problema de servidor, recordeu que Mac OS X utilitza Bash. Molts experts adverteixen que pot ser pitjor que Heartbleed.
La vulnerabilitat està present en la majoria de versions de Bash, des de la versió 1.13 fins a la 4.3, segons Stephane Chazelas, administrador de telecomunicacions Unix i Linux d'Akamai, que va revelar per primera vegada l'error. L’equip de resposta d’emergència informàtica (CERT) del Departament de Seguretat Nacional va advertir en una alerta que, si s’explota, la vulnerabilitat podria permetre a un hacker remot executar codi maliciós en un sistema afectat. La base de dades de vulnerabilitat NIST ha classificat l'error 10 de cada 10 en termes de gravetat.
"Aquesta vulnerabilitat és molt gran", va dir Tod Beardsley, responsable d'enginyeria de Rapid7.
La vulnerabilitat té a veure amb com Bash gestiona les variables d’entorn. En assignar una funció a una variable, també s'executarà qualsevol codi addicional en la definició. De manera que tot un atacant ha d’afegir d’alguna manera un grup d’ordres en aquesta definició -un atac clàssic d’injecció de codi- i podran segrestar de forma remota la màquina afectada. Chazelas i altres investigadors que han analitzat el defecte han confirmat que és fàcilment explotable si el codi s’injecta en variables ambientals, com ara la funció ForceCommand a OpenSSH sshd, els mòduls mod_cgi i mod_cgid al servidor HTTP Apache o scripts que configuren el entorn per als clients de DHCP.
"Un gran nombre de programes en Linux i altres sistemes UNIX utilitzen Bash per configurar variables ambientals que s'utilitzen després d'executar altres programes", va escriure Jim Reavis, cap executiu de Cloud Security Alliance, en una publicació al bloc.
Comparació inimitable de Heartbleed
Considereu dues coses sobre aquesta vulnerabilitat: els servidors Linux / Unix s’utilitzen àmpliament en centres de dades de tot el món i en incrustats en molts dispositius; la vulnerabilitat està present des de fa anys. Com que Bash està tan estès, la comparació amb Heartbleed, la vulnerabilitat a OpenSSH que es va descobrir a l'abril és inevitable. Robert Graham, d'Errata Security, ja ha batejat com a defecte ShellShock.
Però, és Heartbleed 2? És una mica difícil de dir. Sens dubte és un problema seriós, perquè permet als atacants accedir al shell de comandaments, que és el bitllet daurat per poder fer el que vulguin en aquesta màquina.
Pensem en termes de mida. Els servidors web d’Apache alimenten la tremenda majoria de llocs web del món. Segons hem après durant Heartbleed, hi ha moltes màquines que no utilitzen Linux / Unix que utilitzen OpenSSH i Telnet. I el DHCP és fonamental per fer-nos fàcil accedir i fora de les xarxes. Això vol dir que, a més dels ordinadors i servidors, és possible que altres sistemes incrustats, com els encaminadors, també siguin vulnerables al segrest. Graham d'Errata Security -que ha fet algunes de les anàlisis més detallades de l'error fins ara- va realitzar algunes exploracions i va trobar fàcilment uns quants milers de servidors vulnerables, però en aquest moment és una mica difícil estimar la magnitud del problema.
No obstant això, el defecte Heartbleed estava present només en tenir instal·lada una versió vulnerable d'OpenSSL. Aquest error no és tan senzill.
"No és tan simple com executar Bash", va dir Beardsley. Per tal que la màquina sigui vulnerable a l’atac, ha d’haver-hi una aplicació (com Apache) que tingui entrada d’usuari (com una capçalera d’Usuari-Agent) i la posi en una variable d’entorn (com fan els guions CGI), va dir. Va dir que els moderns marcs web no seran afectats.
Pot ser per això que Graham va dir que ShellShock és tan greu com Heartbleed: "No hi ha gaire necessitat de precipitar-se i solucionar aquest error. Probablement els vostres servidors principals no siguin vulnerables a aquest error".
Però abans de parlar de routers i dispositius incrustats (i Internet of Things), tingueu en compte que no tots els sistemes utilitzen Bash. Ubuntu i altres sistemes derivats de Debian poden utilitzar un intèrpret d'ordres diferent anomenat Dash. Els dispositius incrustats utilitzen freqüentment un anomenat BusyBox, que no és vulnerable, va dir a Twitter Roel Schouwenberg, investigador sènior del Kaspersky Lab.
Vulnerable o no?
Podeu comprovar si sou vulnerables executant les ordres següents (codi proporcionat per CSA). Obriu una finestra del terminal i introduïu l'ordre següent a l'indicador $:
env x = '() {:;}; eco eco 'bash -c "eco això és una prova"
Si sou vulnerable, imprimireu:
vulnerable
això és un test
Si heu actualitzat Bash, només veureu:
això és un test
Normalment, diria que vagi endavant i pega immediatament, però resulta que els pegats disponibles no estan complets. Encara hi ha maneres d’injectar ordres mitjançant variables d’entorn, fins i tot després d’enganxar Bash, va dir Red Hat aquest matí. Si només teniu un grapat de màquines, potser val la pena avançar i aplicar els pegats disponibles, però si teniu milers de màquines per pegar, potser val la pena esperar unes quantes hores més. Totes les distribucions de Linux a dalt (i, per suposat, Apple!) Funcionen ara mateix.
"Recordeu-vos, fins i tot si abans no heu sentit a parlar de Bash o no ho executeu, és possible que tingueu un programa que funciona amb el vostre ordinador que genera processos de Bash", va dir el consultor independent de seguretat Graham Cluley.