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.
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
Relaterede begreber
- APIEn API fastlægger, hvordan software kan bruge funktioner eller data fra anden software.
- BackendBackend behandler en applikations regler og data på serveren. Den omfatter mere end databasen eller en administrationsskærm.
- WebhookEn webhook sender en HTTP-besked til et andet system, når en bestemt hændelse sker.
- DataminimeringDataminimering begrænser personoplysninger til det, der er passende, relevant og nødvendigt for et fastlagt formål.
- Politik for dataopbevaringEn politik for dataopbevaring fastlægger formål, start, varighed og afslutning. Sletteopgaver og kopier skal indgå i den tekniske løsning.
- Envelope-krypteringEnvelope-kryptering adskiller datanøglen fra nøglen, der beskytter den. Den krypterede fil og indpakkede datanøgle skal håndteres sammen.
Dit projekt med ASES
Beskriv dit projekt for os. Vi vender tilbage med en første vurdering.