CSIRTCV

Está usted visitando una publicación en la hemeroteca de CSIRT-CV.
Para acceder al portal y contenido actual, visite https://www.csirtcv.gva.es

10/05/2013

Execució de codi arbitrari en servidors nginx

Greg MacManus ha descobert i ha publicat un greu error de seguretat en nginx, quan es processen peticions HTTP "per blocs" (chunked transfer), que pot permetre un atacant executar codi arbitrari.

Risc: Alt

Nginx és un servidor web, open source i desenrotllat quasi íntegrament en el llenguatge C, cosa que li proporciona un alt rendiment, ja que aprofita al màxim els recursos del sistema. Una prova d’això és que està per defecte instal·lat en algunes distribucions per a Raspberry Pi. També pot realitzar la funció de servidor Proxy invers per a HTTP, SMTP, POP3 i IMAP.

L’error descobert produïx un desbordament de memòria intermèdia basada en una pila que generaria en una denegació de servici del servidor. Al ser un desbordament de memòria, es podria produir una execució de codi arbitrari en el costat del servidor amb els permisos del servidor nginx.

Per a solucionar l’error s’han inclòs una comprovació perquè la grandària no siga inferior a 0 al realitzar esta petició, en l’arxiu src/http/ngx_http_parse.c.

Sistemes Afectats:

La fallada s’ha descobert en les versions 1.3.9 (de novembre de 2012) i 1.4.0, i corregida en la 1.5.0 i la 1.4.1 respectivament.

Referències:

CVE-2013-2028

Solució:

Es poden actualitzar a les noves versions des de la pàgina de descàrregues.

S’ha publicat una contramesura, si no es vol actualitzar el servidor per alguna raó, que consistix a incloure un fragment de codi en els blocs "server" de la configuració, que evita que s’use el tipus de transferència per blocs.

Notes:

Hispasec una-al-dia
nginx download

nginx - patch.2013.chunked
nginx security advisory (CVE-2013-2028)

Font: Hispasec una-al-día

CSIRT-CV