Ein Forscherteam der Freien UniversitĂ€t Amsterdam und der ETH ZĂŒrich hat eine Technik zur Netzwerkattacke entwickelt, (Network Cache ATtack), die es ermöglicht, durch die Analyse von Daten ĂŒber externe KanĂ€le aus der Ferne die Tasten zu bestimmen, die der Benutzer wĂ€hrend einer SSH-Sitzung drĂŒckt. Das Problem tritt nur auf Servern auf, die Technologien (Remote Direct Memory Access) und (Data-Direct I/O) verwenden.
Das Unternehmen Intel Dies macht es jedoch schwierig, die Attacke in der Praxis umzusetzen, da der Angreifer Zugang zum lokalen Netzwerk sowie strikte Bedingungen und eine Verbindung zwischen den Hosts unter Verwendung von RDMA- und DDIO-Technologien benötigt, die normalerweise in isolierten Netzwerken, wie z.B. in Rechenclustern, eingesetzt werden. Dem Problem wurde ein geringes GefĂ€hrdungsniveau (CVSS 2.6, ) und es wird empfohlen, DDIO und RDMA in lokalen Netzwerken, die nicht ĂŒber eine Sicherheitsperimeter verfĂŒgen und in denen unzuverlĂ€ssige Kunden zugelassen sind, nicht zu aktivieren. DDIO wird in Serverprozessoren von Intel seit 2012 verwendet (Intel Xeon E5, E7 und SP). Systeme, die auf AMD-Prozessoren und anderen Herstellern basieren, sind nicht betroffen, da sie die Speicherung der ĂŒber das Netzwerk ĂŒbertragenen Daten im CPU-Cache nicht unterstĂŒtzen.
Die fĂŒr den Angriff verwendete Methode Ă€hnelt der Schwachstelle ââ, die es ermöglicht, den Inhalt einzelner Bits im RAM durch Manipulation von Netzwerkpaketen in Systemen mit RDMA zu verĂ€ndern. Das neue Problem resultiert aus dem Bestreben, die Latenzen durch die Anwendung des DDIO-Mechanismus zu minimieren, der eine direkte Interaktion zwischen der Netzwerkkarte und anderen PeripheriegerĂ€ten mit dem Cache des Prozessors ermöglicht (wĂ€hrend der Verarbeitung von Netzwerkpaketen werden die Daten im Cache gespeichert und aus dem Cache abgerufen, ohne auf den Speicher zuzugreifen).
Dank DDIO gelangen auch Daten, die wĂ€hrend bösartiger NetzwerkaktivitĂ€ten generiert werden, in den CPU-Cache. Der NetCAT-Angriff basiert auf der Annahme, dass Netzwerkkarten Daten aktiv cachen, und die Geschwindigkeit der Paketverarbeitung in modernen lokalen Netzwerken ausreichend ist, um das Cache-Filling zu beeinflussen und das Vorhandensein oder Fehlen von Daten im Cache durch die Analyse der Ăbertragungsverzögerungen zu bestimmen.
Bei der Verwendung interaktiver Sitzungen, beispielsweise ĂŒber SSH, wird das Netzwerkpaket direkt nach dem DrĂŒcken der Taste gesendet, d.h. die Verzögerungen zwischen den Paketen korrelieren mit den Verzögerungen zwischen den Tasteneingaben. Unter Verwendung statistischer Analyseverfahren und unter BerĂŒcksichtigung, dass die Verzögerungen zwischen den Tastatureingaben normalerweise von der Position der Taste auf der Tastatur abhĂ€ngen, kann mit gewisser Wahrscheinlichkeit die eingegebene Information rekonstruiert werden. Zum Beispiel tippen die meisten Menschen normalerweise âsâ nach âaâ wesentlich schneller als âgâ nach âsâ.
Die im Prozessor-Cache gespeicherten Informationen ermöglichen es unter anderem, die genaue Zeit der Pakete zu bestimmen, die von der Netzwerkkarte bei der Verarbeitung von Verbindungen wie SSH gesendet werden. Durch die Generierung eines bestimmten Datenverkehrs kann ein Angreifer den Zeitpunkt erkennen, an dem neue Daten im Cache erscheinen, die mit bestimmten AktivitĂ€ten im System verbunden sind. Zur Analyse des Cacheinhalts wird die Methode , verwendet, die das FĂŒllen des Caches mit einer Referenzmenge an Werten und die Messung der Zugriffszeiten bei einer erneuten BefĂŒllung zur Bestimmung von VerĂ€nderungen beinhaltet.
Es ist nicht auszuschlieĂen, dass diese Technik auch zur Ermittlung von nicht nur Tasteneingaben, sondern auch anderen Arten von vertraulichen Daten eingesetzt werden kann, die im CPU-Cache verbleiben. Potenziell kann der Angriff auch ohne RDMA durchgefĂŒhrt werden, jedoch verringert sich die EffektivitĂ€t ohne RDMA, und die DurchfĂŒhrung wird erheblich komplizierter. AuĂerdem ist die Verwendung von DDIO möglich, um einen versteckten Kommunikationskanal einzurichten, der zur DatenĂŒbertragung nach einer Kompromittierung des Servers verwendet wird, um Sicherheitsvorkehrungen zu umgehen.

Quelle: opennet.ru
