Cache poisoning

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Cache poisoning je technika útoku na webový server, která spočívá v umělé modifikaci cache serveru tak, aby vracel falešné odpovědi na dotazy uživatelů. Cílem tohoto útoku je ovlivnit chování webového serveru a narušit jeho správné fungování. Útočník může tímto způsobem získat přístup k citlivým údajům nebo způsobit další škody. Útok cache poisoning využívá zranitelností v cache serveru a manipuluje s obsahem cacheováných dat. Útočník může například falešně modifikovat cacheování DNS odpovědí, což umožní přesměrování uživatele na podvodné webové stránky nebo odkázat uživatele na jiný škodlivý obsah. Existují různé způsoby provádění útoku cache poisoning, včetně útoků typu DNS cache poisoning, HTTP cache poisoning nebo cache poisoning v mobilních sítích. Útoky tohoto typu jsou obtížně zachytitelné a mohou být vysoce destruktivní, zejména pokud jsou zaměřeny na důležité webové služby nebo organizace. Prevence proti útoku cache poisoning zahrnuje pravidelnou aktualizaci softwaru a zabezpečení cache serveru, monitorování síťového provozu a provádění kontroly integrovanosti cacheových dat. Včasná detekce a reakce na tento typ útoku může minimalizovat jeho negativní dopady na webový provoz. Útoky cache poisoning jsou v dnešní době stále častější a významné. Je důležité, aby správci webových serverů a poskytovatelé služeb byli dobře informováni o této technice útoku a přijímali nezbytná opatření ke zvýšení bezpečnosti svých systémů.

Cache poisoning je v informatice druh zranitelnosti webové aplikace založený na technice HTTP response splitting. Cílem útočníka je přesvědčit webový prohlížeč uživatele, aby uložil určitou stránku do své cache.

Popis zranitelnosti

Předpokladem k provedení Cache poisoning je, aby aplikace byla zranitelná na HTTP response splitting, tj. nesmí být filtrovány znaky CR a LF a musí docházet k přesměrování. +more Cache poisoning je z části shodná s Cross-User Defacement. Útočník též chce, aby server odeslal klientovi jím vytvořenou odpověď s podvrženým dokumentem, přičemž navíc musí odpověď přijít z budoucnosti.

Prohlížeč automaticky ukládá na určitou dobu příchozí data do své vyrovnávací paměti, k čemuž dochází vždy, když není tato možnost v prohlížeči zakázána nebo není serverem posílána hlavička Cache-Control: no-cache nebo Pragma: no-cache v protokolu HTTP 1. 0. +more Webová stránka je po své expiraci z cache odstraněna. Cache je vyčištěna též při ukončení prohlížeče.

Pokud se útočníkovi podaří nastavit hlavičku Last-Modified do budoucnosti, je dokument uložen do cache prohlížeče do doby, než dojde k její expiraci a tím i k odstranění z cache nebo dokud není prohlížeč ukončen. Pokud je čas poslední změny ve vzdálené budoucnosti, bude takto uložena stránka uložena v cache prohlížeče dlouhou dobu.

Po této hlavičce zase následuje podvržení dokumentu. Samozřejmě je nutné dodržet strukturu odpovědi.

Útok na zranitelnou aplikaci

Vložení nějaké hodnoty:

foobar

Přechod na nový řádek pomocí znaků CR a LF:

%0d%0a

Nastavení Content-Length na nulu (Content-length: 0), kterou je nutné zakódovat jako URL do sekvence %200:

Content-length:%200

Vynechání jednoho řádku:

%0d%0a%0d%0a

Vložení hlavičky další odpovědi (speciální znaky je nutné převést do URL kódování):

HTTP/1.1 200OK Content-Type: text/html Last-Modified: Mon, 27 Oct 2015 14:50:18 GMT Content-length: 47

Deface

Odesílaný dotaz by měl vypadat nějak takto:

foobar%0d%0aContent-length:%200%0d%0a%0d%0aHTTP/1.1%20200%20OK%0d%0aContent-Type:%20text/html%0d%0aLast-Modified:%20Mon,%2027%20Oct%202015%2014:50:18%20GMT%0d%0aContent-length:%2047%0d%0a%0d%0adeface

Obrana

Obranou před Cache poisoning je neumožnit útočníkovi provést HTTP Response Splitting, čehož lze dosáhnout odfiltrováním znak CR a LF od všech uživatelských vstupů zejména tam, kde jsou hodnoty parametrů vkládány do hlaviček.

Externí odkazy

http://www. owasp. +moreorg/index. php/Cache_Poisoning - Cache Poisoning na OWASP * http://deadlytechnology. com/web-development/http-attack/ - HTTP Cache Poisoning on Deadly Technology * http://yehg. net/lab/pr0js/training/webgoat. php - Řešení lekcí WebGoat * http://www. securiteam. com/securityreviews/5WP0E2KFGK. html .

Kategorie:Počítačové útoky

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top