Artikel top billede

(Foto: Computerworld)

Sådan kvæles en webserver

Der findes mange forskellige typer af angreb på en webserver. Et af de mere specielle, og ofte oversete, er et læs langsomt-angreb.

Af Lars Bennetzen, Alt om Data

Denne artikel er oprindeligt bragt på Alt om Data. Computerworld overtog i november 2022 Alt om Data. Du kan læse mere om overtagelsen her.

Sergey Shekyan skriver på Qualys Community, et fællesskab for professionelle sikkerhedsfolk, om en ny type angreb på webservere, der fungerer ved at læse langsomt.

Princippet er simpelt: Bed webserveren om at give dig nogle data, og læs dem rigtig langsomt. Læses de langsomt nok, kan serveren ikke lave andet, og enden på visen bliver et såkaldt denial of service, eller dos-angreb.

Sergey Shekyan har tidligere udviklet værktøjet slowhttptest, der tjekker, om en server er sårbar over for angreb, der sender meget langsomme forespørgsler til serveren, og nu er han ude med en advarsel mod en anden type langsomme angreb, læs langsomt-angreb.

For at få en ide om, hvordan sådan et angreb fungerer, giver Sergey Shekyan følgende billede:

»Forestil dig en kø i en fastfoodrestaurant, der serverer to slags burgere, og at en kunde ved kassen bare ikke kan beslutte sig til, hvad han ønsker at bestille, hvilket får køen lige så langsomt til at gå i stå.

Forestil dig nu en kø i samme restaurant, men hvor der er et skilt, der siger ”beslut dig i god tid, inden du afgiver din ordre”, hvilket er tænkt som en måde at få tingene til at fungere hurtigere på. Men nu bestiller kunden hundredvis af burgere, betaler, og så går køen igen i stå, fordi han kun kan bære fem burgere væk ad gangen, hvorved skiltningen bliver ineffektiv.«

Det er lige præcist sidste scenarium, der ligger til grund for et læs langsomt-angreb. Sergey Shekyan blev nysgerrig over, hvordan en http-server ville reagere, hvis de data, den serverede, blev læst meget langsomt, hvorfor han fremstillede en såkaldt proof of concept-kode, og stor var hans overraskelse, da han, yderst effektivt, fik et dos-angreb.

Det skræmmende ved denne type angreb er, at den fungerer ved at sende helt legitime http-forespørgsler og læse svaret langsomt, for derved at holde så mange forbindelser som muligt aktive. Det lyder let, og ifølge Sergey Shekyan er det lige præcist let, alt for let.

Ikke den første

Hvor Sergey Shekyan troede, at han havde været den første, der udnyttede den svaghed, som, ifølge ham selv, stort set alle webservere har, så skulle det dog hurtigt vise sig ikke at være tilfældet.

Han kontaktede en af sine kolleger i sikkerhedsbranchen, bare for at høre hans input og få nogle forslag til, hvordan man i øvrigt kunne teste servere for denne svaghed. Her fik han så at vide, at det altså ikke var noget nyt. Han fik links til Socktress og Nkiller2, der begge udnytter det, der kaldes for persist timer infiniteness, hvilket betyder ”at få serveren til at læse langsomt”.

Og hvor der er en, der kan tænke den tanke, så er der med statsgaranti også flere, der kan tænke den. Sergey Shekyan anbefaler derfor også at gøre noget aktivt ved serverne, også over for denne type trussel.

Han foreslår blandt andet, at der bliver tjekket for, om serveren accepterer initiale syn-pakker med et abnormt lille synlighedsvindue.

At serveren ikke sender rts eller fin i et stykke tid (30 sekunder burde være nok), hvis modtageren ikke accepterer data, og at persistent connection og http-pipelining bliver slået til. Hvis serveren opfylder alle tre betingelser, så er den, ifølge Sergey Shekyan, sårbar over for læs langsomt-angreb.

Alternativt foreslår han, at it-administratoren kører slowhttptest version 1.3 eller bedre, der så vil afsløre, om serveren er sårbar over for denne type angreb. Der er mange ting, en server skal beskyttes mod på nettet, og nu er der så kommet denne nye type dos-angreb til.

Det gælder om at være om sig, og ikke mindst holde øje med de mange nye typer angreb, der hele tiden truer såvel pc som server.