Gå til indholdet

Server-side request forgery (SSRF)

SSRF får en applikation til at sende uønskede netværksanmodninger fra serveren. Det afgørende er, hvilke mål serveren faktisk når.

Også kendt somSSRF
IT-sikkerhed

Server-side request forgery, forkortet SSRF, er misbrug af en applikation til at få dens server til at sende anmodninger til utilsigtede mål. Serveren kan have en anden netværksadgang end den person, der leverer input. Dermed kan eksempelvis interne tjenester nås, selv om de ikke er direkte tilgængelige udefra.

En dokumentforhåndsvisning med et eksternt mål

En fiktiv projektportal henter et dokument til forhåndsvisning fra adressen i feltet previewTarget. Hvis adressen bruges uden passende kontrol, kan visningen blive mellemled for uønsket adgang. Problemet ligger her i serverens hentning, før dokumentet vises. Sådanne kald kan have uønskede virkninger, selv om svarindholdet ikke sendes tilbage.

I denne portalvariant er forhåndsvisning kun beregnet til kendte dokumentkilder. Applikationen kan derfor fastlægge tilladte kilder i stedet for at acceptere vilkårlige mål. Begrænsningen passer kun, hvis funktionen faktisk kan begrænses til kendte kilder.

Se målvalidering og netværksgrænse i sammenhæng

MDN og OWASP beskriver beskyttelse på applikations- og netværksniveau. Kontrol af det skrevne værtsnavn alene er ikke nok: De IP-adresser, som navnet peger på, og den faktiske forbindelse skal også følge reglen for tilladte mål. Omdirigeringer kan ændre målet og må ikke omgå kontrollen.

Tjenesten behøver kun den netværksadgang, som opgaven kræver. Protokol- og målbegrænsninger, kontrollerede omdirigeringer og begrænsede netværksrettigheder virker sammen. HTTPS alene gør ikke et mål tilladt. Portaleksemplet forklarer tillidsgrænsen; det beskriver ikke en udført hentning eller sikkerhedstest.

Kilder