Server-side request forgery (SSRF)
SSRF får en applikasjon til å sende uønskede nettverksforespørsler fra serveren. Det avgjørende er hvilke mål serveren faktisk når.
Server-side request forgery, forkortet SSRF, er misbruk av en applikasjon for å få serveren til å sende forespørsler til utilsiktede mål. Serveren kan ha annen nettverkstilgang enn personen som gir inndata. Slik kan for eksempel interne tjenester nås selv om de ikke er direkte tilgjengelige utenfra.
En dokumentforhåndsvisning med et eksternt mål
En fiktiv prosjektportal henter et dokument til forhåndsvisning fra adressen i feltet previewTarget. Hvis adressen brukes uten egnede kontroller, kan forhåndsvisningen bli et mellomledd for uønsket tilgang. Problemet ligger her i serverens henting, før dokumentet vises. Slike kall kan gi uønskede virkninger selv om svarinnholdet ikke returneres.
I denne portalvarianten er forhåndsvisningen bare beregnet på kjente dokumentkilder. Applikasjonen kan derfor fastsette tillatte kilder i stedet for å godta vilkårlige mål. Begrensningen passer bare hvis funksjonen faktisk kan begrenses til kjente kilder.
Se målvalidering og nettverksgrense i sammenheng
MDN og OWASP beskriver beskyttelse på applikasjons- og nettverksnivå. Det er ikke nok å kontrollere vertsnavnet som er skrevet inn: Også de oppslåtte måladressene og den faktiske forbindelsen må følge regelen for tillatte mål. Omdirigeringer kan endre målet og skal ikke omgå kontrollen.
Tjenesten trenger bare nettverkstilgangen oppgaven krever. Protokoll- og målbegrensninger, kontrollerte omdirigeringer og begrensede nettverksrettigheter virker sammen. HTTPS alene gjør ikke et mål tillatt. Portaleksemplet forklarer tillitsgrensen; det beskriver ikke en utført henting eller sikkerhetstest.
Kilder
Beslektede begreper
- APIEt API fastsetter hvordan programvare kan bruke funksjoner eller data fra annen programvare.
- BackendBackend behandler applikasjonens regler og data på serveren. Den omfatter mer enn databasen eller en administrasjonsskjerm.
- WebhookEn webhook sender en HTTP-melding til et annet system når en bestemt hendelse skjer.
- DataminimeringDataminimering begrenser personopplysninger til det som er passende, relevant og nødvendig for et bestemt formål.
- Retningslinje for dataoppbevaringEn retningslinje for dataoppbevaring fastsetter formål, start, varighet og slutt. Slettejobber og kopier må håndteres i den tekniske løsningen.
- KonvoluttkrypteringKonvoluttkryptering skiller datanøkkelen fra nøkkelen som beskytter den. Den krypterte filen og innpakkede datanøkkelen må håndteres sammen.
Ditt prosjekt med ASES
Beskriv prosjektet ditt for oss. Vi tar kontakt med en første vurdering.