Delen via


Aanvallen opnieuw afspelen

Een herhalingsaanval treedt op wanneer een aanvaller een stroom berichten tussen twee partijen kopieert en de stream opnieuw afspeelt naar een of meer van de partijen. Tenzij tegenmaatregelen worden genomen, verwerken de computers die onderhevig zijn aan de aanval de gegevensstroom als legitieme berichten, wat resulteert in een reeks slechte gevolgen, zoals onnodige bestellingen van een product.

Bindingen kunnen onderhevig zijn aan reflectieaanvallen

Reflectieaanvallen zijn herhalingen van berichten terug naar een afzender alsof ze afkomstig zijn van de ontvanger als antwoord. De standaard replay detection in het Windows Communication Foundation (WCF)-mechanisme verwerkt dit niet automatisch.

Reflectieaanvallen worden standaard beperkt omdat het WCF-servicemodel een ondertekende bericht-id toevoegt om berichten aan te vragen en een ondertekende relates-to header op antwoordberichten verwacht. Daarom kan het aanvraagbericht niet opnieuw worden afgespeeld als antwoord. In RM-scenario's (Secure Reliable Message) worden reflectieaanvallen beperkt omdat:

  • De schema's voor het maken van een reeks en het maken van een antwoordbericht zijn verschillend.

  • Voor simplex-reeksen kunnen sequentieberichten die de client verzendt, niet opnieuw worden afgespeeld omdat de client dergelijke berichten niet kan begrijpen.

  • Voor dubbelzijdige reeksen moeten de twee reeks-id's uniek zijn. Een uitgaand sequentiebericht kan dus niet opnieuw worden afgespeeld als een binnenkomend sequentiebericht (alle sequentieheaders en hoofdteksten worden ook ondertekend).

De enige bindingen die vatbaar zijn voor reflectieaanvallen zijn bindingen zonder WS-Adressering: aangepaste bindingen die WS-Addressing uitgeschakeld en de symmetrische beveiliging op basis van sleutels gebruiken. Het BasicHttpBinding maakt niet standaard gebruik van WS-Addressing, maar gebruikt geen symmetrische beveiliging op basis van sleutels op een manier die het mogelijk maakt om kwetsbaar te zijn voor deze aanval.

De beperking voor aangepaste bindingen is het niet tot stand brengen van beveiligingscontext of het vereisen van WS-Addressing headers.

Webfarm: Aanvaller probeert aanvragen opnieuw af te spelen op meerdere knooppunten

Een client maakt gebruik van een service die is geïmplementeerd in een webfarm. Een aanvaller speelt een aanvraag die naar het ene knooppunt in de servergroep is verzonden opnieuw af naar een ander knooppunt in dezelfde servergroep. Als een service opnieuw wordt opgestart, wordt de cache voor opnieuw afspelen leeggemaakt, zodat een aanvaller de aanvraag opnieuw kan afspelen. (De cache bevat eerder gebruikte waarden voor berichthandtekeningen en voorkomt herhalingen, zodat deze handtekeningen slechts één keer kunnen worden gebruikt. Caches voor opnieuw afspelen worden niet gedeeld in een webfarm.)

Oplossingen zijn onder andere:

Zie ook