TCP reset útok - TCP reset attack

TCP resetovat útok, známý také jako „falešné resetování TCP“, „spoofed TCP reset pakety“ nebo „TCP reset útoky“, je způsob, jak manipulovat a ukončit připojení k internetu zasláním falešného TCP reset paketu. Tuto manipulační techniku ​​může firewall použít v dobré vůli nebo zneužít škodlivý útočník k přerušení připojení k Internetu.

Velký čínský firewall a Íránští internetoví cenzoři je známo, že používají TCP reset útoky k narušení a blokování připojení, jako hlavní způsob provádění internetové cenzury.

Pozadí

Internet je v podstatě systém pro výměnu elektronických zpráv nebo balíků dat IP pro jednotlivé počítače. Tento systém obsahuje hardware pro přenos zpráv (například měď a optická vlákna kabely) a formalizovaný systém pro formátování zpráv, tzv. „protokoly“. Základní protokol používaný na internetu je IP (internetový protokol ), který je obvykle spojen s dalšími protokoly, jako je TCP (protokol kontroly přenosu[1]) nebo UDP (Protokol uživatele Datagram ). TCP / IP je sada protokolů používaná pro procházení e-mailů a webových stránek. Každý protokol má blok informací, nazývaný záhlaví, zahrnutý v přední části každého paketu. Záhlaví obsahují informace o tom, který počítač odeslal paket, který počítač by jej měl přijmout, velikost paketu atd.

TCP se používá s IP, když je vyžadováno obousměrné virtuální připojení mezi dvěma počítači. (UDP je na druhé straně protokol IP bez připojení.) Software TCP na obou strojích, který bude komunikovat (například pracovní stanice s prohlížečem a webovým serverem) výměnou proudu paketů. Použití připojení TCP poskytuje počítačům snadný způsob výměny datových položek příliš velkých pro jeden paket, jako jsou videoklipy, e-mailové přílohy nebo hudební soubory. Přestože jsou některé webové stránky dostatečně malé pro jeden paket, jsou z důvodu pohodlí odesílány přes připojení TCP.

[2]TCP se resetuje

V proudu paketů připojení TCP obsahuje každý paket záhlaví TCP. Každá z těchto záhlaví obsahuje bit známý jako příznak „reset“ (RST). Ve většině paketů je tento bit nastaven na 0 a nemá žádný účinek; pokud je však tento bit nastaven na 1, znamená to pro přijímající počítač, že by měl počítač okamžitě přestat používat připojení TCP; neměla by odesílat žádné další pakety pomocí identifikačních čísel připojení, nazývaných porty, a zahodit další přijaté pakety s hlavičkami označujícími, že patří k danému připojení. Reset TCP v podstatě zabije připojení TCP okamžitě.

Pokud je použit tak, jak je navržen, může to být užitečný nástroj. Jednou běžnou aplikací je scénář, při kterém dojde k chybě počítače (počítače A) během připojení TCP. Počítač na druhém konci (počítač B) bude i nadále odesílat pakety TCP, protože neví, že došlo k selhání počítače A. Když se počítač A restartuje, obdrží pakety ze starého připojení před zhroucením. Počítač A nemá pro tyto pakety žádný kontext a nemůže vědět, co s nimi má dělat, takže by mohl odeslat reset TCP do počítače B. Tento reset umožňuje počítači B vědět, že připojení již nefunguje. Uživatel v počítači B může nyní zkusit jiné připojení nebo provést jinou akci.

Kování resetuje TCP

Ve výše uvedeném scénáři byl bit TCP reset odeslán počítačem, který byl jedním z koncových bodů připojení. Je možné, aby třetí počítač sledoval pakety TCP na připojení a poté odeslal „zfalšovaný“ paket obsahující reset TCP do jednoho nebo obou koncových bodů. Záhlaví v padělaném paketu musí nepravdivě naznačovat, že pochází z koncového bodu, nikoli z padělatele. Tyto informace zahrnují IP adresy koncového bodu a čísla portů. Každé pole v záhlaví IP a TCP musí být nastaveno na přesvědčivou falešnou hodnotu, aby falešný reset přiměl koncový bod zavřít připojení TCP. Správně naformátované kované resetování TCP může být velmi účinným způsobem, jak narušit jakékoli připojení TCP, které může podvodník sledovat.

Legitimní použití injekce resetování TCP

Jednou zjevnou aplikací falešného resetování TCP je zlomyslné narušení připojení TCP bez souhlasu dvou stran, které vlastní koncové body. Nicméně, zabezpečení sítě byly navrženy také systémy využívající kovaná resetování TCP. V roce 1995 byl předveden prototyp softwarového balíčku „Buster“, který by odesílal padělané resetování na jakékoli připojení TCP, které v krátkém seznamu používalo čísla portů. Dobrovolníci z Linuxu navrhli udělat něco podobného s linuxovými firewally v roce 2000,[2] a otevřený zdroj Šňupat použila resetování TCP k přerušení podezřelých připojení již v roce 2003.[3]

IETF považovala resetování protokolu TCP firewally, nástroji pro vyrovnávání zatížení a webovými servery za škodlivé v RFC3360.[4]

Comcast kontroverze

Do konce roku 2007, Comcast začal používat kovaná resetování TCP k ochromení aplikací typu peer-to-peer a určitých groupwarových aplikací na počítačích svých zákazníků.[5][6] To vyvolalo polemiku, po které následovalo vytvoření Sítě neutrality sítí (NNSquad) Lauren Weinstein, Vint Cerf, David Farber, Craig Newmark a další známí zakladatelé a zastánci otevřenosti na internetu.[7] V roce 2008 NNSquad vydal NNSquad Network Measurement Agent, softwarový program Windows napsaný společností John Bartas, který dokáže detekovat kovaná resetování TCP společnosti Comcast a odlišit je od skutečných resetů generovaných koncovými body. Technologie pro detekci resetů byla vyvinuta z dřívějšího softwaru „Buster“ s otevřeným zdrojovým kódem, který k blokování používal falešné resetování malware a reklamy na webových stránkách.

V lednu 2008 FCC oznámila, že bude vyšetřovat použití padělaných resetů společností Comcast, a dne 21. srpna 2008 nařídila společnosti Comcast ukončit praxi.[8]

Prevence

Šifrováním připojení pomocí a VPN musí útočník provést útok TCP reset na všechna způsobená šifrovaná připojení vedlejší škody.[Citace je zapotřebí ]

Viz také

Reference

externí odkazy