Wiederholungsangriffe
Ein Wiederholungsangriff tritt auf, wenn ein Angreifer einen Nachrichtenstream zwischen zwei Parteien kopiert und den Stream für eine oder mehrere Parteien wiedergibt. 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.
Bindungen sind möglicherweise Reflektionsangriffen ausgesetzt
Bei einem Reflektionsangriff werden Nachrichten wiederholt an den Absender zurückgeschickt, als würden sie eine Antwort vom Empfänger darstellen. Dieses Phänomen wird von der standardmäßigen Wiedergabeerkennung im Windows Communication Foundation (WCF)-Mechanismus nicht automatisch behandelt.
Reflektionsangriffe werden standardmäßig abgeschwächt, da das WCF-Dienstmodell Anforderungsnachrichten eine signierte Nachrichtenkennung hinzufügt und in Antwortnachrichten einen signierten relates-to-Header erwartet. Infolgedessen kann die Anforderungsnachricht nicht als Antwort wiederholt werden. In sicheren Szenarien mit zuverlässigem Messaging werden Reflektionsangriffe aus folgenden Gründen abgemildert:
Die Sequenzerstellung und die Sequenzerstellungsantwort verwenden unterschiedliche Nachrichtenschemas.
Bei Simplexsequenzen können die vom Client gesendeten Nachrichten nicht wiedergegeben werden, da diese vom Client nicht interpretiert werden können.
Bei Duplexsequenzen müssen die beiden Sequenzkennungen eindeutig sein. Ausgehende Nachrichten können daher nicht als eingehende Nachrichten wiederholt werden (alle Header und Texte werden ebenfalls signiert).
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. 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.
Zur Risikominderung für benutzerdefinierte Bindungen sollte auf einen Sicherheitskontext verzichtet werden, oder es sollten Header für die WS-Adressierung verwendet werden.
Webfarm: Angriff durch Wiederholen von Anforderungen an mehrere Knoten
Ein Client verwendet einen Dienst, der in einer Webfarm implementiert ist. Ein Angreifer wiederholt eine Anforderung, die an einen Knoten in der Farm gesendet wurde, für einen anderen Knoten in der Farm. Zusätzlich wird beim Neustart eines Diensts der Wiederholungscache geleert, sodass der Angriff wiederholt werden kann. (Der Cache enthält die bereits verwendeten Signaturen von Nachrichten und verhindert so, dass diese mehrfach verwendet werden können. Wiederholungscaches werden nicht von mehreren Anwendungen in einer Webfarm verwendet.)
Folgende Maßnahmen mindern das Risiko:
Verwenden Sie die Nachrichtenmodussicherheit mit Token für den Sicherheitszustandskontext (mit oder ohne sichere Konversation). Weitere Informationen finden Sie unter Vorgehensweise: Erstellen eines Tokens für den Sicherheitskontext einer sicheren Sitzung.
Konfigurieren Sie den Dienst für die Sicherheit auf Transportebene.
Siehe auch
Konzepte
Veröffentlichung von Informationen
Ausweitung von Berechtigungen
Dienstverweigerung
Verfälschungen
Nicht unterstützte Szenarien