Kas yra SYN užtvindymas?

SYN užtvindymas yra paslaugų atsisakymo atakos forma, kuri gali būti paleista kompiuterio serveryje, kad užblokuotų serverį ir neleistų kitiems vartotojams prie jo prieiti. Tai yra šiek tiek senesnė atakos forma ir kurį laiką buvo gana populiari dėl palyginti mažų išteklių, reikalingų jai paleisti. Pagrindiniame atakos procese naudojamas metodas, kuriuo vartotojai prisijungia prie serverio naudodami perdavimo valdymo protokolą (TCP), kad galėtų naudoti visus sistemos išteklius. SYN užtvindymas kadaise buvo populiari atakų forma, nors buvo sukurta daugybė skirtingų sprendimų, kaip sumažinti arba panaikinti jo efektyvumą šiuolaikiniuose serveriuose.

Pagrindinė SYN užtvindymo idėja naudoja būdą, kuriuo vartotojai prisijungia prie serverių per TCP ryšius. TCP naudoja sistemą, vadinamą trijų krypčių rankos paspaudimu, kuri prasideda vartotojui siunčiant „sinchronizavimo“ arba SYN pranešimą serveriui. Tada serveris gauna pranešimą ir vartotojui siunčia atgal pranešimą „sinchronizavimas patvirtintas“ arba SYN-ACK. Kai vartotojo sistema gauna šį pranešimą, vartotojas serveriui siunčia galutinį patvirtinimo arba ACK pranešimą, kad būtų užmegztas ryšys. Šis pagrindinis procesas vyksta gana greitai ir užtikrina, kad abu ryšio galai būtų sinchronizuoti.

Tačiau SYN užtvindymo ataka naudoja šį trijų krypčių rankos paspaudimą, kad surištų išteklius serveryje ir taip neleistų kitiems pasiekti sistemos. SYN užtvindymo ataka prasideda serveriui siunčiamu SYN pranešimu, kuris atsako standartiniu SYN-ACK atsakymu. Tačiau šis pranešimas neatsakomas vienu iš kelių metodų, dėl kurių serveriui nesiunčiamas galutinis ACK pranešimas. Šiuo metu serveris palieka išteklius laukti ACK pranešimo, jei atsakymo trūkumo priežastis yra tinklo perkrova.

Tačiau serveriai turi tik ribotus išteklius trijų krypčių rankos paspaudimams tvarkyti, o daugelis serverių yra skirti vienu metu apdoroti tik aštuonis tokius procesus. SYN užtvindymas susideda iš aštuonių ar daugiau SYN pranešimų, kurie vėliau siunčiami be atitinkamo ACK pranešimo, todėl visi serverio ištekliai paliekami laukti atsakymo, kuris niekada nebus. Kol jis laukia šių pranešimų, jokie kiti vartotojai negali prisijungti prie serverio. Nors daugelis serverių buvo sukurti taip, kad atsakymų eilė būtų ištuštinta po trijų minučių, bet kas nors, pradėjęs SYN ataką, galėjo tiesiog kas tris minutes iš naujo pateikti aštuonis SYN pranešimus, kad sistema būtų užrakinta neribotam laikui.

Buvo rasta daugybė skirtingų tokio tipo atakų sprendimų, todėl SYN užtvindymas dažnai būna mažiau sėkmingas nei buvo praeityje. Vienas iš įprastų sprendimų naudoja „SYN slapukus“, kad sistema galėtų išvalyti eilę, kai pasiekiamos aštuonios užklausos, o nauji vartotojai gali siųsti užklausas prisijungti prie serverio. Jei pagaliau gaunama viena iš senesnių išvalytų užklausų, slapukai užtikrina, kad jis būtų tinkamai atpažįstamas kaip ACK pranešimas ir leidžia vartotojui prisijungti prie serverio.