WiederholungsangriffeReplay Attacks

Ein Wiederholungsangriff tritt auf, wenn ein Angreifer einen Nachrichtenstream zwischen zwei Parteien kopiert und den Strom für eine oder mehrere Parteien wiedergibt.A replay attack occurs when an attacker copies a stream of messages between two parties and replays the stream to one or more of the parties. Wenn der Angriff nicht abgeschwächt wird, verarbeiten die angegriffenen Computer den Stream wie zulässige Nachrichten, was eine Reihe negativer Konsequenzen wie redundante Bestellungen eines Artikels zur Folge hat.Unless mitigated, the computers subject to the attack process the stream as legitimate messages, resulting in a range of bad consequences, such as redundant orders of an item.

Bindungen sind möglicherweise Reflektionsangriffen ausgesetztBindings May Be Subject to Reflection Attacks

Reflektionsangriffe Replays von Nachrichten an einen Sender sind, als ob sie vom Empfänger der Antwort geliefert wurde.Reflection attacks are replays of messages back to a sender as if they came from the receiver as the reply. Der Standard replay-Erkennung in Windows Communication Foundation (WCF) Mechanismus wird nicht automatisch behandelt.The standard replay detection in the Windows Communication Foundation (WCF) mechanism does not automatically handle this.

Reflektionsangriffe werden standardmäßig abgeschwächt, da die WCF-Dienstmodells Anforderungsnachrichten eine signierte Nachrichtenkennung hinzugefügt und eine signierte erwartet relates-to -Header für Antwortnachrichten verwendet werden.Reflection attacks are mitigated by default because the WCF service model adds a signed message ID to request messages and expects a signed relates-to header on response messages. Infolgedessen kann die Anforderungsnachricht nicht als Antwort wiederholt werden.Consequently, the request message cannot be replayed as a response. In sicheren Szenarien mit zuverlässigem Messaging werden Reflektionsangriffe aus folgenden Gründen abgemildert:In secure reliable message (RM) scenarios, reflection attacks are mitigated because:

  • Die Sequenzerstellung und die Sequenzerstellungsantwort verwenden unterschiedliche Nachrichtenschemas.The create sequence and create sequence response message schemas are different.

  • Bei Simplexsequenzen können die vom Client gesendeten Nachrichten nicht wiedergegeben werden, da diese vom Client nicht interpretiert werden können.For simplex sequences, sequence messages the client sends cannot be replayed back to it because the client cannot understand such messages.

  • Bei Duplexsequenzen müssen die beiden Sequenzkennungen eindeutig sein.For duplex sequences, the two sequence IDs must be unique. Ausgehende Nachrichten können daher nicht als eingehende Nachrichten wiederholt werden (alle Header und Texte werden ebenfalls signiert).Thus, an outgoing sequence message cannot be replayed back as an incoming sequence message (all sequence headers and bodies are signed, too).

Aus diesem Grund sind nur Bindungen ohne WS-Adressierung anfällig für Reflektionsangriffe: benutzerdefinierte Bindungen, deren WS-Adressierung deaktiviert ist und die mit symmetrischen Schlüsseln gesichert sind.The only bindings that are susceptible to reflection attacks are those without WS-Addressing: custom bindings that have WS-Addressing disabled and use the symmetric key-based security. Die BasicHttpBinding verwendet standardmäßig keine WS-Adressierung; die Absicherung durch symmetrische Schlüssel erfolgt jedoch auf eine Art und Weise, die sie anfällig gegenüber dieser Art von Angriffen macht.The BasicHttpBinding does not use WS-Addressing by default, but it does not use symmetric key-based security in a way that allows it to be vulnerable to this attack.

Zur Entschärfung für benutzerdefinierte Bindungen sollte auf einen Sicherheitskontext verzichtet werden, oder es sollten Header für die WS-Adressierung verwendet werden.The mitigation for custom bindings is to not establish security context or to require WS-Addressing headers.

Webfarm: Angriff durch Wiederholen von Anforderungen an mehrere KnotenWeb Farm: Attacker Replays Request to Multiple Nodes

Ein Client verwendet einen Dienst, der in einer Webfarm implementiert ist.A client uses a service that is implemented on a Web farm. Ein Angreifer wiederholt eine Anforderung, die an einen Knoten in der Farm gesendet wurde, für einen anderen Knoten in der Farm.An attacker replays a request that was sent to one node in the farm to another node in the farm. Zusätzlich wird beim Neustart eines Diensts der Wiederholungscache geleert, sodass der Angriff wiederholt werden kann.In addition, if a service is restarted, the replay cache is flushed, allowing an attacker to replay the request. (Der Cache enthält die bereits verwendeten Signaturen von Nachrichten und verhindert so, dass diese mehrfach verwendet werden können.(The cache contains used, previously seen message signature values and prevents replays so those signatures can be used only once. Wiederholungscaches werden nicht von mehreren Anwendungen in einer Webfarm verwendet.)Replay caches are not shared across a Web farm.)

Mögliche Gegenmaßnahmen:Mitigations include:

Siehe auchSee Also

SicherheitsüberlegungenSecurity Considerations
Offenlegung vertraulicher InformationenInformation Disclosure
Erhöhen der BerechtigungenElevation of Privilege
Denial-of-Service-AngriffeDenial of Service
ManipulationTampering
Nicht unterstützte SzenarienUnsupported Scenarios