Cache Poisoning to DoS
Na tej stronie znajdziesz różne warianty prób spowodowania, że serwer WWW odpowie błędami na żądania, które są ważne dla serwerów pamięci podręcznej
Zbyt duży nagłówek HTTP (HHO)
Wyślij żądanie z rozmiarem nagłówka większym niż obsługiwany przez serwer WWW, ale mniejszym niż obsługiwany przez serwer pamięci podręcznej. Serwer WWW odpowie błędem 400, który może zostać zapisany w pamięci podręcznej:
Znaki meta znaczników HTTP (HMC) i Nieoczekiwane wartości
Wyślij nagłówek zawierający szkodliwe znaki meta takie jak i . Aby atak zadziałał, musisz najpierw ominąć pamięć podręczną.
Niepoprawnie skonfigurowany nagłówek mógłby być po prostu \:
jako nagłówek.
To również może działać, jeśli zostaną wysłane nieoczekiwane wartości, takie jak nieoczekiwany Content-Type:
Nagłówek bez klucza
Niektóre strony internetowe zwrócą kod stanu błędu, jeśli zobaczą pewne konkretne nagłówki w żądaniu, na przykład z nagłówkiem X-Amz-Website-Location-Redirect: someThing.
Atak podmiany metody HTTP (HMO)
Jeśli serwer obsługuje zmianę metody HTTP za pomocą nagłówków takich jak X-HTTP-Method-Override
, X-HTTP-Method
lub X-Method-Override
. Możliwe jest żądanie poprawnej strony zmieniając metodę, którą serwer nie obsługuje, co skutkuje zapisaniem złej odpowiedzi w pamięci podręcznej:
Niezaszyfrowany port
Jeśli port w nagłówku Host jest odzwierciedlany w odpowiedzi i nie jest uwzględniony w kluczu pamięci podręcznej, można go przekierować na nieużywany port:
Długa przekierowanie DoS
Tak jak w poniższym przykładzie, x nie jest buforowany, więc atakujący mógłby nadużyć zachowania odpowiedzi przekierowania, aby sprawić, że przekierowanie wyśle tak duży adres URL, że zwróci błąd. W rezultacie osoby próbujące uzyskać dostęp do adresu URL bez klucza x niebuforowanego otrzymają odpowiedź błędu:
Normalizacja wielkości liter w nagłówku Host
Nagłówek hosta powinien być nieczuły na wielkość liter, ale niektóre strony internetowe oczekują, że będzie on pisany małymi literami, zwracając błąd, jeśli nie jest:
Normalizacja ścieżki
Niektóre strony zwrócą kody błędów, wysyłając dane URLencode w ścieżce, jednak serwer pamięci podręcznej zdekoduje adres URL i przechowa odpowiedź dla zdekodowanej ścieżki:
Fat Get
Niektóre serwery cache, takie jak Cloudflare, lub serwery internetowe, blokują żądania GET z ciałem, więc można to wykorzystać do zcache'owania nieprawidłowej odpowiedzi:
Odnośniki
Last updated