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

01/09/2014

Denegació de servici en Squid

S’ha solucionat una vulnerabilitat de denegació de servici en SQUID versions 3.x (fins a 3.2.12) i 3.4 (fins a 3.4.6).

Risc: Alt

Squid és un dels servidors intermediaris més populars, en gran part per ser de codi obert i multiplataforma (encara que els seus començaments van ser per a sistemes Unix).

El problema residix en la validació incorrecta de les entrades en el tractament de peticions de tipus Range. Un atacant remot podria aprofitar este problema per a provocar condicions de denegació de servici.

Sistemes Afectats:

SQUID versions 3.x (fins a 3.2.12) i 3.4 (fins a 3.4.6).

Referències:

None

Solució:

Els problemes estan solucionats en les versions Squid 3.3.13 i 3.4.7, o es pot també aplicar els pegats disponibles des de Squid 3.0:

http://www.squid-cache.org/Versions/v3/3.0/changesets/squid-3.0-9201.patch
Squid 3.1:
http://www.squid-cache.org/Versions/v3/3.1/changesets/squid-3.1-10488.patch
Squid 3.2:
http://www.squid-cache.org/Versions/v3/3.2/changesets/squid-3.2-11828.patch
Squid 3.3:
http://www.squid-cache.org/Versions/v3/3.3/changesets/squid-3.3-12680.patch
Squid 3.4:
http://www.squid-cache.org/Versions/v3/3.4/changesets/squid-3.4-13168.patch

 

Com a contramesura es poden afegir en l’arxiu squid.conf i abans de qualsevol línia http_access allow, les línies de control d’accés següents:

 acl validRange req_header Range \
  ^bytes=([0-9]+\-[0-9]*|\-[0-9]+)(,([0-9]+\-[0-9]*|\-[0-9]+))*$
 acl validRange req_header Request-Range \
  ^bytes=([0-9]+\-[0-9]*|\-[0-9]+)(,([0-9]+\-[0-9]*|\-[0-9]+))*$
http_access deny !validRange
Notes:
Squid Proxy Cache Security Update Advisory SQUID-2014:2
http://www.squid-cache.org/Advisories/SQUID-2014_2.txt
Font: Hispasec una-al-día

CSIRT-CV