INTEGRITY Dokumentace

Ochrana anti-replay

Pokud používáte Cloudflare WAN a anycast U tunelů IPsec doporučujeme zakázat ochranu anti-replay. Cloudflare toto nastavení ve výchozím nastavení vypíná. Pro zařízení, která zákaz této funkce nepodporují, včetně Cisco Meraki, Velocloud a AWS VPN Gateway, ji však můžete povolit přes API nebo Cloudflare dashboard.

Viz Přidejte tunely kde zjistíte, jak nastavit ochranu proti opakování. Tato stránka vysvětluje útoky typu replay, důvody, proč Cloudflare doporučuje deaktivovat funkci IPsec anti-replay, a související aspekty.

Útoky opakováním

K útokům opakováním dochází, když útočník zachytí a zaznamená paket, a poté zaznamenaný paket znovu odešle do cílové sítě se záměrem, který útočníkovi prospívá.

Příklad

Uvažujme špatně navržený otvírač garážových vrat pro internet věcí (IoT). Zařízení má jednoduchý protokol pro svůj provoz: paket User Datagram Protocol (UDP) obsahuje heslo od garážových vrat a buď open nebo shut ve svém datovém segmentu. Klíč od garážových vrat zašifruje datový segment a telefon majitele jej odešle, aby vrata otevřel nebo zavřel.

Útočník pravděpodobně nedokáže otevřít nebo zavřít vrata garáže pouhým uhodnutím šifrovacího klíče a hesla. Zašifrovaný obsah zachyceného paketu sice vidět nemůže, ale pokud má garáž na dohled, může se pokusit propojit si a uhodnout, které pakety mají na starosti otevírání vrat garáže. Až bude chtít vrata otevřít, odešle zaznamenaný open paket, a protože by zaznamenaný paket obsahoval heslo a už by byl zašifrovaný správným klíčem, tyto dveře by se otevřely.

Aby se tomuto útoku opakováním předešlo, mohl by uživatel ke každému příkazu zasílanému vratům garáže přidat číslo paketu. První by mohlo být packet 1, druhý packet 2 a tak dále, přičemž vrata garáže by pokaždé přijala pouze pakety obsahující další číslo v pořadí. Například poté, co vrata garáže přijmou packet 1, přijala by pouze paket 2, a pokud by útočník zkusil znovu přehrát packet 1, garážová vrata požadavek ignorují.

Ochrana anti-replay IPsec

Ochrana anti-replay IPsec funguje podobně jako příklad prevence ve scénáři výše. Odesílatel přiřadí každému paketu IPsec sekvenční číslo. Příjemce sleduje, jaká sekvenční čísla už viděl, a přijímá pouze pakety spadající do malého okna kolem nejvyšší dosud přijaté hodnoty; toto okno má obvykle velikost 64 až 1024 paketů. IPsec používá okno místo přísného řazení, protože pakety se na internetu občas přeuspořádají nebo ztratí: rozsah přípustných sekvenčních čísel paketů pomáhá tyto problémy vyřešit.

Cloudflare WAN a ochrana anti-replay

Standardní ochrana anti-replay IPsec počítá s jediným odesílatelem a jediným příjemcem. Odesílatel uchovává sekvenční číslo v paměti a s každým paketem ho zvyšuje. Příjemce sleduje, jaká sekvenční čísla už zpracoval.

Anycast architektura Cloudflare tomuto modelu neodpovídá. Protože Cloudflare WAN používá anycast může libovolný paket zpracovat kterýkoli z tisíců serverů napříč stovkami datových center. Právě toto distribuované zpracování dává Cloudflare WAN jeho výkon a odolnost, znamená to však, že žádný jednotlivý server nemá úplný přehled o stavu pořadových čísel.

Pokud pro tunely Cloudflare WAN IPsec povolíte ochranu proti opakování (replay protection), Cloudflare směruje pakety jednoho tunelu na jeden server, který sleduje pořadová čísla. Mechanismus ochrany proti opakování v tomto režimu funguje správně, ale přijdete o výhodu rozložení provozu mezi globální servery Cloudflare. Navíc funguje jen jedním směrem, od Cloudflare k síti zákazníka: Cloudflare nesměruje pakety ze sítě zákazníka na jediný server a v tomto směru ochranu proti opakování neuplatňuje.

Další aspekty

Ochrana anti-replay IPsec je nesmírně důležitá u transportního režimu, tedy u IPsec mezi jednotlivými hostiteli nebo dokonce mezi jednotlivými aplikacemi. V transportním režimu útočník poměrně snadno identifikuje šifrovaný protokol i to, které pakety má přehrát, pokud je daný protokol vůbec zranitelný vůči replay útokům. Cloudflare WAN ovšem používá tunelový režim, u kterého je úspěšné provedení replay útoku podstatně obtížnější.

Existuje několik důvodů, proč jsou útoky typu replay v tunelovém režimu obtížné:

Řešení potíží

Pokud se u vás projevuje nestabilita tunelu nebo ztráty paketů související s ochranou anti-replay, přejděte na Odstraňování problémů se stavem tunelu.