Vervalsing van verzoeken aan de serverzijde

Vervalsing van verzoeken aan de serverzijde

Laat de server ophalen wat u zelf niet kunt bereiken.

Wat is Vervalsing van verzoeken aan de serverzijde?

De applicatie haalt een URL op die een gebruiker heeft opgegeven, en niemand controleert waar deze naar verwijst. Dat verzoek vertrekt vanuit uw eigen netwerk, zodat de aanvaller de positie van de server overneemt. U richt een link-preview-functie op de cloud-metagegevensservice op het vaste link-local-adres, leest de inloggegevens van de gekoppelde rol van de instantie terug en vermeldt een winkel vol klantfacturen bij hen. Vervolgens lost u de host op en weigert u privé-, loopback- en link-local-bereiken, waarbij u opnieuw controleert na omleidingen, met token-vereiste metadata (IMDSv2) en rollen met de minste rechten eronder.

Wat je leert in Vervalsing van verzoeken aan de serverzijde

Vervalsing van verzoeken aan de serverzijde — Trainingsstappen

  1. De preview-functie

    Met Corveil kan iedereen een link plakken en een nette voorbeeldkaart terugkrijgen, de paginatitel en afbeelding, klaar om in een bericht te plaatsen. De preview is niet in de browser ingebouwd: de eigen servers van Corveil halen de link op. Bob opent de functie om te zien hoe deze werkt voordat hij deze aanraakt.

  2. Waar het verzoek vandaan komt

    Eén detail op die pagina is de hele reden waarom Bob geïnteresseerd is.

  3. Gebruik de functie

    Kijk hoe de functie zich normaal gedraagt. Plak een gewoon nieuwsartikel en genereer een voorbeeld, zodat de pagina een echt verzoek doet dat Bob kan inzien.

  4. Zoek het eindpunt

    Het verzoek ging uit en de browser registreerde het. Open het netwerkpaneel en lees waar de pagina het daadwerkelijk naartoe heeft gestuurd.

  5. Richt het naar binnen

    Bob bouwt dat verzoek opnieuw op in de API Tester, zodat hij de url overal kan richten waar hij maar wil. En de server haalt elk adres op dat hij eraan geeft, zelfs als hij het zelf nooit zou kunnen bereiken. Elke cloudserver heeft een metadataservice op een vast intern adres die de inloggegevens uitdeelt van de rol die aan die server is gekoppeld. Het is bedoeld voor eigen gebruik van de server en controleert nooit wie er vraagt. Bob heeft alleen de preview-medewerker van Corveil nodig om het voor hem te bereiken.

  6. Bereik de metadataservice

    Bouw het voorbeeldverzoek opnieuw op in de API Tester, maar wijs de url naar het pad voor de metagegevensgegevens in plaats van naar een nieuwsartikel. De medewerker van Corveil haalt het binnen het netwerk op en geeft terug wat het krijgt.

  7. Referenties in de hand

    Het antwoord is geen voorbeeld. Het is een set live-referenties voor de cloudrol van de preview-werker.

  8. Onderteken een aanvraag met de gestolen sleutel

    De interne opslag van Corveil vertrouwt een ondertekend verzoek. Bob ondertekent er een met de AccessKeyId die hij zojuist uit de metadataservice heeft gehaald en vermeldt de bucket met klantfacturen, een plek waar normaal gesproken geen externe gebruiker kan komen.

  9. De gegevens zijn verdwenen

    Namen, bedragen en factuur-ID's, meer dan veertigduizend klantrecords, bereikt via een functie die bedoeld is om een voorbeeld van een link te bekijken.

  10. Kennis check

    Je hebt zojuist gezien hoe een link-preview-functie de inloggegevens van de server lekte en vervolgens de gegevens ervan. Leg vast waarom.

Dekking van beveiligingsframeworks

OWASP Top 10

  • A01:2025 Broken Access Control
  • A10:2021 Server-Side Request Forgery (SSRF)

CWE

  • CWE-918 Server-Side Request Forgery (SSRF)

CIS Controls

  • CIS 16 Application Software Security

NIST CSF

  • PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
  • PR.PS Platform Security