NFsec Logo

Apache HTTPD: ETag Inode Information Leakage

02/02/2014 w Bezpieczeństwo Brak komentarzy.  (artykuł nr 434, ilość słów: 260)

J

eśli używamy serwera Apache możemy wykorzystać w jego komunikacji z przeglądarką ETagi (ang. Entity Tag) dla statycznych zasobów serwowanych z dysku naszego serwera. Służą one między innymi serwerowi Apache do porównywania ich wartości z nagłówkiem If-None-Match i zwracania w zależności od wyniku kodu: 304 Not modified lub 200 OK. Niestety od wersji 1.3.22 do 2.3.14 tego serwera w konstrukcji pola ETag używany jest numer i-node pliku, do którego zostało wykonane odwołanie.

Nie jest to błąd sam w sobie, lecz według klasyfikacji wyciek informacji, który sprawia, że pewne ataki związane z usługą NFS stają się znacznie prostsze do wykonania. W celu zmiany konfiguracji konstrukcji pola ETag (w tym byciu zgodnym z standardem PCI Compliance) wystarczy w konfiguracji serwera Apache zmienić opcję FileETag na wartości: MTime Size, które wykluczą z mechanizmu branie pod uwagę informację o i-node. Jeśli chcemy zupełnie wyłączyć funkcję ETagów wystarczy np. w pliku /etc/httpd/conf.d/no-etags.conf dodać wpisy (wymagają załadowanego modułu headers i restartu serwera):

Header unset ETag
FileETag None

Błąd ten nie występuje już w serii 2.4, która posiada w standardowej konfiguracji tylko branie pod uwagę wielkość pliku wyrażoną w bajtach oraz ostatnią modyfikację pliku.

Więcej informacji: Apache 2.2 FileETag

Kategorie K a t e g o r i e : Bezpieczeństwo

Tagi T a g i : , , , ,

Komentowanie tego wpisu jest zablokowane.