Co je to SYN attack?

SYN (TCP požadavek na spojení) je útok, který spadá do skupiny Denial of Service (DoS) a dal by se charakterizovat takto:

  1. Použitím podvržené (spoofed) IP adresy (typicky nepoužívané na Internetu), útočník pošle několik SYN paketů na cílový počítač.
  2. Pro každý SYN packet, keterý cílový počítač obdrží, musí alokovat prostředky a poslat SYN-ACK potvrzení na zdrojovou IP adresu.
  3. Protože cílový počítač neobrží odpověď (ACK) z útočícího počítače, že dostal v pořádku SYN-ACK potvrzení, posílá znovu útočícímu počítači paket SYN-ACK a to celkem 5x v 3, 6, 12, 24 a 48 vteřinových intervalech s nadějí, že vytoužený ACK paket od útočícího PC dostane. Po celou dobu ale musí držet alokované prostředky, než po posledním neúspěšném pokusu je bude moci uvolnit.

Když útočník používá tuto techniku opakovaně, je jasné, že cílovému pocítači brzy dojdou prostředky a nebude schopen akceptovat další spojení a tím odepře služby legitimním uživatelům.

Pro zjištění, zda Váš systém může být zranitelný vůči tomuto typu útoku, napište v příkazové řádce:
netstat -n -p tcp
a podívejte se na řádky, které obsahují status SYN_RECEIVED. Jestliže uvidíte hodně těchto položek, Váš systém je
zranitelný na tento útok.

Ochranu Vám samozřejmě poskytne kvalitní firewall, ale i ve Windows je možné pomoci ochraně proti DoS útokům a zkrátit časy pro SYN požadavky. Stačí když v registrech v cestě HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters v DWORD hodnotě SynAttackProtect budete mít nastavenu hodnotu 2.

Pozn.: Hodnota 0 v SynAttackProtect znamená žádnou ochranu. Hodnota 1 omezuje počet SYN opakovaných pokusů a čekacích dob, když je dosažen maximální počet otevřených TCP spojení (TcpMaxHalfOpen), tedy spojením ve stavu SYN_RECEIVED, a když je dosažen maximální počet opakovaných pokusů (TcpMaxHalfOpenRetried). Hodnota 2 v SynAttackProtect funguje podobně jako hodnota 1, ale navíc zahrnuje zpoždění Winsock notification dokud se nedokončí celé three-way handshake (tedy celé TCP spojení). Protože Windows vyvolá SynAttackProtect až po dosažení hodnot v TcpMaxHalfOpen a TcpMaxHalfOpenRetried, doporučuji nastavit i tyto hodnoty v registrech na 100 resp. 80.

Další parametry TCP/IP pro hardening najdete v mém starším článku: http://blog.hyzler.net/archive/2007/07/06/11.aspx

jh

 

Print | posted on 1. února 2009 16:10

Comments on this post

No comments posted yet.

Your comment:

 (will show your gravatar)
 
Please add 6 and 3 and type the answer here: